Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
30 views

Load Balancing Algorithms With The Application of Machine Learning - A Review

Uploaded by

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

Load Balancing Algorithms With The Application of Machine Learning - A Review

Uploaded by

Rajesh Pandey
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

https://doi.org/10.58864/mrijet.2023.10.1.

Load Balancing Algorithms


Divyansh Singh with the Application of
Department of CSE, FET,
Manav Rachna International Institute
of Research and Studies, Faridabad,
Machine Learning:
Haryana, India
E-mail:
A Review
singhdivyansh1407@gmail.com
Abstract: Cloud computing is the provision of computing services over
Vandit Bhalla the web. Cloud Computing's load-balancing algorithms are applied in
Department of CSE, FET, static, dynamic, and centralized environments. The article compares and
Manav Rachna International Institute summarizes several load-balancing strategies in the cloud computing
of Research and Studies, Faridabad, environment and discusses the pros and cons of different load-balancing
Haryana, India algorithms. The paper also mainly focuses on exploring machine learning
E-mail: vanditbhalla3@gmail.com models used in LB techniques. The most popular algorithms in the articles
reviewed include Statistical Regression, Random Forest Classifier
Neha Garg Artificial Neural Networks (RF), Convolutional Neural Networks(CNNs),
Assistant Professor, and Regenerating Memory Neural Networks. long-term (LSTM-RNN). LB
Department of CSE, FET, specifications have been defined through performance metrics such as
Manav Rachna International Institute
throughput, latency, traveltime, fault tolerance, and power savings.
of Research and Studies, Faridabad,
Haryana, India Keywords: cloud computing, load balancing, static load balancing,
E-mail: nehagarg.fet@mriu.edu.in dynamic load balancing, machine learning.

I. INTRODUCTION without affecting the cloud. It uses a product-based


software container system. For example, a service
Cloud computing provides end users with a pool of
must be available to move from one cloud provider to
resources that can be quickly reallocated to other
another without affecting the service.
purposes with minimal latency. Cloud Computing
Cloud computing requires virtualization, which is an
Power can be an IT service rooted in computing
abstraction layer of hardware and software. The
power that provides end-users with infrastructure,
services provided by cloud computing are:
applications, and more, wherever they are. Cloud
 Platform as a Service (PaaS) - PaaS provides
computing combines hardware, software, networks, software developers with the necessary
storage, services, and interfaces to create the resources required for running, developing,
computing-as-a-service aspect. There are many and managing applications without having to
reasons to use cloud computing listed as follows: deal with the maintenance of the resources.
 No hardware or software required  Infrastructure as a Service (IaaS) - IaaS
 OS independent provides the required infrastructure, such as
 Dynamic allocation physical and virtual servers, networks, and
 Program movement storage, which can be upscaled if the
 Scalability requirement increases.
 Pay-as-you-go  Software as a Service (SaaS) - It is also
 No commitments known as cloud-based software where the
 Many, Web-abstract infrastructures around user has to pay a recurring subscription fee or
the world pay as per usage, or as stated in the service
Cloud computing uses on-demand hardware as the agreement.
foundation. Hardware is usually replaced at any time Cloud computing is divided into three types based

22 © 2023 MRIJET, MRIIRS


MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

on the method of deployment used. The design Static load balancing - It uses and provides advanced
and setup of these cloud environments can vary information about all task properties, computing
based on the technologies used. resources, communication networks, and memory. A
 Public Cloud - A public cloud is an open static load balancing algorithm may be a non-pre-
setup model where a third partyis the cloud emptive type.
service provider and the resources are
available to users over the public internet, Dynamic load balancing - It has no prior permission
anyone can access them for a subscription information. Dynamic load balancing moves roles
fee. from overloaded node to idle node. Dynamic load
 Private Cloud - As the name suggestsin this balancing algorithms are centralized or distributed,
type of cloud environment all the resources depending on whether you are responsible for global
are dedicated to and accessible by one dynamic scheduling tasks that can be physically
customer only. deployed on a single processor, or whether the work
 Hybrid Cloud - It is a combination of both is associated involved in deciding whether to be
public cloud and private cloud so as to physically distributed between processors. Dynamic
overcome thedisadvantages of both of them, load balancing algorithms can be distributed and
as it helps the organization to choose which undistributed. The CloudSim toolkit is used to
one is suitable for which task. simulate the load balancing algorithm and give power.

II. LOAD BALANCING III. MACHINE LEARNING

When running workloads on the cloud, it is essential It is a branch of artificial intelligence (AI) and
to distribute the load across a group of servers or a computer science that focuses on the use of data and
distributed system in such a way that the task algorithms to imitate the way that humans learn,
efficiently utilizes the resources, while not hindering gradually improving its accuracy. It focuses on
other processes. This process of distribution of training systems to perform new tasks without being
workload to avoid system overload and crashes is explicitly programmed. It is further divided into two
called Load Balancing. Cloud computing load categories namely, Supervised Learning and
balancing is required to handle networked or Unsupervised Learning.
decentralized systems so tasks are assigned to all or
any processors for efficient use of resources. To Supervised Learning: This algorithm consists of a
facilitate global load balancing in the cloud, you need target/outcome variable (dependent variable) that
the right scheduling algorithms. Load balancing is the must be predicted from a certain set of predictors
distribution of load order among multiple nodes in (independent variable). Usingthis set of variables, we
your network. It is the responsibility of the create a function that maps the inputs to the desired
Algorithm Load Balancer to select the nexttask in a outputs. The training process continues until the
way that minimizes execution time and resource model reaches the specified level of accuracy on the
usage in the data center. Many load-balancing training data. Regression and classification problems
algorithms are used in cloud computing for load- are key. Supervised learning techniques are linear
balancing networks. regression, support vector machines, neural
A load balancing algorithm aims at networks, decision trees, Naive Bayes, and nearest
 Maximizing the output of the network neighbors. It ismainly used in predictive modeling.
 Minimizing the system overhead Linear regression technique: Simple regression
 Ensuring the reliability of the system performs the task of predicting a value of a variable
 Scalability of the system quantity (Y) supported by a given experimental
 Efficient utilization of resources variable (X). This regression technique finds a linear
 Maximizing fault tolerance relationship between the given parameters of the
