Accuracy of Message Counting Abstraction in Fault-Tolerant Distributed Algorithms

被引:3
作者
Konnov, Igor [1 ]
Widder, Josef [1 ]
Spegni, Francesco [2 ]
Spalazzi, Luca [2 ]
机构
[1] TU Wien Vienna Univ Technol, Vienna, Austria
[2] UnivPM, Ancona, Italy
来源
VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2017 | 2017年 / 10145卷
基金
奥地利科学基金会;
关键词
MODEL CHECKING; SYSTEMS; CONSENSUS;
D O I
10.1007/978-3-319-52234-0_19
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Fault-tolerant distributed algorithms are a vital part of mission-critical distributed systems. In principle, automatic verification can be used to ensure the absence of bugs in such algorithms. In practice however, model checking tools will only establish the correctness of distributed algorithms if message passing is encoded efficiently. In this paper, we consider abstractions suitable for many fault-tolerant distributed algorithms that count messages for comparison against thresholds, e.g., the size of a majority of processes. Our experience shows that storing only the numbers of sent and received messages in the global state is more efficient than explicitly modeling message buffers or sets of messages. Storing only the numbers is called message-counting abstraction. Intuitively, this abstraction should maintain all necessary information. In this paper, we confirm this intuition for asynchronous systems by showing that the abstract system is bisimilar to the concrete system. Surprisingly, if there are real-time constraints on message delivery (as assumed in fault-tolerant clock synchronization algorithms), then there exist neither timed bisimulation, nor time-abstracting bisimulation. Still, we prove this abstraction useful for model checking: it preserves ATCTL properties, as the abstract and the concrete models simulate each other.
引用
收藏
页码:347 / 366
页数:20
相关论文
共 40 条
[31]  
Namjoshi KS, 2013, LECT NOTES COMPUT SC, V7737, P496
[32]   REACHING AGREEMENT IN THE PRESENCE OF FAULTS [J].
PEASE, M ;
SHOSTAK, R ;
LAMPORT, L .
JOURNAL OF THE ACM, 1980, 27 (02) :228-234
[33]  
Song YJ, 2008, LECT NOTES COMPUT SC, V5218, P438, DOI 10.1007/978-3-540-87779-0_30
[34]  
Spalazzi Luca, 2014, Verified Software: Theories, Tools and Experiments. 6th International Conference, VSTTE 2014. Revised Selected Papers: LNCS 8471, P235, DOI 10.1007/978-3-319-12154-3_15
[35]   SIMULATING AUTHENTICATED BROADCASTS TO DERIVE SIMPLE FAULT-TOLERANT ALGORITHMS [J].
SRIKANTH, TK ;
TOUEG, S .
DISTRIBUTED COMPUTING, 1987, 2 (02) :80-94
[36]   OPTIMAL CLOCK SYNCHRONIZATION [J].
SRIKANTH, TK ;
TOUEG, S .
JOURNAL OF THE ACM, 1987, 34 (03) :626-645
[37]   Analysis of timed systems using time-abstracting bisimulations [J].
Tripakis, S ;
Yovine, S .
FORMAL METHODS IN SYSTEM DESIGN, 2001, 18 (01) :25-68
[38]   Verification of consensus algorithms using satisfiability solving [J].
Tsuchiya, Tatsuhiro ;
Schiper, Andre .
DISTRIBUTED COMPUTING, 2011, 23 (5-6) :341-358
[39]   Booting clock synchronization in partially synchronous systems with hybrid process and link failures [J].
Widder, Josef ;
Schmid, Ulrich .
DISTRIBUTED COMPUTING, 2007, 20 (02) :115-140
[40]   The Theta-Model: achieving synchrony without clocks [J].
Widder, Josef ;
Schmid, Ulrich .
DISTRIBUTED COMPUTING, 2009, 22 (01) :29-47