Ensuring the correctness of programmable data planes is important. Testing offers comprehensive correctness checking, including detecting both code bugs and non-code bugs. However, scalability is a key challenge for testing production-scale data planes to achieve high coverage. This paper presents Meissa, a scalable network testing system for programmable data planes with full path coverage. The core of Meissa is a domain-specific code summary technique that simplifies the control flow graph of a data plane program for scalable testing without sacrificing coverage. Code summary decomposes a data plane program into individual pipelines, and summarizes each pipeline with a succinct representation. We formally prove that Meissa with code summary achieves 100% path coverage. We use both open-source and production-scale data plane programs to evaluate Meissa. The evaluation shows that (i) Meissa is able to test production-scale data plane programs that cannot be supported by state-of-The-Art efforts, and (ii) besides P4 code bugs, Meissa is able to not only identify known non-code bugs, but also detect previously-unknown non-code bugs. We also share in this paper several real cases tested by Meissa in a production programmable data plane.
CITATION STYLE
Zheng, N., Liu, M., Zhai, E., Liu, H. H., Li, Y., Yang, K., … Jin, X. (2022). Meissa: Scalable network testing for programmable data planes. In SIGCOMM 2022 - Proceedings of the ACM SIGCOMM 2022 Conference (pp. 350–364). Association for Computing Machinery, Inc. https://doi.org/10.1145/3544216.3544247
Mendeley helps you to discover research relevant for your work.