Cloud Computing Load Balancing can be categorized variable X (input) and Y (output). In the figure above,
into two categories as follows: X (input) is work experience and Y (output) is an
23
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

individual's salary. The curve is the best fit for our Redundancy: When you use load balancing to
model. support an application, it comes with built-in
redundancy. this shows that if your server goes
Linear Regression: Y = a1 + a2X Where X = input down, the load balancer will redirect all traffic to
training data and Y = knowledge labels another server without affecting the users.
When training the model, it matches the most efficient
line to predict the value of Y for a certain value of X. Improved security: Load balancing barelyhandles the
The model obtains the simplest regression fit line by traffic, but it also helps to neutralize any DDOS
finding the simplest values a1 and a2. where a1 = attacks. Whenever there is malicious activity on the
Intercept coefficient and a2 = Factor of X.When we application, theload balancer not only detects it but
find the simplest a1 and a2 values, we get the most also switches to another server to neutralize any
efficiently fitted line. So finally after using our model attacks.
to predict it will predict the value of Y given the input
value of X. V. EXAMPLES OF LOAD BALANCERS

Direct Request Method: This method of sending a


Unsupervised Learning: In this algorithm, we have no
request is similar to the method implemented by IBM
objective or outcome variable to predict/estimate. it is
NetDispatcher. Physical servers and load balancers
used to cluster a population into multiple groups,
share a common virtual IP address. The load balancer
widely used to segment clients into different groups
has an interface built with a virtual IP address that
for specific interventions. it is used for clustering
accepts request packets and forwards the packets
(clustering) problems, and anomaly detection (in
directly to the selected host.
banks for anomalous transactions) where it is
necessary to determine the relationships between the
information provided. Unsupervised learning A Load Balancer Server Based On Dispatcher:
techniques are k-meansclustering, K Medoids Fuzzy Administrators configure where TCP/IP requests are
C-Means, Neural Networks, and Hierarchical. It is sent by performing intelligent load balancing using
mainly used in descriptive modeling. server availability, workload, capacity, and other user-
defined parameters. The load balancer dispatcher can
IV. IMPORTANCE OF LOAD BALANCING distribute HTTP requests to other nodes in the cluster.
The dispatcher distributes the load among multiple
It is one of the essential components of a cloud servers ina cluster so that services from different nodes
computing environment that sustains server act as a virtual service on a single IP address;
provisioning and workload distribution. Let's take a Consumers connect to each other as if it werea single
look at the benefits of load balancing in an overhyped server, with no knowledge of the back-end
cloud environment:shut down, then load balancer up infrastructure.
and move your application to another node. It allows
server maintenance without service interruption. Linux Weight Balancer: This is an open-source
advanced load balancing solution used to build highly
Scalability: We all know cloud computing is more scalable and highly available network services such as
scalable. An increase in traffic can disrupt equipment HTTP, POP3, FTP, SMTP, methods convenience and
and affect performance if not handled properly. Load caching, and Voice over Internet Protocol (VoIP)
balancing allows you to provision one or more virtual succeeded. It is a simple and powerful product
servers on demand without service interruption. designed for load balancing and failover. The load
Whenever there is high traffic on a website, a brand balancer itself is the main entry point of the server
new server comes online and so the load balancer cluster system. It can run Internet Protocol Virtual
adapts effectively to this new server without affecting Servers (IPVS), which implements transport-layer
the performance of theapplication. This whole process load balancing in the Linux kernel, also known as
usuallyrequires some downtime. layer 4 switching.

24
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

