Load Balancing and It’s Related Works in Cloud Computing

Slides:



Advertisements
Similar presentations
Ch. 12 Routing in Switched Networks
Advertisements

Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
Hadi Goudarzi and Massoud Pedram
Scheduling in Distributed Systems Gurmeet Singh CS 599 Lecture.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
SLA-Oriented Resource Provisioning for Cloud Computing
CSE 522 Real-Time Scheduling (4)
Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks By C. K. Toh.
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
A system Performance Model Instructor: Dr. Yanqing Zhang Presented by: Rajapaksage Jayampthi S.
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale 4th IEEE International Conference.
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
GridFlow: Workflow Management for Grid Computing Kavita Shinde.
Operating Systems 1 K. Salah Module 2.1: CPU Scheduling Scheduling Types Scheduling Criteria Scheduling Algorithms Performance Evaluation.
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
Grid Load Balancing Scheduling Algorithm Based on Statistics Thinking The 9th International Conference for Young Computer Scientists Bin Lu, Hongbin Zhang.
Algorithms for Self-Organization and Adaptive Service Placement in Dynamic Distributed Systems Artur Andrzejak, Sven Graupner,Vadim Kotov, Holger Trinks.
 Scheduling  Linux Scheduling  Linux Scheduling Policy  Classification Of Processes In Linux  Linux Scheduling Classes  Process States In Linux.
Department of Computer Science Engineering SRM University
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
Power Distribution and Redistribution of Workloads in Cloud Computing Facilities Cornell Wilson.
1 Distributed Process Scheduling: A System Performance Model Vijay Jain CSc 8320, Spring 2007.
Kevin Ross, UCSC, September Service Network Engineering Resource Allocation and Optimization Kevin Ross Information Systems & Technology Management.
A Survey of Distributed Task Schedulers Kei Takahashi (M1)
April 26, CSE8380 Parallel and Distributed Processing Presentation Hong Yue Department of Computer Science & Engineering Southern Methodist University.
3.1 : Resource Management Part2 :Processor Management.
Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter
Robustness of complex networks with the local protection strategy against cascading failures Jianwei Wang Adviser: Frank,Yeong-Sung Lin Present by Wayne.
An Energy-efficient Task Scheduler for Multi-core Platforms with per-core DVFS Based on Task Characteristics Ching-Chi Lin Institute of Information Science,
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
Static Process Scheduling
Efficient Load Balancing Algorithm for Cloud Computing Network Che-Lun Hung 1, Hsiao-hsi Wang 2 and Yu-Chen Hu 2 1 Dept. of Computer Science & Communication.
A Two-phase Execution Engine of Reduce Tasks In Hadoop MapReduce XiaohongZhang*GuoweiWang* ZijingYang*YangDing School of Computer Science and Technology.
A Bandwidth Scheduling Algorithm Based on Minimum Interference Traffic in Mesh Mode Xu-Yajing, Li-ZhiTao, Zhong-XiuFang and Xu-HuiMin International Conference.
Euro-Par, HASTE: An Adaptive Middleware for Supporting Time-Critical Event Handling in Distributed Environments ICAC 2008 Conference June 2 nd,
Pradeep Konduri Static Process Scheduling:  Proceedance process model  Communication system model  Application  Dicussion.
William Stallings Data and Computer Communications
Md Baitul Al Sadi, Isaac J. Cushman, Lei Chen, Rami J. Haddad
lecture 5: CPU Scheduling
Tao Zhu1,2, Chengchun Shu1, Haiyan Yu1
Dynamic Graph Partitioning Algorithm
A Dynamic Critical Path Algorithm for Scheduling Scientific Workflow Applications on Global Grids e-Science IEEE 2007 Report: Wei-Cheng Lee
Efficient Load Balancing Algorithm for Cloud
Process Scheduling B.Ramamurthy 9/16/2018.
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
Chapter 5: CPU Scheduling
Distributed Process Scheduling: 5.1 A System Performance Model
OverView of Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
TDC 311 Process Scheduling.
Operating systems Process scheduling.
CSE8380 Parallel and Distributed Processing Presentation
COT 4600 Operating Systems Spring 2011
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Chapter 6: CPU Scheduling
Lecture 2 Part 3 CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: Scheduling Algorithms Dr. Amjad Ali
Chapter 6: CPU Scheduling
CPU Scheduling.
Module 5: CPU Scheduling
Chapter 5: CPU Scheduling
Presentation transcript:

