0% found this document useful (0 votes)
31 views

Seminar Documentation Final

This document discusses key characteristics of cloud computing including load balancing algorithms. It describes how load balancing is essential for efficient cloud operations. Static algorithms are suitable for homogeneous environments while dynamic algorithms can adapt to heterogeneous and changing environments but may become inefficient. The document provides an overview and comparison of load balancing algorithms for cloud computing environments.

Uploaded by

Baswaraj Jangam
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Seminar Documentation Final

This document discusses key characteristics of cloud computing including load balancing algorithms. It describes how load balancing is essential for efficient cloud operations. Static algorithms are suitable for homogeneous environments while dynamic algorithms can adapt to heterogeneous and changing environments but may become inefficient. The document provides an overview and comparison of load balancing algorithms for cloud computing environments.

Uploaded by

Baswaraj Jangam
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Load Balancing in Cloud Computing: Algorithms

Baswaraj Jangam
Department of Computer Science and Engineering
Mahatma Gandhi Institute of Technology
Hyderabad, India
[email protected]

the Cloud nodes such that the effort and request


Abstract—Load Balancing is essential for efficient processing is done as efficiently as possible [1], while
operations in distributed environments. As Cloud being able to tolerate the various affecting constraints
Computing is growing rapidly and clients are such as heterogeneity and high communication delays.
demanding more services and better results, load Load balancing algorithms are classified as static and
balancing for the Cloud has become a very dynamic algorithms. Static algorithms are mostly
interesting and important research area. Many suitable for homogeneous and stable environments and
algorithms were suggested to provide efficient can produce very good results in these environments.
mechanisms and algorithms for assigning the client’s However, they are usually not flexible and cannot match
requests to available Cloud nodes. These approaches the dynamic changes to the attributes during the
aim to enhance the overall performance of the Cloud execution time. Dynamic algorithms are more flexible
and provide the user more satisfying and efficient and take into consideration different types of attributes
services. In this paper, we investigate the different in the system both prior to and during run-time [2]. These
algorithms proposed to resolve the issue of load algorithms can adapt to changes and provide better
balancing and task scheduling in Cloud Computing. results in heterogeneous and dynamic environments.
We discuss and compare these algorithms to provide However, as the distribution attributes become more
an overview of the latest approaches in the field. complex and dynamic. As a result, some of these
algorithms could become inefficient and cause more
Keywords: Cloud Computing, Load Balancing, Task
overhead than necessary resulting in an overall
Scheduling, Cloud Storage, Replications. degradation of the services performance.
In this paper we present a survey of the current load
I. INTRODUCTION
balancing algorithms developed specifically to suit the
Cloud Computing became very popular in the last Cloud Computing environments. We provide an overview
few years. As part of its services, it provides a flexible of these algorithms and discuss their properties. In addition,
and easy way to keep and retrieve data and files. we compare these algorithms based on the following
Especially for making large data sets and files available properties: the number of attributes taken into consideration,
for the spreading number of users around the world. the overall network load, and time series.
Handling such large data sets require several techniques
to optimize and streamline operations and provide The rest of this paper is organized as follows. We discuss
satisfactory levels of performance for the users. the challenges of load balancing in cloud computing in
Therefore, it is important to research some areas in the Section II. Then, In Section III we go over the current
Cloud to improve the storage utilization and the literature and discuss the algorithms proposed to solve the
download performance for the users. One important load balancing issues in Cloud Computing. After that, we
issue associated with this field is dynamic load balancing discuss and compare the relevant approaches in Section IV.
or task scheduling. Load balancing algorithms were We then conclude the paper and show possible areas of
investigated heavily in various environments; however, enhancement and our future plan of improving load
with Cloud environments, some additional challenges balancing algorithms in Section V.
are present and must be addressed. In Cloud Computing
the main concerns involve efficiently assigning tasks to
II. Characteristics of Cloud Computing comes to cloud computing, the perceived reliability in cloud
computing, and the differences between reliability and
availability.
➢ AGILITY
➢ SCALABILITY
Cloud agility refers to the addition of business value. When
it comes to the cloud context, agility is all about the ability The ability to increase or decrease IT resources as needed
of an organization to rapidly develop, test, and launch to meet changing demand, scalability enables
software applications that drive business growth. Cloud organizations to increase workload size within an
agility ensures that businesses are empowered to priorities existing infrastructure without impacting performance. A
issues. Instead of spending valuable time and heaps of capability unique to the cloud environment, scalability
money on provisioning and maintaining IT resources, cloud remains a driving force of its widespread adoption and
agility shifts emphasis to security, monitoring, and analysis. the evolving dexterity of business infrastructure.
Removing the limit to the physical size of a server’s
Businesses leverage the cloud to access essential resources, environment through a planned level of capacity that can
which is critical to respond to the ever-changing needs of grow or shrink as needed is where cloud computing and
their industry. In this context, SaaS applications offer scalability intersect, business growth trajectories become
excellent incentives to both the cloud providers and sustainable, and disruptions or down time are minimal to
enablers. What this means is that businesses have finally obsolete.
gotten access to a technology that allows them to rapidly
provide resources, build and deploy new IT infrastructures ➢ EASY MAINTENANCE
within a few minutes. This concept is further extended by
the cloud agile enterprise, referring to businesses that
leverage the principles of sophisticated adaptive systems to This is one of the best cloud characteristics. The servers
gain success. This is exactly where the potential of cloud are effortlessly maintained, and the downtime sometimes
computing and cloud agility is fully realized, especially for remains low or absolutely zero. Cloud Computing
delivering on-demand computing and development powered resources undergo several updates frequently to
resources. optimize their capabilities and potential. The updates are
more variable with the devices and perform quicker than
previous versions.
➢ AVAILABILITY

