Model Checking Distributed Protocols in Must

被引:0
|
作者
Enea, Constantin [1 ,2 ]
Giannakopoulou, Dimitra [3 ]
Kokologiannakis, Michalis [4 ]
Majumdar, Rupak [5 ,6 ]
机构
[1] AWS, Paris, France
[2] Ecole Polytech, Palaiseau, France
[3] AWS, Dallas, TX USA
[4] Swiss Fed Inst Technol, Zurich, Switzerland
[5] AWS, Frankfurt, Germany
[6] MPI SWS, Saarbrucken, Germany
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2024年 / 8卷 / OOPSLA2期
关键词
Distributed Systems; Model Checking;
D O I
10.1145/3689778
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We describe the design and implementation of Must, a framework for modeling and automatically verifying distributed systems. Must provides a concurrency API that supports multiple communication models, on top of a mainstream programming language, such as Rust. Given a program using this API, Must verifies it by means of a novel, optimal dynamic partial order reduction algorithm that maintains completeness and optimality for all communication models supported by the API. We use Must to design and verify models of distributed systems in an industrial context. We demonstrate the usability of Must's API by modeling high-level system idioms (e.g., timeouts, leader election, versioning) as abstractions over the core API, and demonstrate Must's scalability by verifying systems employed in production (e.g., replicated logs, distributed transaction management protocols), the verification of which lies beyond the capacity of previous model checkers.
引用
收藏
页数:28
相关论文
共 50 条
  • [31] Model checking of distributed systems with affine data structures
    Garanina N.O.
    Automatic Control and Computer Sciences, 2011, 45 (7) : 397 - 401
  • [32] Model Checking Distributed Mandatory Access Control Policies
    Alexander, Perry
    Pike, Lee
    Loscocco, Peter
    Coker, George
    ACM TRANSACTIONS ON INFORMATION AND SYSTEM SECURITY, 2015, 18 (02)
  • [33] Priority scheduling of distributed systems based on model checking
    Ananda Basu
    Saddek Bensalem
    Doron Peled
    Joseph Sifakis
    Formal Methods in System Design, 2011, 39 : 229 - 245
  • [34] Priority scheduling of distributed systems based on model checking
    Basu, Ananda
    Bensalem, Saddek
    Peled, Doron
    Sifakis, Joseph
    FORMAL METHODS IN SYSTEM DESIGN, 2011, 39 (03) : 229 - 245
  • [35] Model-checking Distributed Components: The Vercors Platform
    Barros, Tomas
    Cansado, Antonio
    Madelaine, Eric
    Rivera, Marcela
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 182 : 3 - 16
  • [36] The Modeling Library of Eavesdropping Methods in Quantum Cryptography Protocols by Model Checking
    Yang, Fan
    Yang, Guowu
    Hao, Yujie
    INTERNATIONAL JOURNAL OF THEORETICAL PHYSICS, 2016, 55 (07) : 3414 - 3427
  • [37] Efficient distributed SAT and SAT-based distributed Bounded Model Checking
    Malay K. Ganai
    Aarti Gupta
    Zijiang Yang
    Pranav Ashar
    International Journal on Software Tools for Technology Transfer, 2006, 8 (4-5) : 387 - 396
  • [38] Directed explicit-state model checking in the validation of communication protocols
    Stefan Edelkamp
    Stefan Leue
    Alberto Lluch-Lafuente
    International Journal on Software Tools for Technology Transfer, 2004, 5 (2-3) : 247 - 267
  • [39] Model checking wireless sensor network security protocols:: TinySec + LEAP
    Tobarra, Llanos
    Cazorla, Diego
    Cuartero, Fernando
    Diaz, Gregorio
    Cambronero, Emilia
    WIRELESS SENSOR AND ACTOR NETWORKS, 2007, : 95 - +
  • [40] Synthesis of attack actions using model checking for the verification of security protocols
    Basagiannis, Stylianos
    Katsaros, Panagiotis
    Pombortsis, Andrew
    SECURITY AND COMMUNICATION NETWORKS, 2011, 4 (02) : 147 - 161