Contributions to Building Efficient and Robust State-Machine Replication Protocols - Archive ouverte HAL Access content directly
Habilitation À Diriger Des Recherches Year : 2010

Contributions to Building Efficient and Robust State-Machine Replication Protocols


State machine replication (SMR) is a software technique for tolerating failures using commodity hardware. The critical service to be made fault-tolerant is modeled by a state machine. Several, possibly different, copies of the state machine are then deployed on different nodes. Clients of the service access the replicas through a SMR protocol which ensures that, despite concurrency and failures, replicas perform client requests in the same order. Two objectives underly the design and implementation of a SMR protocol: robustness and performance. Robustness conveys the ability to ensure availability (liveness) and one-copy semantics (safety) despite failures and asynchrony. On the other hand, performance measures the time it takes to respond to a request (latency) and the number of requests that can be processed per time unit (throughput). In this thesis, we present two contributions to state machine replication. The first contri- bution is LCR, a uniform total order broadcast (UTO-broadcast) protocol that is throughput optimal in failure-free periods. LCR can be used to totally order the requests received by a replicated state machine. LCR has been designed for small clusters of homogeneous machines interconnected by a local area network. It relies on a perfect failure detector and tolerates the crash failures of all but one replicas. It is based on a ring topology and only relies on point-to-point inter-process communication. We benchmark an implementation of LCR against two of the most widely used group communication packages and show that LCR provides higher throughput than them, over a large number of setups. The second contribution is Abstract, a new abstraction to simplify the design, proof and implementation of SMR protocols. Abstract focuses on the most robust class of SMR protocols, i.e. those tolerating arbitrary (client and replica) failures. Such protocols are called Byzantine Fault Tolerant (BFT) protocols. We treat a BFT protocol as a composition of instances of our abstraction. Each instance is developed and analyzed independently. To illustrate our approach, we first show how, with our abstraction, the benefits of a BFT protocol like Zyzzyva could have been developed using less than 24% of the actual code of Zyzzyva. We then present Aliph, a new BFT protocol that outperforms previous BFT protocols both in terms of latency (by up to 30%) and throughput (by up to 360%).
Fichier principal
Vignette du fichier
manuscript.pdf (1000.09 Ko) Télécharger le fichier

Dates and versions

tel-00540897 , version 1 (29-11-2010)


  • HAL Id : tel-00540897 , version 1


Vivien Quéma. Contributions to Building Efficient and Robust State-Machine Replication Protocols. Réseaux et télécommunications [cs.NI]. Université de Grenoble, 2010. ⟨tel-00540897⟩
256 View
292 Download


Gmail Facebook Twitter LinkedIn More