High availability is the goal of moving to the cloud. The


idea is to make your products, services, and tools available
➢ LOCATION INDEPENDENCE
to your customers and employees at anytime from anywhere
using any device with an internet connection. Cloud
availability is related to cloud reliability. For example, let’s Remote working is one of the primary features of cloud
say you have an online store that is available 24/7. But computing. It enables users to work remotely or from any
sometimes clicking the “checkout” button kicks customers location on the planet. Users will be able to access
out of the system before they have completed the purchase. corporate data via mobile devices such as laptops and
So, your store may be available all the time, but if the smartphones. It also ensures that every user can connect
underlying software is not reliable, your cloud offerings are quickly. Employees that work remotely or live in another
basically useless. location can communicate with one another and do their
jobs.
➢ RELIABILITY
➢ ECONOMICAL
Reliability in cloud computing is related to cloud
technology quality. If the components in a cloud computing This cloud characteristic helps in reducing the IT
service perform their functions and fail rarely, the service is expenditure of the organizations. In Cloud Computing,
said to be reliable. Thus, when selecting a cloud computing the client needs to pay the administration for the space
service, it is advisable to look at its reliability. This article they have used. There is no covered-up or additional
discusses the design principles behind reliable cloud charge which needs to be paid. The administration is
computing, the importance of building to scale when it economical, and often, some space is allotted for free.
III. CLOUD COMPUTING ARCHITECTURE

Cloud computing architecture is combination of service-


oriented architecture and event-driven architecture.
Cloud Computing architecture is divided into two parts
i.e.

❖ Front end
❖ Back end.

1. Frontend:

Frontend of the cloud architecture refers to the client side


