Skip to Main Content
A major objective of peer-to-peer (P2P) systems is the management of large amounts of data distributed across many systems. Distributed hash tables (DHT) are designed for highly scalable, self-organizing, and efficient distribution and lookup of data, whereby data is stored globally persistent. The range of values of the corresponding hash function is partitioned and each interval is assigned to a node of the DHT. Because the assignment of data to nodes is based on hash functions, one assumes that the respective data load is distributed evenly across all participating nodes. However most DHT show difficulties with load balancing as we demonstrate in this paper. As a solution for this problem, we present a new and very simple approach for balancing stored data between peers in a fashion analogous to the dissipation of heat energy in materials. We compare this algorithm with other approaches for load balancing and present results based on simulations and a prototype implementation. This new algorithm improves the distribution of load in DHT without requiring major changes of the DHT themselves. In addition, we show that the fault tolerance of peer-to-peer systems is increased by the proposed algorithm.