{"title":"高效网络验证的精确表达格理论框架","authors":"Alex Horn, A. Kheradmand, M. Prasad","doi":"10.1109/ICNP.2019.8888144","DOIUrl":null,"url":null,"abstract":"Network verification promises to detect errors, such as black holes and forwarding loops, by logically analyzing the control or data plane. To do so efficiently, the state-of-the-art (e.g., Veriflow) partitions packet headers with identical forwarding behavior into the same packet equivalence class (PEC).Recently, Yang and Lam showed how to construct the minimal set of PECs, called atomic predicates. Their construction uses Binary Decision Diagrams (BDDs). However, BDDs have been shown to incur significant overhead per packet header bit, performing poorly when analyzing large-scale data centers. The overhead of atomic predicates prompted ddNF to devise a specialized data structure of Ternary Bit Vectors (TBV) instead.However, TBVs are strictly less expressive than BDDs. Moreover, unlike atomic predicates, ddNF’s set of PECs is not minimal. We show that ddNF’s non-minimality is due to empty PECs. In addition, empty PECs are shown to trigger wrong analysis results. This reveals an inherent tension between precision, expressiveness and performance in formal network verification.Our paper resolves this tension through a new lattice-theoretical PEC-construction algorithm, # PEC, that advances the field as follows: (i) # PEC can encode more kinds of forwarding rules (e.g., ip-tables) than ddNF and Veriflow, (ii) # PEC verifies a wider class of errors (e.g., shadowed rules) than ddNF, and (iii) on a broad range of real-world datasets, # PEC is 10\\times faster than atomic predicates. By achieving precision, expressiveness and performance, this paper answers a longstanding quest that has spanned three generations of formal network analysis techniques.","PeriodicalId":385397,"journal":{"name":"2019 IEEE 27th International Conference on Network Protocols (ICNP)","volume":"37 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-08-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":"{\"title\":\"A Precise and Expressive Lattice-theoretical Framework for Efficient Network Verification\",\"authors\":\"Alex Horn, A. Kheradmand, M. Prasad\",\"doi\":\"10.1109/ICNP.2019.8888144\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Network verification promises to detect errors, such as black holes and forwarding loops, by logically analyzing the control or data plane. To do so efficiently, the state-of-the-art (e.g., Veriflow) partitions packet headers with identical forwarding behavior into the same packet equivalence class (PEC).Recently, Yang and Lam showed how to construct the minimal set of PECs, called atomic predicates. Their construction uses Binary Decision Diagrams (BDDs). However, BDDs have been shown to incur significant overhead per packet header bit, performing poorly when analyzing large-scale data centers. The overhead of atomic predicates prompted ddNF to devise a specialized data structure of Ternary Bit Vectors (TBV) instead.However, TBVs are strictly less expressive than BDDs. Moreover, unlike atomic predicates, ddNF’s set of PECs is not minimal. We show that ddNF’s non-minimality is due to empty PECs. In addition, empty PECs are shown to trigger wrong analysis results. This reveals an inherent tension between precision, expressiveness and performance in formal network verification.Our paper resolves this tension through a new lattice-theoretical PEC-construction algorithm, # PEC, that advances the field as follows: (i) # PEC can encode more kinds of forwarding rules (e.g., ip-tables) than ddNF and Veriflow, (ii) # PEC verifies a wider class of errors (e.g., shadowed rules) than ddNF, and (iii) on a broad range of real-world datasets, # PEC is 10\\\\times faster than atomic predicates. By achieving precision, expressiveness and performance, this paper answers a longstanding quest that has spanned three generations of formal network analysis techniques.\",\"PeriodicalId\":385397,\"journal\":{\"name\":\"2019 IEEE 27th International Conference on Network Protocols (ICNP)\",\"volume\":\"37 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-08-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"10\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2019 IEEE 27th International Conference on Network Protocols (ICNP)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICNP.2019.8888144\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 IEEE 27th International Conference on Network Protocols (ICNP)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICNP.2019.8888144","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10
摘要
网络验证承诺通过逻辑分析控制平面或数据平面来检测诸如黑洞和转发环路等错误。为了有效地做到这一点,最先进的技术(例如,Veriflow)将具有相同转发行为的数据包头划分到相同的数据包等价类(PEC)中。最近,Yang和Lam展示了如何构建pec的最小集合,称为原子谓词。它们的构造使用二进制决策图(bdd)。然而,bdd在每个包报头位上会产生巨大的开销,在分析大型数据中心时表现不佳。原子谓词的开销促使ddNF转而设计一种专门的三元比特向量(Ternary Bit Vectors, TBV)数据结构。然而,tbv的表现力严格来说不如bdd。此外,与原子谓词不同,ddNF的PECs集合不是最小的。我们证明了ddNF的非极小性是由于空的pec。此外,空的pec显示会触发错误的分析结果。这揭示了在正式网络验证中精确性、表现力和性能之间的内在张力。我们的论文通过一种新的格理论PEC构建算法# PEC解决了这种紧张关系,该算法将该领域推进如下:(i) # PEC可以编码比ddNF和Veriflow更多种类的转发规则(例如,ip表),(ii) # PEC验证比ddNF更广泛的错误类别(例如,阴影规则),以及(iii)在广泛的现实世界数据集上,# PEC比原子谓词快10倍。通过实现精度、表现力和性能,本文回答了一个跨越三代正式网络分析技术的长期探索。
A Precise and Expressive Lattice-theoretical Framework for Efficient Network Verification
Network verification promises to detect errors, such as black holes and forwarding loops, by logically analyzing the control or data plane. To do so efficiently, the state-of-the-art (e.g., Veriflow) partitions packet headers with identical forwarding behavior into the same packet equivalence class (PEC).Recently, Yang and Lam showed how to construct the minimal set of PECs, called atomic predicates. Their construction uses Binary Decision Diagrams (BDDs). However, BDDs have been shown to incur significant overhead per packet header bit, performing poorly when analyzing large-scale data centers. The overhead of atomic predicates prompted ddNF to devise a specialized data structure of Ternary Bit Vectors (TBV) instead.However, TBVs are strictly less expressive than BDDs. Moreover, unlike atomic predicates, ddNF’s set of PECs is not minimal. We show that ddNF’s non-minimality is due to empty PECs. In addition, empty PECs are shown to trigger wrong analysis results. This reveals an inherent tension between precision, expressiveness and performance in formal network verification.Our paper resolves this tension through a new lattice-theoretical PEC-construction algorithm, # PEC, that advances the field as follows: (i) # PEC can encode more kinds of forwarding rules (e.g., ip-tables) than ddNF and Veriflow, (ii) # PEC verifies a wider class of errors (e.g., shadowed rules) than ddNF, and (iii) on a broad range of real-world datasets, # PEC is 10\times faster than atomic predicates. By achieving precision, expressiveness and performance, this paper answers a longstanding quest that has spanned three generations of formal network analysis techniques.