of cloud computing system. Means it contains all the user
interfaces and applications which are used by the client to
access the cloud computing services/resources. For
example, use of a web browser to access the cloud
platform.
IV. LOAD BALANCING
• Client Infrastructure – Client
Infrastructure is a part of the frontend Load balancing is one of the central issues in cloud
component. It contains the applications and computing. The load can be CPU load, memory capacity,
user interfaces which are required to access delay or network load. Load balancing is the process of
the cloud platform. distributing the load among various nodes of a distributed
system to improve both resource utilization and job
• In other words, it provides a GUI (Graphical response time while also avoiding a situation where some
User Interface) to interact with the cloud. of the nodes are heavily loaded while other nodes are idle
or doing very little work. Load balancing ensures that all the
2. Backend: processor in the system or every node in the network does
approximately the equal amount of work at any instant of
Backend refers to the cloud itself which is used by the time.
service provider. It contains the resources as well as
manages the resources and provides security mechanisms. Load balancing in cloud computing distributes traffic and
Along with this, it includes huge storage, virtual workloads to ensure that no single server or machine is
applications, virtual machines, traffic control under-loaded, overloaded, or idle. Load balancing
mechanisms, deployment models, etc. optimizes various constrained parameters such as execution
time, response time, and system stability to improve overall
cloud performance. Load balancing architecture in cloud
computing consists of load balancer that sits between
servers and client devices to manage traffic.

Load balancing in cloud computing distributes traffic,


workloads and computing resources evenly throughout a
cloud environment to deliver greater efficiency and
reliability for cloud applications. Cloud load balancing
enables enterprises to manage client requests and host
resource distribution among multiple computers,
application servers, or computer networks.
The overall goal of load balancing in cloud computing is to
minimize response time for application users and maximize
organizational resources.

Need of Load Balancing in Cloud Computing

Load balancing in clouds is a mechanism that distributes


the excess dynamic local workload evenly across all the
nodes. It is used to achieve a high user satisfaction and Goals of Load balancing
resource utilization ratio, making sure that no single node is • To achieve a greater overall improvement in system
overwhelmed, hence improving the overall performance of performance at a reasonable cost.
the system. Proper load balancing can help in utilizing the
available resources optimally, thereby minimizing the • To treat all jobs in the system equally regardless of their
resource consumption. It also helps in implementing fail- origin.
over, enabling scalability, avoiding bottlenecks and over- • To have a fault tolerance.
provisioning, reducing response time etc.
• To have the ability to modify itself in accordance with
any changes or expand in the distributed system
configuration.
• To maintain system stability. Some other pros of load
balancing are as follows:
• Ensures that connections are not directed to a server that
is down.
• Good for scaling out for multiple clusters on different
segments.
• Is highly configurable, with rules allowing for client
affinity, weighting, filtering, availability etc.
• Works as a driver rather than as a service
• Manages resources efficiently.
• Utilizes all the systems resources as efficiently as
possible.
• Improves the application response time by sending traffic
round robin.
• If we have two members in load balance pool, with
priority function we can send all the traffic to one node and
keep other node as a backup.
• Helps with disaster recovery.
• OS and application patching is made easier by routing
traffic to different during change windows (less customer ➢ DDoS Attack Mitigation
downtime).
Load balancers inherently defend against distributed denial
of service (DDoS) attacks by distributing traffic across
V. ADVANTAGES OF LOAD BALANCING multiple servers, rerouting traffic away from a single
overloaded server during a DDoS attack and reducing the
attack surface. Load balancing in cloud computing makes
➢ Simpler Automation the network resilient against such attacks by eliminating
Load balancing in cloud computing enables organizations single points of failure.
to use predictive analytic tools to identify traffic bottlenecks
far in advance and gain actionable insights into applications
in near real-time, influencing business decisions. This is all
critical to the automation process. VI. OVERVIEW OF LOAD BALANCING
ALGORITHMS

➢ Seamless Management of Traffic Spikes