Load Balancing and It’s Related Works in Cloud Computing Ranjan Kumar Mondal Under the Supervision of Debabrata sarddar Assistant Professor, Dept. of CSE, University of Kalyani Department of Computer Science and Engineering August 10, 2015 Cloud Computing is a concept of distributed computing in which one has the ability to run an application on many connected systems at the same time. In a cloud based environment, where requests for services and platforms can be arrived at variable time periods, so it is necessary to balance the load on the systems.

Introduction A process of distributing processing. It is important for networks. Busy web sites typically employ two or more web servers in a load balancing scheme. If one server starts to get swamped, requests are forwarded to another server with more capacity. Load balancing is the process of reassigning the total load to the individual nodes of the collective system to make effective resource utilization and to improve the response time of the jobs, simultaneously removing a condition in which some of the nodes are over loaded while some others are under loaded. where it is difficult to predict the number of requests that will be issued to a server.

The Goals of Load Balancing: To increase the performance significantly. To have a backup facility if the system fails even partially. To preserve the system constancy. To provide stability against changes to the system. Thus load balancing aims at optimizing resource use, maximize throughput, minimize response time and avoid overloading of any one of the resources. . Efficient algorithms are thus needed to ensure the even distribution of load on servers.

Kinds of Load Balance Algorithms Static load balancing: It doesn’t depend around the previous state of system. Dynamic load balancing : Decisions on load balancing depend on previous state of your system. A static load balancing algorithm does not take into account the previous state or behavior of a node while distributing the load. On the other hand, a dynamic load balancing algorithm checks the previous state of a node while distributing the load.

Round Robin Load Balancing It selects the first node randomly Processors are assigned to each process in a circular order without any sort of priority. Samal et al. "Analysis of variants in Round Robin Algorithms for load balancing in Cloud Computing." International Journal of computer science and Information Technologies 4.3 (2013): 416-419. This algorithm uses the round robin scheme for allocating jobs. It selects the first node randomly and then, allocates jobs to all other nodes in a round robin fashion. Processors are assigned to each process in a circular order without any sort of priority.

Opportunistic Load Balancing Attempts to keep each node busy. Dispatches unexecuted tasks to currently available nodes in random order, Provides load balance schedule but it results in very poor make-span. Younis at el. "Efficient Load Balancing Algorithm in Cloud Computing." (2015). This algorithm attempts to keep each node busy. Therefore it does not consider the present workload of each computer. OLB dispatches unexecuted tasks to currently available nodes in random order, regardless of the node’s current workload. Each job is assigned to the node in an arbitrary order.

Min Min Load Balancing To begin with a set of all unassigned tasks. The minimum value is selected This algorithm achieves better performance. This approach has a drawback that is, it can lead to starvation. Min-Min algorithm starts with a set of all unmapped tasks. The machine that has the minimum completion time for all jobs is selected. Then the job with the overall minimum completion time is selected and mapped to that resource. The ready time of the resource is updated. This process is repeated until all the unmapped tasks are assigned. Compared to MCT this algorithm considers all jobs at a time. So it produces a better makespan. Kokilavani at el. “Load Balanced Min-Min Algorithm for Static Meta-Task Scheduling in Grid Computing”, International Journal of Computer Applications (0975 –8887) Volume 20– No.2, April 2011.

Example: Execution Time of Tasks Tasks R1 R2 T1 7 2 T2 11 3 T3 12 T4 6

Max Min Load Balancing Max Min is similar to the Min Min algorithm The maximum value is selected The idea of this algorithm is to reduce the wait time of the large jobs. Max-Min is similar to Min-Min algorithm. The machine that has the minimum completion time for all jobs is selected. Then the job with the overall maximum completion time is selected and mapped to that resource. The ready time of the resource is updated. This process is repeated until all the unmapped tasks are assigned. The idea of this algorithm is to reduce the wait time of the large jobs. Bhoi et al. “Enhanced Max-min Task Scheduling Algorithm in Cloud Computing” International Journal of Application or Innovation in Engineering & Management (IJAIEM), Volume 2, Issue 4, April 2013.

Example Completion time of the tasks on each of the resources Task / Resource R1 R2 T1 2 6 T2 1 3 T3 8 T4 4