VI. LOAD BALANCING ALGORITHMS state of the VM in a table of records. In this case, each
virtual machine can be busy/idle. As soon as the
Load balancing is an important and challenging topic request arrives, it searches the table and accepts the
in cloud computing. Cloud computing load balancing request if it finds a match in terms of machine size and
helps efficiently useresources, reduces response time, availability. Otherwise, therequest is returned, and the
distributesthe load more evenly, and reduces power request is also queued. The current utilization of the
consumption. A service to achieve full resource VM is not considered in the allocation.
utilization. Several algorithms have been proposed
E. Central Load Balancer
for load balancing in cloud computing few of them
have been mentioned below: The algorithm's central load balancer distributes the
load between virtual machines with different
A. Round Robin Algorithm hardware. A central load balancer maintains a table of
Round robin is the simplest algorithm that works in a VM IDs and states (busy/inactive). This is essentially
complete way. Using this type of algorithm rule, an updated version of the throttling algorithm
computer hardware allocates a quantum or time slice program. Maintains a table of each VM's status and
of time to perform a task on each node. When a VM its priority, similar to the throttling VMs. Priority is
is assigned atask, the VM moves to the bottom of the calculated by taking into account processor speed and
list. Round-robin offers higher performance than memory capacity. Therefore, the VM allocation
FCFS. If the time slice is too large, the round-robin policy is similar to throttled,except that the VM with
behaves like FCFS, and if the time slice is too short, the highest priority gets the primary preference during
there will be more context changes in the round-robin thisalgorithm program. If so, the next highest priority
algorithm. At any given time, some nodes may VM is checked and the procedure continues until
remain idle, and others may be overloaded. one is found or the entiretable is searched. However,
this burdens the algorithm program with efficiency
B. Weighted Round-Robin
tuning in highly non-uniform settings. The algorithm
A modified version of Round Robin. Tasks are is hampered by the possibility of all requestsreturning
assigned according to the capacity of the VM, and the to the central load balancer. Also, the algorithm
higher the VM, the more tasks you get. You can program is based on VM priority. This is calculated in
assign weights to the server, which are integer values a very static process and is not updated during contract
that represent the processing power of the VM. awards.
C. Dynamic Round-Robin F. Active Monitoring Load Balancing (AMLB)
This algorithm works to reduce power consumption AMLB maintains a table of information about each
in the following steps: VM and the various requests currently assigned to
that VM. When a request arrives, it looks for the least
If the virtual machine finishes running and there are loaded virtual machine. When you receive an
more VMs on the physical machine, the physical invitation to assign a VM replacement, the least
machine will not accept any more VMs. Such stressed VM is identified. In that case, the known
physical machines are said to be in a "sleep" state, i.e. primary page is chosen. The load balancer returns the
When the remaining virtual machines finish running, VMID to InfoCenter Controller. It forwards requests
their physical machines shut down. to the VM known by that ID and notifies the active
VMload balancer of the new quota across VM quotas.
If a physical machine is idle for an extended period, Only the current utilization of theVM matters, not the
you can migrate to another physical machine instead computing power of the VM. Therefore, some jobs
of waiting for all running virtual machines. This wait may have high latency and violate QoS requirements.
time threshold iscalled the "quiet threshold".
G. VM Assigned Load Balancer
D. Throttled Load Balancer
This algorithm is a modification of the Active
The Throttled Load Balancer (TLB) maintains the Monitoring load balancing algorithm.When a new

25
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

VM request comes in, checkthe VM table for new This way, overcommitted resources are released and
VM requests. The VMis made available, assigned a idle and unused resources are used frequently.
VM ID, and returned to the data center. Shridhar G. Therefore, LBIMM provides schedules that improve
Domanal et. Al., this algorithm uses all available loadbalancing and reduce execution time.However,
VMs and can use all VMs perfectly and correctly. employment priorities in the plan have not yet been
This is different from the previous algorithm where addressed.
only a few VMs could have multiple requestscoming
J. Max-Min Algorithm
in and the rest could stay below that.However, the
paper does not explicitlymention how this is done. In the max-min algorithm with the largest completion
The algorithm does not use a VM if it was already time of all the available tasks is selected and executed
allocated in the last cycle. But there is no logic in this in the node (VM) which produces a minimum
as it should be the lightest VM with intelligent execution time for the selected task. The same
processing speed. Therefore,many tasks are assigned procedure is repeated for the left-over task.
to her. By looking for evenly loaded VMs, only if K. User Priority Awarded LoadBalance
there are multiple VMs with evenly loaded loads Improved Min-Min
compared to the previous VM, or multiple VMs with
User priority used by H. Chen et. al. areincluded with
the lowest subsequent loads and the highest
the LBIMM rule to develop PA-LBIMM. The
processing speeds, will the tasks be evenly
algorithm works in two teams. All tasks are divided
distributed. can be dispersed. However, the algorithm
into two groups,G1 and G2. Group G1 is for high-
only considers load,and if the VMs are evenly loaded,
priority tasks. Group G2 is for regular tasks. High-
in the last iteration the task will be sent to one of the
priority tasks run as the first mining algorithm. The
VMs, regardless of whether that VM wasused.
task is then scheduled with normal priority. Finally,
H. Load Balancing Min-Min the load-balancing algorithm creates a make-span for
The Min-Min algorithm, which selects thetask with the running task.
the shortest execution time, canalso be a simple, fast L. Opportunistic LoadBalancing (OLB)
expression that can improve performance. Min-Min
Opportunistic load balancing (OLB) is a static load
minimizes execution schedules, schedules optimal
balancing algorithm. OLB keeps all nodes busy, so
tasks, and improves overall production margins.
don't think about previousloads. However, OLB does
Therefore, small tasks should stop first, large tasks
not consider the execution time of the task on this
should remain in thewaiting phase, and eventually,
node. This can slow down the processing of the task,
machineutilization will decrease. Min-Min shows the
increase the total completion time (makespan), and
minimum job completion time, not considering the
incur overhead as therequest may appear incomplete.
previous load on the machine.
Forward to the node to be released.
I. Load Balancing Improves Min-Min (LBIMM)
M. Honeybee Foraging
The first step starts with the min-minalgorithm rule.
The honeybee is a distributed load-balancing
The second step is to select the task with the smallest
algorithm inspired by nature. Achieves load balancing
size from the mostloaded resource and calculate the
across local servers. Foragingbees look for food and
completion time of that task across all different
advertise the quality of the nectar and the distance of
resources. The minimum execution time of this task
the food source from the nest by wobbling when
is then compared to the mined makespan. In the case
found. The harvester’s bees then chase after the
of makespan, the task is reassigned to the resource
forager’s bees to the feeding area and harvest them.
that created it, and each resource's preparation time is
also updated. This process repeats until other
Honeybee Foraging divides the server into virtual
resources use resources that are more expensive than
servers. Virtual servers have their own queues for
makespan to reduce the processing time of the
managing server requestsand calculating processing
smallest task.
time.

