Você está na página 1de 6

Load Optimozation in Cloud Using Ant Colony:A Survey

Dr.Lokesh Kumar Sharma1, Mohindarpal Singh2, Dikshya Roy3, Navneet Kumar4


Department of Computer Science and Engineering,
Galgotias College of Engineering and Technology,
Greater Noida, India
1
lokesh@galgotiacollege.edu
2
singhsaluja96@gmail.com
3
dikshyaroy98@gmail.com
4
np.eng97@gmail.com
---------------------------------------------------------------------------------------------------------------------------------------
Abstract:- Cloud computing is an evolving technology which provides users “pay as you go”
demand. Nowadays there is a tremendous increase in the use of the cloud by the clients due to its attractive
features which results in a rapid growth of load on servers. Hence, load balancing has become a matter of
concern in the domain of cloud computing. Load balancing is required to distribute the workload equally
amongst all nodes in a network so that none of a node is overloaded or underloaded and each node does a
similar amount of work in equal time. It minimizes the cost and time involved in the major computational models
and helps to improve proper utilization of resources and system performance. Many approaches and algorithms
are recommended by various researchers from all over the world to solve the problem of load balancing. In this
paper, we present a technique built on Ant Colony optimization to address the issue of load balancing in a cloud
environment.
Keywords - Cloud Computing; Ant colony optimization, Swarm intelligence; Load Balancing;
---------------------------------------------------------------------------------------------------------------------------------------

