International Journal of Computer Applications (0975 8887) Volume 69No.17, May 2013 22 Response Time Minimization of Different Load Balancing Algorithms in Cloud Computing Environment Soumya Ranjan Jena Asst. Professor M.I.E.T Dept of CSE Bhubaneswar Zulfikhar Ahmad Asst. Professor M.I.E.T Dept of CSE Bhubaneswar ABSTRACT In the vast complex world the emergence of cloud computing and its applications and uses in load balancing has been raised up to the maximum level. The number of users accessing this service is increasing drastically day by day. As the cloud is made up of datacenters; which are very much powerful to handle large numbers of users still then the essentiality of load balancing is vital. However load balancing is a technique of distributing the loads among various nodes of a distributed system to minimize the response time, minimize the cost, minimize the resource utilization, and minimize the overhead. The aim of this paper is to briefly discuss about various efficient and enhanced load balancing algorithms and experimentally verify how to minimize the response time and processing time through the tool called cloud analyst. Keywords Cloud computing, Load balancing, Round robin, Active monitoring, Throttled, Response time minimization, Cloud analyst. 1. INTRODUCTION Cloud computing is a distributed computing paradigm that focuses on providing a wide range of users with distributed access to scalable, virtualized hardware and/or software infrastructure over the internet. Potentially it can make the new idea of „computing as a utility‟ which is nothing but the "packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility. In the whole, cloud computing provides us the attracting conventional services like [1]: Software as a Service (SAAS) where end users can avail software or services provided by SAAS without purchasing and maintaining overhead, Platform as a Service (PAAS) where end users can run and deploy their applications more easily which includes operating system support and software development and last but not the list Infrastructure as a Service (IAAS) which demands provisioning of infrastructural resources, usually in terms of virtual machines. Despite this technical definition cloud computing is in essence an economic model for a different way to acquire and manage IT resources. An organization needs to weigh cost, benefits and risks of cloud computing in determining whether to adopt it as an IT strategy. The availability of advance processors and communication technology has resulted the use of interconnected, multiple hosts instead of single high-speed processor which incurs cloud computing. Apart from these features, there are different metrics for cloud computing. These are fault tolerance, availability, scalability, flexibility, reduced overhead for users, performance, on demand services etc. Central to these issues lies the establishment of an effective load balancing algorithm [2].The load can be CPU load, memory capacity, delay or network load. Load balancing is just like a job scheduling problem and it is related to distributing the load among various resources in any system. Thus load need to be distributed over the resources in cloud-based architecture, so that each resources does approximately equal amount of task at any point of time. 2. PROBLEM DEFINITION Load balancing in cloud computing is the scheduling of different tasks of jobs which are expected to be executed over different datacenters [3]. This distribution should give assurance to the minimum execution time of the overall tasks. Formally the problem can be stated as follows: Let there are n set of jobs or requests to be scheduled given as: Jobs= {J 1 , J 2 , ………...., J i ,………., J n } For each job J i we have a set of m partitions of tasks sharing among m numbers of cloud datacenters (DCs) in order to be executed: Job i Tasks = {JTaski1 , JTaski2, JTaski3,……... JTaskim} Hence, each cloud datacenter can carry out a disjoint subset of the decomposed jobs set. Each datacenter DCj runs its assigned tasks as follows: DCjTasks = { JTaskaj , JTaskbj, JTaskcj,………., JTaskrj}. Hence the overall disjoint and ordered subsets DCjTasks‟ are equal to the various jobs. 3. EXISTING LOAD BALANCING ALGORITHMS This section discusses the three fundamental, efficient and enhanced load balancing algorithms i.e. Round robin load balancing, Active monitoring load balancing and Throttled load balancing. 3.1 Round Robin Load Balancing The name of this algorithm suggests that it works in round robin manner [4]. When the Data Center Controller gets a request from a client it notifies the round robin load balancer to allocate a new virtual machine (VM) for processing. Round robin load balancer (RRLB) picks a VM randomly from the group and returns the VM id to Data Center Controller for processing. In this way the subsequent requests are processed in a circular order. However there is a better allocation policy called weighted round robin balancer [5] in which we can assign a weight to each VM so that if one VM is capable of