PerformanceComparisonBetweenthe Paxos and Chandra-TouegConsensusAlgorithms

Protocolswhich solveagreementproblemsare essentialbuilding blocks for fault tolerant distributed applications. While manyprotocolshavebeenpublished,little hasbeendoneto analyze their performance. Thispaperrepresentsa startingpoint for such studies,byfocusingontheconsensusproblem,a problemrelatedto mostotheragreementproblems.Thepapercomparesthe latency of two consensusalgorithmsdesignedfor theasynchronousmodelwith failure detector s: thePaxos algorithm and the Chandra-Toueg algorithm. We varied the numberof processeswhich take part in the execution. Moreover, we evaluatedthe latencyin different classesof runs: (1) runs with no failuresnor failure suspicions,(2) runs with failuresbut no wrong suspicions.We determinedthe latencyby measur ementson a clusterof PCsinterconnectedwith a 100MbpsEthernetnetwork.We foundthat thePaxosalgorithmis moreefficientthantheChandra-Toueg algorithmwhentheprocess that coordinatesthe first roundof the protocol crashes.Thetwo algorithmshavealmostthe same performancein all othercases.

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

[2]  Bernadette Charron-Bost,et al.  Solving Problems in the Presence of Process Crashes and Lossy Links , 1996 .

[3]  Péter Urbán,et al.  Totally Ordered Broadcast and Multicast Algorithms: A Comprehensive Survey , 2000 .

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

[5]  William H. Sanders,et al.  Numerical evaluation of a group-oriented multicast protocol using stochastic activity networks , 1995, Proceedings 6th International Workshop on Petri Nets and Performance Models.

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

[7]  Andrea Bondavalli,et al.  Analysis and estimation of the quality of service of group communication protocols , 2001, Fourth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISORC 2001.

[8]  A. Schiper,et al.  Contention-aware metrics for distributed algorithms: comparison of atomic broadcast algorithms , 2000, Proceedings Ninth International Conference on Computer Communications and Networks (Cat.No.00EX440).

[9]  Andrea Bondavalli,et al.  Analysis of group communication protocols to assess quality of service properties , 2000, Proceedings. Fifth IEEE International Symposium on High Assurance Systems Engineering (HASE 2000).

[10]  Péter Urbán,et al.  Performance analysis of a consensus algorithm combining stochastic activity networks and measurements , 2002, Proceedings International Conference on Dependable Systems and Networks.

[11]  Dennis Shasha,et al.  The many faces of consensus in distributed systems , 1992, Computer.

[12]  Flaviu Cristian,et al.  A performance comparison of asynchronous atomic broadcast protocols , 1994, Distributed Syst. Eng..

[13]  Rachid Guerraoui,et al.  Deconstructing paxos , 2003, SIGA.

[14]  Rachid Guerraoui,et al.  The Generic Consensus Service , 2001, IEEE Trans. Software Eng..

[15]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[16]  Sam Toueg,et al.  A Modular Approach to Fault-Tolerant Broadcasts and Related Problems , 1994 .

[17]  Flaviu Cristian,et al.  High-performance asynchronous atomic broadcast , 1997, Distributed Syst. Eng..

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

[19]  Xavier Défago,et al.  Impact of a failure detection mechanism on the performance of consensus , 2001, Proceedings 2001 Pacific Rim International Symposium on Dependable Computing.

[20]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[21]  Péter Urbán,et al.  Neko: a single environment to simulate and prototype distributed algorithms , 2001, Proceedings 15th International Conference on Information Networking.

[22]  William H. Sanders,et al.  Probabilistic verification of a synchronous round-based consensus protocol , 1997, Proceedings of SRDS'97: 16th IEEE Symposium on Reliable Distributed Systems.