Uncovering Bugs in P4 Programs with Assertion-based Verification

被引:44
|
作者
Freire, Lucas [1 ]
Neves, Miguel [1 ]
Leal, Lucas [1 ]
Levchenko, Kirill [2 ]
Schaeffer-Filho, Alberto [1 ]
Barcellos, Marinho [1 ]
机构
[1] Univ Fed Rio Grande do Sul, Porto Alegre, RS, Brazil
[2] Univ Calif San Diego, La Jolla, CA USA
关键词
P4; Verification; Programmable Data Planes;
D O I
10.1145/3185467.3185499
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Recent trends in software-defined networking have extended network programmability to the data plane through programming languages such as P4. Unfortunately, the chance of introducing bugs in the network also increases significantly in this new context. Existing data plane verification approaches are unable to model P4 programs, or they present severe restrictions in the set of properties that can be modeled. In this paper, we introduce a data plane program verification approach based on assertion checking and symbolic execution. Network programmers annotate P4 programs with assertions expressing general security and correctness properties. Once annotated, these programs are transformed into C-based models and all their possible paths are symbolically executed. Results show that the proposed approach, called ASSERT-P4, can uncover a broad range of bugs and software flaws. Furthermore, experimental evaluation shows that it takes less than a minute for verifying various P4 applications proposed in the literature.
引用
收藏
页数:7
相关论文
共 50 条
  • [21] AN ASSERTION-BASED VERIFICATION SYSTEM FOR FORMAL REQUIREMENTS DESCRIPTION
    AGUSA, K
    OHNISHI, A
    OHNO, Y
    [J]. JAPAN ANNUAL REVIEWS IN ELECTRONICS COMPUTERS & TELECOMMUNICATIONS, 1984, 12 : 11 - 23
  • [22] Assertion-Based Dynamic Verification for Executable UML Specifications
    Sugai, Masahito
    Teruya, Akira
    Iwata, Ehchiro
    Zakaria, Nurul Azma
    Matsumoto, Noriko
    Yoshida, Norihiko
    [J]. PROCEEDINGS OF THE 8TH WSEAS INTERNATIONAL CONFERENCE ON APPLIED COMPUTER SCIENCE (ACS'08): RECENT ADVANCES ON APPLIED COMPUTER SCIENCE, 2008, : 181 - +
  • [23] Defining and Providing Coverage for Assertion-Based Dynamic Verification
    Tong, Jason G.
    Boule, Marc
    Zilic, Zeljko
    [J]. JOURNAL OF ELECTRONIC TESTING-THEORY AND APPLICATIONS, 2010, 26 (02): : 211 - 225
  • [24] A framework of an assertion-based algorithmic debugging for distributed programs
    Ohta, T
    Kinoshita, H
    Kimata, T
    Mizuno, T
    [J]. 15TH INTERNATIONAL CONFERENCE ON INFORMATION NETWORKING, PROCEEDINGS, 2001, : 319 - 324
  • [25] Debugger supports assertion-based system-on-chip verification
    Moretti, G
    [J]. EDN, 2003, 48 (08) : 22 - 22
  • [26] Hybrid, incremental assertion-based verification for TLM design flows
    Bombieri, Nicola
    Fummi, Franco
    Pravadelli, Graziano
    Fedeli, Andrea
    [J]. IEEE DESIGN & TEST OF COMPUTERS, 2007, 24 (02): : 140 - 152
  • [27] An assertion-based verification methodology for system-level design
    Gharehbaghi, Amir Masoud
    Yaran, Benyamin Hamdin
    Hessabi, Shaahin
    Goudarzi, Maziar
    [J]. COMPUTERS & ELECTRICAL ENGINEERING, 2007, 33 (04) : 269 - 284
  • [28] Omnibus verification policies: A flexible, configurable approach to assertion-based software verification
    Wilson, T
    Maharaj, S
    Clark, RG
    [J]. SEFM 2005: THIRD IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND FORMAL METHODS, PROCEEDINGS, 2005, : 150 - 159
  • [29] Panel: Assertion-based verification - What's the big deal?
    Shukla, Sandeep
    Hu, Alan J.
    Abrahams, Jacob
    Ashar, Pranav
    Foster, Harry
    Landver, Avner
    Pixley, Carl
    [J]. HLDVT'06: ELEVENTH ANNUAL IEEE INTERNATIONAL HIGH-LEVEL DESIGN VALIDATION AND TEST WORKSHOP, PROCEEDINGS, 2006, : 183 - 183
  • [30] Advanced Assertion-Based Design for Mixed-Signal Verification
    Jesser, Alexander
    Laemmermann, Stefan
    Pacholik, Alexander
    Weiss, Roland
    Ruf, Juergen
    Hedrich, Lars
    Fengler, Wolfgang
    Kropf, Thomas
    Rosenstiel, Wolfgang
    [J]. IEICE TRANSACTIONS ON FUNDAMENTALS OF ELECTRONICS COMMUNICATIONS AND COMPUTER SCIENCES, 2008, E91A (12) : 3548 - 3555