LBMM The algorithm starts by executing the steps in Min-Min strategy first. It first identifies the task having minimum execution time and the resource producing it. Thus the task with minimum execution time is scheduled first in Min-Min. It considers the minimum completion time since some resources are scheduled with some tasks. Since Min-Min chooses the smallest tasks first it loads the fast executing resource more which leaves the other resources idle. To produce a good makespan compared to other algorithms. Kokilavani et al. "Load balanced min-min algorithm for static meta-task scheduling in grid computing." International Journal of Computer Applications 20.2 (2011): 43-49. Our proposed grid scheduling algorithm, LBMM, is presented in Figure 1. The algorithm starts by executing the steps in Min-Min strategy first. It first identifies the task having minimum execution time and the resource producing it. Thus the task with minimum execution time is scheduled first in Min-Min. After that it considers the minimum completion time since some resources are scheduled with some tasks. Since Min-Min chooses the smallest tasks first it loads the fast executing resource more which leaves the other resources idle. But it is simple and produces a good makespan compared to other algorithms.

Example: Tasks R1 R2 T1 7 2 T2 11 3 T3 12 T4 6

Two-phase scheduling It is just a Three-level Cloud Computing Network environment. Uses Opportunistic Load Balancing to keep each node busy and uses Load Balance Min-Min to achieve the minimum execution time of every task. Efficient usage of resources. Enhances work efficiency Wang et al, “Towards a Load Balancing in a Three-level Cloud Computing Network”, Proceedings of the 3rd IEEE International Conference on Computer Science and Information Technology (ICCSIT), Chengdu, China, September 2010, pages 108-113.

Example: EXECUTION TIME OF EACH SUBTASK WITHIN TASK AAT DIFFERENT SERVICE NODE BEFORE DISPATCHING (FIRST)

Active Clustering Working on the principle of grouping similar nodes together and working on these groups. A node initiates the process and selects another node from its neighbors. The matchmaker node forms a connection between one of its neighbors. Performs better with high resources. Utilizes the increased system resources to improve throughput. Eriksson et al. "Active clustering: Robust and efficient hierarchical clustering using adaptively selected similarities." arXiv preprint arXiv:1102.3887 (2011). Active Clustering works on the principle of grouping similar nodes together and working on these groups. A node initiates the process and selects another node called the matchmaker node from its neighbors satisfying the criteria that it should be of a different type than the former one. The so called matchmaker node then forms a connection between one of its neighbors which is of the same type as the initial node. The matchmaker node then detaches the connection between itself and the initial node. The above set of processes is followed iteratively.  It is really a large scale Cloud systems environment.  Optimizes job assignment by connecting similar services by local re-wiring.  Performs better with high resources.  Utilizes the increased system resources to improve throughput.  Degrades as system diversity increases.

Conclusion Load balancing in the cloud computing environment is required to distribute the excess workload to all the nodes in the Cloud to achieve better resource utilization and ensure that every computing resource is distributed efficiently and fairly. Some of the existing Load Balancing techniques have been discussed in this paper. The load balancing algorithms were first classified as static and dynamic. Various algorithms under each class along with their variations were also studied.

References Samal, Pooja, and Pranati Mishra. "Analysis of variants in Round Robin Algorithms for load balancing in Cloud Computing." International Journal of computer science and Information Technologies 4.3 (2013): 416-419. Younis, Hafiz Jabr, Supervised By, and Alaa El Halees. "Efficient Load Balancing Algorithm in Cloud Computing." (2015). Kokilavani, T., and Dr DI George Amalarethinam. "Load balanced min-min algorithm for static meta-task scheduling in grid computing." International Journal of Computer Applications 20.2 (2011): 43-49. Bhoi, Upendra, and Purvi N. Ramanuj. "Enhanced Max-min task scheduling algorithm in cloud computing." International Journal of Application or Innovation in Engineering and Management (IJAIEM) (2013): 259-264. Wang, Shu-Ching, et al. "Towards a load balancing in a three-level cloud computing network." Computer Science and Information Technology (ICCSIT), 2010 3rd IEEE International Conference on. Vol. 1. IEEE, 2010. Eriksson, Brian, et al. "Active clustering: Robust and efficient hierarchical clustering using adaptively selected similarities." arXiv preprint arXiv:1102.3887 (2011).

Thank You…