Dependable Peer-to-Peer Systems Withstanding Dynamic Adversarial Churn

  • Keno Albrecht
  • Fabian Kuhn
  • Roger Wattenhofer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4028)


The most essential difference between classical distributed data structures and peer-to-peer systems is the dynamic behavior of the latter. Unlike traditional systems which consist of a fixed set of machines of which a few might occasionally fail in some way, peer-to-peer systems are characterized by continuous joins and leaves at a high rate (called churn). We address this dynamism in two ways. We present a general information aggregation method which can be used to implement deterministic join and leave protocols which keep the network in a well-balanced state. We also use the information aggregation algorithm together with a primitive called token distribution to obtain a general way of constructing efficient peer-to-peer systems which are resilient to dynamic, adversarial joins and leaves. In each time step, an adversary is allowed to insert and delete a bounded number of arbitrary peers. The system adapts to this churn by rearranging peers or adjusting the topology whenever necessary.


Load Balance Data Item Overlay Network Distribute Hash Table Virtual Node 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aberer, K.: P-Grid: A Self-Organizing Access Structure for P2P Information Systems. In: Batini, C., Giunchiglia, F., Giorgini, P., Mecella, M. (eds.) CoopIS 2001. LNCS, vol. 2172, pp. 179–194. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  2. 2.
    Abraham, I., Awerbuch, B., Azar, Y., Bartal, Y., Malkhi, D., Pavlov, E.: A Generic Scheme for Building Overlay Networks in Adversarial Scenarios. In: Proc. 17th Int. Symp. on Parallel and Distributed Processing (IPDPS), p. 40 (2003)Google Scholar
  3. 3.
    Abraham, I., Malkhi, D., Dobzinski, O.: LAND: Stretch (1 + ε) Locality-Aware Networks for DHTs. In: Proc. 15th Ann. ACM-SIAM Symp. on Discrete Algorithms (SODA), pp. 550–559 (2004)Google Scholar
  4. 4.
    Albrecht, K., Burri, N., Wattenhofer, R.: Spamato – An Extendable Spam Filter System. In: Proceedings of 2nd Conference on Email and Anti-Spam (CEAS) (2005)Google Scholar
  5. 5.
    Aspnes, J., Shah, G.: Skip Graphs. In: Proc. 14th Ann. ACM-SIAM Symp. on Discrete Algorithms (SODA), pp. 384–393 (2003)Google Scholar
  6. 6.
    Awerbuch, B., Scheideler, C.: The Hyperring: A Low-Congestion Deterministic Data Structure for Distributed Environments. In: Proc. 15th Ann. ACM-SIAM Symp. on Discrete Algorithms (SODA), pp. 318–327 (2004)Google Scholar
  7. 7.
    Byers, J., Considine, J., Mitzenmacher, M.: Simple Load Balancing for Distributed Hash Tables. In: Proceedings of 2nd International Workshop on Peer-to-Peer Systems (IPTPS) (2003)Google Scholar
  8. 8.
    Cohen, B.: Incentives Build Robustness in BitTorrent. In: Proceedings of 1st Workshop on the Economics of Peer-to-Peer Systems (2003)Google Scholar
  9. 9.
    Cybenko, G.: Dynamic Load Balancing for Distributed Memory Multiprocessors. Journal on Parallel Distributed Computing 7, 279–301 (1989)CrossRefGoogle Scholar
  10. 10.
    Dabek, F., Kaashoek, M.F., Karger, D., Morris, R., Stoica, I.: Wide-area cooperative storage with CFS. In: Proceedings of the 18th ACM Symposium on Operating Systems Principles (SOSP) (2001)Google Scholar
  11. 11.
    Druschel, P., Rowstron, A.: PAST: A Large-Scale, Persistent Peer-to-Peer Storage Utility. In: Proceedings of 8th Workshop on Hot Topics in Operating Systems (HotOS) (2001)Google Scholar
  12. 12.
  13. 13.
    Fiat, A., Saia, J.: Censorship Resistant Peer-to-Peer Content Addressable Networks. In: Proc. 13th Symp. on Discrete Algorithms (SODA) (2002)Google Scholar
  14. 14.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. Journal of the ACM 32(2), 374–382 (1985)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Gupta, I., Birman, K., Linga, P., Demers, A., van Renesse, R.: Kelips: Building an Efficient and Stable P2P DHT Through Increased Memory and Background Overhead. In: Proceedings of 2nd International Workshop on Peer-to-Peer Systems (IPTPS) (2003)Google Scholar
  16. 16.
    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 Symp. on Internet Technologies and Systems (USITS) (2003)Google Scholar
  17. 17.
    Jelasity, M., Montresor, A., Babaoglu, O.: Gossip-based aggregation in large dynamic networks. ACM Transactions on Computer Systems 23(3), 219–252 (2005)CrossRefGoogle Scholar
  18. 18.
    Kubiatowicz, J., Bindel, D., Chen, Y., Eaton, P., Geels, D., Gummadi, R., Rhea, S., Weatherspoon, H., Weimer, W., Wells, C., Zhao, B.: OceanStore: An Architecture for Global-scale Persistent Storage. In: Proc. of ACM ASPLOS (November 2000)Google Scholar
  19. 19.
    Kuhn, F., Schmid, S., Smit, J., Wattenhofer, R.: Constructing robust dynamic peer-to-peer systems. Technical report, ETH Zurich, TIK Report 216 (2005)Google Scholar
  20. 20.
    Li, X., Misra, J., Plaxton, C.G.: Active and Concurrent Topology Maintenance. In: Guerraoui, R. (ed.) DISC 2004. LNCS, vol. 3274, pp. 320–334. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  21. 21.
    Malkhi, D., Naor, M., Ratajczak, D.: Viceroy: A Scalable and Dynamic Emulation of the Butterfly. In: Proc. 21st Ann. Symp. on Principles of Distributed Computing (PODC), pp. 183–192 (2002)Google Scholar
  22. 22.
    Maymounkov, P., Mazières, D.: Kademlia: A Peer-to-Peer Information System Based on the XOR Metric. In: Druschel, P., Kaashoek, M.F., Rowstron, A. (eds.) IPTPS 2002. LNCS, vol. 2429, p. 53. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  23. 23.
    Muthitacharoen, A., Morris, R., Gil, T.M., Chen, B.: Ivy: A Read/Write Peer-to-Peer File System. In: Proceedings of 5th Symposium on Operating Systems Design and Implementation (OSDI) (2002)Google Scholar
  24. 24.
    Peleg, D., Upfal, E.: The Token Distribution Problem. SIAM Journal on Computing 18(2), 229–243 (1989)MATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Plaxton, C.G.: Load Balancing, Selection and Sorting on the Hypercube. In: Proc.1st Ann. ACM Symp. on Parallel Algorithms and Architectures (SPAA), pp. 64–73 (1989)Google Scholar
  26. 26.
    Plaxton, C.G., Rajaraman, R., Richa, A.W.: Accessing Nearby Copies of Replicated Objects in a Distributed Environment. In: Proc. 9th Ann. ACM Symp. on Parallel Algorithms and Architectures (SPAA), pp. 311–320 (1997)Google Scholar
  27. 27.
    Rao, A., Lakshminarayanan, K., Surana, S., Karp, R., Stoica, I.: Load Balancing in Structured P2P Systems. In: Proceedings of 2nd International Workshop on Peer-to-Peer Systems (IPTPS) (2003)Google Scholar
  28. 28.
    Ratnasamy, S., Francis, P., Handley, M., Karp, R., Shenker, S.: A Scalable Content Addressable Network. Proc. of ACM SIGCOMM 2001(2001)Google Scholar
  29. 29.
    Rhea, S., Geels, D., Roscoe, T., Kubiatowicz, J.: Handling Churn in a DHT. In: Proc. USENIX Ann. Technical Conference (2004)Google Scholar
  30. 30.
    Saia, J., Fiat, A., Gribble, S.D., Karlin, A.R., Saroiu, S.: Dynamically Fault-Tolerant Content Addressable Networks. In: Druschel, P., Kaashoek, M.F., Rowstron, A. (eds.) IPTPS 2002. LNCS, vol. 2429, p. 270. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  31. 31.
    Shirazi, B.A., Kavi, K.M., Hurson, A.R.: Scheduling and Load Balancing in Parallel and Distributed Systems. IEEE Computer Society Press, Los Alamitos (1995)Google Scholar
  32. 32.
    Stoica, I., Morris, R., Karger, D., Kaashoek, M.F., Balakrishnan, H.: Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications. In: Proc. ACM SIGCOMM Conference (2001)Google Scholar
  33. 33.
    Van Renesse, R., Birman, K.P., Vogels, W.: Astrolabe: A Robust and Scalable Technology for Distributed System Monitoring, Management, and Data Mining. ACM Transactions on Computing Systems 21(2), 164–206 (2003)CrossRefGoogle Scholar
  34. 34.
    van Renesse, R., Bozdog, A.: Willow: DHT, Aggregation, and Publish/Subscribe in One Protocol. In: Voelker, G.M., Shenker, S. (eds.) IPTPS 2004. LNCS, vol. 3279, pp. 173–183. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  35. 35.
    Zhang, Z., Shi, S.-M., Zhu, J.: SOMO: Self-Organized Metadata Overlay for Resource Management in P2P DHT. In: Proceedings of 2nd International Workshopon Peer-to-Peer Systems (IPTPS) (2003)Google Scholar
  36. 36.
    Zhao, B.Y., Huang, L., Stribling, J., Joseph, A.D., Kubiatowicz, J.D.: Tapestry: A Resilient Global-scale Overlay for Service Deployment. IEEE Journal on Selected Areas in Communications 22(1) (2004)Google Scholar
  37. 37.
    Zhou, F., Zhuang, L., Zhao, B.Y., Huang, L., Joseph, A.D., Kubiatowicz, J.D.: Approximate Object Location and Spam Filtering on Peer-to-peer Systems. In: Proceedings of 4ht ACM/IFIP/USENIX International Middleware Conference (Middleware) (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Keno Albrecht
    • 1
  • Fabian Kuhn
    • 1
  • Roger Wattenhofer
    • 1
  1. 1.Computer Engineering and Networks LaboratoryETH ZurichZurichSwitzerland

Personalised recommendations