Skip to main content
Log in

Randomized leader election

  • Original Paper
  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract

We present an efficient randomized algorithm for leader election in large-scale distributed systems. The proposed algorithm is optimal in message complexity (O(n) for a set of n total processes), has round complexity logarithmic in the number of processes in the system, and provides high probabilistic guarantees on the election of a unique leader. The algorithm relies on a balls and bins abstraction and works in two phases. The main novelty of the work is in the first phase where the number of contending processes is reduced in a controlled manner. Probabilistic quorums are used to determine a winner in the second phase. We discuss, in detail, the synchronous version of the algorithm, provide extensions to an asynchronous version and examine the impact of failures.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Agrawal D., Egecioglu Ö. and Abbadi A.E. (1997). Billiard quorums on the grid. Inf. Process. Lett. 64(1): 9–16

    Article  Google Scholar 

  2. Bawa, M., Garcia-Molina, H., Gionis, A., Motwani, R.: Estimating aggregates on a peer-to-peer network. Technical Report, CS Department, Stanford University (2003)

  3. Boyd S., Diaconis P. and Xiao L. (2004). Fastest mixing markov chain on a graph. SIAM Rev. 46(4): 667–689

    Article  MATH  MathSciNet  Google Scholar 

  4. Cidon, I., Mokryn, O.: Propagation and leader election in a multihop broadcast environment. In: DISC ’98 Proceedings of the 12th international symposium on distributed computing, pp. 104–118, Springer, London (1998)

  5. Dolev D., Dwork C. and Stockmeyer L. (1987). On the minimal synchronism needed for distributed consensus. J. ACM 34(1): 77–97

    Article  MATH  MathSciNet  Google Scholar 

  6. Ferreira R.A., Grama A. and Jagannathan S. (2006). Plethora: a locality enhancing peer-to-peer network. J. Parallel Distrib. Comput. 66(2): 257–273

    Article  MATH  MathSciNet  Google Scholar 

  7. Ferreira, R.A., Ramanathan, M.K., Grama, A., Jagannathan, S.: Randomized protocols for duplicate elimination in peer-to-peer storage systems. In: Proceedings of The Fifth IEEE international conference on peer-to-peer computing, Konstanz, Germany (2005)

  8. Fetzer C. and Cristian F. (1999). A highly available local leader election service. IEEE Trans. Softw. Eng. 25(5): 603–618

    Article  Google Scholar 

  9. Frederickson G.N. and Lynch N.A. (1987). Electing a leader in a synchronous ring. J. ACM 34(1): 98–115

    Article  MATH  MathSciNet  Google Scholar 

  10. Gkantsidis, C., Mihail, M., Saberi, A.: Random walks in peer-to-peer networks. In: Proceedings of IEEE INFOCOM, 2004, Hong Kong (2004)

  11. Gnutella. http://gnutella.wego.com/

  12. Gupta, I., Renesse, R., Birman, K.P.: A probabilistically correct leader election protocol for large groups. In: DISC ’00 Proceedings of the 14th international conference on distributed computing, pp. 89–103, Springer, London (2000)

  13. Hastings W. (1970). Monte carlo sampling methods using markov chains and their applications. Biometrika 57: 97–109

    Article  MATH  Google Scholar 

  14. Horowitz K. and Malkhi D. (2003). Estimating network size from local information. IPL J. 88(5): 237–243

    MathSciNet  Google Scholar 

  15. Joung Y. (2000). Asynchronous group mutual exclusion. Distrib. Comput. 13(4): 189–206

    Article  Google Scholar 

  16. King, V., Saia, J.: Choosing a random peer. In: PODC ’04 Proceedings of the twenty-third annual ACM symposium on principles of distributed computing. pp. 125–130, New York (2004)

  17. Kushilevitz, E., Rabin, M.O.: Randomized mutual exclusion algorithms revisited. In: PODC ’92 Proceedings of the eleventh annual ACM symposium on principles of distributed computing. pp. 275–283 (1992)

  18. Lin, S., Lian, Q., Chen, M., Zhang, Z.: A practical distributed mutual exclusion protocol in dynamic peer-to-peer systems. In IPTPS, pp. 11–21 (2004)

  19. Lynch, N.A.: Distributed algorithms. Morgan Kaufmann Publishers, Inc. (1996)

  20. Maekawa M. (1985). A \({\sqrt{N}}\) algorithm for mutual exclusion in decentralized systems. ACM Trans. Comput. Syst. 3(2): 145–159

    Article  Google Scholar 

  21. Malkhi D., Reiter M., Wool A. and Wright R. (2001). Probabilistic quorum systems. Inform. Comput. 170(2): 184–206

    Article  MATH  MathSciNet  Google Scholar 

  22. Metropolis N., Rosenbluth A., Rosenbluth M., Teller A. and Teller E. (1953). Equations of state calculations by fast computing machines. J. Chem. Phys. 21: 1087–1092

    Article  Google Scholar 

  23. Mullender S.J. and Vitanyi P.M.B. (1988). Distributed match-making. Algorithmica 3: 367–391

    Article  MATH  MathSciNet  Google Scholar 

  24. Psaltoulis, D., Kostoulas, D., Gupta, I., Birman, K., Demers, A.: Practical algorithms for size estimation in large and dynamic groups. Springlass project at Cornell (2004)

  25. Rabin M.O. (1982). N-process mutual exclusion with bounded waiting by 4log 2 N valued shared variable. J. Comput. Syst. Sci. 25(1): 66–75

    Article  MATH  MathSciNet  Google Scholar 

  26. Ratnasamy, S., Francis, P., Handley, M. Karp, R.M., Shenker, S.: A scalable content-addressable network. In: SIGCOMM ’01 Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications, pp. 161–172, New York (2001)

  27. Rowstron, A.I.T., Druschel, P.: Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Middleware 2001 Proceedings of the IFIP/ACM international conference on distributed systems platforms Heidelberg, pp. 329–350, Springer, London (2001)

  28. Schooler, E.M., Manohar, R., Chandy, K.M.: An analysis of leader election for multicast groups. Technical Report, ATT Labs-Research, Menlo Park (2002)

  29. Stoica I., Morris R., Liben-Nowell D., Karger D.R., Kaashoek M.F., Dabek F. and Balakrishnan H. (2003). Chord: a scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw. 11(1): 17–32

    Article  Google Scholar 

  30. Szpankowki W. (2001). Average case analysis of algorithms on sequences. Wiley, New York

    Google Scholar 

  31. Tanenbaum A.S. and Steen M.V. (2002). Distributed systems: principles and paradigms. Prentice Hall, Englewood Cliffs

    Google Scholar 

  32. Tel G. (1994). Introduction to distributed algorithms. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Murali Krishna Ramanathan.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ramanathan, M.K., Ferreira, R.A., Jagannathan, S. et al. Randomized leader election. Distrib. Comput. 19, 403–418 (2007). https://doi.org/10.1007/s00446-007-0022-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00446-007-0022-4

Keywords

Navigation