Dynamic load balancing in distributed hash tables

  • Authors:
  • Marcin Bienkowski;Miroslaw Korzeniowski;Friedhelm Meyer auf der Heide

  • Affiliations:
  • International Graduate School of Dynamic Intelligent Systems, Computer Science Department, University of Paderborn, Paderborn, Germany;International Graduate School of Dynamic Intelligent Systems, Computer Science Department, University of Paderborn, Paderborn, Germany;Heinz Nixdorf Institute and Computer Science Department, University of Paderborn, Paderborn, Germany

  • Venue:
  • IPTPS'05 Proceedings of the 4th international conference on Peer-to-Peer Systems
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

In Peer-to-Peer networks based on consistent hashing and ring topology, each server is responsible for an interval chosen (pseudo-) randomly on a unit circle. The topology of the network, the communication load, and the amount of data a server stores depend heavily on the length of its interval. Additionally, the nodes 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 of keeping such a system balanced, so that the lengths of intervals assigned to the nodes differ at most by a constant factor. We propose a simple fully distributed scheme, which works in a constant number of rounds and achieves optimal balance with high probability. Each round takes time at most $\mathcal{O}(\mathcal{D}+{\rm log n})$, where $\mathcal{D}$ is the diameter of a specific network (e.g. Θ(log n) for Chord [15] and $\Theta(\frac{log n}{log log n})$ for the continous-discrete approach proposed by Naor and Wieder [12,11]). The scheme is a continuous process which does not have to be informed about the possible imbalance or the current size of the network to start working. The total number of migrations is within a constant factor from the number of migrations generated by the optimal centralized algorithm starting with the same initial network state.