Abstract
An algorithm for electing a leader in an asynchronous network with dynamically changing communication topology is presented. The algorithm ensures that, no matter what pattern of topology changes occurs, if topology changes cease, then eventually every connected component contains a unique leader. The algorithm combines ideas from the Temporally Ordered Routing Algorithm for mobile ad hoc networks (Park and Corson in Proceedings of the 16th IEEE Conference on Computer Communications (INFOCOM), pp. 1405–1413 (1997) with a wave algorithm (Tel in Introduction to distributed algorithms, 2nd edn. Cambridge University Press, Cambridge, MA, 2000), all within the framework of a height-based mechanism for reversing the logical direction of communication topology links (Gafni and Bertsekas in IEEE Trans Commun C–29(1), 11–18 1981). Moreover, a generic representation of time is used, which can be implemented using totally-ordered values that preserve the causality of events, such as logical clocks and perfect clocks. A correctness proof for the algorithm is provided, and it is ensured that in certain well-behaved situations, a new leader is not elected unnecessarily, that is, the algorithm satisfies a stability condition.
Similar content being viewed by others
Notes
If two reference levels with incomparable timestamps started in different parts of the network and then met at a node, our current algorithm would not be able to choose the one that is later in real time.
References
Awerbuch, B., Richa, A.W., Scheideler, C.: A jamming-resistant MAC protocol for single-hop wireless networks. In: Proceedings of the Twenty-Seventh Annual ACM Symposium on Principles of, Distributed Computing, pp. 45–54 (2008).
Brunekreef, J., Katoen, J.P., Koymans, R., Mauw, S.: Design and analysis of dynamic leader election protocols in broadcast networks. Distrib. Comput. 9(4), 157–171 (1996)
Dagdeviren, O., Erciyes, K.: A hierarchical leader election protocol for mobile ad hoc networks. In: Proceedings of 8th International Conference on Computational Science, LNCS 5101, pp. 509–518 (2008).
Datta, A.K., Larmore, L.L., Piniganti, H.: Self-stabilizing leader election in dynamic networks. In: Proceedings of the 12th International Symposium on Stabilization, Safety, and Security of Distributed Systems, pp. 35–49 (2010).
Derhab, A., Badache, N.: A self-stabilizing leader election algorithm in highly dynamic ad hoc mobile networks. IEEE Trans. Parallel Distrib. Syst. 19(7), 926–939 (2008)
Dolev, S.: Self-Stabilization. MIT Press, Cambridge, MA (2000)
Fetzer, C., Cristian, F.: A highly available local leader election service. IEEE Trans, Softw. Eng. 25(5), 603–618 (1999)
Fidge, C.: Timestamps in message-passing systems that preserve the partial ordering. Aust. Comput. Sci. Commun. 10(1), 56–66 (1988)
Gafni, E., Bertsekas, D.: Distributed algorithms for generating loop-free routes in networks with frequently changing topology. IEEE Trans. Commun. C–29(1), 11–18 (1981)
Haas, Z.: A new routing protocol for the reconfigurable wireless networks. In: Proceedings of the 6th IEEE International Conference on Universal Personal, Communications, pp. 562–566 (1997).
Han, S., Xia, Y.: Optimal leader election scheme for peer-to-peer applications. In: Proceedings of the 6th International Conference on Networking, p. 29 (2007).
Hatzis, K.P., Pentaris, G.P., Spirakis, P.G., Tampakas, V.T., Tan, R.B.: Fundamental control algorithms in mobile networks. In: Proceedings of the 11th ACM Symposium on Parallel Algorithms and Architectures (SPAA), pp. 251–260 (1999).
Higham, L., Liang, Z.: Self-stabilizing minimum spanning tree construction on message-passing networks. In: DISC01, pp. 194–208 (2001).
Howell, R.R., Nesterenko, M., Mizuno, M.: Finite-state self-stabilizing protocols in message-passing systems. J. Parallel Distrib. Comput. 62(5), 792–817 (2002)
Ingram, R., Shields, P., Walter, J.E., Welch, J.L.: An asynchronous leader election algorithm for dynamic networks. In: Proceedings of the 23rd IEEE International Parallel and Distributed Processing Symposium (IPDPS), pp. 1–12 (2009).
Lamport, L.: Time, clocks and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)
Lynch N.A., Tuttle M.R:. An introduction to input/output automata. CWI Q. 2(3), 219–246 (1989). Centrum voor Wiskunde en Informatica, Amsterdam, The Netherlands. Technical Memo MIT/LCS/TM-373, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA 02139. November 1988. Also, “Hierarchical Correctness Proofs for Distributed Algorithms”, in Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, pages 137–151, Vancouver, British Columbia, Canada, August 1987.
Malpani, N., Welch, J.L., Vaidya, N.: Leader election algorithms for mobile ad hoc networks. In: Proceedings of the 4th International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communications (DIAL M), pp. 96–103 (2000).
Mans, B., Santoro, N.: Optimal elections in faulty loop networks and applications. IEEE Trans. Comput. 47(3), 286–297 (1998)
Masum, S.M., Ali, A.A., Bhuiyan, M.T.I.: Asynchronous leader election in mobile ad hoc networks. In: Proceedings of International Conference on Advanced Information Networking and Applications, pp. 29–34 (2006).
Pan, Y., Singh, G.: A fault-tolerant protocol for election in chordal-ring networks with fail-stop processor failures. IEEE Trans. Reliab. 46(1), 11–17 (1997)
Park, V.D., Corson, M.S.: A highly adaptive distributed routing algorithm for mobile wireless networks. In: Proceedings of the 16th IEEE Conference on Computer Communications (INFOCOM), pp. 1405–1413 (1997).
Parvathipuram, P., Kumar, V., Yang, G.C.: An efficient leader election algorithm for mobile ad hoc networks. In: Proceedings of the 1st International Conference on Distributed Computing and Internet Technology, LNCS 3347, pp. 32–41 (2004).
Rahman, M., Abdullah-Al-Wadud, M., Chae, O.: Performance analysis of leader election algorithms in mobile ad hoc networks. Int. J. Comput. Sci. Netw. Secur. 8(2), 257–263 (2008)
Singh, G.: Leader election in the presence of link failures. IEEE Trans. Parallel Distrib. Syst. 7(3), 231–236 (1996)
Stoller, S.: Leader election in distributed systems with crash failures. Department of Computer Science, Indiana University, Tech. rep. (1997).
Tel, G.: Introduction to Distributed Algorithms, 2nd edn. Cambridge University Press, Cambridge, MA (2000)
Vasudevan, S., Kurose, J., Towsley, D.: Design and analysis of a leader election algorithm for mobile ad hoc networks. In: Proceedings of the 12th IEEE International Conference on Network Protocols (ICNP), pp. 350–360 (2004).
Wang, Y., Wu, H.: Replication-based efficient data delivery scheme for delay/fault-tolerant mobile sensor network (dft-msn). In: Proceedings of Pervasive Computing and Communications Workshops, p. 5 (2006).
Acknowledgments
We thank Bernadette Charron-Bost, Antoine Gaillard, Nick Neumann, Lyn Pierce, Srikanth Sastry and Josef Widder for helpful conversations, and the anonymous reviewers for comments that improved the presentation.
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version of this paper appears in [15]. The work of R. Ingram was supported in part by NSF REU grant 0649233. The work of J. L. Welch was supported in part by NSF grant 0500265 and Texas Higher Education Coordinating Board grants ARP-00512-0007-2006 and ARP 000512-0130-2007. The work of J. E. Walter and P. Shields was supported in part by NSF grant IIS-0712911 and the URSI program at Vassar College. The work of Tsvetomira Radeva was supported in part by the CRA-W DREU Program through NSF grant CNS-0540631.
Rights and permissions
About this article
Cite this article
Ingram, R., Radeva, T., Shields, P. et al. A leader election algorithm for dynamic networks with causal clocks. Distrib. Comput. 26, 75–97 (2013). https://doi.org/10.1007/s00446-013-0184-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-013-0184-1