NetSMC: A Custom Symbolic Model Checker for Stateful Network Verification
Yifei Yuan, Soo-Jin Moon, Sahil Uppal, Limin Jia, Vyas Sekar
Abstract
Modern networks enforce rich and dynamic policies (e.g., dynamic service chaining and path pinning) over a number of complex and stateful NFs (e.g., stateful firewall and load balancer). Verifying if those policies are correctly implemented is important to ensure the network's availability, safety, and security. Unfortunately, theoretical results suggest that verifying even simple policies (e.g., A cannot talk to B) in stateful networks is undecidable. Consequently, any approach for stateful network verification has to fundamentally make some relaxations; e.g., either on policies supported, or the network behaviors it can capture, or in terms of the soundness/completeness guarantees. In this paper, we identify practical opportunities for relaxations in order to develop an efficient verification tool. First, we identify key domain-specific insights to develop a more compact network semantic model which is equivalent to a general semantic model for checking a wide range of policies under practical conditions. Second, we identify a restrictive-yet-expressive policy language to support a wide range of policies including dynamic service chaining and path pinning while enable efficient verification. Third, we develop customized symbolic model checking algorithms as our model and policy specification allows us to succinctly encode network states using existential first-order logic, which enables efficient checking algorithms. We prove the correctness of our approach for a subset of policies and show that our tool, NetSMC, achieves orders of magnitude speedup compared to existing approaches.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 66469d7b-2e5f-42b9-bbbe-59a814acb960Cited by top-tier papers8
- Aragog: Scalable Runtime Verification of Shardable Networked SystemsNofel Yaseen, Behnaz Arzani, Ryan Beckett, Selim Ciraci et al.OSDI 2020 · 19 citations
- Meissa: scalable network testing for programmable data planesNaiqian Zheng, Mengqi Liu, Ennan Zhai, Hongqiang Harry Liu et al.SIGCOMM 2022 · 17 citations
- Don't Yank My Chain: Auditable NF Service ChainingGuyue Liu, Hugo Sadok, Anne Kohlbrenner, Bryan Parno et al.NSDI 2021 · 17 citations
- MeshTest: End-to-End Testing for Service Mesh Traffic ManagementNaiqian Zheng, Tianshuo Qiao, Xuanzhe Liu, Xin JinNSDI 2025 · 7 citations
- EPVerifier: Accelerating Update Storms Verification with Edge-PredicateChenyang Zhao, Yuebin Guo, Jingyu Wang, Qi Qi et al.NSDI 2024 · 7 citations
Related papers
- Liveness Verification of Stateful Network FunctionsFarnaz Yousefi, Anubhavnidhi Abhashkumar, Kausik Subramanian, Kartik Hans et al.NSDI 2020 · 20 citations
- Plankton: Scalable network configuration verification through model checkingSanthosh Prabhu, Kuan-Yen Chou, Ali Kheradmand, Brighten Godfrey et al.NSDI 2020 · 130 citations
- KATch: A Fast Symbolic Verifier for NetKATMark Moeller, Jules Jacobs, Olivier Savary Bélanger, David Darais et al.PLDI 2024 · 9 citations
- Verifying Policy-based Routing at Internet ScaleXiaozhe Shao, Lixin GaoINFOCOM 2020 · 10 citations
- Network Can Help Check Itself: Accelerating SMT-based Network Configuration Verification Using Network Domain KnowledgeXing Fang, Feiyan Ding, Bang Huang, Ziyi Wang et al.INFOCOM 2024 · 12 citations
