Leader-Based Consensus

It is now well recognized that consensus is a fundamental problem one has to solve to implement reliable applications on top of unreliable asynchronous distributed systems prone to failures. It has been shown that this problem cannot be solved if the underlying asynchronous system does not satisfy additional assumptions. This paper presents a new consensus protocol based on a leader oracle (denoted Ω in the litterature). Although this protocol uses asynchronous rounds, it is not based on the rotating coordinator paradigm. As a consequence, it does not suffer from drawbacks inherent to ♢S-based consensus protocols that explicity use this paradigm. As Ω and ♢S are equivalent, the proposed protocol does not require assumptions stronger or weaker than the ones abstracted in ♢S. Hence, it also requires f < n/2 (where n is the number of processes and f an upper bound on the number of processes that may crash). From a design point of view, the proposed protocol is surprisingly simple. From an efficiency point of view, it allows the processes to agree in a single round when the oracle provides the processes with the same leader (a common case in practice). It is also shown that the time and message costs of the protocol can be reduced when f < n/3. Moreover, when, in addition to the leader oracle, the system is equipped with a random oracle, the proposed protocol can be extended to provide a hybrid consensus protocol at no additional message cost.

[1]  Mikel Larrea Efficient Algorithms to Implement Failure Detectors and Solve Consensus in Distributed Systems , 2000 .

[2]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[3]  Francis C. Chu Reducing &Ω to ◊ W , 1998 .

[4]  Achour Mostéfaoui,et al.  Consensus in asynchronous systems where processes can crash and recover , 1998, Proceedings Seventeenth IEEE Symposium on Reliable Distributed Systems (Cat. No.98CB36281).

[5]  Michel Raynal,et al.  A simple and fast asynchronous consensus protocol based on a weak failure detector , 1999, Distributed Computing.

[6]  Achour Mostéfaoui,et al.  The best of both worlds: A hybrid approach to solve consensus , 2000, Proceeding International Conference on Dependable Systems and Networks. DSN 2000.

[7]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1985, JACM.

[8]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[9]  Butler W. Lampson,et al.  How to Build a Highly Available System Using Consensus , 1996, WDAG.

[10]  Marcos K. Aguilera,et al.  Revising the Weakest Failure Detector for Uniform Reliable Broadcast , 1999, DISC.

[11]  Nancy A. Lynch,et al.  Revisiting the PAXOS algorithm , 1997, Theor. Comput. Sci..

[12]  Mikel Larrea,et al.  Eventually consistent failure detectors , 2001, SPAA '01.

[13]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[14]  Marcos K. Aguilera,et al.  Failure Detection and Randomization: A Hybrid Approach to Solve Consensus , 1998, SIAM J. Comput..

[15]  Achour Mostéfaoui,et al.  From Binary Consensus to Multivalued Consensus in asynchronous message-passing systems , 2000, Inf. Process. Lett..

[16]  Achour Mostéfaoui,et al.  Solving Consensus Using Chandra-Toueg's Unreliable Failure Detectors: A General Quorum-Based Approach , 1999, DISC.

[17]  Nancy A. Lynch,et al.  Consensus in the presence of partial synchrony , 1988, JACM.

[18]  Paul D. Ezhilchelvan,et al.  Randomized multivalued consensus , 2001, Fourth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISORC 2001.

[19]  Paulo Veríssimo,et al.  Topology-Aware Algorithms for Large-Scale Communication , 1999, Advances in Distributed Systems.

[20]  André Schiper Early consensus in an asynchronous system with a weak failure detector , 1997, Distributed Computing.

[21]  Michael O. Rabin,et al.  Randomized byzantine generals , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[22]  Sam Toueg,et al.  The weakest failure detector for solving consensus , 1992, PODC '92.