Advertisement

Load balanced task scheduling for cloud computing: a probabilistic approach

  • Sanjaya K. PandaEmail author
  • Prasanta K. Jana
Regular Paper
  • 29 Downloads

Abstract

Load balancing is the process of distributing customer tasks among multiple computing resources, such as virtual machines (VMs), servers and networks. It is a major concern in cloud computing as the number of customers demanding the service is growing exponentially. An efficient load balancing approach can monitor the load of the VMs proactively and assigns the customer tasks to the VMs accordingly. This paper presents a load balanced task scheduling algorithm in the cloud, which is based on probability theory. The proposed algorithm is shown to be a 2-approximation algorithm with a time complexity of O(lm), where l is the number of customer tasks and m is the number of VMs. The algorithm is simulated extensively. The simulation results demonstrate that our proposed algorithm can remarkably balance the load of the VMs as compared to the existing algorithms in four different performance measures, namely standard deviation of VM loads, maximum load, minimum load and zero load. The performance is also validated through statistical test by means of analysis of variance and 95% confidence interval.

Keywords

Cloud computing Load balancing Task scheduling Virtual machine Quality of service Probability theory 

Notes

References

  1. 1.
    Zhang J, Huang H, Wang X (2016) Resource provision algorithms in cloud computing: a survey. J Netw Comput Appl 64:23–42Google Scholar
  2. 2.
    Durao F, Carvalho JFS, Fonseka A, Garcia VC (2014) A systematic review on cloud computing. J Supercomput 68(3):1321–1346Google Scholar
  3. 3.
    Singh P, Dutta M, Aggarwal N (2017) A review of task scheduling based on meta-heuristics approach in cloud computing. Knowl Inf Syst 52(1):1–51Google Scholar
  4. 4.
    Yousafzai A, Gani A, Noor RM, Sookhak M, Talebian H, Shiraz M, Khan MK (2017) Cloud resource allocation schemes: review, taxonomy and opportunities. Knowl Inf Syst 50(2):347–381Google Scholar
  5. 5.
    Singh S, Chana I (2016) Cloud resource provisioning: survey, status and future research directions. Knowl Inf Syst 49(3):1005–1069Google Scholar
  6. 6.
    Panda SK, Jana PK (2015) Efficient task scheduling algorithms for heterogeneous multi-cloud environment. J Supercomput 71(4):1505–1533Google Scholar
  7. 7.
    Panda SK, Jana PK (2016) Normalization-based task scheduling algorithms for heterogeneous multi-cloud environment. Inf Syst Front 20(2):373–399Google Scholar
  8. 8.
    Xu G, Pang J, Fu X (2013) A load balancing model based on cloud partitioning for the public cloud. Tsinghua Sci Technol IEEE 18(1):34–39zbMATHGoogle Scholar
  9. 9.
    Qin X, Jiang H, Manzanares A, Ruan X, Yin S (2010) Communication-aware load balancing for parallel applications on clusters. IEEE Trans Comput 59(1):42–52MathSciNetzbMATHGoogle Scholar
  10. 10.
    Kim J, Nam B, Keleher P, Marsh M, Bhattacharjee B, Sussman A (2008) Trade-offs in matching jobs and balancing load for distributed desktop grids. Future Gener Comput Syst 24:415–424Google Scholar
  11. 11.
    Elastic load balancing. https://aws.amazon.com/elasticloadbalancing/. Accessed 13 Jan 2018
  12. 12.
    Li J, Qiu M, Ming Z, Quan G, Qin X, Gu Z (2012) Online optimization for scheduling preemptable tasks on IaaS cloud system. J Parallel Distrib Comput 72:666–677Google Scholar
  13. 13.
    Liu L, Mei H, Xie B (2016) Towards a multi-QoS human-centric cloud computing load balance resource allocation method. J Supercomput 72(7):2488–2501Google Scholar
  14. 14.
    Panda SK, Jana PK (2017) SLA-based task scheduling algorithms for heterogeneous multi-cloud environment. J Supercomput 73(6):2730–2762Google Scholar
  15. 15.
    Chen W, Cao J, Wan Y (2013) QoS-aware virtual machine scheduling for video streaming services in multi-cloud. Tsinghua Sci Technol IEEE 18(3):308–317Google Scholar
  16. 16.
    Richard B, Maillard N, Rose CAFD, Novaes R (2005) The I-cluster cloud: distributed management of idle resources for intense computing. Parallel Comput 31:813–838Google Scholar
  17. 17.
    Subrata R, Zomaya AY, Landfeldt B (2008) Game-theoretic approach for load balancing in computational grids. IEEE Trans Parallel Distrib Syst 19(1):66–76zbMATHGoogle Scholar
  18. 18.
    Ibarra OH, Kim CE (1977) Heuristic algorithms for scheduling independent tasks on nonidentical processors. J Assoc Comput Mach 24(2):280–289MathSciNetzbMATHGoogle Scholar
  19. 19.
    Freund RF, Gherrity M, Ambrosius S, Campbell M, Halderman M, Hensgen D, Keith E, Kidd T, Kussow M, Lima JD, Mirabile F, Moore L, Rust B, Siegel HJ (1998) Scheduling resources in multi-user, heterogeneous, computing environments with SmartNet. In: 7th IEEE heterogeneous computing workshop, pp 184–199Google Scholar
  20. 20.
    Maheswaran M, Ali S, Siegel HJ, Hensgen D, Freund RF (1999) Dynamic mapping of a class of independent tasks onto heterogeneous computing systems. J Parallel Distrib Comput 59:107–131Google Scholar
  21. 21.
    Chaturvedi AK, Sahu R (2011) New heuristic for scheduling of independent tasks in computational grid. Int J Grid Distrib Comput 4(3):25–36Google Scholar
  22. 22.
    Armstrong R, Hensgen D, Kidd T (1998) The relative performance of various mapping algorithms is independent of sizable variances in run-time predictions. In: 7th IEEE heterogeneous computing workshop, pp 79–87Google Scholar
  23. 23.
    Gogos C, Valouxis C, Alefragis P, Goulas G, Voros N, Housos E (2016) Scheduling independent tasks on heterogeneous processors using heuristics and column pricing. Future Gener Comput Syst 60:48–66Google Scholar
  24. 24.
    Khanli LM, Razzaghzadeh S, Zargari SV (2012) A new step toward load balancing based on competency rank and transitional phases in grid networks. Future Gener Comput Syst 28:682–688Google Scholar
  25. 25.
    Cho K, Tsai P, Tsai C, Yang C (2015) A hybrid meta-heuristic algorithm for VM scheduling with load balancing in cloud computing. Neural Comput Appl 26:1297–1309Google Scholar
  26. 26.
    Ramezani F, Lu J, Hussain FK (2014) Task-based system load balancing in cloud computing using particle swarm optimization. Int J Parallel Program 42:739–754Google Scholar
  27. 27.
    Gkatzikis L, Koutsopoulos I (2013) Migrate or not? Exploiting dynamic task migration in mobile cloud computing systems. IEEE Wirel Commun 20(3):24–32Google Scholar
  28. 28.
    Wu H, Wang C, Xie J (2013) TeraScaler ELB—an algorithm of prediction-based elastic load balancing resource management in cloud computing. In: 27th international conference on advanced information networking and applications workshops. IEEE, pp 649–654Google Scholar
  29. 29.
    Bala A, Chana I (2016) Prediction-based proactive load balancing approach through vm migration. Eng Comput 32(4):581–592Google Scholar
  30. 30.
    Zhao J, Yang K, Wei X, Ding Y, Hu L, Xu G (2016) A heuristic clustering-based task deployment approach for load balancing using bayes theorem in cloud environment. IEEE Trans Parallel Distrib Syst 27(2):305–316Google Scholar
  31. 31.
    Jiang Y (2016) A survey of task allocation and load balancing in distributed systems. IEEE Trans Parallel Distrib Syst 27(2):585–599Google Scholar
  32. 32.
    Patel DK, Tripathy D, Tripathy CR (2016) Survey of load balancing techniques for grid. J Netw Comput Appl 65:103–119Google Scholar
  33. 33.
    Wu F, Wu Q, Tan Y (2015) Workflow scheduling in cloud: a survey. J Supercomput 71(9):3373–3418Google Scholar
  34. 34.
    Lee YC, Zomaya AY (2012) Energy efficient utilization of resources in cloud computing systems. J Supercomput 60:268–280Google Scholar
  35. 35.
    Rimal BP, Choi E, Lumb I (2009) A taxonomy and survey of cloud computing systems. In: International joint conference on INC, IMS and IDC. IEEE, pp 44–51Google Scholar
  36. 36.
  37. 37.
    Tian W, Zhao Y, Zhong Y, Xu M, Jing C (2011) A dynamic and integrated load balancing scheduling algorithm for cloud datacenters. In: IEEE international conference on cloud computing and intelligence system, pp 311–315Google Scholar
  38. 38.
    Xu M, Tian W, Buyya R (2017) A survey of load balancing algorithms for virtual machines placement in cloud computing. Concurr Comput Pract Exp 29:1–16Google Scholar
  39. 39.
    Kuila P, Jana PK (2014) Approximation schemes for load balanced clustering in wireless sensor networks. J Supercomput 68:87–105Google Scholar
  40. 40.
    Gao C, Chen S, Li X, Huang J, Zhang Z (2017) A Physarum-inspired optimization algorithm for load-shedding problem. Appl Soft Comput 61:239–255Google Scholar
  41. 41.
    Liu J, Jin X, Wang Y (2005) Agent-based load balancing on homogeneous minigrids: macroscopic modeling and characterization. IEEE Trans Parallel Distrib Syst 16(7):586–598Google Scholar
  42. 42.
  43. 43.
  44. 44.
  45. 45.
    Google Cloud—Quotas and Limits. https://cloud.google.com/dataflow/quotas#compute-engine-quotas. Accessed 16 July 2018

Copyright information

© Springer-Verlag London Ltd., part of Springer Nature 2019

Authors and Affiliations

  1. 1.Department of Information TechnologyVeer Surendra Sai University of TechnologyBurlaIndia
  2. 2.Department of Computer Science and EngineeringIndian Institute of Technology (ISM)DhanbadIndia

Personalised recommendations