Hydra: Effective Runtime Network Verification

被引:1
|
作者
Renganathan, Sundararajan [1 ]
Rubin, Benny [2 ]
Kim, Hyojoon [3 ]
Ventre, Pier Luigi [4 ]
Cascone, Carmelo [4 ]
Moro, Daniele [4 ]
Chan, Charles [4 ]
McKeown, Nick [1 ,4 ]
Foster, Nate [2 ]
机构
[1] Stanford Univ, Stanford, CA 94305 USA
[2] Cornell Univ, Ithaca, NY USA
[3] Princeton Univ, Princeton, NJ 08544 USA
[4] Intel, Santa Clara, CA USA
关键词
Programmable networks; runtime verification; P4;
D O I
10.1145/3603269.3604856
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
It is notoriously difficult to verify that a network is behaving as intended, especially at scale. This paper presents Hydra, a system that uses ideas from runtime verification to check that every packet is correctly processed with respect to a specification in real time. We propose a domain-specific language for writing properties, called Indus, and we develop a compiler that turns properties thus specified into executable P4 code that runs alongside the forwarding code at line rate. To evaluate our approach, we used Indus to model a range of properties, showing that it is expressive enough to capture examples studied in prior work. We also deployed Hydra checkers for validating paths in source routing and for enforcing slice isolation in Aether, an open-source cellular platform. We confirmed a subtle bug in Aether's 5G mobile core that would have been hard to detect using static techniques. We also evaluated the overheads of Hydra on hardware, finding that it does not significantly increase latency and often does not require additional pipeline stages.
引用
收藏
页码:182 / 194
页数:13
相关论文
共 50 条
  • [1] VeriNeS: Runtime Verification of Outsourced Network Services Orchestration
    Zoure, Moubarak
    Ahmed, Toufik
    Reveillere, Laurent
    36TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2021, 2021, : 1138 - 1146
  • [2] Defensing the Malicious Attacks of Vehicular Network in Runtime Verification Perspective
    Zhang, Xiang
    Feng, Wufeng
    Wang, Jiangtao
    Wang, Zhenghui
    2016 IEEE INTERNATIONAL CONFERENCE ON ELECTRONIC INFORMATION AND COMMUNICATION TECHNOLOGY ICEICT 2016 PROCEEDINGS, 2016, : 126 - 133
  • [3] Interactive Runtime Verification - When Interactive Debugging meets Runtime Verification
    Jakse, Raphael
    Falcone, Ylies
    Mehaut, Jean-Francois
    Pouget, Kevin
    2017 IEEE 28TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2017, : 182 - 193
  • [4] Runtime Verification for HyperLTL
    Bonakdarpour, Borzoo
    Finkbeiner, Bernd
    RUNTIME VERIFICATION, (RV 2016), 2016, 10012 : 41 - 45
  • [5] Architectural Runtime Verification
    Stockmann, Lars
    Laux, Sven
    Bodden, Eric
    2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE COMPANION (ICSA-C 2019), 2019, : 77 - 84
  • [6] Runtime Verification for Blockchains
    Ganguly, Ritam
    2021 40TH INTERNATIONAL SYMPOSIUM ON RELIABLE DISTRIBUTED SYSTEMS (SRDS 2021), 2021, : 347 - 348
  • [7] Case Study: Runtime Safety Verification of Neural Network Controlled System
    Yang, Frank
    Zhan, Sinong Simon
    Wang, Yixuan
    Huang, Chao
    Zhu, Qi
    RUNTIME VERIFICATION, RV 2024, 2025, 15191 : 205 - 217
  • [8] Adaptively parallel runtime verification based on distributed network for temporal properties
    Yu, Bin
    Lu, Xu
    Tian, Cong
    Wang, Meng
    Chen, Chu
    Lei, Ming
    Duan, Zhenhua
    PARALLEL COMPUTING, 2023, 117
  • [9] Checking and Enforcing Safety: Runtime Verification and Runtime Reflection
    Leucker, Martin
    ERCIM NEWS, 2008, (75): : 35 - 36
  • [10] Runtime verification of C programs
    Havelund, Klaus
    TESTING OF SOFTWARE AND COMMUNICATING SYSTEMS, PROCEEDINGS, 2008, 5047 : 7 - 22