International Journal of Computer Engineering & Technology (IJCET) Volume 8, Issue 6, Nov-Dec 2017, pp. 54 59, Article ID: IJCET_08_06_006 Available online at http://www.iaeme.com/ijcet/issues.asp?jtype=ijcet&vtype=8&itype=6 Journal Impact Factor (2016): 9.3590(Calculated by GISI) www.jifactor.com ISSN Print: 0976-6367 and ISSN Online: 0976 6375 IAEME Publication LOAD BALANCING IN CLOUD COMPUTING USING ANT COLONY OPTIMIZATION Acharya Mitali Nilesh CE Department, Government Engineering College, Modasa, Modasa, Gujarat Prof. Chirag A. Patel IT Department, Vishwakarma Government Engineering College, Ahmedabad, Gujarat ABSTRACT In cloud computing, several resources are available which process incoming requests. Because of random appearance of requests for task execution several virtual machines are overloaded and several virtual machines are under loaded or idle for task processing. We can improve the performance by making sure all the resources available in the cloud are utilized using a good load balancing policy. Cloud Load Balancing is an NP-hard problem and many meta-heuristic algorithms have been proposed to solve it. In this paper, a cloud load balancing policy Ant Colony Optimization (ACO) inspired by Ant Systems is introduced. The aim is to reduce the makespan of a given tasks. ACO algorithm has been simulated using Cloudsim toolkit. Results show that Cloud Load Balancing based on ACO performs better. Key words: Ant Colony Optimization (ACO), Cloud Computing, Cloudsim, Load balancing, Makespan, Task scheduling. Cite this Article: Acharya Mitali Nilesh and Chirag A. Patel, Load Balancing in Cloud Computing Using ant Colony Optimization. International Journal of Computer Engineering & Technology, 8(6), 2017, pp. 54 59. http://www.iaeme.com/ijcet/issues.asp?jtype=ijcet&vtype=8&itype=6 1. INTRODUCTION Cloud Computing is newly emerging technique which offers online computing resources, storage and Infrastructure. The main characteristics of Cloud Computing are On-demand selfservice network access, Resource pooling, Rapid elasticity of service availability. The main four deployment models are: Private Cloud, Public Cloud Community Cloud and Hybrid Cloud. The three different service models present in cloud computing are: Infrastructure as a service (Iaas), Platform as a service (Paas), Software as a service (Saas). Load Balancing is main concern in Cloud Computing. Load balancing has always been a concern in Cloud Computing. In cloud computing, sometimes scenarios arises in which a task is waiting for a service at the queue of one resource, while at the same time another resource which is capable http://www.iaeme.com/ijcet/index.asp 54 editor@iaeme.com
Load Balancing In Cloud Computing Using ant Colony Optimization of serving the task is idle. The purpose of a load balancing algorithm is to prevent these scenarios as much as possible [1]. Swarm intelligence techniques have proven to be very effective in solving Load Balancing problems. They give good solution for load balancing where we aim to minimize the load difference between the heaviest and lightest node. This paper proposes distributed swarm intelligence inspired scheduling and load balancing algorithm Ant Colony Optimization. (ACO). 2. LITERATURE REVIEW Ant Colony Algorithm (ACO) is proposed by Macro Dorigo and his colleagues in 1992. It is inspired from Real Ants. When searching for a food, Ant has proficiency to discover the path between nest and food. When ants search for a food, ant wanders randomly and in return trip they lay some chemical substances i.e. pheromone on the ground. All other ants can follow this pheromone while finding the path. The pheromone attracts all other ants so that the ants can follow the same path with the highest density of pheromone on the ground for searching the food and return to the nest. The ants reach to the food sources by following the pheromone trails. Indirect communication between the ants via pheromone trails enables them to find the shortest paths between their nest and food sources. In [2] the proposed technique is based on the ACO where the aim is to find the overload node in minimum time and to balance the load among nodes with maximum utilization of resources. In [3] an initial heuristic algorithm is applied to modify Ant Colony Optimization for service allocation and scheduling mechanism in cloud systems. This modification mechanism supports to minimize the Makespan of the cloud system services. In [4] proposes a cloud task scheduling policy based on Load Balancing Ant Colony Algorithm. This work proposes an approach to balance the entire system load while trying to minimizing the Makespan of a given tasks. In [5] ACO based approach is developed an effective load balancing algorithm to maximize or minimize different parameters. In [6] proposed a technique based on the ACO where redistribution of overloaded nodes done based on the Threshold value. If the load on current node is less than the threshold, ant will search among the available nodes. Here, ants will move in one direction only. 3. THE PROPOSED APPROACH In proposed approach the main procedure of load balancing with ACO consists of mainly three steps explained as below. 3.1. Ant Generation and Scheduling Tasks are submitted to the Cloud System and allocated by ant colony scheduling. Ants check the cloud platform periodically, collects the load information of the nodes and builds the solution based on the load information. 3.1.1. Initializing the pheromone The initial amount of pheromone is assumed to be a small positive constant τij(t) =0. http://www.iaeme.com/ijcet/index.asp 55 editor@iaeme.com
Acharya Mitali Nilesh and Chirag A. Patel 3.1.2. How Ants choose VMs During the wandering of the Ant, every ant build a solution by Ant computes the probability according to the formula (1) and selects the best VM to execute the task. i denotes for task, j denotes VMs and m is the number of Ants., =!" # %&&'()* 0 'h)-(!.) Where, / = pheromone density between task i and VM j at the time t. (1) %&&'()* * = 00,1,, 3 15 6!. 7 = 8, which calculates the expected execution time and transfer time of the task i on VM j can be calculated with equation (2). * = 9:_9 <_=>? <_?A _BC + E=A>FGH BC_I (2) Where, J6_J%.K = total length of the task that has been assigned to LM )_3NO = number of LM processors )_O!P. = MIPS of each processor of LM Q3PNR!&)S!T) = length of task before execution and LM_U( = communication bandwidth ability of LM. Parameters α and β are adaptive parameters. 3.1.3. Pheromone Updation After the completion of tour, each ant k lays a quantity of pheromone Δ/ computed by equation (3) on each edge (i, j) that it has used. Y X/!"!, # J = : 0!"!, # J (3) Where J = tour by ant k at iteration t, 6 = length that is computed by equation (4), Q = ACO parameter. 6 = %-[ O%\ ] 0.NO 9^* _5 (4) Where, T = the set of tasks assigned to the LM. After an ant completes its wandering pheromone updating is applied by Equation (5). / = 1 `/ + Δ/ (5) Where ` = decay, 0 < ` < 1 and Δ/ is calculated by formula (6).? Δ/ = c8 Δτ (6) When all ants complete the wandering, an ant finds the best tour found from the beginning of the trial (T + ), by a quantity Q/L +, where L + is the length of the best tour (T + ). This is called global pheromone update and computed by formula (7). http://www.iaeme.com/ijcet/index.asp 56 editor@iaeme.com
Load Balancing In Cloud Computing Using ant Colony Optimization / = / + Y : d!"!, # Je (7) 3.2. Grouping of VMs First of all we perform the grouping of VMs according to the load information. VMs are grouped in three categories: Under loaded VMs, Overloaded VMs and Balanced VMs. The purpose of grouping is to reduce the overhead of Ants to build the pheromone solution among tasks and VMs. 3.3. Load Balancing According to the searching rules and load information Ants calculates moving probability for each VM from UVM and OVM and chooses suitable VM for each task. Tasks are transferred to chosen destination VM. Figure 1 Flowchart of Ant Colony Load Balancing Algorithm http://www.iaeme.com/ijcet/index.asp 57 editor@iaeme.com
Acharya Mitali Nilesh and Chirag A. Patel 4. SIMULATION Cloudsim 3.0 is used as a simulation tool. The simulation is implemented in following scenario: The tasks to be executed are independent to each other. Tasks are of different computational sizes. The length of each task is presented in Millions of Instructions (MI). First, we carried out experiments on 20 tasks and 7 VMs. The parameter settings of cloud simulator are shown in Table I. Table I Parameters Setting of CloudSim. Type of Entity Parameters Values Task Length of task 1000-20000 (MI) (cloudlet) Total Num of Task 20 Total Number of VMs 7 MIPS 500-2000 VM memory 256-2048 Virtual Bandwidth 70-100 Machine Cloudlet scheduler Modified greedy approach Number Of PEs Requirement 1-4 Number of datacenter 1 Datacenter Number of Host 2-6 Vmscheduler Space_shared and Time_share Table II shows selected parameters of ACO taken into experiments for simulation. Table II Parameters Setting of CloudSim. Parameter Αlpha Beta Rho Q M t max Value.2 1.4 100 8 100 5. CONCLUSION In this paper, we have investigated and studied the use of swarm intelligence technique Ant Colony Optimization (ACO). We have taken inspiration from ant colony systems for designing an approach of load balancing in cloud systems. The approach introduced in this work is based on Ant colony optimization. We have simulated proposed ACO algorithm using Cloudsim. We compared performance of the algorithm with Basic ACO. The Results shows that the proposed algorithm can perform well for load balancing jobs in cloud. To summarize, this paper introduces swarm intelligence technique Ant colony optimization for scheduling and load balancing and shows its benefits in distributed and dynamic load balancing domain. http://www.iaeme.com/ijcet/index.asp 58 editor@iaeme.com
Load Balancing In Cloud Computing Using ant Colony Optimization REFERENCES [1] Y. Li and Z. Lan, A Survey of Load Balancing in Grid Computing, Springer Berlin, Heidelberg, 2005. [2] Shagufta khan, Niresh Sharma, Effective Scheduling Algorithm for Load balancing using Ant Colony Optimization in Cloud Computing. International Journal of Advanced Research in Computer Science and Software Engineering, Volume 4, Issue 2, February 2014. [3] Soumya Banerjee, Indrajit Mukherjee, and P.K. Mahanti, Cloud computing initiative using modified ACO framework, World Academy of Science, Engineering and Technology Vol:3 2009-08-27. [4] Kun Li, Gaochao Xu, Guangyu Zhao, Yushuang Dong, Dan Wang, Cloud Task scheduling based on Load Balancing Ant Colony Optimization, 2011 Sixth Annual ChinaGrid Conference, 2011 IEEE. [5] Ratan Mishra, Anant Jaiswal, Ant colony Optimization: A Solution of Load balancing in Cloud, International Journal of Web & Semantic Technology (IJWesT) Vol.3, No.2, April 2012. [6] N. A. Joshi, Dynamic Load Balancing In Cloud Computing Environments, Volume 5, Issue 10, October (2014), pp. 201-205, International Journal of Advanced Research in Engineering and Technology (IJARET) [7] Ekta Gupta et.al, A Technique Based on Ant Colony Optimization for Load Balancing in Cloud Data Center, 13th International Conference on Information Technology, 2014 IEEE. http://www.iaeme.com/ijcet/index.asp 59 editor@iaeme.com