A Distributed Load Balancing Algorithm for Structured P2P Systems

In structured P2P system, DHT abstraction and the heterogeneity of node capacity could result in a load imbalance problem. Existing load balancing approaches have two limitations. First, they do not take the link latency into account when moving loads, thus loads may be transferred between two nodes with large link latency. Second, they heavily rely on some nodes of fixed logical locations in the system, which could overload these nodes and make them vulnerable. This paper presents a distributed load balancing algorithm. Each peer node periodically aggregates local loads information based on local neighborhood information, and a heuristic algorithm is used when transferring loads from heavy nodes to light nodes. Our algorithm not only utilizes the proximate relationships of nodes in the physical networks, but also manages to achieve a good tradeoff between the quality of load balance and the load movement cost. The results of our intensive simulation experiments show that our algorithm can not only achieve a good load balance, but also save the bandwidth by more than 23%.

[1]  David R. Karger,et al.  Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web , 1997, STOC '97.

[2]  David R. Karger,et al.  Chord: A scalable peer-to-peer lookup service for internet applications , 2001, SIGCOMM '01.

[3]  Song Jiang,et al.  LightFlood: an efficient flooding scheme for file search in unstructured peer-to-peer systems , 2003, 2003 International Conference on Parallel Processing, 2003. Proceedings..

[4]  Yiming Hu,et al.  Efficient, proximity-aware load balancing for DHT-based P2P systems , 2005, IEEE Transactions on Parallel and Distributed Systems.

[5]  Peter Druschel,et al.  Pastry: Scalable, distributed object location and routing for large-scale peer-to- , 2001 .

[6]  Jeffrey Considine,et al.  Simple Load Balancing for Distributed Hash Tables , 2003, IPTPS.

[7]  Richard M. Karp,et al.  Load balancing in dynamic structured P2P systems , 2004, IEEE INFOCOM 2004.

[8]  Ellis Horowitz,et al.  Exact and Approximate Algorithms for Scheduling Nonidentical Processors , 1976, JACM.

[9]  Stefan Saroiu,et al.  A Measurement Study of Peer-to-Peer File Sharing Systems , 2001 .

[10]  Ellen W. Zegura,et al.  How to model an internetwork , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[11]  Antony I. T. Rowstron,et al.  Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems , 2001, Middleware.

[12]  Richard M. Karp,et al.  Load Balancing in Structured P2P Systems , 2003, IPTPS.

[13]  Mark Handley,et al.  Topologically-aware overlay construction and server selection , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[14]  Mark Handley,et al.  A scalable content-addressable network , 2001, SIGCOMM '01.

[15]  Ben Y. Zhao,et al.  Tapestry: a resilient global-scale overlay for service deployment , 2004, IEEE Journal on Selected Areas in Communications.

[16]  David R. Karger,et al.  Wide-area cooperative storage with CFS , 2001, SOSP.