Load balancing in cloud computing manages multiple 1.Round Robin Algorithm: Round Robin is a very famous
server requests for optimal, high-performing capacity so load balancing algorithm, in which the processes are
that IT professionals don’t need to step in to counteract divided between all processors. The process allocation
surges in traffic. This smooth and even distribution enables order is maintained locally independent of the allocations
optimum results in minimal response time, even as needs from remote processors. In Round Robin, it sends the
change significantly. requests to the node with the least number of connections,
so at any point of time some node may be heavily loaded
In this way, load balancing helps organizations capitalize and other remain idle, this problem is reduced by CLBDM.
on sudden increasing demands and avoid being
overwhelmed by spikes in network traffic. The ability to
balance loads and scale server capacity can help retain 2.Central Load Balancing Decision Model (CLBDM):
customers and avoid churn. CLBDM is a central load balancing decision model, which
is suggested by Radojevic and Mario Zager, it’s based on
session switching at the application layer. The improvement
➢ High Performing Applications is that, in the cloud it calculated the connection time
Cloud-based load balancing enables the scaling up of between the client and the node, and if that connection time
exceeds a threshold, then connection will be terminated, and
services and ensures that efficiency and high performance
task will be forwarded to another node using the regular
accompany increased traffic.
Round Robin rules.

➢ Flexibility
3.MapReduce-based Entity Resolution: MapReduce is a
The ability to temporarily route traffic to alternative servers computing model and an associated implementation for
allows flexibility for developers who need to perform processing and generating large datasets. Map task and
software updates and patches, maintain faulty servers, and reduce task two main task in this model which written by
test in a production environment. the user, Map takes an input pair and produces a set of
intermediate value pair and Reduce task accepts an
intermediate key and a set of values for that key and merges
➢ Cost-Effective these values to form a smaller set of value. Map task read
entities in parallel and process them, this will cause the
Load balancing in cloud is efficient and delivers better
Reduce task to be overloaded.
cloud service performance and reliability at a significantly
lower cost of ownership. Cloud load balancers are
accessible to startups, small businesses, and medium-sized
4.Ant colony optimization (ACO): Kumar Nishant
enterprises because they run on the cloud or can be paid for
suggested an algorithm [11] of ant colony optimization. In
as a service.
ACO algorithm when the request in initiated the ant start its
movement. Movement of ant is of two ways: Forward independently. The algorithm reduces the network
Movement: Forward Movement means the ant in communication between the client and nodes and network
continuously moving from one overloaded node to another overhead.
node and check it is overloaded or under loaded, if ant find
an over loaded node it will continuously moving in the
forward direction and check each node. Backward
Movement: If an ant finds an over loaded node the ant will
VII. CONCLUSION AND FUTURE WORK
use the back ward movement to get to the previous node, in
the algorithm if ant finds the target node, then ant will Cloud computing is a utility to deliver services and
commit suicide, this algorithm reduced the unnecessary resources to the users through high-speed internet. A
back ward movement, overcome heterogeneity, is excellent comparative study of different Load balancing algorithms
in fault tolerance. is presented. Load balancing is not only required for
meeting users’ satisfaction, but it also helps in proper
utilization of the resources available. The metrics that are
5. Index Name Server Algorithm (INS): The INS algorithm used for evaluating different load balancing technologies
proposed in the goal is to find an algorithm to minimize the are: throughput, overhead associated, fault tolerance,
data duplication and redundancy. INS can handle the load migration time, response time, resource utilization,
balancing dynamically .INS have some parameters which scalability, and performance.
help in calculating the optimum selection point like that In this paper, I surveyed multiple algorithms for load
Hash Code of the block of data to be downloaded, the balancing for Cloud Computing. I discussed the challenges
position of the server, the transition quality, the maximum that must be addressed to provide the most suitable and
bandwidth. Another calculation point whether the efficient load balancing algorithms. We also discussed the
connection can handle additional nodes or not. They advantages and disadvantages of these algorithms. Then, we
classified the busy levels B(a), B(b), and B(c). B(a) means compared the existing algorithms based on the challenges
that connection is very busy and cannot handle any we discussed. Our research on DDFTP concentrates on
additional connection. B(b) means connections is not busy efficient load balancing and provides us with the basis to
and can handle additional connections. B(c) means that the further improve it and reach more efficient load balancing
connection is limited. and better resource utilization. The current design of
DDFTP can tolerate high delays, handle heterogeneous
resources, efficiently adjust to dynamic operational
6.Load Balancing Min-Min Algorithm (LBMM): Wang conditions, offer efficient task distribution, and provide
suggested an algorithm called LBMM. LBMM has a three- minimum node idle time. However, it relies on full
level load balancing framework. In first level LBMM replication of the files on multiple sites, which wastes
architecture is the request manager which is responsible for storage resources. Therefore, as our future work, we are
receiving the task and assigning it to service manager, when planning to improve DDFTP to make it more suitable for
the service manager receives the request; it divides it into Cloud environments and more efficient in terms of storage
subtask and assigns the subtask to a service node based on utilization.
node availability, remaining memory and the transmission
rate which is responsible for execution the task.