26
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

 Calculate the profit for a particularrequest. congestion prediction, quality of service, etc. service,
The gain can be adjusted as needed. In etc. service (QoS), estimated service latency, and
general, processing requests consumes cloud storage requirements.
latency and CPU time.
 It makes use of response time as a Machine learning can be a part of AI that focuses on
parameter. training systems to perform new tasks without being
 The server will only stay on if it is explicitly programmed. Historical data and statistical
profitable and will continue to search to techniques are combined through a process known as
indicate if the state is loaded, overloaded, trainingto create models that will predict new unseen
or underloaded. values. Deep learning can be a subset of machine
learning that uses variations of neuralnetworks with
N. Exponential Smoothing Based Weighted Least
deeper networks and huge data sets. Deep learning
Connection
combines featurediscovery and prediction in a deep
This algorithm program ESBWLC makes the network within hidden layers. It achieves better
choices supported by the node's electronics performance than traditional machine learning
experience, performance, memory, various problems. The following smart models have been
connections, and therefore the amount of memory tested:
currently in use. Recent knowledge has a greater
A. Deep Learning-based Regression Techniques:
impact on prophetic value than long-standing
knowledge, as it uses all historical knowledge and Deep learning-based regression is used to predict the
distinguishes it by smoothing it. ESBWLC then continuoustime of timed tasks and compute values.
predicts that the node should be selected with a by Kaur et para. The deep learning network is
carefully selected and assisted exponential designed to have 3 hidden layers consisting of a
smoothing method. complex neural network, a composite layer, and thus
an activation layer generated from the ReLU
O. Weighted Active Monitoring Load Balancing
function. Training data includes time and value
Jasmine James set. al predicted thistechnique. This parameter data from the larger workflow.
could be a combination of a weighted round-robin
B. Fully Connected Network (FCN):
and a load-leveling algorithm program with active
monitoring. A deep learning-based load balancing mechanism
VMs are assigned different weights based on the built from fully connected aggregation layers. The
available processing power of the VM. The next VM model was developed by Zhu et alto modify hash
assignment is done by choosing from the smallest functions commonly used for task scheduling.
loaded VMs and assigning the task to the best Historical cluster access data is used to train the
performance according to its weight. model. The FCN model is designed as a hierarchical
model consisting of submodules that provide their
This method eliminates the shortcomings of the
output as input to the next hierarchical step. The
ActiveMonitoring Load Balancing algorithm program
hierarchy is the product of the 4 steps of input,
by taking into account not only the load but also the
scatter, map, and join. Each submodule has 3 fully
processing power of the available VMs.
connected layers. The models used a deterministic
approach to map workloads to servers.
VII. MACHINE LEARNING-BASED LOAD-
BALANCING ALGORITHMS C. Support Vector Machine (SVM) And K-
Suggest Techniques:
Load balancing techniques are classified differently Lilhore et al. proposed a load-balancing solution that
into stages with different functions. They play an supports multiple machine learning algorithmssuch
important role in server resource usage. Load as the SVM clustering engine and K-suggest.
balancers are built around certain aspects of the cloud Clustering is used to identify groups of virtual
environment, such as server CPU and memory machines that are derived from CPU and main
resources, servicelevel agreements (SLAs), network
27
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

