Modular Control Plane Verification via Temporal Invariants

被引:4
|
作者
Thijm, Timothy Alberdingk [1 ]
Beckett, Ryan [2 ]
Gupta, Aarti [1 ]
Walker, David [1 ]
机构
[1] Princeton Univ, Princeton, NJ 08544 USA
[2] Microsoft Res, Redmond, WA USA
基金
美国国家科学基金会;
关键词
formal network verification; compositional reasoning; modular verification; GUARANTEE; ASSUME; CHECKING; PROOFS; RULE;
D O I
10.1145/3591222
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Monolithic control plane verification cannot scale to hyperscale network architectures with tens of thousands of nodes, heterogeneous network policies and thousands of network changes a day. Instead, modular verification offers improved scalability, reasoning over diverse behaviors, and robustness following policy updates. We introduce Timepiece, a new modular control plane verification system. While one class of verifiers, starting with Minesweeper, were based on analysis of stable paths, we show that such models, when deployed naively for modular verification, are unsound. To rectify the situation, we adopt a routing model based around a logical notion of time and develop a sound, expressive, and scalable verification engine. Our system requires that a user specifies interfaces between module components. We develop methods for defining these interfaces using predicates inspired by temporal logic, and show how to use those interfaces to verify a range of network-wide properties such as reachability or access control. Verifying a prefix-filtering policy using a non-modular verification engine times out on an 80-node fattree network after 2 hours. However, Timepiece verifies a 2,000-node fattree in 2.37 minutes on a 96-core virtual machine. Modular verification of individual routers is embarrassingly parallel and completes in seconds, which allows verification to scale beyond non-modular engines, while still allowing the full power of SMT-based symbolic reasoning.
引用
收藏
页码:50 / 75
页数:26
相关论文
共 50 条
  • [1] Modular verification of static class invariants
    Leino, KRM
    Müller, P
    FM 2005: FORMAL METHODS, PROCEEDINGS, 2005, 3582 : 26 - 42
  • [2] Synthesizing Environment Invariants for Modular Hardware Verification
    Zhang, Hongce
    Yang, Weikun
    Fedyukovich, Grigory
    Gupta, Aarti
    Malik, Sharad
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2020, 2020, 11990 : 202 - 225
  • [3] Modular Verification of Opacity for Interconnected Control Systems via Barrier Certificates
    Kalat, Shadi Tasdighi
    Liu, Siyuan
    Zamani, Majid
    IEEE CONTROL SYSTEMS LETTERS, 2022, 6 : 890 - 895
  • [4] ProMoVer: Modular Verification of Temporal Safety Properties
    Soleimanifard, Siavash
    Gurov, Dilian
    Huisman, Marieke
    SOFTWARE ENGINEERING AND FORMAL METHODS, 2011, 7041 : 366 - +
  • [5] CoVEGI: Cooperative Verification via Externally Generated Invariants
    Haltermann, Jan
    Wehrheim, Heike
    FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING (FASE 2021), 2021, 12649 : 108 - 129
  • [6] MODULAR VERIFICATION OF PETRI NETS - THE TEMPORAL LOGIC APPROACH
    DAMM, W
    DOHMEN, G
    GERSTNER, V
    JOSKO, B
    LECTURE NOTES IN COMPUTER SCIENCE, 1990, 430 : 180 - 207
  • [7] Geometric Interpretation of Hermitian Modular Forms via Burkhardt Invariants
    Nagano, Atsuhira
    Shiga, Hironori
    TRANSFORMATION GROUPS, 2024, 29 (01) : 253 - 275
  • [8] Geometric Interpretation of Hermitian Modular Forms via Burkhardt Invariants
    Atsuhira Nagano
    Hironori Shiga
    Transformation Groups, 2024, 29 : 253 - 275
  • [9] Integrating Verification and Repair into the Control Plane
    Gember-Jacobson, Aaron
    Raiciu, Costin
    Vanbever, Laurent
    HOTNETS-XVI: PROCEEDINGS OF THE 16TH ACM WORKSHOP ON HOT TOPICS IN NETWORKS, 2017, : 129 - 135
  • [10] Real Time Control Plane Verification
    Li, Yifan
    Jia, Jake
    Hu, Xiaohe
    Li, Jun
    NETPL'19: PROCEEDINGS OF THE 2019 ACM SIGCOMM WORKSHOP ON NETWORKING AND PROGRAMMING LANGUAGES, 2019, : 2 - 2