7.Dual Direction Downloading Algorithm (DDFTP): References


DDFTP is a dual direction downloading algorithm from
FTP server. This algorithm can be also implemented for
Cloud Computing load balancing. This is a fast and efficient 1. Sidhu, A. K. and Kinger, S., “Analysis of Load
concurrent technique for downloading large files from FTP Balancing Techniques in Cloud Computing”,
server in a cloud environment. DDFTP uses the concept of International Journal of Computers &
processing the files for transfer from two different Technology, 4, 2, March – April 2013
directions. For example, one server will start from block 0 2. Kunamneni, V., “Dynamic Load Balancing for
and keeps downloading incrementally while another server the Cloud”, International Journal of Computer
starts from block m and keeps downloading in a decrement Science and Electrical Engineering (IJCSEE), 1,
order. When the two servers download two consecutive 1, 2012.
blocks, the task is considered as finished and other task can 3. Laha, J., Satpathy, R. and Dev, K., “Load
be assigned to the server. As a result, both servers will work Balancing Techniques: Major Challenges in
Cloud Computing - A Systematic Review”, 13. Kolb, L., A. Thor, and E. Rahm, E, "Load
International Journal of Computer Science and Balancing for MapReducebased Entity
Network, 3, 1, 1-8, February 2014. Resolution," in proc. 28th International
4. Kansal, N. J. and Chana, I., “Cloud Load Conference on Data Engineering (ICDE), IEEE,
Balancing Techniques: A Step Towards Green pp: 618-629, 2012.
Computing”, International Journal of Computer 14. T-Y., W-T. Lee, Y-S. Lin, Y-S. Lin, H-L. Chan
Science Issues (IJCSI), 9, 1, 238-246, January and J-S. Huang, "Dynamic load balancing
2012. mechanism based on cloud storage" in proc.
5. Chopde, N. R. and Tijare, P. A., “Dynamic Load Computing, Communications and Applications
Balancing in Parallel Computing Based on Conference (ComComAp), IEEE, pp:102-106,
Execution Time”, International Journal of January 2012.
Advanced Research in Computer Science and 15. M. R. Sumalatha, C. Selvakumar, T. Priya, R. T.
Software Engineering, 2, 10, 372-375, October Azariah, and P. M. Manohar, CLBC-Cost
2012. effective load balanced resource allocation for
6. Chaczko, Z., Mahadevan, V., Aslanzadeh, S. partitioned cloud system, Proc. International
and Mcdermid, C., “Availability and Load Conference on Recent Trends in Information
Balancing in Cloud Computing”, International Technology (ICRTIT), 2014, 1-5.
Conference on Computer and Software 16. A. K. Kulkarni, and B. Annappa, Load
Modeling, IACSIT Press, Singapore, 14, 134- balancing strategy for optimal peak hour
140, 2011. performance in cloud datacenters, Proc.
7. Madhu, K., M. and Shah, S., M., “Study on International Conference on Signal Processing,
Dynamic Load Balancing in Distributed Informatics, Communication and Energy
System”, International Journal of Engineering Systems (SPICES), 2015, 1-5.
Research & Technology (IJERT), 1, 9, 17. S. K. Dhurandher, M. S. Obaidat, I. Woungang,
November 2012. P. Agarwal, A. Gupta, A. and P. Gupta, A
8. Kunamneni, V., “Dynamic Load Balancing for cluster-based load balancing algorithm in cloud
the Cloud”, International Journal of Computer computing, Proc. IEEE International
Science and Electrical Engineering (IJCSEE), 1, Conference on Communications (ICC), 2014,
1, 2012. 2921-2925.
9. Lua Y., Xiea Q., Kliotb G., Gellerb A., Larusb 18. R. Mishra, and A. Jaiswal, Ant colony
J. R. and Greenber A., “Join-Idle-Queue: A optimization: A solution of load balancing in
novel load balancing algorithm for dynamically cloud, International Journal of Web & Semantic
scalable web services”, accepted in International Technology, 3(2), 2012, 33.
Journal on Performance Evaluation, in press, 3rd 19. E. Caron, L. Rodero-Merino, F. Desprez, and A.
August 2011. Muresan, Auto-scaling, load balancing and
10. Randles, M., D. Lamb and A. Taleb-Bendiab, monitoring in commercial and open-source
“A Comparative Study into Distributed Load clouds, 2012.
Balancing Algorithms for Cloud Computing,” in 20. Amanpreet Chawla, and Navtej Singh
Proc. IEEE 24th International Conference on Ghumman, Efficient Cost Scheduling algorithm
Advanced Information Networking and with Load Balancing in a Cloud Computing
Applications Workshops (WAINA), Perth, Environment, International Journal of
Australia, April 2010. Innovative Research in Computer and
11. Radojevic, B. and M. Zagar, "Analysis of issues Communication Engineering, 3(6), 2015.
with load balancing algorithms in hosted (cloud)
environments." In proc.34th International
Convention on MIPRO, IEEE, 2011.
12. Nishant, K. P. Sharma, V. Krishna, C. Gupta,
KP. Singh, N. Nitin and R. Rastogi, "Load
Balancing of Nodes in Cloud Using Ant Colony
Optimization." In proc. 14th International
Conference on Computer Modelling and
Simulation (UKSim), IEEE, pp: 3-8, March
2012.
TABLE I Pros and Cons of Load Balancing Algorithm

