Advertisement

Churn Possibilities and Impossibilities

  • Dianne ForebackEmail author
  • Mikhail Nesterenko
  • Sébastien Tixeuil
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11028)

Abstract

Churn is processes joining or leaving the peer-to-peer overlay network. We study handling of various churn variants. Cooperative churn requires leaving processes to participate in the churn algorithm while adversarial churn allows the processes to just quit. Infinite churn considers unbounded number of churning processes throughout a single computation. Unlimited churn does not place a bound on the number of concurrently churning processes. Fair churn handling requires that each churn request is eventually satisfied. A local solution involves only a limited part of the network in handing a churn request.

We prove that it is impossible to handle adversarial unlimited churn. We sketch a global solution to all variants of cooperative churn and focus on local churn handling. We prove that a local fair solution to infinite churn, whether limited or unlimited, is impossible. On the constructive side, we present an algorithm that maintains a linear topology and handles the least restrictive unfair churn: infinite and unlimited. We extend this solution to a 1-2 skip list, describe enhancements for generalized skip lists and skip graphs.

References

  1. 1.
    Andersen, D., Balakrishnan, H., Kaashoek, F., Morris, R.: Resilient overlay networks. In: SOSP, pp. 131–145. ACM, New York (2001)Google Scholar
  2. 2.
    Augustine, J., Molla, A.R., Morsy, E., Pandurangan, G., Robinson, P., Upfal, E.: Storage and search in dynamic peer-to-peer networks. In: Proceedings of the Twenty-Fifth Annual ACM Symposium on Parallelism in Algorithms and Architectures, pp. 53–62. ACM (2013)Google Scholar
  3. 3.
    Augustine, J., Pandurangan, G., Robinson, P.: Fast byzantine agreement in dynamic networks. In: Proceedings of the 2013 ACM Symposium on Principles of Distributed Computing, pp. 74–83. ACM (2013)Google Scholar
  4. 4.
    Augustine, J., Pandurangan, G., Robinson, P., Roche, S., Upfal, E.: Enabling robust and efficient distributed computation in dynamic peer-to-peer networks. In: 2015 IEEE 56th Annual Symposium on Foundations of Computer Science, pp. 350–369. IEEE (2015)Google Scholar
  5. 5.
    Awerbuch, B., Scheideler, C.: The hyperring: a low-congestion deterministic data structure for distributed environments. In: SODA, pp. 318–327. Society for Industrial and Applied Mathematics, Philadelphia (2004)Google Scholar
  6. 6.
    Awerbuch, B., Scheideler, C.: Towards scalable and robust overlay networks. In: IPTPS (2007)Google Scholar
  7. 7.
    Awerbuch, B., Scheideler, C.: Towards a scalable and robust DHT. Theory Comput. Syst. 45(2), 234–260 (2009)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Baset, S.A., Schulzrinne, H.: An analysis of the skype peer-to-peer internet telephony protocol. arXiv preprint arxiv:cs/0412017 (2004)
  9. 9.
    Berns, A., Ghosh, S., Pemmaraju, S.V.: Building self-stabilizing overlay networks with the transitive closure framework. In: Défago, X., Petit, F., Villain, V. (eds.) SSS 2011. LNCS, vol. 6976, pp. 62–76. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-24550-3_7CrossRefGoogle Scholar
  10. 10.
    Caron, E., Desprez, F., Petit, F., Tedeschi, C.: Snap-stabilizing prefix tree for peer-to-peer systems. Parallel Process. Lett. 20(1), 15–30 (2010)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Chandra, T.D., Hadzilacos, V., Toueg, S., Charron-Bost, B.: On the impossibility of group membership. In: Proceedings of the Fifteenth Annual ACM Symposium on Principles of Distributed Computing, pp. 322–330. ACM (1996)Google Scholar
  12. 12.
    Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43(2), 225–267 (1996)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Clouser, T., Nesterenko, M., Scheideler, C.: Tiara: a self-stabilizing deterministic skip list and skip graph. Theor. Comput. Sci. 428, 18–35 (2012)MathSciNetCrossRefGoogle Scholar
  14. 14.
    Dolev, S., Kat, R.I.: Hypertree for self-stabilizing peer-to-peer systems. In: NCA, pp. 25–32 (2004)Google Scholar
  15. 15.
    Drees, M., Gmyr, R., Scheideler, C.: Churn-and dos-resistant overlay networks based on network reconfiguration. In: Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), California, USA, pp. 417–427. ACM (2016)Google Scholar
  16. 16.
    Foreback, D., Koutsopoulos, A., Nesterenko, M., Scheideler, C., Strothmann, T.: On stabilizing departures in overlay networks. In: Felber, P., Garg, V. (eds.) SSS 2014. LNCS, vol. 8756, pp. 48–62. Springer, Cham (2014).  https://doi.org/10.1007/978-3-319-11764-5_4CrossRefGoogle Scholar
  17. 17.
    Foreback, D., Nesterenko, M., Tixeuil, S.: Infinite unlimited churn (short paper). In: Bonakdarpour, B., Petit, F. (eds.) SSS 2016. LNCS, vol. 10083, pp. 148–153. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-49259-9_12CrossRefGoogle Scholar
  18. 18.
    Foreback, D., Nesterenko, M., Tixeuil, S.: Churn possibilities and impossibilities. Technical report hal-01753397, HAL (2018)Google Scholar
  19. 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: López-Ortiz, A. (ed.) LATIN 2010. LNCS, vol. 6034, pp. 294–305. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-12200-2_27CrossRefGoogle Scholar
  20. 20.
    Gambs, S., Guerraoui, R., Harkous, H., Huc, F., Kermarrec, A.-M.: Scalable and secure polling in dynamic distributed networks. In: 31st Symposium on Reliable Distributed Systems (SRDS), pp. 181–190. IEEE (2012)Google Scholar
  21. 21.
    Guerraoui, R., Huc, F., Kermarrec, A.-M.: Highly dynamic distributed computing with byzantine failures. In: PODC, pp. 176–183. ACM (2013)Google Scholar
  22. 22.
    Hayes, T.P., Saia, J., Trehan, A.: The forgiving graph: a distributed data structure for low stretch under adversarial attack. Distrib. Comput. 25(4), 261–278 (2012)CrossRefGoogle Scholar
  23. 23.
    Jacob, R., Richa, A., Scheideler, C., Schmid, S., Täaubig, H.: A distributed polylogarithmic time algorithm for self-stabilizing skip graphs. In: PODC, pp. 131–140 (2009)Google Scholar
  24. 24.
    Jacob, R., Richa, A., Scheideler, C., Schmid, S., Täubig, H.: Skip+: a self-stabilizing skip graph. J. ACM (JACM) 61(6), 36 (2014)MathSciNetCrossRefGoogle Scholar
  25. 25.
    Ko, S.Y., Hoque, I., Gupta, I.: Using tractable and realistic churn models to analyze quiescence behavior of distributed protocols. In: SRDS, pp. 259–268 (2008)Google Scholar
  26. 26.
    Koutsopoulos, A., Scheideler, C., Strothmann, T.: Towards a universal approach for the finite departure problem in overlay networks. In: Pelc, A., Schwarzmann, A.A. (eds.) SSS 2015. LNCS, vol. 9212, pp. 201–216. Springer, Cham (2015).  https://doi.org/10.1007/978-3-319-21741-3_14CrossRefGoogle Scholar
  27. 27.
    Kuhn, F., Schmid, S., Wattenhofer, R.: Towards worst-case churn resistant peer-to-peer systems. Distrib. Comput. 22(4), 249–267 (2010)CrossRefGoogle Scholar
  28. 28.
    Mega, G., Montresor, A., Picco, G.P.: On churn and communication delays in social overlays. In: 2012 IEEE 12th International Conference on Peer-to-Peer Computing (P2P), pp. 214–224. IEEE (2012)Google Scholar
  29. 29.
    Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system. Consulted 1(2012), 28 (2008)Google Scholar
  30. 30.
    Nor, R.M., Nesterenko, M., Scheideler, C.: Corona: a stabilizing deterministic message-passing skip list. In: 13th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS), Grenoble, France, pp. 356–370, October 2011Google Scholar
  31. 31.
    Nor, R.M., Nesterenko, M., Tixeuil, S.: Linearizing peer-to-peer systems with oracles. In: Higashino, T., Katayama, Y., Masuzawa, T., Potop-Butucaru, M., Yamashita, M. (eds.) SSS 2013. LNCS, vol. 8255, pp. 221–236. Springer, Cham (2013).  https://doi.org/10.1007/978-3-319-03089-0_16CrossRefGoogle Scholar
  32. 32.
    Pugh, W.: Skip lists: a probabilistic alternative to balanced trees. Commun. ACM 33(6), 668–676 (1990)CrossRefGoogle Scholar
  33. 33.
    Rickmann, C., Wagner, C., Nestmann, U., Schmid, S.: Topological self-stabilization with name-passing process calculi. In: Desharnaisand, J., Jagadeesan, R., (eds.), 27th International Conference on Concurrency Theory (CONCUR 2016), volume 59 of Leibniz International Proceedings in Informatics (LIPIcs), Dagstuhl, Germany, pp. 19:1–19:15 (2016). SchlossDagstuhl–Leibniz-Zentrum fuer InformatikGoogle Scholar
  34. 34.
    Rowstron, A., Druschel, P.: Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Guerraoui, R. (ed.) Middleware 2001. LNCS, vol. 2218, pp. 329–350. Springer, Heidelberg (2001).  https://doi.org/10.1007/3-540-45518-3_18CrossRefGoogle Scholar
  35. 35.
    Saia, J., Trehan, A.: Picking up the pieces: self-healing in reconfigurable networks. In: 2008 IEEE International Symposium on Parallel and Distributed Processing, IPDPS 2008, pp. 1–12. IEEE (2008)Google Scholar
  36. 36.
    Shaker, A., Reeves, D.S.: Self-stabilizing structured ring topology P2P systems. In: Fifth International Conference on Peer-to-Peer Computing (P2P), pp. 39–46. IEEE (2005)Google Scholar
  37. 37.
    Stoica, I., et al.: Chord: a scalable peer-to-peer lookup protocol for Internet applications. IEEE/ACM Trans. Netw. 11(1), 17–32 (2003)CrossRefGoogle Scholar
  38. 38.
    Stutzbach, D., Rejaie, R.: Understanding churn in peer-to-peer networks. In: IMC, pp. 189–202, October 2006Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Dianne Foreback
    • 1
    Email author
  • Mikhail Nesterenko
    • 1
  • Sébastien Tixeuil
    • 2
  1. 1.Kent State UniversityKentUSA
  2. 2.Sorbonne Université, CNRS, LIP6ParisFrance

Personalised recommendations