memory (RAM) usage. This system has assets model is used to predict the upcoming addition of the
shared with different groups and thus other virtual information center. The model was trained on
machines. It thenuses dynamic support mapping to datasets from NASA and Saskatchewan servers long
specify the appropriate hundreds of virtual machine Memory Repetitive Neural Network Approach
groups based on their size, i.e.: regular, idle, (LSTM-RNN) LSTM can be a particularly
underload, and overloaded VMs. Resource mapping reasonable RNN to preserve the weights of past
involves mapping grouped tasks to an accepted pool operations, generating a suitable deep learning
of virtual machines. This approach has improved algorithm to be used in time series forecasting. The
service levels and reduced wait or decline times. LSTM algorithm has a built-in forget gate that allows
it to leak long-term dependencies up to a point, and it
D. Bayesian Networks with Reinforcement
Learning: retains only the necessary functionality. In their
paper, Kumar and arrangements deal with the main
Liang et al. proposed a load balancer to manage traffic problems of load balancing, namely: power
in the software-defined network controller component consumption and dynamicresource scaling.
of data centers. Bayesian networksare used to predict
the amount of traffic to load and combine with G. LSTM-RNN Load Balancing Technique:
reinforcement learning for optimal reasoning for It is developed by analyzing the history of the
action and for a self-correcting parameter. The information center through cloud traffic logs taking
software-defined network is the brain of the network, into account the time factor. Information from
separating the communication layer from the control historical data is usedto predict long-term workloads.
layer. Bayesian network predicted the load traffic on Continuous training data over time. Expected
the SDN controller while the predictions were used workload data is used to stretch resources and discard
by reinforcement learning to determine the simplest unused resources to save energy. The LSTM-RNN
causal action. The strategies adopted involve model is trained on the HTTPtraces of the NASA
distributed network load and device handling and dataset, the Saskatchewan server, and the Calgary
control. Improve network stability, load balancing server.
speed, and controller performance.
H. Back-Propagation Artificial Neural Network
E. Regression-Based Engineering, Random Forest (BPANN):
and AdaBoost:
The approach was used on an agent-based dynamic
A machine learning-based load distributionmodel that load balancer proposed by Prakash and Lakshmi over
includes many models, namely Multiple Regression a software-defined network (SDN). SDN can be a
(MLR), Random Forest (RF) and AdaBoost (Ada) globally visible component of a cloud architecture. As
used to determine the location of each processing part of the offloading process,they are responsible for
request. Both CPU and GPU uptime are supported. moving virtual machines into the Information Center.
This approach addresses architectural heterogeneity The BPANN algorithm has been trained on moving
by taking into account differences in processing units and loading virtual machine data. The resulting
and their associated operational characteristics. Its model is used to predict the load of the virtual
main purpose is to distribute transactions from machine. The projected load is thenused to determine
distributedmanagement systems. the migration of the virtual machine. Efficient virtual
F. ANN and Self-adaptive Differential Evolution machine migration improves network efficiency, as
(SaDE ): well as information migration speed and processing
speed, which are significantly reduced because the
This method was developed by Kumar et al. topredict heavy load suitable for the virtual machine has not
workloads in the cloud data center. This approach been fully utilized.
combines alternative neural networks (ANN) and
self-adapting differential evolution (SaDE). User I. Quantum Neural Network (QNN):
requests are grouped into time units used due to Approach QNN can be a variant of the neural network
historical data. The ANN part is trained with specific powered by the principles of quantum computing.
workloads as well as historical data. The resulting
28
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

Quantum circuits work likeartificial neural networks. throughput. The number of tasks completed in a
QNNs have some computational advantages as they specified time period also measures throughput.
include only necessary/required parameters to fit
specificdata. This feature makes them more efficient Travel Time: Transfer time is the time it takes for the
than their conventional counterparts. The QNN LB component to move processes from overloaded
model is used to predict the workload that will be equipment to underutilized equipment. In load
generated by cloudlets. Singh et al encoded the balancing, migration timeis measured by the time it
workload data into qubits, and the model was used to takes to move a virtual machine from one physical
very accurately estimate the workload and resources machine to another. Migration is initiated when a task
required. Their model used an uncontrolled gate requires execution through multiple virtual machines
(CNOT) because the activation function in the hidden or when a task is interrupted. Higher numbers of
layer and the output layer adjusted the weightsof the migrations lead to longer migration times. An
qubit lattice. efficient load-sharing technique minimizes virtual
machine migration.
Further network weight optimization is performed
using a self-balancing differential algorithm. Smart Response Time: This metric measures the time taken
load balancing corresponds to conventional load by the LB module to respond to a cloud task/request.
balancing methods. uses machine learning and deep The response time is calculated by adding the
learning algorithms to develop load-balancing transmission time,wait time and service time. A good
models that improve time intervals, resource LB technique maintains a very minimal response time
elasticity, and energy savings. for example, Google because performance is inversely proportional to
has applied neural networks in its data centers to response time. This metric is very common.
manage central cooling, reducing devices used for
cooling by 40%. This shows the potential of Fault Tolerance: Fault tolerance describes the ability
computers to solve complex problems. of a system to withstand failures. In load balancing, it
provides the ability to perform uninterrupted service
VIII. PERFORMANCE METRICS OF LOAD evenif some of its parts fail. An efficient load balancer
BALANCING TECHNIQUES continues to operate even if someservers, VMs, and
PMs fail. Logical error resolution ensures fault
The performance parameters of the LB can be tolerance. This performance parameter is measured
measured through a number of its quantifiable by having one or more points of failure. Redundant
characteristics. Metrics can help determine the best LB components are recommended to ensure that the
approach to load balancing. Some measurable LB component does not fail. For example; address
attributes are directly measured while others depend fault tolerance by decentralizing control over the
on the variables involved. The following metrics network.
have proven effective in evaluating the load
distribution component: Power Consumption: This metric determines the
amount of power/power consumed by the virtual
Throughput: Throughput describes the measurement machines after performing load balancing.
of the number of tasks/elements that go through a
process in each time period. In load, load balancing IX. ADVANTAGES AND DISADVANTAGES
throughput can be thought of as the number of OF LB ALGORITHMS
operations the LB component can handle in a
particular time period. For example, the LB Table 1 shows a brief description of the algorithms
component has high throughput if it responds to along with their advantages and disadvantages.
queries because it will process more than one task
Table 2 is a summary table showing the reviewed
with delayed responses. How the LB component
intelligent load balancing techniques.
forwards requests and the time it takes to decide
which cluster to assign workloads will affect
29
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

Table 1: Advantages and disadvantages of the load balancing algorithm