Pros Cons

Each process is served by the CPU The throughput in RR largely depends on the choice of the length of
Round for a fixed time quantum, so all the time quantum. If time quantum is too large it behaves as FCFS. If
Robin processes are given same time quantum is too short much of the time is spent in process
priority. switching and hence low throughput.

Solves issues of Round Robin Inherits Round Robin issues such as not taking into consideration node
Algorithm capabilities.
CLDBM Automated tasks forwarding Single point of failure (if CLBDM fails, the whole process fails)
reduces the need for a human The threshold might not be applied to all cases
administrator

High processing time.


Map Reduce Less overhead for the reduce tasks. Reduce tasks capabilities are not taken into consideration.

Best case scenario is that the Network overhead because of the large number of ants.
underloaded node is found at Points of initiation of ants and number of ants are not clear.
ANT beginning of the search.
COLONY Decentralized, no single point of
failure.

No forecasting algorithm to identify the future behavior of the nodes.


Complicated in terms of implementation.
Initially proved to handle some
Only certain parameters are considered such as distance and time.
INS sort
of dynamic load balancing.

Slower than other algorithms because Work must pass through three
Reliable tasks assignment to
LBMM layers to be processed.
nodes.

Full replication of data files that requires high storage in all nodes.
Fast
DDFTP
Reliable download of files

You might also like