Liveness Verification of Stateful Network Functions
Liveness Verification of Stateful Network Functions
复制标题
DOI:
--
复制
发表时间:
2020
期刊:
影响因子:
--
通讯作者:
Farnaz Yousefi;Anubhavnidhi Abhashkumar;Kausik Subramanian;Kartik Hans;S. Ghorbani;Aditya Akella
中科院分区:
文献类型:
--
作者:
Farnaz Yousefi;Anubhavnidhi Abhashkumar;Kausik Subramanian;Kartik Hans;S. Ghorbani;Aditya Akella
Network verification tools focus almost exclusively on various safety properties such as “reachability” invariants, e.g., is there a path from host A to host B ? Thus, they are inappli-cable to providing strong correctness guarantees for modern programmable networks that increasingly rely on stateful network functions . Correct operations of such networks depend on the validity of a larger set of properties, in particular liveness properties. For instance, a stateful firewall that only allows solicited external traffic works correctly if it eventually detects and blocks malicious connections, e.g., if it eventually blocks an external host E that tries to reach the internal host I before receiving a request from I . Alas, verifying liveness properties is computationally expensive and, in some cases, undecidable. Existing verification techniques do not scale to verify such properties. In this work, we provide a compositional programming abstraction, model the programs expressed in this abstraction using compact Boolean formulas, and show that verification of complex properties is fast on these formulas, e.g., for a 100-host network, these formulas result in 8 ⇥ speedup in the verification of key properties of a UDP flood mitigation function compared to a naive baseline. We also provide a compiler that translates the programs written using our abstraction to P4 programs.