Abstract
Cloud computing using virtualization technology has emerged as a new paradigm of large-scale distributed computing. One of its fundamental challenges is to schedule a vast amount of heterogeneous tasks while maintaining load balancing amongst different heterogeneous virtual machines (VMs) to meet both cloud users and providers’ requirements, such as minimum makespan low monetary costs, and high resource utilization. This problem is often classified as, NP-hard optimization, and while many heuristic algorithms have attempted to solve the NP-problem. However, they fail in load balancing and lower running times when the number of tasks grows exponentially, while that of VMs with set of resources, such as CPU, memory RAM and bandwidth remains stagnant. To solve the NP-problem effectively, we propose a fast heuristic algorithm based on the zero imbalance approach, as a new concept in the heterogeneous environment. Specifically, this approach focuses on minimizing the completion time difference among heterogeneous VMs without priority methods and complex scheduling decision which often subject the heuristic algorithms to the particular cloud configuration. The proposed approach defines two constraints, optimal completion time and earliest finish time which take account the task transfer time onto network bandwidth of VM to achieve load balancing and task scheduling effectively. The experimental results below show that the proposed algorithm effectively solves the NP-hard optimization problem better than existing heuristic algorithms by satisfying cloud users and providers’ requirements.
Similar content being viewed by others
References
Khethavath, P., Thomas, J.P., Chan-Tin, E.: Towards an efficient distributed cloud computing architecture. Peer-to-Peer Network. Appl. 10(5), 1152–1168 (2017)
Pop, F., Iosup, A., Prodan, R.: HPS-HDS: high performance scheduling for heterogeneous distributed systems. Futur. Gener. Comput. Syst. 78(1), 242–244 (2018)
Buhussain, A.A., De Grande, R.E., Boukerche, A.: Elasticity based scheduling heuristic algorithm for cloud environments. In: Proceedings of the 20th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications, pp 1–8. ACM (2016)
Rodrigo da Rosa, R., et al.: A survey on global management view: toward combining system monitoring, resource management, and load prediction. J. Grid Comput., 1–30. https://doi.org/10.1007/s10723-018-09471-x (2019)
Mishra, S.K., Sahoo, B., Parida, P.P.: Load balancing in cloud computing: a big picture. Journal of King Saud University-Computer and Information Sciences, pp. 1–31 (2018)
Malik, S., Saini, P., Rani, S.: Energy efficient resource allocation for heterogeneous workload in cloud computing. In: Proceedings of the 5th International Conference on Frontiers in Intelligent Computing: Theory and Applications, pp 89–97 (2017)
Polepally, V., Chatrapati, K.S.: Dragonfly optimization and constraint measure-based load balancing in cloud computing. Cluster Comput. https://doi.org/10.1007/s10586-017-1056-4
Sana Shaikh, J., Rathod, S.B.: A QoS load balancing scheduling algorithm in cloud environment. Int. J. Comput. Trends Technol. (IJCTT) 30, 1–5 (2015)
Ghomia, E.J., Rahmania, A.M., Qaderb, N.N.: Load-balancing algorithms in cloud computing: a survey. J. Netw. Comput. Appl. 88, 50–71 (2017)
Mishra, N.K., Mishra, N.: Load balancing techniques: need, objectives and major challenges in cloud computing- a systematic review. Int. J. Comput. Appl. 131(17), 1–9 (2015)
Sukhpal, S., Inderveer, C.: A survey on resource scheduling in cloud computing: issues and challenges. J. Grid Comput. 14, 217–264 (2016)
Chongdarakul, W., Sophatsathit, P., Lursinsap, C.: Theoretical and heuristic aspects of heterogeneous system scheduling with constraints on client’s multiple I/O ports. Futur. Gener. Comput. Syst. 78(3), 901–919 (2018)
Beloglazov, A., Buyya, R.: Energy efficient resource management in virtualized cloud data centers. In: Proceedings of the 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing, pp 826–831 (2010)
Li, L.: Energy consumption management of virtual cloud computing platform. In: IOP Conference Series: Earth and Environmental Science, pp 1–5 (2017)
Juarez, F., Ejarque, J., Badia, R.M.: Dynamic energy-aware scheduling for parallel task-based application in cloud computing. Future Generation Computer Systems-the International Journal of Escience 78(1), 257–271 (2016)
Zhang, Y., Chen, L., Shen, H., Cheng, X.: An energy-efficient task scheduling heuristic algorithm without virtual machine migration in real-time cloud environments. In: Springer International Conference on Network and System Security, pp 80–97 (2016)
Feng, L., Liaob, T.W., Lin, Z.: Two-level multi-task scheduling in a cloud manufacturing environment. Robot. Comput. Integr. Manuf. 56, 127–139 (2019)
Adel, N.T., Richard, O.S., Rajkumar, B.: Resource provisioning for data-intensive applications with deadline constraints on hybrid clouds using Aneka. Futur. Gener. Comput. Syst. 79, 765–775 (2018)
Alla, H.B., Alla, S.B., Ezzati, A., Mouhsen, A.: A novel architecture with dynamic queues based on fuzzy logic and particle swarm optimization algorithm for task scheduling in cloud computing. Advances in Ubiquitous Networking 2, 205–217 (2017). https://doi.org/10.1007/978-981-10-1627-116
Jena, R.K.: Multi objective task scheduling in cloud environment using nested PSO framework. In: Proceedings of the 3rd International Conference on Recent Trends in Computing (ICRTC), pp 1219–1227 (2015)
Khalili, A., Babamir, S.M.: Makespan improvement of PSO-based dynamic scheduling in cloud environment. In: Proceedings of the 23rd IEEE Iranian conference on Electrical Engineering, pp 613–618 (2015)
Masdari, M., Salehi, F., Jalali, M., Bidaki, M.: A survey of PSO-based scheduling algorithms in cloud computing. J. Netw. Syst. Manag. 25, 122–158 (2017)
Singh, P., Dutta, M., Aggarwal, N.: A review of task scheduling based on meta-heuristics approach in cloud computing. Knowl. Inf. Syst. 52(1), 1–51 (2017)
Madni, S., Latiff, M., Abdullahi, M., Abdulhamid , S.M., Usman, M.J.: Performance comparison of heuristic algorithms for task scheduling in IaaS cloud computing environment. PLoS one 12 (5), 1–26 (2017)
Vigneshwaran, P., Umamakeswari, A., Gurubaran, S., ShaileshDheep, G.: A study of various meta- heuristic algorithms for scheduling in cloud. Intl. J. Pure Appl. Math. 115, 205–208 (2017)
Arabnejad, H., Barbosa, J.G., Prodan, R.: Low-time complexity budget–deadline constrained workflow scheduling on heterogeneous resources. Futur. Gener. Comput. Syst. 55, 29–40 (2016). https://doi.org/10.1016/j.future.2015.07.021
Mohammad, A., et al.: Availability challenge of cloud system under DDOS attack. Indian J. Sci. Technol. 5(6), 2933–2937 (2012)
Buanga Mapetu, J.P., Chen, Z., Kong, L.: Heuristic cloudlet allocation approach based on optimal completion time and earliest finish time. IEEE Access 6(1), 61714–61727 (2018). https://doi.org/10.1109/ACCESS.2018.2876033
Nirmala, S.J., Saira Bhanu, S.M.: Catfish-PSO based scheduling of scientific workflows in IaaS cloud. Computing 98, 1091–1109 (2016)
Delavar, A.G., Aryan, Y.: HSGA: a hybrid heuristic algorithm for workflow scheduling in cloud systems. Clust. Comput. 17, 129–137 (2014)
Alla, H.B., Alla, S.B., Ezzati, A., Mouhsen, A.: A novel architecture with dynamic queues based on fuzzy logic and particle swarm optimization algorithm for task scheduling in cloud computing. Advances in Ubiquitous Networking 2, 205–217 (2017). https://doi.org/10.1007/978-981-10-1627-116
Su, S., Li, J., Huang, Q., Huang, X., Shuang, K., Wang, J.: Cost-efficient task scheduling for executing large programs in the cloud. Parallel Comput. 39, 177–188 (2013)
Djebbar, E.I., Belalen, G.: Tasks scheduling and resource allocation for high data management in scientific cloud computing environment. In: 2nd International Conference on Mobile, Secure and Programmable Networking (MSPN), pp 16–27 (2016)
Wang, Z., Su, X.: Dynamically hierarchical resource-allocation algorithm in cloud computing environment. J. Supercomput. 71, 2748–2766 (2015)
Du, G., He, H., Meng, Q.: Energy-efficient scheduling for tasks with deadline in virtualized environments. Math. Probl. Eng. 2014, 1–7 (2014)
Saramu, K.A., Jaganathan, S.: Intensified scheduling algorithm for virtual machine tasks in cloud computing, Springer Artificial Intelligence and Evolutionary Algorithms in Engineering Systems, pp. 283–290 (2015)
Banerjee, S., Adhikari, M., Kar, S., Biswas, U.: Development and analysis of a new cloudlet allocation strategy for QoS improvement in cloud. Arab J. Sci. Eng. 40, 1409–1425 (2015)
Hashem, W., Nashaat, H., Rizk, R.: Honey Bee based load balancing in cloud computing. KSII Trans. Internet Inf. Syst. 11(12), 5694–5711 (2017)
Kumar, M., Sharma, S.C.: Deadline constrained based dynamic load balancing algorithm with elasticity in cloud environment. Comput. Electr. Eng. 69, 395–411 (2018)
Zuo, L., Dong, S., Shu, L.: A multi-queue interlacing peak scheduling method based on tasks’ classification in cloud computin. IEEE Syst. J. 12(2), 1518–1530 (2018)
Roy, S., Banerjee, S., Chowdhury, K.R., Biswas, U.: Development and analysis of a three phase cloudlet allocation algorithm. Journal of King Saud University - Computer and Information Sciences 29(4), 473–483 (2017)
Adhikari, M., Amgoth, T.: Heuristic-based load balancing algorithm for IaaS cloud. Futur. Gener. Comput. Syst. 81, 156–165 (2018)
Weiwei, L., Chen, L., Wang, J.Z., Buyya, R.: Bandwidth-aware divisible task scheduling for cloud computing. Software-Practice and Experience 44, 163–174 (2014)
Calheiros, R.N., Ranjan, R., Beloglazov, A., De-Rose, C.A.F., Buyya, R.: Cloudsim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. ACM Software Practice and Experience 41, 23–50 (2011). https://doi.org/10.1002/spe.995
Humane, P., Varshapriya, J.N.: Simulation of cloud infrastructure using CloudSim simulator: a practical approach for researchers. In: International Conference on Smart Technologies and Management for Computing, Communication, Controls, Energy and Materials. https://doi.org/10.1109/ICSTM.2015.7225415, pp 207–211 (2015)
Chapin, S.J., Cirne, W., Feitelson, D.G.: Benchmarks and standards for the evaluation of parallel job schedulers. In: Feitelson, D.G., Rudolph, L. (eds.) Job Scheduling Strategies for Parallel Processing. Lect. Notes Comput. Sci., vol. 1659, pp. 66–89, 1999. [Online]. Available: http://www.cs.huji.ac.il/labs/parallel/workload/logs.html(accessedon12-09-2018). Springer (1999)
Acknowledgements
This research was funded by the National Science and Technology Major Project of the Ministry of Science and Technology of China (2017ZX05019001-011), the National Natural Science Foundation of China (61772450), the China Postdoctoral Science Foundation (2018M631764), Hebei Postdoctoral Research Program (B2018003009) and Doctoral Fund of Yanshan University (BL18003).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Kong, L., Mapetu, J.P.B. & Chen, Z. Heuristic Load Balancing Based Zero Imbalance Mechanism in Cloud Computing. J Grid Computing 18, 123–148 (2020). https://doi.org/10.1007/s10723-019-09486-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10723-019-09486-y