Fast Inverse Model Transformation: Algebraic Framework for Fast Data Plane Verification (2401.13488v2)
Abstract: Data plane verification (DPV) analyzes routing tables and detects routing abnormalities and policy violations during network operation and planning. Thus, it has become an important tool to harden the networking infrastructure and the computing systems building on top. Substantial advancements have been made in the last decade and state-of-the-art DPV systems can achieve sub-us verification for an update of a single forwarding rule. In this paper, we introduce fast inverse model transformation (FIMT), the first theoretical framework to systematically model and analyze centralized DPV systems. FIMT reveals the algebraic structure in the model update process, a key step in fast DPV systems. Thus, it can systematically analyze the correctness of several DPV systems, using algebraic properties. The theory also guides the design and implementation of NeoFlash, a refactored version of Flash with new optimization techniques. Evaluations show that NeoFlash outperforms existing state-of-the-art centralized DPV systems in various datasets and reveal insights to key techniques towards fast DPV.
- Pavan Gumaste. Amazon AWS outage, 2020. URL https://www.whizlabs.com/blog/amazon-aws-outage/.
- Jay Peters. Prolonged AWS outage takes down a big chunk of the internet, 2020. URL https://www.theverge.com/2020/11/25/21719396/amazon-web-services-aws-outage-down-internet.
- Alex Hern. Google Suffers Global Outage with Gmail, YouTube and Majority of Services Affected, 2020. URL https://www.theguardian.com/technology/2020/dec/14/google-suffers-worldwide-outage-with-gmail-youtube-and-other-services-down.
- Facebook. More details about the October 4 outage, October 2021. URL https://engineering.fb.com/2021/10/05/networking-traffic/outage-details/.
- Don’t Mind the Gap: Bridging Network-wide Objectives and Device-level Configurations. In Proceedings of the 2016 ACM SIGCOMM Conference, SIGCOMM ’16, pages 328–341, New York, NY, USA, 2016. ACM. URL http://doi.acm.org/10.1145/2934872.2934909.
- NetComplete: Practical Network-Wide Configuration Synthesis with Autocompletion. In 15th USENIX Symposium on Networked Systems Design and Implementation, NSDI’18, pages 579–594, Renton, WA, April 2018. USENIX Association. URL https://www.usenix.org/conference/nsdi18/presentation/el-hassany.
- Network Configuration Synthesis with Abstract Topologies. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017, pages 437–451, New York, NY, USA, 2017. ACM. URL http://doi.acm.org/10.1145/3062341.3062367.
- Scalable Verification of Border Gateway Protocol Configurations with an SMT Solver. In Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA ’16, pages 765–780, Amsterdam, Netherlands, 2016.
- A General Approach to Network Configuration Analysis. In 12th USENIX Symposium on Networked Systems Design and Implementation, NSDI ’15, pages 469–483, 2015.
- Accuracy, Scalability, Coverage: A Practical Configuration Verifier on a Global WAN. In Proceedings of the Annual Conference of the ACM Special Interest Group on Data Communication on the Applications, Technologies, Architectures, and Protocols for Computer Communication, SIGCOMM’20, pages 599–614, Virtual Event USA, July 2020. ACM. URL https://dl.acm.org/doi/10.1145/3387514.3406217.
- Efficient Network Reachability Analysis using a Succinct Control Plane Representation. In 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI’16, pages 217–232. USENIX Association, 2016.
- Abstract Interpretation of Distributed Network Control Planes. In Proceedings of the ACM on Programming Languages, volume 4 of POPL’19, pages 1–27, New York, NY, USA, December 2019. Association for Computing Machinery. URL https://doi.org/10.1145/3371110.
- Automatically Repairing Network Control Planes Using an Abstract Representation. In Proceedings of the 26th Symposium on Operating Systems Principles, SOSP ’17, pages 359–373, New York, NY, USA, 2017. ACM. URL http://doi.acm.org/10.1145/3132747.3132753.
- Tiramisu: Fast and General Network Verification. In arXiv:1906.02043 [Cs], June 2019. URL http://arxiv.org/abs/1906.02043.
- Plankton: Scalable Network Configuration Verification through Model Checking. In 17th USENIX Symposium on Networked Systems Design and Implementation, NSDI ’20, pages 953–967, 2020.
- On Static Reachability Analysis of IP Networks. In Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies., volume 3 of INFOCOM’05, pages 2170–2183 vol. 3. IEEE, March 2005.
- FlowChecker: Configuration Analysis and Verification of Federated OpenFlow Infrastructures. In Proceedings of the 3rd ACM Workshop on Assurable and Usable Security Configuration, SafeConfig ’10, pages 37–44, 2010.
- Debugging the Data Plane with Anteater. In Proceedings of the ACM SIGCOMM 2011 Conference, SIGCOMM ’11, pages 290–301, Toronto, Ontario, Canada, 2011. Association for Computing Machinery. URL https://doi.org/10.1145/2018436.2018470.
- Header space analysis: Static checking for networks. In 9th USENIX Symposium on Networked Systems Design and Implementation, NSDI’12, pages 113–126, San Jose, CA, April 2012. USENIX Association. URL https://www.usenix.org/conference/nsdi12/technical-sessions/presentation/kazemian.
- Libra: Divide and Conquer to Verify Forwarding Tables in Huge Networks. In 11th USENIX Symposium on Networked Systems Design and Implementation, NSDI’14, pages 87–99, Seattle, WA, April 2014. USENIX Association. URL https://www.usenix.org/conference/nsdi14/technical-sessions/presentation/zeng.
- Scaling Network Verification using Symmetry and Surgery. In ACM SIGPLAN Notices, volume 51, pages 69–83, 2016.
- Real-time verification of network properties using atomic predicates. In 2013 21st IEEE International Conference on Network Protocols, ICNP ’13, pages 1–11, 2013.
- Practical Network-wide Packet Behavior Identification by AP Classifier. In Proceedings of the 11th ACM Conference on Emerging Networking Experiments and Technologies, CoNEXT’15, pages 1–13, 2015.
- VeriFlow: Verifying Network-wide Invariants in Real Time. In 10th USENIX Symposium on Networked Systems Design and Implementation, NSDI’13, pages 15–27, Lombard, IL, April 2013. USENIX Association. URL https://www.usenix.org/conference/nsdi13/technical-sessions/presentation/khurshid.
- Delta-net: Real-time Network Verification Using Atoms. In 14th USENIX Symposium on Networked Systems Design and Implementation, NSDI’17, pages 735–749, Boston, MA, 2017. USENIX Association. URL https://www.usenix.org/conference/nsdi17/technical-sessions/presentation/horn-alex.
- APKeep: Realtime Verification for Real Networks. In 17th USENIX Symposium on Networked Systems Design and Implementation, NSDI’20, pages 241–255, Santa Clara, CA, February 2020. USENIX Association. URL https://www.usenix.org/conference/nsdi20/presentation/zhang-peng.
- Flash: Fast, consistent data plane verification for large-scale network settings. In Proceedings of the ACM SIGCOMM 2022 Conference, SIGCOMM ’22, pages 314–335, New York, NY, USA, 2022. Association for Computing Machinery. URL https://doi.org/10.1145/3544216.3544246.
- Checking Beliefs in Dynamic Networks. In 12th USENIX Symposium on Networked Systems Design and Implementation, NSDI’15, pages 499–512, Oakland, CA, May 2015. USENIX Association. URL https://www.usenix.org/conference/nsdi15/technical-sessions/presentation/lopes.
- Scalable Verification of Networks with Packet Transformers Using Atomic Predicates. IEEE/ACM Transactions on Networking, 25(5):2900–2915, 2017.
- Real time network policy checking using header space analysis. In 10th USENIX Symposium on Networked Systems Design and Implementation, NSDI’13, pages 99–111, Lombard, IL, April 2013. USENIX Association. URL https://www.usenix.org/conference/nsdi13/technical-sessions/presentation/kazemian.
- Differential Network Analysis. In 19th USENIX Symposium on Networked Systems Design and Implementation, NSDI’22, pages 601–615, Renton, WA, April 2022. USENIX Association. URL https://www.usenix.org/conference/nsdi22/presentation/zhang-peng.
- Poster: Scaling data plane verification with throughput-optimized atomic predicates. In Proceedings of the ACM SIGCOMM 2023 Conference, ACM SIGCOMM ’23, pages 1141–1143, New York, NY, USA, 2023. Association for Computing Machinery. URL https://doi.org/10.1145/3603269.3610845.
- Validating Datacenters at Scale. In Proceedings of the ACM Special Interest Group on Data Communication, SIGCOMM’19, pages 200–213, Beijing China, August 2019. ACM. URL https://dl.acm.org/doi/10.1145/3341302.3342094.
- CIDR Report, 2024. URL https://www.cidr-report.org/as2.0/.
- ddNF: An Efficient Data Structure for Header Spaces. In Roderick Bloem and Eli Arbel, editors, Hardware and Software: Verification and Testing, volume 10028, pages 49–64. Springer International Publishing, Cham, 2016. URL http://link.springer.com/10.1007/978-3-319-49052-6_4.
- A Precise and Expressive Lattice-theoretical Framework for Efficient Network Verification. In 2019 IEEE 27th International Conference on Network Protocols, ICNP ’19, pages 1–12, 2019.
- Katra: Realtime Verification for Multilayer Networks. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22), pages 617–634, Renton, WA, April 2022. USENIX Association. URL https://www.usenix.org/conference/nsdi22/presentation/beckett.
- Beyond a centralized verifier: Scaling data plane checking via distributed, on-device verification. In Proceedings of the ACM SIGCOMM 2023 Conference, ACM SIGCOMM ’23, pages 152–166, New York, NY, USA, 2023. Association for Computing Machinery. URL https://doi.org/10.1145/3603269.3604843.
- Arash Vahidi. A BDD and Z-BDD Library written in Java, 2020. URL https://bitbucket.org/vahidi/jdd.
- Making Data Structures Persistent. Journal of computer and system sciences, 38(1):86–124, 1989.
- Alexey Andreyev. Introducing Data Center Fabric, the Next-generation Facebook Data Center Network - Engineering at Meta, 2014. URL https://engineering.fb.com/2014/11/14/production-engineering/introducing-data-center-fabric-the-next-generation-facebook-data-center-network/.
- Predicting the performance impact of different fat-tree configurations. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, pages 1–13, Denver Colorado, November 2017. ACM. URL https://dl.acm.org/doi/10.1145/3126908.3126967.
- Flow algebra: Towards an efficient, unifying framework for network management tasks. In IEEE INFOCOM 2021-IEEE Conference on Computer Communications, pages 1–10. IEEE, 2021.
- P4K: A formal semantics of P4 and applications. arXiv preprint arXiv:1804.01468, 2018.
- Petr4: Formal foundations for p4 data planes. Proc. ACM Program. Lang., 5(POPL):1–32, January 2021. URL https://dl.acm.org/doi/10.1145/3434322.