Network Change Validation with Relational NetKAT
Han Xu, Zachary Kincaid, Ratul Mahajan, David Walker
Abstract
Relational NetKAT (RN) is a new specification language for network change validation. Engineers use RN to specify intended changes by providing a trace relation 𝑅, which maps existing packet traces in the pre-change network to intended packet traces in the post-change network. The intended set of traces may then be checked against the actual post-change traces to uncover errors in implementation. Trace relations are constructed compositionally from a language of combinators that include trace insertion, trace deletion, and packet transformation, as well as regular operators for concatenation, union, and iteration of relations. We provide algorithms for converting trace relations into a new form of NetKAT transducer and also for constructing an automaton that recognizes the image of a NetKAT automaton under a NetKAT transducer. These algorithms, together with existing decision procedures for NetKAT automaton equivalence, suffice for validating network changes. We provide a denotational semantics for our specification language, prove our compilation algorithms correct, implement a tool for network change validation, and evaluate it on a set of benchmarks drawn from a production network and Amazon's Batfish toolkit.
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 4dc6274c-ae14-4e26-8c9b-8f1a4224a999Builds on3
- Finding Network Misconfigurations by Automatic Template InferenceSiva Kesava Reddy K., Alan Tang, Ryan Beckett, Karthick Jayaraman et al.NSDI 2020 · 53 citations
- Relational Network VerificationXieyang Xu, Yifei Yuan, Zachary Kincaid, Arvind Krishnamurthy et al.SIGCOMM 2024 · 17 citations
- KATch: A Fast Symbolic Verifier for NetKATMark Moeller, Jules Jacobs, Olivier Savary Bélanger, David Darais et al.PLDI 2024 · 9 citations
Related papers
- StacKAT: Infinite State Network VerificationJules Jacobs, Nate Foster, Tobias Kappé, Dexter Kozen et al.PLDI 2025
- An Algebraic Language for Specifying Quantum NetworksAnita Buckley, Pavel Chuprikov, Rodrigo Otoni, Robert Soulé et al.PLDI 2024 · 3 citations
- Lessons from the evolution of the Batfish configuration analysis toolMatt Brown, Ari Fogel, Daniel Halperin, Victor Heorhiadi et al.SIGCOMM 2023 · 37 citations
- An Algebra of Alignment for Relational VerificationTimos Antonopoulos, Eric Koskinen, Ton Chanh Le, Ramana Nagasamudram et al.POPL 2023 · 17 citations
- Weighted NetKAT: A Programming Language for Quantitative Network VerificationEmmanuel Suárez Acevedo, Tiago Ferreira, Kevin Batz, Oliver Bøving et al.PLDI 2026 · 1 citation