S.
Algorithm Description Advantage Disadvantage
No.
1. Round Robin The request is allocated for Equal The process is not known
a fixed period distribution in advance. For a larger
of workload task context switching
increases.
2. Weighted Round Robin According to the Optimal resource Processing time is not
processing capacity of VM utilization taken into consideration.
weight is assigned
3. Dynamic Round Robin It maintains VM retiring Cost of power Does not scale up for
state and VM threshold consumption gets large data center
state. reduced
4. Throttled LB Algorithm Maintain a state of VM Evenly distribution Does not consider the
busy or idle of load current state of the VM
5. Central Load Balancer Maintains a list of all Load is balanced Fixed priority
available VM and their centrally
state
6. Active Monitoring The least loaded VM is The existing load VM processing power is
Load Balancing allocated with the request is taken into not considered
consideration
7. VM Assigned LB VM is allocated as and Proper VM NA
Algorithm when available utilization
8. Weighted Active Weights are assigned to Consider the Complexity increases
Monitoring LB the VM according to their weight and
Algorithm processing power processing power
of the VM
9. Min-Min Algorithm The select task with the Simple to execute Does not consider
least execution time existing load
10. Load Balancing Similar to Min- Min Overall completion Does not consider
Improved Min- algorithm. From the all time is reduced priority
Min LBIMM available task, the task
with the smallest
completion time from the
most heavily-loaded
resource is calculated
11. Max Min Algorithm A job with a higher Shorter makespan Shorter jobs have to wait
execution time is executed as compared to
first. Min-Min
12. User Priority Awarded Divides the task into two Consider priority No deadline
Improved Min-Min groups according to user and makespan
priority VIP and ordinary.
13. Opportunistic Load Uses static load balancing Keeps all available Does take into account
Balancing (OLB) algorithm attempt to VM busy the previous load
allocate selected job
available VM
14. Honey Bee Foraging Distributed load balancing Well suited for Well suited for
for self-organization heterogeneous heterogeneous
environment environment
30
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

15. Weighted Least Assign the task to the Balances load Processing speed is not
Connection node having the least efficiently considered
number of connection
16. Exponential The task is assigned Each is examined Complex calculations
Smoothing Forecast according to the
based WLC processing power and
(ESBWLC) memory of the node
Table 2: Summary table showing reviewed intelligent load balancing techniques

Underlying
S. Machine/Deep Learning LB Problem
Publication Data Used
No. Model Addressed
1. Deep Learning CNN Tasks workflow Quality of Service
Regression data (QoS) resource
utilization and
throughput
2. Deep Learning- Hierarchical sub-models of Historical cluster Solves data skew
Based Load Balancer FCN access logs problem in classical LB
3. Lilhore machine SVM, K-Means Clustering RAM & CPU VMs Resource
Learning-based LB usage data utilization & execution
time reduction
4. Reinforcement based Bayesian Network & Network traffic SDN Controller LB,
SDN controller Reinforcement Learning data Network Stability,
Security
5. Distribute d database multiple linear regression Database queries Cloud Heterogeneity of
query load distribution (MLR), random forest (RF), data CPU & GPU
and AdaBoost (Ada)
6. Workload prediction Artificial Neural Network and Client requests Distribution of
self-adaptive differential amassed to time workloads
evolution (SaDE) units
7. Temporal aware LB LSTMRNN Cloud workload Resource elasticity &
with a time factor power saving
8. Dynamic agent LB Backpropagation Artificial Network Traffic VM migration, data
Neural Network BPANN Logs migration
9. Quantum based LB Evolutional Quantum Neural Cloudlets Dynamic resource
Network EQNN workload logs scaling

X. LOAD-BALANCING ENVIRONMENTS FOR Static load balancing methods distribute traffic


DIFFERENT ALGORITHMS without adapting to the current state of the system or
server. Some static algorithms send an equal amount
A load balancer can be a hardware orsoftware of traffic, either in an explicitly specified order or in
device that efficiently distributes traffic across all directions, to each server in a group. Dynamic load
healthy servers to prevent any server from being balancing algorithms look at the current state of the
overloaded. There are twobasic approaches to load system and each server and base traffic distribution
balancing: static load balancing and dynamic load across these factors.
balancing. A static load-balancing algorithm does not take into
account the state of the system because it distributes
A. Difference between static and dynamic load the tasks. Instead, the distribution is formed by
balancing: assumptions and knowledge of the general system

31
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

