Abstract
In Peer-to-Peer networks based on consistent hashing and ring topology each peer is responsible for an interval chosen (pseudo-) randomly on a circle. The topology of the network, the communication load and the amount of data a peer stores depends heavily on the length of its interval.
Additionally, peers are allowed to join the network or to leave it at any time. Such operations can destroy the balance of the network even if all the intervals had equal lengths in the beginning.
This paper deals with the task to keep such a system balanced, so that the lengths of intervals assigned to the peers differ at most by a constant factor. We propose a simple scheme which achieves this and its communication cost can be amortized against the cost of keeping the system connected. Our procedure requires O(logn) times more messages than any procedure maintaining the connectivity, even if the an oblivious adversary decides about the dynamics of the system.
The scheme is a continuous process which does not have to be informed about the current size or possible imbalance in the network to start working. As a byproduct, we show how to compute a constant approximation of the current number of nodes n in the system, provided that we know an upper bound on logn.
Partially supported by DFG-Sonderforschungsbereich 376 “Massive Parallelität: Algorithmen, Entwurfsmethoden, Anwendungen” and by the Future and Emerging Technologies programme of EU under EU Contract 001907 DELIS ”Dynamically Evolving, Large Scale Information Systems”
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Karger, D.R., Lehman, E., Leighton, F.T., Levine, M.S., Lewin, D., Panigrahy, R.: Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web. In: Proc. of the 29th ACM Symp. on Theory of Computing (STOC), pp. 654–663 (1997)
Stoica, I., Morris, R., Karger, D.R., Kaashoek, M.F., Balakrishnan, H.: Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications. In: Proc. of the ACM SIGCOMM, pp. 149–160 (2001)
Hildrum, K., Kubiatowicz, J.D., Rao, S., Zhao, B.Y.: Distributed Object Location in a Dynamic Network. In: Proc. of the 14th ACM Symp. on Parallel Algorithms and Architectures (SPAA), pp. 41–52 (2002)
Rowstron, A., Druschel, P.: Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems. LNCS, pp. 329–350. Springer, Heidelberg (2001)
Naor, M., Wieder, U.: A Simple Fault Tolerant Distributed Hash Table. In: Kaashoek, M.F., Stoica, I. (eds.) IPTPS 2003. LNCS, vol. 2735, Springer, Heidelberg (2003)
Naor, M., Wieder, U.: Novel Architectures for P2P Applications: the Continuous-Discrete Approach. In: Proc. of the 15th ACM Symp. on Parallel Algorithms and Architectures (SPAA), pp. 50–59 (2003)
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)
Rao, A., Lakshminarayanan, K., Surana, S., Karp, R.M., Stoica, I.: Load Balancing in Structured P2P Systems. In: Kaashoek, M.F., Stoica, I. (eds.) IPTPS 2003. LNCS, vol. 2735. Springer, Heidelberg (2003)
Godfrey, B., Lakshminarayanan, K., Surana, S., Karp, R.M., Stoica, I.: Load Balancing in Dynamic Structured P2P Systems. In: 23rd Conference of the IEEE Communications Society (INFOCOM) (2004)
Mitzenmacher, M., Andréa, W., Richa, R.K.S.: The Power of Two Random Choices: A Survey of Techniques and Results. In: Pardalos, P., Rajasekaran, S., Rolim, J. (eds.) Handbook of Randomized Computing. Kluwer, Dordrecht (2000)
Byers, J.W., Considine, J., Mitzenmacher, M.: Simple Load Balancing for Distributed Hash Tables. In: Kaashoek, M.F., Stoica, I. (eds.) IPTPS 2003. LNCS, vol. 2735. Springer, Heidelberg (2003)
Adler, M., Halperin, E., Karp, R.M., Vazirani, V.: A stochastic process on the hypercube with applications to peer-to-peer networks. In: Proc. of the 35th ACM Symp. on Theory of Computing (STOC), pp. 575–584 (2003)
Karger, D.R., Ruhl, M.: Simple Efficient Load Balancing Algorithms for Peer-to-Peer Systems. In: Voelker, G.M., Shenker, S. (eds.) IPTPS 2004. LNCS, vol. 3279. Springer, Heidelberg (2005)
Karger, D.R., Ruhl, M.: Simple Efficient Load Balancing Algorithms for Peer-to-Peer Systems. In: Proc. of the 16th ACM Symp. on Parallelism in Algorithms and Architectures (SPAA), pp. 36–43 (2004)
Awerbuch, B., Scheideler, C.: Group Spreading: A protocol for provably secure distributed name service. In: Díaz, J., Karhumäki, J., Lepistö, A., Sannella, D. (eds.) ICALP 2004. LNCS, vol. 3142, pp. 183–195. Springer, Heidelberg (2004)
Manku, G.S.: Balanced Binary Trees for ID Management And Load Balance in Distributed Hash Tables. In: Proc. of the 23rd annual ACM symposium on Principles of Distributed Computing (PODC), pp. 197–205 (2004)
Kenthapadi, K., Manku, G.S.: Decentralized Algorithms Using Both Local and Random Probes for P2P Load Balancing. In: Proc. of the 17th ACM Symp. on Parallel Algorithms and Architectures (SPAA) (2005)
Bienkowski, M., Korzeniowski, M., Meyer auf der Heide, F.: Dynamic Load Balancing in Distributed Hash Tables. In: Castro, M., van Renesse, R. (eds.) IPTPS 2005. LNCS, vol. 3640, pp. 217–225. Springer, Heidelberg (2005)
Liben-Nowell, D., Balakrishnan, H., Karger, D.R.: Analysis of the Evolution of Peer-to-Peer Systems. In: Proc. of the 21st annual ACM symposium on Principles of Distributed Computing (PODC), pp. 233–242 (2002)
Pandurangan, G., Raghavan, P., Upfal, E.: Building Low-Diameter Peer-to-Peer Networks. In: Proc. of the 42nd IEEE symposium on Foundations of Computer Science (FOCS), pp. 492–499 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bienkowski, M., Korzeniowski, M. (2006). Bounding Communication Cost in Dynamic Load Balancing of Distributed Hash Tables. In: Anderson, J.H., Prencipe, G., Wattenhofer, R. (eds) Principles of Distributed Systems. OPODIS 2005. Lecture Notes in Computer Science, vol 3974. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11795490_29
Download citation
DOI: https://doi.org/10.1007/11795490_29
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-36321-7
Online ISBN: 978-3-540-36322-4
eBook Packages: Computer ScienceComputer Science (R0)