Abstract
The construction of a spanning tree is a fundamental task in distributed systems which allows to resolve other tasks (i.e., routing, mutual exclusion, network reset). In this paper, we are interested in the problem of constructing a Breadth First Search (BFS) tree. Stabilization is a versatile technique which ensures that the system recover a correct behavior from an arbitrary global state resulting from transient faults.
A fully polynomial algorithm has a round complexity in O(d a) and a step complexity in O(n b) where d and n are the diameter and the number of nodes of the network and a and b are constants. We present the first fully polynomial stabilizing algorithm constructing a BFS tree under a distributed daemon. Moreover, as far as we know, it is also the first fully polynomial stabilizing algorithm for spanning tree construction. Its round complexity is in O(d 2) and its step complexity is in O(n 6).
To our knowledge, since in general the diameter of a network is much smaller than the number of nodes (log(n) in average instead of n), this algorithm reaches the best compromise of the literature between the complexities in terms of rounds and in terms of steps.
This work has been supported in part by the ANR project SPADES (08-ANR-SEGI-025).
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Afek, Y., Kutten, S., Yung, M.: Memory-Efficient Self-Stabilizing Protocols for General Networks. In: van Leeuwen, J., Santoro, N. (eds.) WDAG 1990. LNCS, vol. 486, pp. 15–28. Springer, Heidelberg (1991)
Arora, A., Gouda, M.: Distributed reset (extended abstract). In: Veni Madhavan, C.E., Nori, K.V. (eds.) FSTTCS 1990. LNCS, vol. 472, Springer, Heidelberg (1990)
Awerbuch, B., Kutten, S., Mansour, Y., Patt-Shamir, B., Varghese, G.: Time optimal self-stabilizing synchronization. In: 25th Annual ACM Symposium on Theory of Computing (STOC), pp. 652–661 (1993)
Bui, A., Datta, A.K., Petit, F., Villain, V.: State-optimal snap-stabilizing pif in tree networks. In: Workshop on Self-stabilizing Systems (WSS), pp. 78–85. IEEE Computer Society (1999)
Burman, J., Kutten, S.: Time Optimal Asynchronous Self-Stabilizing Spanning Tree. In: Pelc, A. (ed.) DISC 2007. LNCS, vol. 4731, pp. 92–107. Springer, Heidelberg (2007)
Chen, N.-S., Yu, H.-P., Huang, S.-T.: A self-stabilizing algorithm for constructing spanning trees. Inf. Process. Lett. 39(3), 147–151 (1991)
Collin, Z., Dolev, S.: Self-stabilizing depth-first search. Inf. Process. Lett. 49(6), 297–301 (1994)
Cournier, A.: Mémoire d’Habilitation à Diriger les Recherches: Graphes et algorithmique distribuée stabilisante. Université de Picardie Jules Verne (2009)
Cournier, A.: A New Polynomial Silent Stabilizing Spanning-Tree Construction Algorithm. In: Kutten, S., Žerovnik, J. (eds.) SIROCCO 2009. LNCS, vol. 5869, pp. 141–153. Springer, Heidelberg (2010)
Cournier, A., Devismes, S., Petit, F., Villain, V.: Snap-stabilizing depth-first search on arbitrary networks. The Computer Journal 49(3), 268–280 (2006)
Cournier, A., Devismes, S., Villain, V.: A Snap-Stabilizing DFS with a Lower Space Requirement. In: Tixeuil, S., Herman, T. (eds.) SSS 2005. LNCS, vol. 3764, pp. 33–47. Springer, Heidelberg (2005)
Cournier, A., Devismes, S., Villain, V.: Snap-stabilizing pif and useless computations. In: 12th International Conference on Parallel and Distributed Systems (ICPADS), pp. 39–48. IEEE Computer Society (2006)
Cournier, A., Devismes, S., Villain, V.: Light enabling snap-stabilization of fundamental protocols. ACM Transactions on Autonomous and Adaptive Systems (TAAS) 4(1) (2009)
Datta, A.K., Gurumurthy, S., Petit, F., Villain, V.: Self-stabilizing network orientation algorithms in arbitrary rooted networks. Stud. Inform. Univ. 1(1), 1–22 (2001)
Datta, A.K., Larmore, L.L., Vemula, P.: Self-Stabilizing Leader Election in Optimal Space. In: Kulkarni, S., Schiper, A. (eds.) SSS 2008. LNCS, vol. 5340, pp. 109–123. Springer, Heidelberg (2008)
Dijkstra, E.W.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974)
Dolev, S.: Self-Stabilization. MIT Press (2000)
Dolev, S., Israeli, A., Moran, S.: Self-stabilization of dynamic systems assuming only read/write atomicity. In: 9th ACM Symposium on Principles of Distributed Computing (PODC), pp. 103–117 (1990)
Gärtner, F.: A survey of self-stabilizing spanning-tree construction algorithms. Tech. rep., EPFL (October 2003)
Huang, S.-T., Chen, N.-S.: A self-stabilizing algorithm for constructing breadth-first trees. Inf. Process. Lett. 41(2), 109–117 (1992)
Johnen, C.: Memory-efficient self-stabilizing algorithm to construct bfs spanning trees. In: 3rd Workshop on Self-stabilizing Systems (WSS), pp. 125–140 (1997)
Kosowski, A., Kuszner, Ł.: A Self-Stabilizing Algorithm for Finding a Spanning Tree in a Polynomial Number of Moves. In: Wyrzykowski, R., Dongarra, J., Meyer, N., Waśniewski, J. (eds.) PPAM 2005. LNCS, vol. 3911, pp. 75–82. Springer, Heidelberg (2006)
Tel, G.: Introduction to distributed algorithm, 2nd edn. Cambridge University Press (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cournier, A., Rovedakis, S., Villain, V. (2011). The First Fully Polynomial Stabilizing Algorithm for BFS Tree Construction. In: Fernàndez Anta, A., Lipari, G., Roy, M. (eds) Principles of Distributed Systems. OPODIS 2011. Lecture Notes in Computer Science, vol 7109. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25873-2_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-25873-2_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-25872-5
Online ISBN: 978-3-642-25873-2
eBook Packages: Computer ScienceComputer Science (R0)