Professional Documents
Culture Documents
Web Site: www.ijettcs.org Email: editor@ijettcs.org, editorijettcs@gmail.com Volume 3, Issue 1, January February 2014 ISSN 2278-6856
Design and implementation of an Efficient Scheduling algorithm for load balancing in Cloud Computing
1
Assistant Professor, Global Institute of Management, Amritsar 2 Assistant Professor, BCET, Gurdaspur 3 Associate Professor, BCET, Gurdaspur
Abstract:
Internet is the basic need in every segment of life. Due to wide use of internet services, load increases on servers. There is need of load balancing algorithms that can improve the performance of servers. Load balancing is a technique to distribute load across one or more servers, hard disks or other computing resources. Work has been done on homogenous kind of load balancing algorithms. But due to increase of diversification of resources in the cloud resources, there is need to work on heterogeneous kind of load balancing algorithms. The objective of this paper is to develop a new heterogeneous load balancing algorithms that can easily distribute the load across number of servers.
Computing, one important application is workload shift. In this application local computers have no work to do, when an application is running. The computers that are connected in the network handle all the workload.
1. INTRODUCTION
Around one hundred and fifty years ago, business ran their day to day operations completely different from what business of the modern era do to run their day to day operations. Now, most of the civilized world would not know what to do with themselves without technology. Improvements in IT improve our lifestyles and business by allowing computers to reduce complications and enrich possibilities [2]. Cloud Computing provides an interface with the help of which a user can log in to a web based service and can accomplish his job very easily by using internet connection. Cloud Computing provides a service oriented architecture infrastructure that provide so many facilities to the user as IT resources, Dynamic service management, scaling and workload distribution. But even there are some disadvantages of using Cloud Computing, as user store their important data on Cloud, so users demand is, their data should be in safe hands. So the security is the main concern for people who are using Cloud Computing [3]. Cloud Computing is always in demand, when you think about what IT always needs: provide an infrastructure without much investment, training new personnel, or licensing new software. Cloud Computing is a concept where a number of computers are connected through a network [5]. Cloud Computing works on per-use module, it means you will pay to service provider as per your usage. Now these days, Industry and Academia basically totally based on Cloud Computing [4]. In Cloud Volume 3, Issue 1 January February 2014 Cloud Computing Framework Service Models: Following are the three basic service models used for Cloud Computing. Software as a service Software-as-a-Service (SaaS): Saas is a new model, which tells how software is delivered. In this service model, we access the software by using web browser and cost is paid on a subscription basis. As in other models, if a user wants to use software, he has to buy the license of the software. In this way Saas provides pay per use service to the customer. This model is faster and cost effective. Customers do not need to spend money on hardware, implementation or acquisition to run the application. Its the responsibility of the service provider to manage and run the application with security, reliability and performance. Saas can be used by Windows, Linux or Mac users, providing platform independence over the internet. Platform as a Service Platform-as-a-Service (PaaS): Paas is one of the category of Cloud Computing services that facilitate with computing platform and a solution stack as a service. Paas providing a service of deployment of applications without the cost and complexity of buying and managing the underlying hardware and software. Paas providing services to the customer as application design, application development, testing and deployment, also facilitate team collaboration, web service integration, security, scalability. Page 106
Infrastructure as a Service Infrastructure-as-a-Service (IaaS): In case of Iaas, service providers provide computers-physical or virtual machines and other resources. Iaas also facilitate additional resources such as virtual-machines desk image library, raw and file-based storage, firewalls, load balancers, IP addresses and software bundles. Examples of Iaas providers include: -Amazon EC2, Azure Services Platform, Google Compute Engine etc.
2. Load Balancing
Load balancing is the process of improving the performance of distributed and parallel computing with the help of distribution of load among the processors or nodes. As the use of the web increasing day by day, with this there is need to increase the requirement for load balancing. The introduction of E-Commerce has lead many businesses to carry out the most of their day-to-day business online. As a result of the increase in demand of the web, web sites providers want to ensure the availability of access for their users and make sure that their requests are processed as quickly as possible.
AND
new VM from the DataCenterController arrives, with the help of maintained data structure, it returns the most powerful VM, next in order which is currently not allocated/busy. Proposed Algorithm returns the VM id to the DataCenterController. The DataCenterController sends the request to the VM identified by that id. DataCenterController notifies the Proposed Algorithm of the new allocation. Proposed Algorithm updates the datastructure increasing the allocation count for that VM and adding the new allocation to the busy-list. When the VM finishes processing the request and the DataCenterController receives the response cloudlet, it notifies the Proposed Algorithm of the VM de-allocation and the particular VM is removed from the busy-list. In the same way, the above mentioned criteria is followed by Proposed Algorithm.
CONCLUSION
A scheduling algorithm needs to be tested in these three areas: allocation time, responsiveness, and efficiency. Our algorithm is more responsive in critical situations also as number of requests increases, size increases, traffic increases etc. Our algorithm works much better in the efficiency area in order to be successful in the fairness and responsiveness areas. The purposed algorithm implements the advantages of both the round robin and least connection algorithms. CPU processing time is also impressive as compare to other load balancing algorithms. Our algorithm works in heterogeneous environment so it is more scalable as than that of other algorithms.
PROPOSED ALGORITHM 1 BEGIN 2 CREATE VMs with different COMPUTING POWERS 3 FOR Vvm I to In of VMS DO 4 Assign Fflag=0, Rreq =0 5 Arrange the (I1, , In) index as per RAM (Mmem) of VMS in descending order 6 FOR Vvm I to In 7 Capacity Ccap= Mmem /512 8 IF Fflag==0 THEN 9 ALLOCATE the request 10 Rreq++ 10 If Rreq <Ccap THEN 11 GOTO STEP 9 12 ELSE 13 Assign Fflag =1 14 GOTO STEP 7 At the first stage, create VM's of different Datacenter according to computing power of host/physical server in terms of its core processor, processing speed, memory, storage etc. Then allocate weighted count according to the RAM allocated to the VM's in the datacenter.VM with RAM 2048 will handle four times as much task as a VM with 512 RAM. Proposed Algorithm maintains the VM sequence sorted in descending order of their RAM. VMs with RAM 2048 are placed before VMs with RAM 1024.So when the request arrives, VM with higher RAM is given the task with the condition that it is currently not busy. Otherwise VM next in order satisfying the same condition is returned. It also maintains a data structure that contains the associated weight count and the number of requests currently allocated to the VM. At start all VM's have 0 allocations. When a request to allocate a Volume 3, Issue 1 January February 2014
References /Bibliography
[1] Qi Zhang, Lu Cheng, Raouf Boutaba; Cloud computing: state-of-art- and research challenges; Published online: 20th April 2010, Copyright : The Brazillian Computer Society 2010. [2] Michael Armbrust, Armando Fox, Rean Griffith, Anthony D.Joseph, Randy Katz; Above the Clouds: A Berkeley View of Cloud Computing; The Regents of the University of California, 2009 [3] Christ of Weinhardt, Benjamin Blau, Jochen Stober; Cloud Computing- A Classification, Business Models, And Research Directions, Business and Information System Engineering. Vol 5. 2009, Pg 391-399 [4] Rodrigo N.Calheiros, Rajiv Ranjan, Cesar A. F. De Rose, and Rajkumar Buyya; CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services, Grid Computing and Distributed Systems (GRIDS) Laboratory, Dept. of Computer Science and Software Engineering, The University of Melbourne, Austrailia; Pontificial Catholic University of Rio Grande do Sul Porto Alegre, Brazil. Page 108
AMRITPAL SINGH is a student of M.Tech (CSE) at BCET, Gurdaspur, did his graduation in Information technology from BCET, Gurdaspur. His current research area of interest is Cloud Computing.
RAJEEV KUMAR BEDI is an Assistant Professor in the Department of Computer Science & Engineering at BCET, Gurdaspur. His current research area of interest is cloud computing.
Page 109