skip to main content
survey

Survey on Algorithms for Self-stabilizing Overlay Networks

Published: 11 July 2020 Publication History

Abstract

The maintenance of efficient and robust overlay networks is one of the most fundamental and reoccurring themes in networking. This article presents a survey of state-of-the-art algorithms to design and repair overlay networks in a distributed manner. In particular, we discuss basic algorithmic primitives to preserve connectivity, review algorithms for the fundamental problem of graph linearization, and then survey self-stabilizing algorithms for metric and scalable topologies. We also identify open problems and avenues for future research.

References

[1]
Dana Angluin, James Aspnes, Jiang Chen, Yinghua Wu, and Yitong Yin. 2005. Fast construction of overlay networks. In Proceedings of the 17th Annual ACM Symposium on Parallelism in Algorithms and Architectures. ACM, 145--154.
[2]
James Aspnes and Gauri Shah. 2007. Skip graphs. ACM Trans. Algor. 3, 4 (2007), 37.
[3]
James Aspnes and Yinghua Wu. 2007. O (logn)-time overlay network construction from graphs with out-degree 1. In Proceedings of the International Conference on Principles of Distributed Systems. Springer, 286--300.
[4]
Baruch Awerbuch and Christian Scheideler. 2009. Towards a scalable and robust DHT. Theor. Comput. Syst. 45, 2 (2009), 234--260.
[5]
Baruch Awerbuch and Michael Sipser. 1988. Dynamic networks are as fast as static networks. In Proceedings of the 29th Annual Symposium on Foundations of Computer Science (FOCS’88). IEEE, 206--219.
[6]
Baruch Awerbuch and George Varghese. 1991. Distributed program checking: A paradigm for building self-stabilizing distributed protocols. In Proceedings of the 32nd Annual Symposium of Foundations of Computer Science (FOCS’91). IEEE, 258--267.
[7]
Markus Benter, Mohammad Divband, Sebastian Kniesburges, Andreas Koutsopoulos, and Kalman Graffi. 2013. Ca-Re-Chord: A churn resistant self-stabilizing chord overlay network. In Proceedings of the Conference on Networked Systems (NetSys’13). 27--34.
[8]
Andrew Berns. 2015. Avatar: A time- and space-efficient self-stabilizing overlay network. In Proceedings of the 17th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’15). 233--247.
[9]
Andrew Berns, Sukumar Ghosh, and Sriram V. Pemmaraju. 2011. Building self-stabilizing overlay networks with the transitive closure framework. In Proceedings of the 13th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’11). 62--76.
[10]
Marco Canini, Iosif Salem, Liron Schiff, Elad Michael Schiller, and Stefan Schmid. 2018. Renaissance: A self-stabilizing distributed SDN control plane. In Proceedings of the 38th IEEE International Conference on Distributed Computing Systems (ICDCS’18). 233--243.
[11]
Augustin Chaintreau, Pierre Fraigniaud, and Emmanuelle Lebhar. 2008. Networks become navigable as nodes move and forget. In Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP’08), Part I: Tack A: Algorithms, Automata, Complexity, and Games. 133--144.
[12]
Edsger W. Dijkstra. 1974. Self-stabilizing systems in spite of distributed control. Commun. ACM 17, 11 (1974), 643--644.
[13]
Shlomi Dolev. 2000. Self-stabilization. The MIT Press, Cambridge, MA.
[14]
Tomás Feder, Adam Guetz, Milena Mihail, and Amin Saberi. 2006. A local switch Markov chain on given degree graphs with application in connectivity of peer-to-peer networks. In Proceedings of the 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS’06). 69--76.
[15]
Michael Feldmann, Christina Kolb, and Christian Scheideler. 2018. Self-stabilizing overlays for high-dimensional monotonic searchability. In Proceedings of the 20th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’18). 16--31.
[16]
Michael Feldmann and Christian Scheideler. 2017. A self-stabilizing general de Bruijn graph. In Proceedings of the 19th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’17). 250--264.
[17]
Matthias Feldotto, Christian Scheideler, and Kalman Graffi. 2014. HSkip+: A self-stabilizing overlay network for nodes with heterogeneous bandwidths. In Proceedings of the 14th IEEE International Conference on Peer-to-Peer Computing (P2P’14). 1--10.
[18]
Dianne Foreback, Andreas Koutsopoulos, Mikhail Nesterenko, Christian Scheideler, and Thim Strothmann. 2014. On stabilizing departures in overlay networks. In Proceedings of the 16th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’14). 48--62.
[19]
Dominik Gall, Riko Jacob, Andréa W. Richa, Christian Scheideler, Stefan Schmid, and Hanjo Täubig. 2014. A note on the parallel runtime of self-stabilizing graph linearization. Theor. Comput. Syst. 55, 1 (2014), 110--135.
[20]
Robert Gmyr, Jonas Lefèvre, and Christian Scheideler. 2019. Self-stabilizing metric graphs. Theor. Comput. Syst. 63, 2 (2019), 177--199.
[21]
P. Brighten Godfrey, Scott Shenker, and Ion Stoica. 2006. Minimizing churn in distributed systems. SIGCOMM Comput. Commun. Rev. 36, 4 (Aug. 2006), 147--158.
[22]
Thorsten Götte, Christian Scheideler, and Alexander Setzer. 2018. On underlay-aware self-stabilizing overlay networks. In Proceedings of the 20th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’18). 50--64.
[23]
Nicholas J. A. Harvey, Michael B. Jones, Stefan Saroiu, Marvin Theimer, and Alec Wolman. 2003. SkipNet: A scalable overlay network with practical locality properties. In Proceedings of the 4th USENIX Symposium on Internet Technologies and Systems (USITS’03), Vol. 4. USENIX Association, Berkeley, CA, 9--9. Retrieved from http://dl.acm.org/citation.cfm?id=1251460.1251469.
[24]
Cheng Huang, Angela Wang, Jin Li, and Keith W. Ross. 2008. Understanding hybrid CDN-P2P: Why limelight needs its own red swoosh. In Proceedings of the 18th International Workshop on Network and Operating Systems Support for Digital Audio and Video. ACM, 75--80.
[25]
Riko Jacob, Andréa W. Richa, Christian Scheideler, Stefan Schmid, and Hanjo Täubig. 2014. SKIP: A self-stabilizing skip graph. J. ACM 61, 6 (2014), 36:1--36:26.
[26]
Riko Jacob, Stephan Ritscher, Christian Scheideler, and Stefan Schmid. 2012. Towards higher-dimensional topological self-stabilization: A distributed algorithm for Delaunay graphs. Theor. Comput. Sci. 457 (2012), 137--148.
[27]
Thomas Janson, Peter Mahlmann, and Christian Schindelhauer. 2010. A self-stabilizing locality-aware peer-to-peer network combining random networks, search trees, and DHTs. In Proceedings of the 16th IEEE International Conference on Parallel and Distributed Systems (ICPADS’10). 123--130.
[28]
M. Frans Kaashoek and David R Karger. 2003. Koorde: A simple degree-optimal distributed hash table. In Proceedings of the International Workshop on Peer-to-Peer Systems. Springer, 98--107.
[29]
Jon M. Kleinberg. 2000. Navigation in a small world. Nature 406, 6798 (2000), 845.
[30]
Sebastian Kniesburges, Andreas Koutsopoulos, and Christian Scheideler. 2012. A self-stabilization process for small-world networks. In Proceedings of the 26th IEEE International Parallel and Distributed Processing Symposium (IPDPS’12). 1261--1271.
[31]
Sebastian Kniesburges, Andreas Koutsopoulos, and Christian Scheideler. 2013. A deterministic worst-case message complexity optimal solution for resource discovery. In Proceedings of the 20th International Colloquium on Structural Information and Communication Complexity (SIROCCO’13), Revised Selected Papers. 165--176.
[32]
Sebastian Kniesburges, Andreas Koutsopoulos, and Christian Scheideler. 2014. Re-Chord: A self-stabilizing chord overlay network. Theor. Comput. Syst. 55, 3 (2014), 591--612.
[33]
Andreas Koutsopoulos, Christian Scheideler, and Thim Strothmann. 2015. Towards a universal approach for the finite departure problem in overlay networks. In Proceedings of the 17th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’15). 201--216.
[34]
Fabian Kuhn, Stefan Schmid, and Roger Wattenhofer. 2005. A self-repairing peer-to-peer system resilient to dynamic adversarial churn. In Proceedings of the International Workshop on Peer-to-Peer Systems. Springer, 13--23.
[35]
Leslie Lamport. 1985. Solved problems, unsolved problems and non-problems in concurrency. ACM SIGOPS Oper. Syst. Rev. 19, 4 (1985), 34--44.
[36]
Christoph Lenzen, Jukka Suomela, and Roger Wattenhofer. 2009. Local algorithms: Self-stabilization on speed. In Proceedings of the Symposium on Self-Stabilizing Systems. Springer, 17--34.
[37]
Eng Keong Lua, Jon Crowcroft, Marcelo Pias, Ravi Sharma, Steven Lim, et al. 2005. A survey and comparison of peer-to-peer overlay network schemes. IEEE Commun. Surv. Tutor. 7, 1--4 (2005), 72--93.
[38]
Linghui Luo, Christian Scheideler, and Thim Strothmann. 2019. MULTISKIPGRAPH: A self-stabilizing overlay network that maintains monotonic searchability. In Proceedings of the IEEE International Parallel and Distributed Processing Symposium (IPDPS’19). 845--854.
[39]
Peter Mahlmann and Christian Schindelhauer. 2005. Peer-to-peer networks based on random transformations of connected regular undirected graphs. In Proceedings of the 17th Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’05). 155--164.
[40]
Peter Mahlmann and Christian Schindelhauer. 2006. Distributed random digraph transformations for peer-to-peer networks. In Proceedings of the 18th Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’06). 308--317.
[41]
Peter Mahlmann and Christian Schindelhauer. 2007. Peer-to-peer-netzwerke: Algorithmen und Methoden. Springer-Verlag.
[42]
Petar Maymounkov and David Mazieres. 2002. Kademlia: A peer-to-peer information system based on the XOR metric. In Proceedings of the International Workshop on Peer-to-Peer Systems. Springer, 53--65.
[43]
Moni Naor and Udi Wieder. 2003. Novel architectures for P2P applications: The continuous-discrete approach. In Proceedings of the 15th Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA’03). 50--59.
[44]
Rizal Mohd Nor, Mikhail Nesterenko, and Christian Scheideler. 2013. Corona: A stabilizing deterministic message-passing skip list. Theor. Comput. Sci. 512 (2013), 119--129.
[45]
Melih Onus, Andrea Richa, and Christian Scheideler. 2007. Linearization: Locally self-stabilizing sorting in graphs. In Proceedings of the Meeting on Algorithm Engineering 8 Experiments. Society for Industrial and Applied Mathematics, Philadelphia, PA, 99--108. Retrieved from http://dl.acm.org/citation.cfm?id=2791188.2791198.
[46]
Radia J. Perlman. 1985. An algorithm for distributed computation of a spanningtree in an extended LAN. In Proceedings of the 9th Symposium on Data Communications (SIGCOMM’85). 44--53.
[47]
Joseph Poon and Thaddeus Dryja. 2016. The bitcoin lightning network: Scalable off-chain instant payments. Retrieved from https://lightning.network/lightning-network-paper.pdf.
[48]
Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard M. Karp, and Scott Shenker. 2001. A scalable content-addressable network. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication. 161--172.
[49]
Sean Rhea, Dennis Geels, Timothy Roscoe, John Kubiatowicz, et al. 2004. Handling churn in a DHT. In Proceedings of the USENIX Annual Technical Conference, Vol. 6. Boston, MA, 127--140.
[50]
Andréa W. Richa and Christian Scheideler. 2018. Overlay networks for peer-to-peer networks. In Handbook of Approximation Algorithms and Metaheuristics, Second Edition, Volume 2: Contemporary and Emerging Applications. Chapman and Hall/CRC.
[51]
Andréa W. Richa, Christian Scheideler, and Phillip Stevens. 2011. Self-stabilizing de Bruijn networks. In Proceedings of the 13th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’11). 416--430.
[52]
Christina Rickmann, Christoph Wagner, Uwe Nestmann, and Stefan Schmid. 2016. Topological self-stabilization with name-passing process calculi. In Proceedings of the 27th International Conference on Concurrency Theory (CONCUR’16). 19:1--19:15.
[53]
Antony Rowstron and Peter Druschel. 2001. Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms and Open Distributed Processing. Springer, 329--350.
[54]
Christian Scheideler. 2005. How to spread adversarial nodes?: Rotate! In Proceedings of the 37th Annual ACM Symposium on Theory of Computing. ACM, 704--713.
[55]
Christian Scheideler and Alexander Setzer. 2018. Relays: A new approach for the finite departure problem in overlay networks. In Proceedings of the 20th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS’18). 239--253.
[56]
Christian Scheideler, Alexander Setzer, and Thim Strothmann. 2015. Towards establishing monotonic searchability in self-stabilizing data structures. In Proceedings of the 19th International Conference on Principles of Distributed Systems (OPODIS’15). 24:1--24:17.
[57]
Christian Scheideler, Alexander Setzer, and Thim Strothmann. 2016. Towards a universal approach for monotonic searchability in self-stabilizing overlay networks. In Proceedings of the 30th International Symposium on Distributed Computing (DISC’16). 71--84.
[58]
Ankit Singla, Chi-Yao Hong, Lucian Popa, and P. Brighten Godfrey. 2012. Jellyfish: Networking data centers randomly. In Proceedings of the 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI’12). 225--238.
[59]
Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M. Frans Kaashoek, Frank Dabek, and Hari Balakrishnan. 2003. Chord: A scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw. 11, 1 (2003), 17--32.
[60]
Asaf Valadarsky, Gal Shahaf, Michael Dinitz, and Michael Schapira. 2016. Xpander: Towards optimal-performance datacenters. In Proceedings of the 12th International Conference on Emerging Networking Experiments and Technologies. ACM, 205--219.
[61]
Ge Xia. 2013. The stretch factor of the Delaunay triangulation is less than 1.998. SIAM J. Comput. 42, 4 (2013), 1620--1659.
[62]
Ben Y. Zhao, Ling Huang, Jeremy Stribling, Sean C. Rhea, Anthony D. Joseph, and John D. Kubiatowicz. 2004. Tapestry: A resilient global-scale overlay for service deployment. IEEE J. Select. Areas Commun. 22, 1 (2004), 41--53.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Computing Surveys
ACM Computing Surveys  Volume 53, Issue 4
July 2021
831 pages
ISSN:0360-0300
EISSN:1557-7341
DOI:10.1145/3410467
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 July 2020
Online AM: 07 May 2020
Accepted: 01 April 2020
Revised: 01 January 2020
Received: 01 April 2019
Published in CSUR Volume 53, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Self-stabilization
  2. dependability
  3. distributed algorithms
  4. overlay networks
  5. resilience
  6. topological self-stabilization

Qualifiers

  • Survey
  • Research
  • Refereed

Funding Sources

  • ERC Consolidator grant
  • German Research Foundation (DFG)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)32
  • Downloads (Last 6 weeks)1
Reflects downloads up to 31 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media