arrow
Return

Runtime Verification for Programmable Switches

delete2023-08-01
delete1
delete
OA
AI
A
Apoorv Shukla *
H
Huedemann, Kevin
Z
Zsolt Vági
L
Lily Hügerich
G
Georgios Smaragdakis
A
Artur Hecker
S
Stefan Schmid
A
Anja Feldmann
DOI:10.1109/TNET.2023.3234931delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
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.
Keywords:
Computer bugs
Behavioral sciences
Runtime
Software
Fuzzing
Pipelines
Static analysis
Programmable networks
P4
verification

Journal

I
IEEE-ACM Transactions on Networking
IF:
3.6
Papers:
4.4K
Citations:
9.5K

Organization

S
sap
Scholars:
69
Papers: 70
Citations: 0
H
huawei technologies
Scholars:
3.3K
Papers: 2.9K
Citations: 1
D
Delft University of Technology
Scholars:
2.6W
Papers: 2.5W
Citations: 3.8W
M
Max Planck Society
Scholars:
8.2W
Papers: 7.7W
Citations: 3.3W
F
fraunhofer gesellschaft
Scholars:
1.6W
Papers: 1.2W
Citations: 24
researcher View more organizations