Evaluating quorum systems over the Internet

Quorum systems serve as a basic tool providing a uniform and reliable way to achieve coordination in a distributed system. They are useful for distributed and replicated databases, name servers, mutual exclusion, and distributed access control and signatures. Traditionally, two basic methods have been used to evaluate quorum systems: the analytical approach, and simulation. We propose a third, empirical approach. We collected 6 months' worth of connectivity and operability data of a system consisting of 14 real computers using a wide area group communication protocol. The system spanned two geographic sites and three different Internet segments. We developed a mechanism that merges the local views into a unified history of the events that took place, ordered according to an imaginary global clock. We then developed a tool called the Generic Quorum-system Evaluator (GQE), which evaluates the behavior of any given quorum system over the unified, real-life history. We compared fourteen dynamic and static quorum systems. We discovered that as predicted, dynamic quorum systems behave better than static systems. However we found that many assumptions taken by the traditional approaches are unjustified: crashes are strongly correlated, network partitions do occur even within a single Internet segment, and we even detected a brief simultaneous crash of all the participating computers.

[1]  Stephen Fox,et al.  A recovery algorithm for a distributed database system , 1983, PODS.

[2]  Philip A. Bernstein,et al.  An algorithm for concurrency control and recovery in replicated distributed databases , 1984, TODS.

[3]  M. P. Herlihy REPLICATION METHODS FOR ABSTRACT DATA TYPES , 1984 .

[4]  Hector Garcia-Molina,et al.  How to assign votes in a distributed system , 1985, JACM.

[5]  Hector Garcia-Molina,et al.  Consistency in a partitioned network: a survey , 1985, CSUR.

[6]  Mamoru Maekawa,et al.  A N algorithm for mutual exclusion in decentralized systems , 1985, TOCS.

[7]  Michel Raynal,et al.  Algorithms for mutual exclusion , 1986 .

[8]  Hector Garcia-Molina,et al.  The Reliability of Voting Mechanisms , 1987, IEEE Transactions on Computers.

[9]  Maurice Herlihy,et al.  Dynamic quorum adjustment for partitioned data , 1987, TODS.

[10]  Darrell D. E. Long,et al.  The Performance of Available Copy Protocols for the Management of Replicated Data , 1990, Perform. Evaluation.

[11]  Sushil Jajodia,et al.  Dynamic voting algorithms for maintaining the consistency of a replicated database , 1990, TODS.

[12]  Divyakant Agrawal,et al.  An efficient and fault-tolerant solution for distributed mutual exclusion , 1991, TOCS.

[13]  Christos H. Papadimitriou,et al.  Optimal coteries , 1991, PODC '91.

[14]  Darrell D. E. Long,et al.  Accessing Replicated Data in a Large-Scale Distributed System , 1991, Int. J. Comput. Simul..

[15]  Donald B. Johnson,et al.  Effects of Replication on Data Availability , 1991, Int. J. Comput. Simul..

[16]  Ravishankar K. Iyer,et al.  Analysis and Modeling of Correlated Failures in Multicomputer Systems , 1992, IEEE Trans. Computers.

[17]  Yair Amir,et al.  Membership Algorithms for Multicast Communication Groups , 1992, WDAG.

[18]  Toshihide Ibaraki,et al.  Optimal coteries for rings and related networks , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[19]  Mostafa H. Ammar,et al.  The Grid Protocol: A High Performance Scheme for Maintaining Replicated Data , 1992, IEEE Trans. Knowl. Data Eng..

[20]  Yair Amir,et al.  Transis: a communication subsystem for high availability , 1992, [1992] Digest of Papers. FTCS-22: The Twenty-Second International Symposium on Fault-Tolerant Computing.

[21]  Konstantinos Kalpakis,et al.  On a Unified Framework for the Evaluation of Distributed Quorum Attainment Protocols , 1994, IEEE Trans. Software Eng..

[22]  Hector Garcia-Molina,et al.  Distributed selective dissemination of information , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[23]  Bernard Mans,et al.  Optimal Coteries and Voting Schemes , 1994, Inf. Process. Lett..

[24]  Louise E. Moser,et al.  Extended virtual synchrony , 1994, 14th International Conference on Distributed Computing Systems.

[25]  Piotr Berman,et al.  Voting as the Optimal Static Pessimistic Scheme for Managing Replicated Data , 1994, IEEE Trans. Parallel Distributed Syst..

[26]  Idit Keidar,et al.  A Highly Available Paradigm for Consistent Object Replication , 1994 .

[27]  Donald B. Johnson,et al.  A Tight Upper Bound on the Benefits of Replica Control Protocols , 1995, J. Comput. Syst. Sci..

[28]  David Peleg,et al.  Load Balancing in Quorum Systems (Extended Abstract) , 1995, WADS.

[29]  Louise E. Moser,et al.  The Totem single-ring ordering and membership protocol , 1995, TOCS.

[30]  David Peleg,et al.  The Availability of Quorum Systems , 1995, Inf. Comput..

[31]  David Peleg,et al.  Crumbling walls: a class of practical and efficient quorum systems , 1995, PODC '95.

[32]  Moni Naor,et al.  Access Control and Signatures via Quorum Secret Sharing , 1998, IEEE Trans. Parallel Distributed Syst..

[33]  David Peleg,et al.  Load Balancing in Quorum Systems , 1997, SIAM J. Discret. Math..

[34]  Yair Amir,et al.  Optimal Availability Quorum Systems: Theory and Practice , 1998, Inf. Process. Lett..

[35]  Moni Naor,et al.  The Load, Capacity, and Availability of Quorum Systems , 1998, SIAM J. Comput..