Skip to main content
Log in

A Note on the Parallel Runtime of Self-Stabilizing Graph Linearization

  • Published:
Theory of Computing Systems Aims and scope Submit manuscript

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.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. 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

  1. 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

    Chapter  Google Scholar 

  2. Aspnes, J., Shah, G.: Skip graphs. In: Proc. of the 14th ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 384–393 (2003)

    Google Scholar 

  3. 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

    Chapter  Google Scholar 

  4. 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)

    Google Scholar 

  5. Blumofe, R.D., Leiserson, C.E.: Space-efficient scheduling of multithreaded computations. SIAM J. Comput. 27(1), 202–229 (1998). doi:10.1137/S0097539793259471

    Article  MATH  MathSciNet  Google Scholar 

  6. Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. J. ACM 46(5), 720–748 (1999). doi:10.1145/324133.324234

    Article  MATH  MathSciNet  Google Scholar 

  7. Brzeziński, J., Szychowiak, M.: Self-stabilization in distributed systems—a short survey. Found. Comput. Decision Sci. 25(1), 3–22 (2000)

    Google Scholar 

  8. 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

    Article  MATH  Google Scholar 

  9. 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

    Article  MATH  MathSciNet  Google Scholar 

  10. Cramer, C., Fuhrmann, T.: Self-stabilizing ring networks on connected graphs. Tech. Rep. 2005-5, System Architecture Group, University of Karlsruhe (2005)

  11. Dijkstra, E.W.: Self-stabilization in spite of distributed control. Commun. ACM 17(11), 643–644 (1974). doi:10.1145/361179.361202

    Article  MATH  Google Scholar 

  12. 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

    Chapter  Google Scholar 

  13. Dolev, S.: Self-Stabilization. MIT Press, Cambridge (2000)

    MATH  Google Scholar 

  14. 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

    Article  MATH  Google Scholar 

  15. 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

    Google Scholar 

  16. 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

    Article  MATH  MathSciNet  Google Scholar 

  17. 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

    Google Scholar 

  18. Herman, T.: In: Self-Stabilization Bibliography: Access Guide (2002). See ftp://ftp.cs.uiowa.edu/pub/selfstab/bibliography/

    Google Scholar 

  19. 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

    Chapter  Google Scholar 

  20. 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

    Article  MATH  MathSciNet  Google Scholar 

  21. 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

    Google Scholar 

  22. 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

    Google Scholar 

  23. 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)

    Google Scholar 

  24. 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

    Chapter  Google Scholar 

  25. 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)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Schmid.

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

Reprints 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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00224-013-9504-x

Keywords

Navigation