made before the classification begins. This includes acyclic graph and optimize the order of tasks to
known things like CPU count, communication speed, minimize overall execution time. Some algorithms can
and power, as well as assumptions like resource use metaheuristic techniques to compute the optimal
requests, response times, and arrival times for task distribution.
incoming tasks. Static load balancing algorithms in
Task Separation: This refers to the power of tasks to
distributed systems minimize the operation of
be undermined into subtasks during execution. This
functions by matching a known set of tasks to
specificity is important for the design of load-
available processors. These types of load-balancing
balancing algorithms.
strategies typically focus on a router that optimizes
operational functionality and load distribution. The Hardware architecture between parallel units.
good thing about static load balancing in distributed
systems is its ease of use and quick and simple Heterogeneity: Units of different computing power
implementation, although there are some situations often contain parallel computing infrastructure, and
that don't seem to be better served by this type of load balancing must takethis variation into account.
algorithm. For example, less powerful units should receive
requests that require less processing power than larger
Dynamic algorithms take this load into account for units, or requests of the same kind or unknownsize.
each node or compute unit in the system, achieving
faster processing by moving tasks from overloaded Storage: Parallel devices often fall into thecategories
nodes to overloaded nodes. Dynamic algorithms are of shared storage and distributedstorage. The shared
much morecomplicated to style, but especially when memory unit follows the PRAM model, where all
the execution times for different tasks vary widely, sharing, reading, and writing are done in parallel on
they produce superior results. Also,because there is no shared memory. Distributed storage units follow the
need to dedicate specific nodes to distributing digits, distributed storage model, each unit exchanges
dynamic load-balancing architectures are often more information via messages and has its own storage.
modular. Both types have their advantages, but few systems fall
Both dynamic and static load balancing techniques perfectly into either category. In general, load-
are shaped by other factors as well: balancing algorithms must be specially adapted to
parallel architectures so as not to reduce the efficiency
of parallel problem-solving.
Task type: The task type has a large impact on the
efficiency of the load balancing algorithm, so Hierarchy: The two main forms of load-balancing
maximizing access to task information when the algorithms are controller agents and distributed
algorithm's advanced cognitive processes are taking control. Within the controller-agent model, the
place offers optimization potential increase. controller assigns tasks to agents that execute the tasks
and notify the controller of progress. Controllers can
Task Size: It is very rare to know exactly how long a
assign and reassign tasks only for dynamicalgorithms.
task will run, but it allows for optimal load balancing.
When control is distributed across nodes, the nodes
There are several ways to estimate various execution
share responsibility for assigning tasks, and load-
times. For similarly sized tasks, the average execution
balancing algorithms are also run on each node.
time can be used very well. However, if execution
Additionally, an intermediate strategy is possible
times are highly irregular, more advanced techniques
where he putsall the control nodes of the sub-clusters
are needed. For example, tasks can be tagged with
under one global control. In fact, various multi-level
metadata, andinferences about future tasks can be
strategies and orchestrations possible using elements
drawn based on statistics based on previous execution
of both distributed control and control agent strategies.
times of similar metadata.
Scalability: Computer architectures evolve, but it's
Dependencies: Tasks can be dependent on each other
better to avoid designing replacement algorithms
and some tasks cannot start until other tasks have been
every time the system changes. Therefore, the
completed. We show such dependencies in a directed
scalability of algorithms, or the ability to adapt to
32
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

scalable hardware architectures, can be a critical components. Traditional deep learning and machine
parameter. An algorithm is scalable with respect to its learning models haveproven to be an adaptation in the
input parameters if the scaling of the parameters, i.e. big data age. Traditional machine learning algorithms
the performance of the algorithm remains relatively were found to include multiple linear regression
independent. (MLR) and random forest classifier (RF); SVM
Fault Tolerance: Failure of one component during clustering and K-Means. thanks to the complexity of
execution does not cause the entire parallel algorithm load balancing and hence the huge data associated
to fail, especially on large computational clusters. with their training, such as CPU logs, network traffic
Fault-tolerant algorithms identify problems while data, and storage logs.
allowing recovery. Traditional machine learning algorithms are being
replaced by deep learning models. Deep learning
11. DISCUSSION AND CONCLUSION models implemented in this area include BPANN,
CNN, FCN, ANN, and LSTMRNN. The deep
Load balancing in cloud computing is of great learning model shows better performance in terms of
importance. Load balancing improves system prediction accuracy. These models handle big data
performance. This article summarizes the different well without affecting the standardization of the
cloud computing algorithms and their strengths and model. These models represent an important trend
weaknesses. The common load balancing techniques from spatially oriented models such as ANN and CNN
described here mainly focus on reducing the time to space-time models such as LSTM and CNN-
involved, improving throughput, reducing production LSTM. This trend suggests that score is an important
time, and improving performance byconsidering other factor to consider during load balancing. Other deep
factors such as processor,memory, and disk. The main learning models that stand out from the rest include a
goal of this article is to investigate the latest trends in load distribution component based on deep
cloud load-balancing research by finding the most reinforcement learning and, therefore, a load balancer
used machine learning algorithms in load-balancing based on a quantum neural network.
Table 3: Load Balancing Environments for Different Algorithms

Algorithm Static Load Dynamic Load Centralized Distributed Load


Balancing Balancing Load Balancing Balancing
Round-Robin True False True False
Min-Min True False True False
Max-Min True False True False
CLB True False True False
LBMM False True False True
Active Clustering False True False True
OLB True False True False
PA-LBIMM True False True False
WLC False False True False
ESWLC False False True False
Honey Bee Foraging False False False True

33
Singh et. al.: Load Balancing Algorithms with the Application of Machine Learning: A Review

[10] IBM Cloud Education, "What is Machine


