Analysis and Development of Load Balancing Algorithms in Cloud Computing

Analysis and Development of Load Balancing Algorithms in Cloud Computing

Deepa Bura, Meeta Singh, Poonam Nandal
DOI: 10.4018/IJITWE.2018070103
(Individual Articles)
No Current Special Offers


This article describes how cloud computing utilizes the benefits of web engineering and its applications by improving the performance and reducing the load on cloud providers. As the cloud is one of the emerging technology in the field of computing, it is used to provide various services to the user through the internet. One of the major concerns in cloud computing is accessibility of cloud. For estimating the availability of cloud, various load balancing algorithms are deployed in data centers of the cloud environment. Load balancing is a technique that distributes a signal load across various computers for optimizing resource usage, reducing response time, etc. There are different load balancing algorithms, for performing the load distribution across various centers. This article analyses different load balancing algorithms and develop a new algorithm for efficient load balancing. The proposed load balancing algorithm utilizes the concepts of web engineering to prioritize the request of end user using parsing technique, which will assign the resources to the end users based on the priority set by the data centers.
Article Preview

1. Introduction

In today’s world virtualization is going to boom along with the upcoming technologies. Virtualization is a software which differentiates physical organization for creating several resources. It makes multi-tasking possible as it can run many operating systems on various applications at the same time on the same server. Virtualization can be explained with the following example: if we want to charge a mobile user just need to plug in the charger into the socket, the user is not concerned about how the power is generated and how it reaches the socket. This is because of virtualization of electricity. Similarly, there is concept of virtualization in cloud computing wherein, it allows several computers to be built from different components like processor, storage, software resources.

Fox et al. (2009) defined cloud computing as a technique that provides various services to users i.e. in terms of hardware, software or infrastructure over the internet. This term is mainly used in connection with internet. Cloud is nothing but a different view to see the internet from different aspects. The idea behind cloud computing was to provide users with various benefits such that they can avail facility as per usage and can pay in terms of usage of resources. Cloud computing is a cluster of various inter-related multi-processors. Wang et al. (2008) categorized cloud as: public cloud, private cloud and hybrid cloud. Public cloud provides its services as per usage basis. However, private cloud provides in-house services wherein organization has to setup the infrastructure in the company itself. Goyal et al. (2011) defined hybrid as a combination of both the clouds such that when the traffic becomes high and there is scarcity of storage the organization can go for public cloud. Cloud computing is based on the concept of utility computing, as the users can access the information anytime, anywhere.

Livny and Melman (1982) analyzed that cloud receives the requests arbitrarily which leads to arbitrary exploitation of CPU services, these random requests can overload a specific resource, while the other resources are idle or not serving any of the requests. Therefore, there is a demanding need of load balancing amongst resources, which is a biggest challenge in the cloud to uniformly distribute the load amongst various servers according to the user requests. Load balancing can be defined as a technique to allot load workload transversely amongst multiple computers over the internet to attain optimum resource utilization, reduced response time and minimum overloading.

Load balancing significantly requires a distributed approach. There should be flexibility or elasticity for making the system cost effective so that it can completely justify needs of the customers. Padhy (2011) suggested that request cannot be assigned statically every time to the server but it should be distributed amongst idle or minimum loaded servers.

As there are multiple connections between the computer networks, the load gets distributed amongst these links using load balancing algorithms. Chaczko (2011) determined for optimizing the performance of computer networks and maximizing the output the resources should be available immediately as per the request without any delay. This can be achieved if the system will use an appropriate load balancing algorithm. In cloud computing, which uses any load balancing algorithm has some backup mechanism also i.e. if any server/link or resource failure occurs it reestablishes the connection and provides an uninterrupted service to the users without any delay.

Cloud Computing utilizes the benefits of web engineering and its applications by improving the performance and reducing the load on cloud providers. The most vital factors of web engineering used by various cloud providers like methodologies of web engineering to provide software solution as a service without the need of programming skill and code gen mechanism. The aim of this research paper is to give a brief overview of existing load balancing algorithms and to present a new load balancing technique. Various kinds of cloud and components present in cloud are discussed in Section 4. Section 5 presents different Load Balancing Algorithms. In section 6, gives our proposed load balancing algorithm. Section 7, presents results of our approach. Section 8, gives comparative analysis and conclusion.

Complete Article List

Search this Journal:
Volume 19: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 18: 1 Issue (2023)
Volume 17: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 16: 4 Issues (2021)
Volume 15: 4 Issues (2020)
Volume 14: 4 Issues (2019)
Volume 13: 4 Issues (2018)
Volume 12: 4 Issues (2017)
Volume 11: 4 Issues (2016)
Volume 10: 4 Issues (2015)
Volume 9: 4 Issues (2014)
Volume 8: 4 Issues (2013)
Volume 7: 4 Issues (2012)
Volume 6: 4 Issues (2011)
Volume 5: 4 Issues (2010)
Volume 4: 4 Issues (2009)
Volume 3: 4 Issues (2008)
Volume 2: 4 Issues (2007)
Volume 1: 4 Issues (2006)
View Complete Journal Contents Listing