P4R-Type: A Verified API for P4 Control Plane Programs

被引:2
|
作者
Larsen, Jens Kanstrup [1 ]
Guanciale, Roberto [2 ]
Haller, Philipp [2 ]
Scalas, Alceste [1 ]
机构
[1] Tech Univ Denmark, DTU Compute, Bygning 321, DK-2800 Lyngby, Denmark
[2] KTH Royal Inst Technol, Dept Comp Sci, Lindstedtsvagen 5,Plan 5, S-11428 Stockholm, Sweden
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2023年 / 7卷 / OOPSLA期
关键词
Software-defined networking; P4; P4Runtime; Type systems; Semantics;
D O I
10.1145/3622866
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software-Defined Networking (SDN) significantly simplifies programming, reconfiguring, and optimizing network devices, such as switches and routers. The de facto standard for programming SDN devices is the P4 language. However, the flexibility and power of P4, and SDN more generally, gives rise to important risks. As a number of incidents at major cloud providers have shown, errors in SDN programs can compromise the availability of networks, leaving them in a non-functional state. The focus of this paper are errors in control-plane programs that interact with P4-enabled network devices via the standardized P4Runtime API. For clients of the P4Runtime API it is easy to make mistakes that may lead to catastrophic failures, despite the use of Google's Protocol Buffers as an interface definition language. This paper proposes P4R-Type, a novel verified P4Runtime API for Scala that performs static checks for P4 control plane operations, ruling out mismatches between P4 tables, allowed actions, and action parameters. As a formal foundation of P4R-Type, we present the F-P4R calculus and its typing system, which ensure that well-typed programs never get stuck by issuing invalid P4Runtime operations. We evaluate the safety and flexibility of P4R-Type with 3 case studies. To the best of our knowledge, this is the first work that formalises P4Runtime control plane applications, and a typing discipline ensuring the correctness of P4Runtime operations.
引用
收藏
页数:29
相关论文
共 50 条
  • [1] P4CGO: Control Plane Guided P4 Program Optimization
    Wen, Chenan
    Li, Zhuocong
    Jafri, Syed Usman
    Qiu, Xiaokang
    Rao, Sanjay
    PROCEEDINGS OF THE 2024 SIGCOMM WORKSHOP ON FORMAL METHODS AIDED NETWORK OPERATION, FMANO 2024, 2024, : 1 - 7
  • [2] Debugging P4 programs with Vera
    Stoenescu, Radu
    Dumitrescu, Dragos
    Popovici, Matei
    Negreanu, Lorina
    Raiciu, Costin
    PROCEEDINGS OF THE 2018 CONFERENCE OF THE ACM SPECIAL INTEREST GROUP ON DATA COMMUNICATION (SIGCOMM '18), 2018, : 518 - 532
  • [3] Composing Dataplane Programs with μP4
    Soni, Hardik
    Rifai, Myriana
    Kumar, Praveen
    Doenges, Ryan
    Foster, Nate
    SIGCOMM '20: PROCEEDINGS OF THE 2020 ANNUAL CONFERENCE OF THE ACM SPECIAL INTEREST GROUP ON DATA COMMUNICATION ON THE APPLICATIONS, TECHNOLOGIES, ARCHITECTURES, AND PROTOCOLS FOR COMPUTER COMMUNICATION, 2020, : 329 - 343
  • [4] P4B: A Translator from P4 Programs to Boogie
    Ye, Chong
    He, Fei
    PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 2172 - 2176
  • [5] ON THE HAMILTONIAN P4 +V(R)
    BOLLINI, CG
    GIAMBIAGI, JJ
    HELMAN, JS
    NUOVO CIMENTO DELLA SOCIETA ITALIANA DI FISICA A-NUCLEI PARTICLES AND FIELDS, 1989, 101 (04): : 583 - 596
  • [6] Surfaces in P4 with a family of plane curves
    Beorchia, V.
    Sacchiero, G.
    JOURNAL OF PURE AND APPLIED ALGEBRA, 2009, 213 (09) : 1750 - 1755
  • [7] P4 Medicine Needs P4 Education
    Cesario, Alfredo
    Auffray, Charles
    Russo, Patrizia
    Hood, Leroy
    CURRENT PHARMACEUTICAL DESIGN, 2014, 20 (38) : 6071 - 6072
  • [8] P4BID: Information Flow Control in P4
    Grewal, Karuna
    D'Antoni, Loris
    Hsu, Justin
    PROCEEDINGS OF THE 43RD ACM SIGPLAN INTERNATIONAL CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '22), 2022, : 46 - 60
  • [9] HOMOATOMIC CLUSTERS OF THE MAIN-GROUP ELEMENTS - P4(2+), P4, P4(2-), AND P4(4-)
    WARREN, DS
    GIMARC, BM
    ABSTRACTS OF PAPERS OF THE AMERICAN CHEMICAL SOCIETY, 1991, 201 : 319 - INOR
  • [10] P4AIG: Circuit-Level Verification of P4 programs
    Noureddine, Mohammad A.
    Hsu, Amanda
    Caesar, Matthew
    Zaraket, Fadi A.
    Sanders, William H.
    2019 49TH ANNUAL IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS - SUPPLEMENTAL VOL (DSN-S), 2019, : 21 - 22