TY - GEN
T1 - Verifying safety of fault-tolerant distributed components
AU - Ameur-Boulifa, Rabéa
AU - Halalai, Raluca
AU - Henrio, Ludovic
AU - Madelaine, Eric
PY - 2012/12/31
Y1 - 2012/12/31
N2 - We show how to ensure correctness and fault-tolerance of distributed components by behavioural specification. We specify a system combining a simple distributed component application and a fault-tolerance mechanism. We choose to encode the most general and the most demanding kind of faults, byzantine failures, but only for some of the components of our system. With Byzantine failures a faulty process can have any behaviour, thus replication is the only convenient classical solution; this greatly increases the size of the system, and makes model-checking a challenge. Despite the simplicity of our application, full study of the overall behaviour of the combined system requires us putting together the specification for many features required by either the distributed application or the fault-tolerant protocol: our system encodes hierarchical component structure, asynchronous communication with futures, replication, group communication, an agreement protocol, and faulty components. The system we obtain is huge and we have proved its correctness by using at the same time data abstraction, compositional minimization, and distributed model-checking.
AB - We show how to ensure correctness and fault-tolerance of distributed components by behavioural specification. We specify a system combining a simple distributed component application and a fault-tolerance mechanism. We choose to encode the most general and the most demanding kind of faults, byzantine failures, but only for some of the components of our system. With Byzantine failures a faulty process can have any behaviour, thus replication is the only convenient classical solution; this greatly increases the size of the system, and makes model-checking a challenge. Despite the simplicity of our application, full study of the overall behaviour of the combined system requires us putting together the specification for many features required by either the distributed application or the fault-tolerant protocol: our system encodes hierarchical component structure, asynchronous communication with futures, replication, group communication, an agreement protocol, and faulty components. The system we obtain is huge and we have proved its correctness by using at the same time data abstraction, compositional minimization, and distributed model-checking.
U2 - 10.1007/978-3-642-35743-5_17
DO - 10.1007/978-3-642-35743-5_17
M3 - Conference contribution
AN - SCOPUS:84871569321
SN - 9783642357428
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 278
EP - 295
BT - Formal Aspects of Component Software - 8th International Symposium, FACS 2011, Revised Selected Papers
T2 - 8th International Symposium on Formal Aspects of Component Software, FACS 2011
Y2 - 14 September 2011 through 16 September 2011
ER -