Runtime Verification for Programmable Switches

被引:1
|
作者
Shukla, Apoorv [1 ]
Huedemann, Kevin [2 ]
Vagi, Zsolt [3 ]
Huegerich, Lily [4 ]
Smaragdakis, Georgios [5 ]
Hecker, Artur [1 ]
Schmid, Stefan [4 ,6 ]
Feldmann, Anja [7 ]
机构
[1] Huawei Munich Res Ctr, D-80992 Munich, Germany
[2] SAP, D-69190 Walldorf, Germany
[3] Swisscom AG, CH-3048 Bern, Switzerland
[4] Tech Univ Berlin TU Berlin, D-10623 Berlin, Germany
[5] Delft Univ Technol TU Delft, NL-2600 CD Delft, Netherlands
[6] Fraunhofer Inst Secure Informat Technol Fraunhofe, D-64295 Darmstadt, Germany
[7] Max Planck Inst Informat, D-66123 Saarbrucken, Germany
基金
欧洲研究理事会; 奥地利科学基金会;
关键词
Computer bugs; Behavioral sciences; Runtime; Software; Fuzzing; Pipelines; Static analysis; Programmable networks; P4; verification;
D O I
10.1109/TNET.2023.3234931
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We introduce a runtime verification framework for programmable switches that complements static analysis. To evaluate our approach, we design and develop, a runtime verification system that automatically detects, localizes, and patches software bugs in P4 programs. Bugs are reported via a violation of pre-specified expected behavior that is captured by . is based on machine learning-guided fuzzing that tests P4 switch non-intrusively, i.e., without modifying the P4 program for detecting runtime bugs. This enables an automated and real-time localization and patching of bugs. We used a prototype to detect and patch existing bugs in various publicly available P4 application programs deployed on two different switch platforms, namely, behavioral model (bmv2) and Tofino. Our evaluation shows that significantly outperforms bug detection baselines while generating fewer packets and patches bugs in large P4 programs, e.g., switch.p4 without triggering any regressions.
引用
收藏
页码:1822 / 1837
页数:16
相关论文
共 50 条
  • [1] Runtime Programmable Switches
    Xing, Jiarong
    Hsu, Kuo-Feng
    Kadosh, Matty
    Lo, Alan
    Piasetzky, Yonatan
    Krishnamurthy, Arvind
    Chen, Ang
    PROCEEDINGS OF THE 19TH USENIX SYMPOSIUM ON NETWORKED SYSTEMS DESIGN AND IMPLEMENTATION (NSDI '22), 2022, : 651 - 665
  • [2] Fix with P6: Verifying Programmable Switches at Runtime
    Shukla, Apoorv
    Hudemann, Kevin
    Vagi, Zsolt
    Huegerich, Lily
    Smaragdakis, Georgios
    Hecker, Artur
    Schmid, Stefan
    Feldmann, Anja
    IEEE CONFERENCE ON COMPUTER COMMUNICATIONS (IEEE INFOCOM 2021), 2021,
  • [3] Memory Management in ActiveRMT: Towards Runtime-programmable Switches
    Das, Rajdeep
    Snoeren, Alex C.
    PROCEEDINGS OF THE 2023 ACM SIGCOMM 2023 CONFERENCE, SIGCOMM 2023, 2023, : 1043 - 1059
  • [4] Runtime Verification of P4 Switches with Reinforcement Learning
    Shukla, Apoory
    Hudemann, Kevin Nico
    Hecker, Artur
    Schmid, Stefan
    NETAI'19: PROCEEDINGS OF THE 2019 ACM SIGCOMM WORKSHOP ON NETWORK MEETS AI & ML, 2019, : 1 - 7
  • [5] P4runpro: Enabling Runtime Programmability for RMT Programmable Switches
    Yang, Yifan
    He, Lin
    Zhou, Jiasheng
    Shi, Xiaoyi
    Cao, Jiamin
    Liu, Ying
    PROCEEDINGS OF THE 2024 ACM SIGCOMM 2024 CONFERENCE, ACM SIGCOMM 2024, 2024, : 921 - 937
  • [6] SFCache: Hybrid NF Synthesization in Runtime With Rule-Caching in Programmable Switches
    Ma, Zhihuang
    Li, Tingyu
    Xu, Zichen
    da Fonseca, Nelson L. S.
    Zhu, Zuqing
    IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, 2024, 21 (04): : 4613 - 4624
  • [7] Interactive Runtime Verification - When Interactive Debugging meets Runtime Verification
    Jakse, Raphael
    Falcone, Ylies
    Mehaut, Jean-Francois
    Pouget, Kevin
    2017 IEEE 28TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2017, : 182 - 193
  • [8] A Vision for Runtime Programmable Networks
    Xing, Jiarong
    Qiu, Yiming
    Hsu, Kuo-Feng
    Liu, Hongyi
    Kadosh, Matty
    Lo, Alan
    Akella, Aditya
    Anderson, Thomas
    Krishnamurthy, Arvind
    Ng, T. S. Eugene
    Chen, Ang
    PROCEEDINGS OF THE THE 20TH ACM WORKSHOP ON HOT TOPICS IN NETWORKS, HOTNETS 2021, 2021, : 91 - 98
  • [9] Runtime Verification for HyperLTL
    Bonakdarpour, Borzoo
    Finkbeiner, Bernd
    RUNTIME VERIFICATION, (RV 2016), 2016, 10012 : 41 - 45
  • [10] P4-Ace: Resource-Efficient Optimization and Verification for Programmable Switches
    Cui, Zixi
    Hou, Saifeng
    Tian, Le
    Wang, Yu
    Yi, Xiaoyu
    Wang, Yongjie
    Yi, Peng
    Chen, Hongchang
    PROCEEDINGS OF THE 2024 SIGCOMM WORKSHOP ON FORMAL METHODS AIDED NETWORK OPERATION, FMANO 2024, 2024, : 8 - 13