Abstract
We developed a diffusive load balancing technique for P2P systems. This technique uses the overlay network of a P2P system and results in the nodes of the network having similar available capacities; therefore the services hosted on these nodes are expected to have similar mean response times. In this paper, the technique is presented, including the policies, stages of operation, and decision algorithms. The convergence of the available capacities to the global average is demonstrated. The convergence speed depends on the decision algorithm, the neighborhood structure of the underlying overlay network, and the workload distribution. When used in a system with churn, the technique keeps the standard deviation of available capacities in the system within a bound. This bound depends on the amount of churn and the frequency of the load balancing operations, as well as on the distribution of node capacities. However, the sizes of services have little impact on this bound. The paper presents the results of analytical analysis and simulation studies.
Similar content being viewed by others
References
Cedo F, Cortes A, Ripoll A, Senar MA, Luque E (2007) The Convergence of Realistic Distributed Load-Balancing Algorithms. Theory Comput Syst 41(4): 609–618
Stoica I, Morris R, Karger D, Kaashoek MF, Balakrishnan H (2001) Chord: a scalable peer-to-peer lookup service for internet applications. SIGCOMM Comput Commun Rev 31(4): 149–160
Ganesan P, Bawa M, Garcia-Molina H (2004) Online balancing of range-partitioned data with applications to peer-to-peer systems. In: Proceedings of the thirtieth international conference on very large data bases, vol 30, Toronto, Canada, August 31–September 03, 2004
Corradi A, Leonardi L, Zambonelli F (1999) Diffusive load-balancing policies for dynamic applications. IEEE Concurr 7(1): 22–31
Ledlie J, Seltzer M (2005) Distributed, secure load balancing with skew, heterogeneity and churn. In: Proceedings of 24th INFOCOM 2005, pp 1419–1430, March 2005
Willebeek-LeMair MH, Reeves AP (1993) Strategies for dynamic load balancing on highly parallel computers. IEEE Trans Parallel Distributed Syst 4(9): 979–993
Shen H, Xu C (2007) Locality-aware and churn-resilient load-balancing algorithms in structured peer-to-peer networks. IEEE Trans Parallel Distributed Syst 18(6): 849–862
Surana S, Godfrey B, Lakshminarayanan K, Karp R, Stoica I (2006) Load balancing in dynamic structured peer-to-peer systems. Perform Eval 63(3): 217–240
Mohamed-Salem M-V, v Bochmann G, Wong JW (2003) Wide-area server selection using a multi-broker architecture. In: Proceedings of international workshop on new advances of web server and proxy technologies, Providence, USA, May 19
Zhu Y, Hu Y (2005) Efficient, proximity-aware load balancing for DHT-based P2P systems. IEEE Trans Parallel Distributed Syst 16(4): 349–361
Vu QH, Ooi BC, Rinard M, Tan K (2009) Histogram-based global load balancing in structured peer-to-peer systems. IEEE Trans Knowl Data Eng 21: 4–595608
Bharambe AR, Agrawal M, Seshan S (2004) Mercury: supporting scalable multi-attribute range queries. In: Proceedings of the SIGCOMM ’04. ACM, New York, NY, pp 353–366
Karger DR, Ruhl M (2004) Simple efficient load balancing algorithms for peer-to-peer systems. In: Proceedings of the sixteenth annual ACM symposium on parallelism in algorithms and architectures, Barcelona, Spain, June 27–30, 2004. SPAA ’04. ACM, New York, NY, pp 36–43
Zhong M, Shen K, Seiferas J (2008) The convergence-guaranteed random walk and its applications in peer-to-peer networks. IEEE Trans Comput 57(5): 619–633
Qiao Y, von Bochmann G (2009) A diffusive load balancing scheme for clustered peer-to-peer systems. In: Proceedings of the 2009 15th ICPADS. IEEE Computer Society, Washington, DC, pp 842–847
Li M, Lee W, Sivasubramaniam A (2006) DPTree: a balanced tree based indexing framework for peer-to-peer systems. In: Proceedings of ICNP 2006. IEEE Computer Society, Washington, DC, pp 12–21
Boillat JE (1990) Load balancing and Poisson equation in a graph. Concurr Comput Pract Exp 2(4): 289–313
Cybenko G (1989) Dynamic load balancing for distributed memory multiprocessors. J Parallel Distributed Comput 7(2): 279–301
Jain R (1991) The art of computer systems performance analysis. Wiley, New York
Bertsekas DP, Tsitsiklis JN (1999) Parallel and distributed computation: numerical methods. Prentice-Hall, Englewood Cliffs
Song J (1994) A partially asynchronous and iterative algorithm for distributed load balancing. Parallel Comput 20(6): 853–868
Zhao S, Stutzbach D, Rejaie R (2006) Characterizing files in the Modern Gnutella network: a measurement study. In: Proceedings of SPIE/ACM Multimedia Computing and Networking, 2006
Xu C, Lau FC (1997) Load balancing in parallel computers: theory and practice. Kluwer Academic Publishers, Boston
Hui CC (1996) A hydro-dynamic approach to heterogeneous dynamic load balancing in a network of computers. In: Proceedings of ICPP 1996. IEEE Computer Society, Washington, DC, p 140
Cortés A, Ripoll A, Cedó F, Senar MA, Luque E (2002) An asynchronous and iterative load balancing algorithm for discrete load model. J Parallel Distributed Comput 62(12): 1729–1746
Jagadish HV, Ooi B Ch, Vu QH (2005) BATON: a balanced tree structure for peer-to-peer networks. In: Proceedings of the 31st international conference on very large data bases (VLDB ’05), Endowment, pp 661–672
Qiao Y, (2012) Using a diffusive approach for load balancing in peer-to-peer systems. Chapter 4, Section 4.2.1.2, University of Ottawa, Dissertation, 2012, pp 65–74
Locher T, Schmid S, Wattenhofer R (2006) eQuus: a provably robust and locality-aware peer-to-peer system. In: Proceeding of sixth IEEE international conference on peer-to-peer computing (P2P’06), pp 3–11
SSim library for discrete event simulation. http://www.inf.usi.ch/carzaniga/ssim/index.html
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Qiao, Y., Bochmann, G.v. Load balancing in peer-to-peer systems using a diffusive approach. Computing 94, 649–678 (2012). https://doi.org/10.1007/s00607-012-0196-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-012-0196-x
Keywords
- Load balancing
- Diffusive load balancing
- Peer-to-peer systems
- Distributed algorithms
- Performance management component