1. Introduction
1
. Its characteristics describe a cloud computing system:
on-need self-service, pooling of resources, access to the
Cloud computing is a newly progressing technique
internet, the elasticity of service availability and
which offers online computing resources, storage and
measurement of services utilized by individual users.
permits users to organize applications with enhanced
Cloud computing is everywhere with tools like Google
scalability, availability and fault tolerance. Cloud
Drives replacing Microsoft Office, Amazon Web Services
computing is about storing the stuff on remote servers
replacing traditional enterprise data storage, banking
instead of on own computers or other devices. This
websites use of the resources; it is unrestricted. The public
information can be retrieved using the internet with any cloud is connected to the public internet for anyone to
device, everywhere in the world as long as that device can leverage.replacing branch offices and Dropbox storing all
support cloud computing systems. The cloud computing our data and files. The cloud even provides different
system is comprised of a front-end, which is the client side deployment models and service models.
and a back-end which is a collection of the servers and
The four deployment models present in cloud computing
computers owned by a third party which stores the data. A 2
are:
central server which is a fragment of the back-end follows
1. Public cloud: In the public cloud, the cloud provider
protocols and uses middleware to communicate between
provides resources for free to the public. Any user can
networked computers. Cloud computing accumulates all
make
the computing resources and manages them automatically
2. Private cloud: In a private cloud, the planning and 2.1 Goals of load balancing:
provisioning of the cloud are operated and owned by the Some of the key purposes of a load balancing algorithm as
organization or the third party. Here the hosted services pointed out by are:
are provided to a restricted number of people or group of 1. It should possess fault tolerance.
individuals. 2. It should be capable of modifying itself according to
3. Community cloud: These type of cloud infrastructures any change or expansion in the distributed system
exists for special use by a group of users. These are a 3
configuration .
group of users who share a common mission or have 3. Regarding system performance, it should give greater
specific regulatory requirements, and it may be managed overall improvement at a minimal cost.
by the third party or organizations. 4. Regardless of the origin of job it must treat all jobs in
4. Hybrid Cloud: Hybrid Cloud provides the best of the system equally.
above worlds. It is created by combining the benefit of 5. It should also maintain system stability.
different types of cloud (private cloud & public cloud). In
these clouds, some of the resources are provided and
2.2 Issues of Load Balancing
managed by public cloud and others as a private cloud.
The issues of load balancing are described below 4
The three different service models present in cloud
computing are: :
1. Infrastructure as a Service (IaaS): IaaS model 1. Load balancing becomes critical because, in the middle
provides just the hardware and the network. It allows users of execution, the processes may shift amongst nodes to
5
to develop and install their operating system, software and ensure equal workload on the system .
run any application as per their needs on cloud hardware 2. For a load balancing scheme to be good it should be
of their own choice. scalable, general and stable and should add minimal
overhead to the system. These requirements are
6
2. Platform as a Service (PaaS): In PaaS model, an interdependent .
operating system, hardware, and network are provided to 3. One of the critical aspects of the scheduling problem is
7
the user. It enables users to build their applications on load balancing . The challenge for a scheduling algorithm
cloud making use of supplier specific tools and languages is to avoid the conflict between prerequisites: fairness and
data locality.
3. Software as a Service (SaaS): ): In SaaS model, a pre- 4. Algorithms for load balancing have to be dependent on
built application together with any needed software, the hypothesis that the on hand information at each node is
hardware, operating system and the network is provided to accurate to avoid processes from being continuously
5
the user. circulated the system without any progress .
5. How to accomplish a balance in load distribution
amongst processors such that the computation can be done
2. Load Balancing in the minimum possible time is one of the important
Load balancing is a serious concern in cloud problems to resolve.
computing. With the increase in attractiveness of cloud 6. Load balancing and task scheduling in distributed
computing among users, the load on the servers and the operating systems is a vital factor in gross system
quantity of processing done is surging drastically. There efficiency because the distributed system is not pre-
are multiple nodes in the cloud, and due to the random emptive and non-uniform, that is, the processors may be
allocation of a request made by the client to any node, the 7
different .
nodes become unevenly loaded. So to avoid the condition
where some nodes are either severely loaded or under 2.3 Components of Load Balancing
loaded, the load balancer will evenly divide the workload
3
Algorithms:
among all the nodes . Thus load balancing will equally
A load balancing algorithm has five major
distribute the workload among the nodes, and it can help in 8
components
minimizing delays in communication, maximizing the
1. Transfer Policy: The portion of the load balancing
throughput, minimizing execution time and maximizing
3 algorithm that picks a job for moving from a local node to
resource utilization . a remote node is stated as Transfer policy or Transfer
strategy.
2. Selection Policy: In this policy, it specifies the is motivated from real ants when finding for a food ant
processors involved in the load exchange (processor travels randomly, and in return trip, they deposited some
matching) so that the overall response time and throughput chemical pheromone. By the quantity of this pheromone,
may be improved. other ants use the shortest path on which more pheromone
3. Location Policy: The portion of the load balancing value is deposited. The ants discover the shortest path
algorithm that is responsible for choosing a destination from the nest to a food source by an indirect
node for a task to transfer is stated as location policy or communication amongst the ants via pheromone trails.
9
Location strategy. Ekta Gupta et al. Proposed technique based on the ACO
4. Information Policy: The part of the dynamic load where redistribution of overloaded nodes is done based on
balancing algorithm that is in charge of gathering the threshold value. If the load on current node is less than
information about the nodes present in the system is the threshold ant will then search for overloaded node
started to as Information Policy or Information strategy. among the neighboring nodes of the current node and
5. Load Estimation Policy: In this policy, it determines the move to the underloaded node by checking its Foraging
total workload of a node in a system. Pheromone value. Here ants move only in one direction at
17
a time .
10
3. Classification Of Load Mayanka Katyal et al. discussed various load balancing
pattern such as static load balancing, distributed and non-
Balancing Algorithms: distributed dynamic load balancing, centralized and
Load balancing algorithms have been classified based hierarchical load balancing. Although static load balancing
on current state of system and who initiated the process 1. patterns offer simplest and effort free simulation and
Depending on which user initiates the process: monitoring of the environment, they are not capable of
handling heterogeneous nature of the cloud. Considering
A. Sender-Initiated: Sender or client initiates the execution
dynamic load balancing algorithm, these are appropriate in
of load balancing algorithm on identifying the need for
a heterogeneous environment of cloud computing but are
load balancing.
problematic to simulate.
B. Receiver-Initiated: Receiver or server initiates the 11
execution of load balancing algorithm on identifying the Shagufta Khan et al. implemented SALB algorithm. In
need for load balancing. this enhancement to ACO algorithm is proposed. Artificial
C. Symmetric: This type of algorithm is a blend of sender- ants move forward and backward direction to find the
initiated type and receiver-initiated type algorithms. overloaded node and update value in pheromone table.
Throughput, Response time, less energy consumption is
2. Depending on current state of system
achieved, but it gives less performance.
Static algorithm: In the static algorithm, there is a uniform 12
distribution of traffic among the servers. This algorithm Kun Li et al. proposes a cloud task scheduling strategy
needs a prior understanding of system resources so that the by Load Balancing Ant Colony Optimization algorithm.
judgment of shifting of the load does not depend on the The core aid of the work was to balance the whole system
current state of the scheme. The static algorithm is perfect load while trying to minimize the make span of a given
3 task set.
in the system which has fewer inequalities in load .
Dynamic Algorithm: In the dynamic algorithm, for
balancing the load the lightest server in the entire system 5. Proposed Work
or network is looked upon and preferred. For this real-time
Macro Dorigo introduced this concept i.e. Ant Colony
communication with the network is needed which can
in his Ph.D. in 1992. Ant has proficiency to discover the
increase the traffic in the system. Here to make decisions
path between nest and food. When ants find the path, they
for managing the load the current state of the system is lay some chemical substances i.e. Pheromone and it is on
3
used . the ground. All the ants can follow this pheromone while
13
finding the path . This chemical attracts the ants so that
4. Related Work the ants can follow the same path with the highest
Load Balancing is a vital part of Cloud Computing probability of pheromone on the ground for searching the
framework to accomplish maximum consumption of food and return to the nest. The ants subsequently reach
resources. Ant colony optimization (ACO) algorithm was the food sources by following the pheromone trails. The
intensity of the pheromone can vary on different factors
projected by Marco Dorigo and his colleagues in 1992. It
like the quality of food sources, a distance of the food, etc. system load balance in any situation, experiment and take
Ant’s traverse from one node to the other node using the slightly less time to execute tasks.
pheromone intensity and also simultaneously update the 5.3 Process of Load Balancing
pheromone trail of that particular path, such that further, Based on the above strategies, the initial steps of load
this path becomes more feasible if more ants follow this balancing are described as follows.
14
path . Path with the maximum pheromone intensity is the
shortest path between the best food source and the starting (1) Compute moving probability for all of its neighbors
point. The movements of these ants independently update and select the biggest one as its next destination;
a solution set. For fast convergence, we employ two (2) Now judgment is made that a new node is candidate
diverse ants in search of the slave nodes. At the same time, node or not after moving to it. If yes, generate a backward
we leverage LBACO algorithim to trigger ant generation, ant and initialize this backward ant. For forward ant, go
so as to improve the efficiency of the algorithm. back to step 1;
1. Forward movement- In the forward movement type of (3) The backward ant goes back to the starting point of its
movement the ants travel forward to extract the food, or forward ant, along with the path of its forward ant with the
search for the food sources. opposite direction. Update the information pheromone of
2. Backward movement- In the backward movement type each node the backward ant passes by, and remove the
of movements the ants go back to the nest for storing their backward ant when reaching the starting point;
food after collecting food from the food sources. (4) Calculate the sum resources of the candidate nodes,
and stop the process if they can meet the demand of load
5.1 Working of ACO Algorithm balancing and,
In our approach, the main procedure of load balancing (5) Perform the load balancing operation. These steps are
with ACO consists of two steps before load balancing the same for max-min rules except the way to calculate the
execution as below. moving probability.
(1) Ant generation: After periodically checking the 5.4 Dynamic Load Balancing Modelling
cloud platform, if there are overloaded or with ACO
underloaded nodes, only then ants are generated. To explore both load allocation efficiency and
(2) To find target node: According to searching rules, network performance, two critical issues must be
the ant is looking for the target nodes which meet addressed. First, to meet the required QoS, there should be
the conditions of load balancing in its proper pheromone initialization in the cloud computing
surrounding area. Candidate node is the other environment. Second, the pheromone update should fulfill
name for target node for load balancing. the changing demand of the workload variation, with the
intention of accelerating the convergence.
5.2 LBACO ALGORITHIM
We utilize the characteristics of ant algorithms 5.5 Pheromone Initialization
mentioned above to schedule task[10]. We can carry out In cloud computing, the physical resources
new task scheduling depending on the result in the past allocated to each virtual node are not the same and usually
task scheduling. It is very helpful in the cloud changing dynamically. Due to of this characteristic, we use
environment. In contrast to other ACO algorithm, the the physical resources of virtual machines to measure a
LBACO algorithm inherits the basic ideas from ACO node’s initial pheromone, as described in 15,16. In
algorithm to decrease the computation time of tasks pheromone initialization step, the physical resources
executing, it also considers the loading of each VM. We involved are CPU, external storage, I/O interface, internal
can carry out new task scheduling depending on the result storage, and bandwidth. The CPU capability can be
in the past task scheduling. It is very helpful in the cloud calculated by:
environment. the average makespan of the basic
ACO and LBACO algorithm reduced roughly with the
number of iterations increased. But for the basic ACO and Pcpu = n × p
LBACO algorithm, this change became slow after certain
Iterations. The average performance of the LBACO The capability definitions of physical resources of virtual
algorithm is better than the FCFS algorithm and ACO machines are defined as blow. For CPU:
algorithm9. It means that the LBACO can achieve good
5.6 Pheromone Update
There are two types of pheromone update that are
available for ants movement. Ant can update this table 10. Move to next node;
after performing each task by ant. The type of movements 11. if(node-is-candidate)
of the ant is identified by the type of pheromone being 12. Generate-backward-ant();
updated by the ant, and it also tells about the kind of node 13. Start-timer-for-backward-ant(timerna);
15
the ant is searching for . Two types of pheromone are 14. Update-pheromone-by-forward-ant();
given below: 15. if(timerna > 0)
1. Foraging Pheromone: The ants constantly move 16. Update-pheromone-by-backward-ant();
in the forward direction in the network coming 17. if(task-in-slave-successful)
across overloaded node or under the loaded node. 18. Increase- pheromone;
Equation to update value in foraging pheromone 19. if(task-in-slave-failed)
is 20. Decrease- pheromone;
FP(t+1) = (1 - βeva) FP(t) + ΔFP 21. }
Where, 22. if(satisfy-load-balancing){
βeva = Pheromone evaporation rate 23. Do-load-balancing();
FP = Foraging pheromone of the edge before the 24. continue;
move 25. }
FP( t+1 ) = Foraging pheromone of the edge after 26. else if(need-new-tasks)
the move 27. Go to 3;
ΔFP = Change in FP 28. }
29. End of algorithm
Trailing Pheromone: If an ant encounters an
overloaded node in its movement, then it will
16
move back to the underloaded node which was CloudSim 3.0 is chosen as the simulation toolkit
previously encountered. It will check if the node for cloud computing, which is simply used to examine and
is still underloaded or not and if it finds it still validate the achievability and stability of the proposed
load balancing approach. Windows XP OS with 2.53 Ghz
under loaded, then it will redistribute the work to
CPU, JDK 7.0 and Ant (1.8.4, Apache Software
the under the loaded node. The vice-versa is also Foundation, Forest Hill, MD, US, 2011), 2 GB of memory
feasible and possible. Equation to update value in are employed to run the simulations
trailing pheromone is,
TP(t+1) = (1 - βeva) TP(t) + ΔTP
Where,
βeva = Pheromone evaporation rate
6. Conclusion And Future
TP = Trailing pheromone of the edge before the
move Work
TP( t+1 ) = Trailing pheromone of the edge after
the move
ΔTP = Change in TP In this paper, we discussed cloud computing and
Algorithm 1 The step by step procedure of the proposed load balancing. Apart from this, we also discussed the
load balancing various goals, issues, components, classification,
1. Beginning of proposed algorithm different techniques and metrics for load balancing.
2. Initialize pheromone for slave nodes; Load balancing is one of the major concern in cloud
3. Get-job-from-user (jobn) for master node; computing, and the main purpose of it is to satisfy the
4. Job-divides-into-tasks (jobn) by master node; requirements of users by distributing the load evenly
5. for(i = 0 to nt){//nt is the distribution number of the among all servers in the cloud to maximize the
tasks utilization of resources, to increase throughput, to
6. Distribute-tasks-to-slaves(taski); provide good response time and to reduce energy
7. If-there-are-overload/underload-nodes(){ consumption. To optimize resource allocation and
8. Generate-forward-ant(); ensure the quality of service, this paper proposed a
9. Compute-moving-probability(); novel approach for dynamic load balancing based on
the improved ant colony optimization.
7 Nikravan M. et.al, “A Genetic Algorithm for Process
. Two dynamic load balancing strategies were applied with Scheduling in Distributed Operating Systems Considering
the max-min rules and forward-backward ant mechanism. Load Balancing”, Proceedings 21st European Conference
According to the characteristics of cloud computing, we on Modelling and Simulation (ECMS), 2007.
redefined and improved the ant colony optimization by 8 M. Amar et.al, “SLA Driven Load Balancing for Web
pheromone update and pheromone initialization. Using such Applications in Cloud Computing Environment”,
improvements, the speed for searching candidate nodes in Information and Knowledge Management, 1(1), pp. 5-13,
load balancing operations can be greatly accelerated. 2011.
Simulations were illustrated by the improved approach in a 9 Ekta Gupta et.al, “A Technique Based on Ant Colony
cloud computing platform. The results showed that the Optimization for Load Balancing in Cloud Data Center”,
proposed approach is feasible and effective on load balancing 13th International Conference on Information Technology,
in cloud computing and also has better performance than a 2014 IEEE.
random algorithm and LBVS algorithm. In future work, we 10 M. Katyal et.al, “A Comparative Study of Load
will study the triggering procedure for ant generation and the Balancing Algorithms in Cloud Computing Environment”,
approach for pheromone update so as to considerably reduce International Journal of Distributed and Cloud Computing
the searching time for candidate nodes. Furthermore, we will Volume 1 Issue 2 December 2013
investigate how to introduce other intelligent algorithms into 11 S. Khan et.al, “Effective Scheduling Algorithm for
our approach, with the purpose of improving system Load Balancing using Ant Colony Optimization in Cloud
performance and efficiency. Computing”, International Journal of Advanced Research
8. References in Computer Science and Software Engineering, Volume
4, Issue 2, February 2014..
1 D. Saranya et.al, "Load Balancing Algorithms in Cloud 12 Kun Li et.al, “Cloud Task scheduling based on Load
Computing: A Review," International Journal of Advanced Balancing Ant Colony Optimization”, 2011 Sixth Annual
Research in Computer Science and Software Engineering, ChinaGrid Conference, 2011 IEEE.
vol. 5, Issue 7, July 2015. 13 D. Kashyap et.al, “A Survey Of Various Load
2 S. Sethi et.al, "Efficient Load Balancing in Cloud BalancingAlgorithms In Cloud Computing”,
Computing using Fuzzy Logic," IOSR Journal of INTERNATIONAL JOURNAL OF SCIENTIFIC &
Engineering (IOSRJEN) ISSN: 2250-3021 vol. 2, pp. 65-71, TECHNOLOGY RESEARCH VOLUME 3, ISSUE 11,
July 2012. NOVEMBER 2014.
3 T. Desai et.al, "A Survey of Various Load Balancing 14 Book: Ant colony optimization by Macro Dorigo and
Techniques and Challenges in Cloud Computing," Thomas Stutzle.
International Journal of Scientific & Technology Research, 15 R. Rastogi et.al, "Load Balancing of Nodes in Cloud
vol. 2, Issue 11, November 2013. Using Ant Colony Optimization." Proceedings of the 14th
4 S. Rajoriya et.al, "Load Balancing Techniques in Cloud International Conference on Computer Modelling and
Computing: An Overview," International Journal of Science Simulation (UKSim), March 2012, IEEE, pp: 3-8.
and Research (IJSR), vol. 3, Issue 7, July 2014 16 Calheiros, R.N.; Ranjan, R.; Beloglazov, A.; de Rose,
5 Sharma S. et.al, “Performance Analysis of Load Balancing C.A.F.; Buyya, R. CloudSim: A toolkit for modeling and
Algorithms,” World Academy of Science, Engineering and simulation of cloud computing environments and
Technology, 38, 2008. evaluation of resource provisioning algorithms. Software
6 Gross D. et.al, “Noncooperative load balancing in 2011, 41, 23–50.
distributed systems”, Elsevier, Journal of Parallel and
Distributed Computing, No. 65, pp. 1022-1034, 2005.

Você também pode gostar