Skip to main content
Log in

Re-Chord: A Self-stabilizing Chord Overlay Network

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

Abstract

The Chord peer-to-peer system is considered, together with CAN, Tapestry and Pastry, as one of the pioneering works on peer-to-peer distributed hash tables (DHT) that inspired a large volume of papers and projects on DHTs as well as peer-to-peer systems in general. Chord, in particular, has been studied thoroughly, and many variants of Chord have been presented that optimize various criteria. Also, several implementations of Chord are available on various platforms. Though Chord is known to be very efficient and scalable and it can handle churn quite well, no protocol is known yet that guarantees that Chord is self-stabilizing, i.e., the Chord network can be recovered from any initial state in which the network is still weakly connected. This is not too surprising since it is known that the Chord network is not locally checkable for its current topology. We present a slight extension of the Chord network, called Re-Chord (reactive Chord), that turns out to be locally checkable, and we present a self-stabilizing distributed protocol for it that can recover the Re-Chord network from any initial state, in which the n peers are weakly connected. in O(nlogn) communication rounds. We also show that our protocol allows a new peer to join or an old peer to leave an already stable Re-Chord network so that within O((logn)2) communication rounds the Re-Chord network is stable again.

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

Similar content being viewed by others

References

  1. Zhao, B.Y., Huang, L., Stribling, J., Rhea, S.C., Joseph, A.D., Kubiatowicz, J.D.: Tapestry: a resilient global-scale overlay for service deployment. IEEE J. Sel. Areas Commun. 22, 41–53 (2004)

    Article  Google Scholar 

  2. Ratnasamy, S., Francis, P., Handley, M., Karp, R., Shenker, S.: A scalable content-addressable network. In: Proc. ACM SIGCOMM, pp. 161–172 (2001)

    Google Scholar 

  3. Rowstron, A., Druschel, P.: Pastry: Scalable, distributed object location and routing for large-scale peer-to-peer systems. In: IFIP/ACM International Conference on Distributed Systems Platforms (Middleware), Heidelberg, Germany, November 2001, pp. 329–350 (2001)

    Google Scholar 

  4. Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup service for Internet applications. In: SIGCOMM (2001)

    Google Scholar 

  5. Gall, D., Jacob, R., Richa, A.W., Scheideler, C., Schmid, S., Täubig, H.: Time complexity of distributed topological self-stabilization: the case of graph linearization. In: The 9th Latin American Symposium on Theoretical Informatics (LATIN) (2010)

    Google Scholar 

  6. Leong, B., Liskov, B., Demaine, E.D.: EpiChord: parallelizing the Chord lookup algorithm with reactive routing state management. In: ICON 2004: 12th IEEE International Conference on Network, 31 May 2004. Computer Communications, vol. 29(9), pp. 1243–1259 (2006). ISSN 0140-3664. http://www.sciencedirect.com/science/article/B6TYP-4HNS5CY-1/2/dd8f777d7274525a455f6f8ef26d8d4d. doi:10.1016/j.comcom.2005.10.002

    Google Scholar 

  7. Mesaros, V.A., Carton, B., Van Roy, P., Barbe, P.S.: S-Chord: using symmetry to improve lookup efficiency in Chord. In: 2003 International Conference on Parallel and Distributed Processing Techniques and Applications, pp. 23–26 (2002)

    Google Scholar 

  8. Jiang, J., Pan, R., Liang, C., Wang, W.: ADBIS, 2005, pp. 338–348

  9. Wang, J., Yu, Z.: A new variation of Chord with novel improvement on lookup locality. In: Proceedings of the 2006 International Conference on Grid Computing and Applications (GCA’06), Las Vegas, June 2006, pp. 18–24 (2006)

    Google Scholar 

  10. Awerbuch, B., Scheideler, C.: The hyperring: a low-congestion deterministic data structure for distributed environments. In: Proc. 15th Ann. ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 318–327 (2004)

    Google Scholar 

  11. Aspnes, J., Shah, G.: Skip graphs. ACM Trans. Algorithms 3(4), 37 (2007)

    Article  MathSciNet  Google Scholar 

  12. Bhargava, A., Kothapalli, K., Riley, C., Scheideler, C., Thober, M.: Pagoda: a dynamic overlay network for routing, data management, and multicasting. In: Proc. 16th Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 170–179 (2004)

    Google Scholar 

  13. Brzezinski, J., Szychowiak, M.: Self-stabilization in distributed systems—a short survey. Found. Comput. Dec. Sci. 25(1) (2000)

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

  15. Clouser, T., Nesterenko, M., Scheideler, C.: Tiara: a self-stabilizing deterministic skip list. In: Proc. 10th Int. Symp. on Stabilization, Safety, and Security of Distributed Systems (SSS) (2008)

    Google Scholar 

  16. Dijkstra, E.W.: Self-stabilization in spite of distributed control. Commun. ACM 17, 643–644 (1974)

    Article  MATH  Google Scholar 

  17. Dolev, S.: Self-stabilization. MIT Press, Cambridge (2000)

    MATH  Google Scholar 

  18. Druschel, P., Rowstron, A.: Pastry: scalable, distributed object location and routing for large-scale peer-to-peer systems. In: Proc. 18th IFIP/ACM International Conference on Distributed Systems Platforms (Middleware) (2001)

    Google Scholar 

  19. 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. 9th Latin American Theoretical Informatics Symposium (LATIN) (2010)

    Google Scholar 

  20. Herman T.: Self-stabilization bibliography: access guide. University of Iowa, December 2002. See ftp://ftp.cs.uiowa.edu/pub/selfstab/bibliography/

  21. Harvey, N.J.A., Jones, M.B., Saroiu, S., Theimer, M., Wolman, A.: Skipnet: a scalable overlay network with practical locality properties. In: Proc. 4th USENIX Symposium on Internet Technologies and Systems (USITS), pp. 113–126 (2003)

    Google Scholar 

  22. Jacob, R., Ritscher, S., Scheideler, C., Schmid, S.: A self-stabilizing and local Delaunay graph construction. In: Proc. 20th International Symposium on Algorithms and Computation (ISAAC) (2009)

    Google Scholar 

  23. Kuhn, F., Schmid, S., Wattenhofer, R.: A self-repairing peer-to-peer system resilient to dynamic adversarial churn. In: Proc. 4th International Workshop on Peer-To-Peer Systems (IPTPS) (2005)

    Google Scholar 

  24. Malkhi, D., Naor, M., Ratajczak, D.: Viceroy: a scalable and dynamic emulation of the butterfly. In: Proc. 21st PODC, pp. 183–192 (2002)

    Google Scholar 

  25. Naor, M., Wieder, U.: Novel architectures for P2P applications: the continuous-discrete approach. ACM Trans. Algorithms (TALG) 3 (2007)

  26. Onus, M., Richa, A., Scheideler, C.: Linearization: locally self-stabilizing sorting in graphs. In: Proc. 9th ALENEX (2007)

    Google Scholar 

  27. Ratnasamy, S., Francis, P., Handley, M., Karp, R., Schenker, S.: A scalable content-addressable network. In: Proc. ACM SIGCOMM, pp. 161–172 (2001)

    Google Scholar 

  28. Scheideler, C., Schmid, S.: A distributed and oblivious heap. In: Proc. 36th International Colloquium on Automata, Languages and Programming (ICALP) (2009)

    Google Scholar 

  29. Shaker, A., Reeves, D.S.: Self-stabilizing structured ring topology P2P systems. In: Proc. 5th IEEE International Conference on Peer-to-Peer Computing, pp. 39–46 (2005)

    Google Scholar 

  30. Karger, D., Lehman, E., Leighton, T., Levine, M., Lewin, D., Panigrahy, R.: Consistent hashing and random trees: distributedcaching protocols for relieving hot spots on the World Wide Web. In: ACM Symposium on Theory of Computing, pp. 654–663 (1997)

    Google Scholar 

  31. Jacob, R., Richa, A., Scheideler, C., Schmid, S., Täubig, H.: A distributed polylogarithmic time algorithm for self-stabilizing skip graphs. In: The 28th ACM Symp. on Principles of Distributed Computing (PODC) (2009)

    Google Scholar 

  32. Montresor, A., Jelasity, M., Babaoglu, O.: Chord on demand. In: Proceedings of the Fifth IEEE International Conference on Peer-to-Peer Computing (P2P’05). pp. 87–94. IEEE Computer Society, Washington (2005). doi:10.1109/P2P.2005.4, http://dx.doi.org/10.1109/P2P.2005.4

    Chapter  Google Scholar 

  33. Berns, A., Ghosh, S., Pemmaraju, S.V.: A framework for building self-stabilizing overlay networks. In: PODC (2010)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andreas Koutsopoulos.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kniesburges, S., Koutsopoulos, A. & Scheideler, C. Re-Chord: A Self-stabilizing Chord Overlay Network. Theory Comput Syst 55, 591–612 (2014). https://doi.org/10.1007/s00224-012-9431-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00224-012-9431-2

Keywords

Navigation