Abstract
Topological self-stabilization is an important concept to build robust open distributed systems (such as peer-to-peer systems) where nodes can organize themselves into meaningful network topologies. The goal is to devise distributed algorithms where nodes forward, insert, and delete links to neighboring nodes, and that converge quickly to such a desirable topology, independently of the initial network configuration. This article proposes a new model to study the parallel convergence time. Our model sheds light on the achievable parallelism by avoiding bottlenecks of existing models that can yield a distorted picture. As a case study, we consider local graph linearization—i.e., how to build a sorted list of the nodes of a connected graph in a distributed and self-stabilizing manner. In order to study the main structure and properties of our model, we propose two variants of a most simple local linearization algorithm. For each of these variants, we present analyses of the worst-case and best-case parallel time complexities, as well as the performance under a greedy selection of the actions to be executed. It turns out that the analysis is non-trivial despite the simple setting, and to complement our formal insights we report on our experiments which indicate that the runtimes may be better in the average case.






Similar content being viewed by others
Notes
In fact, most likely no such local mechanism exists for implementing the worst-case and best-case schedulers, while we believe that local distributed implementations that closely approximate—within a constant factor of the parallel complexity—the randomized and greedy schedulers presented here would not be hard to devise.
References
Angluin, D., Aspnes, J., Chen, J., Wu, Y., Yin, Y.: Fast construction of overlay networks. In: Proc. of the 17th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 145–154 (2005). doi:10.1145/1073970.1073991
Aspnes, J., Shah, G.: Skip graphs. In: Proc. of the 14th ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 384–393 (2003)
Aspnes, J., Wu, Y.: O(logn)-time overlay network construction from graphs with out-degree 1. In: Proc. of the 11th Int. Conference on Principles of Distributed Systems (OPODIS). LNCS, vol. 4878, pp. 286–300. Springer, Berlin (2007). doi:10.1007/978-3-540-77096-1_21
Awerbuch, B., Varghese, G.: Distributed program checking: a paradigm for building self-stabilizing distributed protocols. In: Proc. of the 32nd IEEE Symposium on Foundations of Computer Science (FOCS), pp. 258–267 (1991)
Blumofe, R.D., Leiserson, C.E.: Space-efficient scheduling of multithreaded computations. SIAM J. Comput. 27(1), 202–229 (1998). doi:10.1137/S0097539793259471
Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. J. ACM 46(5), 720–748 (1999). doi:10.1145/324133.324234
Brzeziński, J., Szychowiak, M.: Self-stabilization in distributed systems—a short survey. Found. Comput. Decision Sci. 25(1), 3–22 (2000)
Cidon, I., Gopal, I., Kutten, S.: New models and algorithms for future networks. IEEE Trans. Inf. Theory 41(3), 769–780 (1995). doi:10.1109/18.382023
Clouser, T., Nesterenko, M., Scheideler, C.: Tiara: a self-stabilizing deterministic skip list and skip graph. Theor. Comput. Sci. 428, 18–35 (2012). doi:10.1016/j.tcs.2011.12.079
Cramer, C., Fuhrmann, T.: Self-stabilizing ring networks on connected graphs. Tech. Rep. 2005-5, System Architecture Group, University of Karlsruhe (2005)
Dijkstra, E.W.: Self-stabilization in spite of distributed control. Commun. ACM 17(11), 643–644 (1974). doi:10.1145/361179.361202
Dolev, D., Hoch, E.N., van Renesse, R.: Self-stabilizing and Byzantine-tolerant overlay network. In: Proc. of the 11th Int. Conference on Principles of Distributed Systems (OPODIS). LNCS, vol. 4878, pp. 343–357. Springer, Berlin (2007). doi:10.1007/978-3-540-77096-1_25
Dolev, S.: Self-Stabilization. MIT Press, Cambridge (2000)
Dolev, S., Kat, R.I.: HyperTree for self-stabilizing peer-to-peer systems. Distrib. Comput. 20(5), 375–388 (2008). doi:10.1007/s00446-007-0038-9
Gall, D., Jacob, R., Richa, A., Scheideler, C., Schmid, S., Täubig, H.: Time complexity of distributed topological self-stabilization: the case of graph linearization. In: Proc. of the 9th Latin American Theoretical Informatics Symposium (LATIN). LNCS, vol. 6034, pp. 294–305. Springer, Berlin (2010). doi:10.1007/978-3-642-12200-2_27
Goodrich, M.T., Kosaraju, S.R.: Sorting on a parallel pointer machine with applications to set expression evaluation. J. ACM 43(2), 331–361 (1996). doi:10.1145/226643.226670
Harchol-Balter, M., Leighton, T., Lewin, D.: Resource discovery in distributed networks. In: Proc. of the 18th ACM Symposium on Principles of Distributed Computing (PODC), pp. 229–237 (1999). doi:10.1145/301308.301362
Herman, T.: In: Self-Stabilization Bibliography: Access Guide (2002). See ftp://ftp.cs.uiowa.edu/pub/selfstab/bibliography/
Jacob, R., Richa, A., Scheideler, C., Schmid, S., Täubig, H.: A distributed polylogarithmic time algorithm for self-stabilizing skip graphs. In: Proc. of the 28th ACM Symposium on Principles of Distributed Computing (PODC), pp. 131–140 (2009). doi:10.1145/1582716.1582741
Jacob, R., Ritscher, S., Scheideler, C., Schmid, S.: Towards higher-dimensional topological self-stabilization: a distributed algorithm for Delaunay graphs. Theor. Comput. Sci. 457, 137–148 (2012). doi:10.1016/j.tcs.2012.07.029
Kniesburges, S., Koutsopoulos, A., Scheideler, C.: Re-Chord: a self-stabilizing Chord overlay network. In: Proc. of the 23rd ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 235–244 (2011). doi:10.1145/1989493.1989527
Moscibroda, T., Schmid, S., Wattenhofer, R.: On the topologies formed by selfish peers. In: Proc. of the 25th ACM Symposium on Principles of Distributed Computing (PODC), pp. 133–142 (2006). doi:10.1145/1146381.1146403
Onus, M., Richa, A., Scheideler, C.: Linearization: locally self-stabilizing sorting in graphs. In: Proc. of the 9th Workshop on Algorithm Engineering and Experiments (ALENEX), pp. 99–108. SIAM, Philadelphia (2007)
Shaker, A., Reeves, D.S.: Self-stabilizing structured ring topology P2P systems. In: Proc. of the 5th IEEE Int. Conference on Peer-to-Peer Computing (P2P), pp. 39–46 (2005). doi:10.1109/P2P.2005.34
Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup service for internet applications. Tech. Rep. MIT-LCS-TR-819, MIT (2001)
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version of this work without all proofs and simulations has been presented at the 9th Latin American Theoretical Informatics Symposium (LATIN) 2010. This work is partly supported by the National Science Foundation (NSF grant CCF-0830704) and by the German Research Foundation (DFG project SCHE 1592/1-1 and SFB 901: On-the-Fly Computing)
Rights and permissions
About this article
Cite this article
Gall, D., Jacob, R., Richa, A. et al. A Note on the Parallel Runtime of Self-Stabilizing Graph Linearization. Theory Comput Syst 55, 110–135 (2014). https://doi.org/10.1007/s00224-013-9504-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-013-9504-x