REFERENCES Learning?," IBM Cloud, 15 July 2020. [Online].
Available:
[1] Juliet Gathoni Muchori, Peter Maina Mwangi, https://www.ibm.com/cloud/learn/machinelearning.
“Machine Learning Load Balancing Techniques in [Accessed 17 February 2022].
Cloud Computing: A Review”, International Journal
of Computer Applications Technology and [11] IBM Cloud Education, "What is deep
Research Volume 11–Issue 06, 179-186, 2022, ISSN:- learning? " IBM Cloud, 1 May 2020. [Online].
2319–8656 DOI:10.7753/IJCATR1106.1002 Available:
https://www.ibm.com/cloud/learn/deeplearning.
[2] Harish Sharma, Pradeep Semwal, SGRR [Accessed 17 February 2022].
University, Dehradun, India, “A REVIEW OF LOAD
BALANCING ALGORITHMS IN CLOUD [12] Colton, S., Charnley, J., & Pease, A. (2011).
COMPUTING”, 2021 IJCRT, Volume 9, Issue 3 Computational Creativity Theory: The FACE and
March 2021, ISSN: 2320-2882 IDEA Descriptive Models. Proceedings of the Second
International Conference on Computational
[3] Boden, M. A. (2004). The Creative Mind: Creativity, (pp. 90-95). Mexico City.
Myths and Mechanisms. London: Routledge.
Bringsjord, S., Bello, P., & Ferrucci, D. (2001). [13] Higgins, M., & J., M. (2000). The Role of
Creativity, the Turing Test, and the (better) Lovelace Creativity in Planning: The ‘Creative Practitioner'.
Test. Minds and Machines, 11, 3-27. Planning Practice & Research, 117-127.

[4] Menabrea, L. F. (1843). Lovelace, A., trans. [14] Jefferson, G. (1949). The Mind of Mechanical
Sketch of the Analytical Engine invented by Charles Man. British Medical Journal, 1105-1110.
Babbage. Scientific Memoirs 3.
[15] LeCun, Y., Bengio, Y., & Hinton, G. (2015).
[5] Rehling, J., & Hofstadter, D. R. (2004). Letter Deep Learning. Nature, 521, 436-444. Luan, F., Paris,
Spirit: A Model of Visual Creativity. Sixth S. S., & Bala, K. (2017). Deep Photo Style Transfer.
International Conference on Cognitive Modeling (pp.
[16] Luger, G. F. (2009). Artificial Intelligence:
249-254). Mahwah, NJ: Lawrence Erlbaum.
Structures and Strategies for Complex Problem
[6] Retrieved from Solving. Boston: Pearson. Kaur, B. Kaur, P. Singh, M.
http://arxiv.org/abs/1410.6142 S. Devgan, and H.K. Toor, "Load Balancing
Optimization Based on Deep Learning Approach in
[7] Wang, Z., Yang, J., Jin, H., Shechtman, E., Cloud Environment," I.J. Information Technology and
Agarwala, A., Brandt, J., et al. (2015). DeepFont: Computer Science, vol. 3, no. I, pp. 8-18, 2020.
Identify Your Font from An Image. MM '15
Proceedings of the 23rd ACM international [17] Zhu, Q. Zhang, T. Cheng, L. Liu, WeiZhou
conference on Multimedia Pages, (pp. 451-459). and J. He, "DLB: Deep Learning Based Load
Brisbane. Balancing," CoRR, vol. 1910, no. 08494V4, 2021.

[8] (2016, November). Retrieved June 2017, from [18] U. K. Lilhore, S. Simaiya, K. Guleria, and D.
https://www.indiehackers.com/businesses/logo joy Prasad, "An Efficient Load Balancing Method by
Using Machine Learning-Based VM Distribution and
[9] Retrieved July 2022, from Dynamic Resource Mapping," Journal of
https://avinetworks.com/glossary/static-load-b Computational and Theoretical Nanoscience, vol. 17,
alancing/#:~:text=Static%20load%20balancin no. 7, pp. 2545-2551, 2020.
g%20algorithms%20in%20distributed%20syst
ems%20minimize%20specific%20performanc [19] S. Liang, W. Jiang, F. Zhao, and F. Zhao,
e,performance%20function%20and%20distrib "Load Balancing Algorithm of Controller Based on
utes%20loads. SDN Architecture Under Machine Learning," Journal

34
MR International Journal of Engineering and Technology, Vol. 10, No. 1, May 2023

of Systems Science and Information, vol. 8, no. 6, pp. [23] S. WilsonPrakash and P. Deepalakshmi,
578-588, 2021. "Artificial Neural Network Based Load Balancing On
Software Defined Networking," in IEEE International
[20] Abdennebi, A. Elakas, F. Taşyaran, E. Öztürk,
Conference on Intelligent Techniques in Control,
K. Kaya and S. Yıldırım, "Machine learning - based
Optimization and Signal Processing (INCOS),
load distribution and balancing in heterogeneous
Tamilnadu, India, 2019.
database management systems," Concurrency and
Computation, vol. 34, no. 4, 2021. [24] Abbas, D. Sutter, and S. Wörner, "The power
of quantum neural networks," IBM, 2 July 2021.
[21] J. Kumar and A. K. Singh, "Workload
[Online]. Available:
prediction in the cloud using artificial neural network
https://research.ibm.com/blog/quantumneural-
and adaptive differential evolution," Future
network-power. [Accessed 16 Feb 2022].
Generation Computer Systems, vol. 81, no. C, pp. 41-
52, 2019. [25] K. Singh, D. Saxena, J. Kumar and V. Gupta,
"A Quantum Approach Towards the Adaptive
[22] J. Kumar, R. Goomer and A. K. Singh, "Long
Prediction of Cloud Workloads," IEEE Transactions
Short Term Memory Recurrent Neural Network
on Parallel and Distributed Systems, vol. 32, pp. 2893-
(LSTM-RNN) Based Workload Forecasting Model
2905, 2021
For Cloud Datacenters," Procedia Computer Science,
vol. 125, pp. 676-682, 2018.

35

You might also like