International Journal of Computer Application Issue 4, Volume 6

advertisement
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
A SURVEY ON LOAD BALANCING ALGORITHMS
FOR CLOUD COMPUTING
Avtar Singh#1 ,Kamlesh Dutta#2, Himanshu Gupta#3
#1 Department of Computer Science and Engineering , Shoolini University,
avtarz@gmail.com
#2 Department of Computer Science and Engineering , NIT Hamipur,
kd@nith.ac.in
#3Department of Computer Science and Engineering , Shoolini University,
himanshugupta1999@gmail.com
ABSTRACT
Cloud Computing is growing in real time environment and provides shared resources,
information, software packages and other resources as pay per use at specific time. Resources
are needed to be equally balanced between various computing processes and to obtain proper
utilization of resources load balancing is required. In this paper, various load balancing
algorithms are compared on the basis of their metrics which are useful for dynamic load
balancing.
Key words: Cloud Computing; Load Balancing
Corresponding Author: Himanshu Gupta
INTRODUCTION
A Cloud refers to a distinct IT environment that is a network of servers designed for the purpose
of remotely provisioning scalable and measured IT resources. It is a type of computing in which
resources are shared rather than owning personal devises or local personal servers which can be
used to handle applications on system. The word cloud in cloud computing is used as a metaphor
for internet so we can define a cloud computing as the internet based computing in which the
different services like storage, servers and application are provided to organizations computers
and device using internet[1]. So as compared to traditional “own and use” technique if we use
cloud computing, the purchasing and maintenance cost of infrastructure is eliminated. It allows
the users to use resources according to the arrival of their needs in real time. Thus, we can say that
cloud computing enables the user to have convenient and on-demand access of shared pool of
computing resource such as storage, network, application and services, etc.. On pay per use basis.
Load balancing is one of the main issues related to cloud computing. The load can be a memory,
CPU capacity, network or delay load. It is always required to share work load among the various
nodes of the distributed system to improve the resource utilization and for better performance of
the system. This can help to avoid the situation where nodes are either heavily loaded or under
R S. Publication, rspublicationhouse@gmail.com
Page 66
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
loaded in the network. Load balancing is the process of ensuring the evenly distribution of work
load on the pool of system node or processor so that without disturbing, the running task is
completed. The goals of load balancing[2] is to improve the performance, maintain system
stability, build fault tolerance systems and accommodate future modification. There are some
main phases that almost all load balancing algorithms have in common [4]. Monitoring is to
monitor resource load state. Synchronization means exchanging load and state information
between resources. Rebalancing Criteria is to calculate the new work distribution andmaking
work moment decision. Job Migration is actual movement of data. It provides when a system
decides to export a process
CLASSIFICATION
In order to define a Load-balancing (LB) algorithm completely, the main four sub-strategies
(initiation, location, exchange, and selection) have to be defined. The goal of this classification is
to understand load balancing algorithms. This classification provides a terminology and a
framework to describe and classify different existing load balancing algorithms, and facilitating
the task of identifying a suitable load balancing strategy.
A detailed discussion of the classification is presented in the following Figure 1: Dynamic Load
balancing (DLB) and Static Load Balancing (SLB). Static load balancing (SLB) distributes the
work among processors prior to the execution of the algorithm and Dynamic Load Balancing
(DLB) distributes the work among processors during the execution of the algorithm
Figure 1 Classification Load Balancing
The jobs session is not predictable and the capacities of each node in the cloud differ, for the
load balancing problem, and workload control is difficult to improve system performance and
maintain stability. Cloud computing is efficient and scalable but is maintaining the stability of
processing so many jobs in the cloud computing environment is a very complex problem with
load balancing receiving much attention for researchers. It is common today in redundant highavailability computer systems that incoming network traffic is distributed on network level by
using one of frequently used network load balancing algorithms (like: random-allocation, roundrobin allocation, weighted round-robin allocation, etc.).
R S. Publication, rspublicationhouse@gmail.com
Page 67
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
RELATED WORK
In this section, some significant contributions on load balancing in cloud computing, as
mentioned in the literature are discussed. Khiyaita et al. [3], suggested an overview of load
balancing in cloud computing, classification of load balancing algorithms based upon system
load and system topology, examples of load balancing and different research challenges in load
balancing. While in [4] authors discussed most of the existing techniques which are aimed at
reducing the associated overhead, service response time and improving performance of the
technique. Menasce et al. [5] discussed the concept of cloud computing, its pros, cons and
described several existing cloud computing platforms. Yan et al. [6] proposed a scheduling
algorithm. Their algorithm combined the capabilities of both OLB (Opportunistic Load
Balancing) [7] and LBMM (Load Balance Min-Min) [8] scheduling algorithms, and is
comparatively more efficient. In [9], idea is to find the best cloud resource while considering Cooperative Power aware Scheduled Load Balancing, solution to the Cloud load balancing
challenge. In PALB [10] approach, the utilization percentages of each compute node is
estimated. This helps in deciding the number of compute nodes which must keep operating while
other node completely shuts down. The algorithm has three sections: Balancing section, Upscale
section and Downscale section. Calvo et al. [11] have discussed on managing large image
collections in companies and institutions. Load balancing techniques should be such as to obtain
measurable improvements in resource utilization and availability of resources in the cloud
computing environment [12]. Iosup et al. [13] had analyzed the performance of cloud computing
services for scientific computing workloads and quantified the presence in the real scientific
computing workloads of Many-Task Computing (MTC) users. Sethi et al. [14] proposed a load
balancing algorithm using fuzzy logic in a cloud computing environment. This algorithm uses
two parameters processor speed and assigned a load of virtual machine, to balance the overall
load through fuzzy logic, although in [15], the authors have introduced a new fuzzy logic based
dynamic load balancing algorithm with additional parameters- memory usage, bandwidth usage,
disk space usage and virtual machine status and named it as Fuzzy Active Monitoring Load
Balancer (FAMLB). Sokile et al. [16] have discussed different load balancing techniques in a
distributed environment, namely diffusive load, static, round robin and shortest queue in
different client environments. Deshmukh A. et al. [17], discussed on different load balancing
strategies, algorithms and methods. The research also shows that the dynamic load balancing is
more efficient than other static load balancing techniques. Efficient load balancing can clearly
give major performance benefits [18]. In this paper, the author has first proposed an Ordered
Round Robin (ORR) scheme to schedule packets in a heterogeneous network processor,
assuming that the workload is perfectly divisible. The processed loads from the processors are
perfectly ordered. This paper analyzes the throughput and derives expressions for the batch size,
scheduling time and maximum number of schedulable processors. Kaur J. [19] has discussed
active VM load balancer algorithm to find a suitable virtual machine in less time period. Zhang
B. et al. [20], proposed an algorithm which adds capacity to the dynamic balance mechanism for
the cloud. The experiments demonstrate that the algorithm has obtained a better load balancing
degree and used less time in loading all tasks. Ray S. et al.[21] have discussed various algorithms
of load balancing like Round robin algorithm, Central queuing algorithm and Randomized
algorithm, their analysis is carried out on MIPS vs. VM and MIPS vs. HOST basis.
R S. Publication, rspublicationhouse@gmail.com
Page 68
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
COMPARISONS OF EXISTING LOAD BALANCING TECHNIQUES:
A comparison has been shown in the following Table 1 and Table 2 for different load balancing
algorithms based on various metrics / techniques such as throughput, overhead means to message
traffic while communicating, Fault Tolerance, Migration Time, Response time, Resource
utilization, Scalability and performance etc.
Table 1: Comparison of Existing Load Balancing
Metrics/Techniques
Throughput
Overhead
Fault
Tolerance
Migration
Time
Response
Time
Resource
Utilization
Scalability
Performance
Steadiness
Round Robin
Yes
Yes
No
No
Yes
Yes
Yes
Yes
Stable
Yes
Yes
Yes
Yes
No
Yes
No
No
Unstable
PALB
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Stable
Active Monitoring
Yes
Yes
No
Yes
Yes
Yes
Yes
No
-
FAMLB
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Stable
Min-Min
Yes
Yes
No
No
Yes
Yes
No
Yes
-
Max-Min
Yes
Yes
No
No
Yes
Yes
No
Yes
-
OLB+LBMM
No
No
No
No
No
Yes
No
Yes
Stable
Throttled
No
No
Yes
Yes
Yes
Yes
Yes
Yes
-
Honey bee Foraging
No
No
No
No
No
Yes
No
No
Stable
Active Clustering
No
Yes
No
Yes
No
Yes
No
No
Unstable
Biased
sampling
No
Yes
No
No
No
Yes
No
Yes
Stable
Dynamic
Robin
Round
Random
R S. Publication, rspublicationhouse@gmail.com
Page 69
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
Table 1: Comparison with different metric
Algorithm/Metric
Agent based
Fault tolerant
Dynamic LB
approaches
Optimal
algorithm
for LB
neighbor
in cloud
LB
Communication overhead
More
More
Less
Makespan
Less
Average
More
Load balancing time
Less
Less
More
Scalability
Scalable
Scalable
Scalable
Average resource
Average
Improved
More
Fault tolerance
Integrated
Very high
Integrated
Reliability
Integrated
High
Integrated
utilization rate
CONCLUSION
The paper focused on survey of the existing load balancing algorithm and its various metrics.
The main objective is to improve the performance of the system with less response time,
throughput, scalability, resource utilization etc for load balancing algorithm. In future, we will
work on the idle resources which will be utilized properly by the use of Honey bee and Genetic
Algorithm on the basis of decision based policy. Hence this paper will help smart researchers to
provide more secured optimal load balancing algorithms and strengthen the cloud computing
paradigm.
R S. Publication, rspublicationhouse@gmail.com
Page 70
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
REFERENCE
[1]. L. Wang, J. Tao, M. Kunze,”Scientific Cloud Computing: Early Definition and Experience”,
the 10th IEEE Conference on High Performance Computing and Communications, pp. 825–830,
September 2008.
[2]. D. Escalnte, Andrew J. Korty, “Cloud Services: Policy and Assessment”, Educause review,
vol 46, no. 4, 2011.
[3] A. Khiyaita, M. Zbakh, H. El Bakkali, and D. El Kettani, “Load balancing cloud computing:
state of art,” in Network Security and Systems, proc of 2012 National Days of Network Security
and Systems, IEEE, 2012, pp. 106–109.
[4] N. J. Kansal and I. Chana, “Existing load balancing techniques in cloud computing: A
systematic review.,” Journal of Information Systems & Communication, vol. 3, no. 1, pp. 87-91,
2012.
[5] D. A. Menasce and P. Ngo, “Understanding cloud computing: Experimentation and capacity
planning,” in Computer Measurement Group Conference, 2009.
[6] S.-C. Wang, K.-Q. Yan, W.-P. Liao, and S.-S. Wang, “Towards a load balancing in a threelevel cloud computing network,” IEEE, vol. 1, pp. 108–113, 2010.
[7] T. D. Braun, H. J. Siegel, N. Beck, L. L. Boloni, M. Maheswaran, A. I. Reuther, J. P.
Robertson, M. D. Theys, B. Yao, D. Hensgen, “A comparison of eleven static heuristics for
mapping a class of independent tasks onto heterogeneous distributed computing systems,”
Journal of Parallel and Distributed computing, vol. 61, no. 6, pp. 2669–2677, 2001.
[8] T. Kokilavani and D. Amalarethinam, “Load balanced min-min algorithm for static meta-task
scheduling in grid computing.,” International Journal of Computer Applications, vol. 20, no. 2,
2011,pp 24-31.
[9] T. Anandharajan and M. Bhagyaveni, “Co-operative scheduled energy aware load-balancing
technique for an efficient computational cloud.,” International Journal of Computer Science vol.
8, no. 2, 2011.
[10] J. M. Galloway, K. L. Smith, and S. S. Vrbsky, “Power aware load balancing for cloud
computing,” in Proceedings of the World Congress on Engineering and Computer Science, vol.
1, pp. 19–21, 2011.
[11] R. Alonso-Calvo, J. Crespo, M. Garcia-Remesal, A. Anguita, and V. Maojo, “On
distributing load incloud computing: A real application for very-large image datasets,” Procedia
Computer Science,vol. 1, no. 1, pp. 2669–2677, 2010.
[12] Z. Chaczko,V. Mahadevan, S. Aslanzadeh, and C. Mcdermid, “Availability and load
balancing in cloud computing,” International Conference on Computer and Software Modeling,
Singapore, vol. 14, 2011.
[13] A. Iosup, S. Ostermann, M. N. Yigitbasi, R. Prodan, T. Fahringer, and D. H. Epema,
“Performance analysis of cloud computing services for many-tasks scientific computing,”
Parallel and Distributed Systems, IEEE Transactions on, vol. 22, no. 6, pp. 931–945, 2011.
[14] S. Sethi, A. Sahu, and S. K. Jena, “Efficient load balancing in cloud computing using fuzzy
logic,” Journal of Engineering, vol. 2, no. 7, pp. 65–71, 2012.
[15] Z. Nine, M. SQ, M. Azad, A. Kalam, S. Abdullah, and R. M. Rahman, “Fuzzy logic based
dynamic load balancing in virtualized data centers in Fuzzy Systems,” IEEE, 2013, pp. 1–7.
[16] M. E. Soklic, “Simulation of load balancing algorithms: a comparative study,” ACM
SIGCSE Bulletin, vol. 34, no. 4, , pp. 138–141, 2002.
R S. Publication, rspublicationhouse@gmail.com
Page 71
International Journal of Computer Application
Issue 4, Volume 6 (Nov.- Dec. 2014)
Available online on http://www.rspublication.com/ijca/ijca_index.htm
ISSN: 2250-1797
[17] A. P. Deshmukh and K. Pamu, “Applying load balancing: A dynamic approach,”
InternationalJournal of Computer Science Issues, vol. 2, no. 6, 2012.
[18] J. Yao, J. Guo, and L. N. Bhuyan, “Ordered round-robin: An efficient sequence preserving
packet scheduler,” Computers, IEEE Transactions on, vol. 57, no. 12, pp. 1690–1703, 2008.
[19] J. Kaur, “Comparison of load balancing algorithms in a cloud,” International Journal of
Engineering Research and Applications, vol. 2, no. 3, pp. 1169–173, 2012.
[20] Z. Bo, G. Ji, and A. Jieqing, “Cloud loading balance algorithm,” in Information Science and
Engineering, pp. 5001–5004, 2010.
[21] S. Ray and A. De Sarkar, “Execution analysis of load balancing algorithms in cloud
computing environment”, International Journal on Cloud Computing: Services & Architecture,
vol. 2, no. 5, 2012.
R S. Publication, rspublicationhouse@gmail.com
Page 72
Download