NetChecker: enabling real-time and error-locatable runtime verification for programmable networks

Abstract Runtime errors may occur in programmable networks due to incorrect table hits, erroneous rule matches, and mistakes in the P4 pipeline, which cannot be debugged and repaired before program deployment. In this paper, we present the design and implementation of NetChecker, a real-time and err...

Full description

Saved in:
Bibliographic Details
Main Authors: Ying Yao, Le Tian, Yuxiang Hu
Format: Article
Language:English
Published: Springer 2025-06-01
Series:Journal of King Saud University: Computer and Information Sciences
Subjects:
Online Access:https://doi.org/10.1007/s44443-025-00083-6
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Abstract Runtime errors may occur in programmable networks due to incorrect table hits, erroneous rule matches, and mistakes in the P4 pipeline, which cannot be debugged and repaired before program deployment. In this paper, we present the design and implementation of NetChecker, a real-time and error-locatable runtime verification system for programmable networks. NetChecker enables the developer to freely express their verification and error localization requirements for any data plane programs using a high-level specification language named Language Aided Verification (LAV), referred to as the LAV program. Furthermore, NetChecker employs a set of translators to convert the aforementioned LAV program into a snippet of the target data plane program, enabling concurrent verification and error localization with the target data plane program execution. Experimental results in diverse network scenarios and open-source programs demonstrate that NetChecker is capable of detecting potential errors in real time and locating them without introducing significant overhead in programmable networks.
ISSN:1319-1578
2213-1248