Load balanced task scheduling for cloud computing: a probabilistic approach

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.

[1]  Wei Chen,et al.  QoS-aware virtual machine scheduling for video streaming services in multi-cloud , 2013 .

[2]  Albert Y. Zomaya,et al.  Game-Theoretic Approach for Load Balancing in Computational Grids , 2008, IEEE Transactions on Parallel and Distributed Systems.

[3]  Chen Jing,et al.  A dynamic and integrated load-balancing scheduling algorithm for Cloud datacenters , 2011, 2011 IEEE International Conference on Cloud Computing and Intelligence Systems.

[4]  R. F. Freund,et al.  Scheduling resources in multi-user, heterogeneous, computing environments with SmartNet , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[5]  Muhammad Khurram Khan,et al.  Cloud resource allocation schemes: review, taxonomy, and opportunities , 2017, Knowledge and Information Systems.

[6]  Debra A. Hensgen,et al.  The relative performance of various mapping algorithms is independent of sizable variances in run-time predictions , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[7]  Liang Hu,et al.  A Heuristic Clustering-Based Task Deployment Approach for Load Balancing Using Bayes Theorem in Cloud Environment , 2016, IEEE Transactions on Parallel and Distributed Systems.

[8]  Prasanta K. Jana,et al.  SLA-based task scheduling algorithms for heterogeneous multi-cloud environment , 2017, The Journal of Supercomputing.

[9]  Nikos S. Voros,et al.  Scheduling independent tasks on heterogeneous processors using heuristics and Column Pricing , 2016, Future Gener. Comput. Syst..

[10]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[11]  Chita Ranjan Tripathy,et al.  Survey of load balancing techniques for Grid , 2016, J. Netw. Comput. Appl..

[12]  Ian Lumb,et al.  A Taxonomy and Survey of Cloud Computing Systems , 2009, 2009 Fifth International Joint Conference on INC, IMS and IDC.

[13]  Rajendra Sahu,et al.  New Heuristic for Scheduling of Independent Tasks in Computational Grid , 2011 .

[14]  Inderveer Chana,et al.  Cloud resource provisioning: survey, status and future research directions , 2016, Knowledge and Information Systems.

[15]  César A. F. De Rose,et al.  The I-Cluster Cloud: distributed management of idle resources for intense computing , 2005, Parallel Comput..

[16]  JiangYichuan A Survey of Task Allocation and Load Balancing in Distributed Systems , 2016 .

[17]  Prasanta K. Jana,et al.  Approximation schemes for load balanced clustering in wireless sensor networks , 2013, The Journal of Supercomputing.

[18]  Inderveer Chana,et al.  Prediction-based proactive load balancing approach through VM migration , 2016, Engineering with Computers.

[19]  Jiming Liu,et al.  Agent-based load balancing on homogeneous minigrids: macroscopic modeling and characterization , 2005, IEEE Transactions on Parallel and Distributed Systems.

[20]  Junyuan Xie,et al.  TeraScaler ELB-an Algorithm of Prediction-Based Elastic Load Balancing Resource Management in Cloud Computing , 2013, 2013 27th International Conference on Advanced Information Networking and Applications Workshops.

[21]  Bobby Bhattacharjee,et al.  Trade-offs in matching jobs and balancing load for distributed desktop grids , 2008, Future Gener. Comput. Syst..

[22]  Chu-Sing Yang,et al.  A hybrid meta-heuristic algorithm for VM scheduling with load balancing in cloud computing , 2015, Neural Computing and Applications.

[23]  Balinder Singh,et al.  A Systematic Review on Cloud Computing , 2013 .

[24]  Albert Y. Zomaya,et al.  Energy efficient utilization of resources in cloud computing systems , 2010, The Journal of Supercomputing.

[25]  Yichuan Jiang,et al.  A Survey of Task Allocation and Load Balancing in Distributed Systems , 2016, IEEE Transactions on Parallel and Distributed Systems.

[26]  Lixia Liu,et al.  Towards a multi-QoS human-centric cloud computing load balance resource allocation method , 2015, The Journal of Supercomputing.

[27]  Farookh Khadeer Hussain,et al.  Task-Based System Load Balancing in Cloud Computing Using Particle Swarm Optimization , 2013, International Journal of Parallel Programming.

[28]  Rajkumar Buyya,et al.  A survey on load balancing algorithms for virtual machines placement in cloud computing , 2016, Concurr. Comput. Pract. Exp..

[29]  Azizkhan F Pathan,et al.  A Load Balancing Model Based on Cloud Partitioning for the Public Cloud , 2014 .

[30]  Qingbo Wu,et al.  Workflow scheduling in cloud: a survey , 2015, The Journal of Supercomputing.

[31]  R. F. Freund,et al.  Dynamic Mapping of a Class of Independent Tasks onto Heterogeneous Computing Systems , 1999, J. Parallel Distributed Comput..

[32]  Prasanta K. Jana,et al.  Efficient task scheduling algorithms for heterogeneous multi-cloud environment , 2015, 2014 International Conference on Advances in Computing, Communications and Informatics (ICACCI).

[33]  Xuan Wang,et al.  Resource provision algorithms in cloud computing: A survey , 2016, J. Netw. Comput. Appl..

[34]  Lazaros Gkatzikis,et al.  Migrate or not? exploiting dynamic task migration in mobile cloud computing systems , 2013, IEEE Wireless Communications.

[35]  Zili Zhang,et al.  A Physarum-inspired optimization algorithm for load-shedding problem , 2017, Appl. Soft Comput..

[36]  Leili Mohammad Khanli,et al.  A new step toward load balancing based on competency rank and transitional phases in Grid networks , 2012, Future Gener. Comput. Syst..

[37]  Poonam Singh,et al.  A review of task scheduling based on meta-heuristics approach in cloud computing , 2017, Knowledge and Information Systems.

[38]  S. Gandhimathi,et al.  Online Optimization for Scheduling Preemptable Tasks on IaaS Cloud Systems , 2013 .

[39]  Prasanta K. Jana,et al.  Normalization-Based Task Scheduling Algorithms for Heterogeneous Multi-Cloud Environment , 2016, Information Systems Frontiers.

[40]  Xiao Qin,et al.  Communication-Aware Load Balancing for Parallel Applications on Clusters , 2010, IEEE Transactions on Computers.