Skip to main content
Log in

Load balancing in peer-to-peer systems using a diffusive approach

  • Published:
Computing Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. 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

    Article  MathSciNet  MATH  Google Scholar 

  2. 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

    Article  Google Scholar 

  3. 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

  4. Corradi A, Leonardi L, Zambonelli F (1999) Diffusive load-balancing policies for dynamic applications. IEEE Concurr 7(1): 22–31

    Article  Google Scholar 

  5. 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

  6. Willebeek-LeMair MH, Reeves AP (1993) Strategies for dynamic load balancing on highly parallel computers. IEEE Trans Parallel Distributed Syst 4(9): 979–993

    Article  Google Scholar 

  7. 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

    Article  Google Scholar 

  8. 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

    Article  Google Scholar 

  9. 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

  10. Zhu Y, Hu Y (2005) Efficient, proximity-aware load balancing for DHT-based P2P systems. IEEE Trans Parallel Distributed Syst 16(4): 349–361

    Article  Google Scholar 

  11. 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

    Article  Google Scholar 

  12. 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

  13. 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

  14. 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

    Article  MathSciNet  Google Scholar 

  15. 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

  16. 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

  17. Boillat JE (1990) Load balancing and Poisson equation in a graph. Concurr Comput Pract Exp 2(4): 289–313

    Google Scholar 

  18. Cybenko G (1989) Dynamic load balancing for distributed memory multiprocessors. J Parallel Distributed Comput 7(2): 279–301

    Article  Google Scholar 

  19. Jain R (1991) The art of computer systems performance analysis. Wiley, New York

    MATH  Google Scholar 

  20. Bertsekas DP, Tsitsiklis JN (1999) Parallel and distributed computation: numerical methods. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  21. Song J (1994) A partially asynchronous and iterative algorithm for distributed load balancing. Parallel Comput 20(6): 853–868

    Article  MathSciNet  Google Scholar 

  22. 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

  23. Xu C, Lau FC (1997) Load balancing in parallel computers: theory and practice. Kluwer Academic Publishers, Boston

    Google Scholar 

  24. 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

  25. 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

    Article  MATH  Google Scholar 

  26. 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

  27. 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

  28. 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

  29. SSim library for discrete event simulation. http://www.inf.usi.ch/carzaniga/ssim/index.html

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gregor v. Bochmann.

Rights and permissions

Reprints 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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-012-0196-x

Keywords

Mathematics Subject Classification

Navigation