15. Background
• Load balancing.
• Type of load balancing.
• Static.
• Dynamic.
• Need of load balancing.
• Improving the performance.
• Maintaining the system stability.
• Quality of services.(QoS)
• Building fault tolerance.
16. Algorithm Survey from several Literature
• Proposed several load balancing algorithms
• Scheduling algorithms.
• Round Robin.
• FCFS.
• Soft computing based algorithms.
• Stochastic algorithm.[1]
• Genetic algorithm.[2]
• Ant colony optimization algorithm.[3]
18. Proposed work
• Our proposed algorithm.
• VM allocation optimization using Simulated annealing.
• Host Side optimization.
• Target.
• Balancing load of the virtual nodes and reducing Response Time(RT).
• Progress with the project.
• Using Cloud Sim simulated Data Centers, Virtual Machines, Cloudlets.
• Virtually distributed the load.
20. Proposed work
• Our next move.
• Migrating to Cloud Analyst and implementing our proposed
algorithm.
21. OUR WORK
• The two algorithms implemented are
1) ROUND ROBIN.
2)FCFS.
3)SIMULATED ANNEALING
22. • Round robin is the scheduling algorithm used by the CPU during
execution of the process.
• All processes in this algorithm are kept in the circular queue also
known as ready queue.
• By using this algorithm, CPU makes sure, time slices ( any natural
number ) are assigned to each process in equal portions and in
circular order
23. IMPLEMENTING ROUND ROBIN
public int getNextAvailableVm(){
currVm++;
if (currVm >= vmStatesList.size()){
currVm = 0;
}
allocatedVm(currVm);
return currVm;
}
26. First Come First Serve
• First come, first served (FCFS) is an operating system process
scheduling algorithm and a network routing management
mechanism.
• With first come, first served, what comes first is handled first.
• The next request in line will be executed once the one before it is
complete.
27. IMPLEMENTING FCFS
public int getNextAvailableVm() {
int temp=-1;
if(vmStatesList.size()>0) {
for (Iterator<Integer> itr = vmStatesList.keySet().iterator(); itr.hasNext();) {
temp = itr.next();
VirtualMachineState state = vmStatesList.get(temp);
if(state.equals(VirtualMachineState.AVAILABLE)){
allocatedVm(temp);
break;
}
}
}
return temp;
}
30. Simulated Annealing
• Simulated annealing (SA) is a probabilistic technique.
• VMs are assigned to have probability which tells availability ofVMs.
• Then using function call we checked highest probability and selected the
VM.
• Accordingly decremented the probability.
31. Implementation of Simulated Annealing
•Probability Data Structure
static float[][] anArrayOfFloats = new float[2][999999]; //probability array
•Implementation
private float getHighProbability(){
float high_probability = anArrayOfFloats[1][0];
for(int i = 1; i<vmStatesList.size(); i++) {
if(high_probability<anArrayOfFloats[1][i])
high_probability = anArrayOfFloats[1][i];
}
return high_probability;
}
33. COMPARISON STUDY
Algorithms Over All Response Time Data Center Processing Time
Avg(ms) Min(ms) Max(ms) Avg(ms) Min(ms) Max(ms)
Round Robin 300.06 237.06 369.12 0.34 0.02 0.61
FCFS 300.09 237.06 369.12 0.38 0.08 4.5
Simulated
Annealing
297.87 271.61 346.62 0.48 0.10 0.61
34. Checks
best Host
according
to Fitness
VM
requested
for Host
VM queue
Host 1
Host 2
.
.
.
Host n
Host Side Optimization
Data center
Host information
Request for Host
Info
Best Host
Request for
Host Request for Host
Best Host
Our proposed algorithm to optimize Host selection is Genetic Algorithm
35. References
[1] Avani Kansara, Ronak Patel et al. “AVarious Load BalancingTechniques and
Challenges in Cloud Computing – Survey ” International Journal for
Scientific Research & DevelopmentVol. 2, Issue 10, 2014 ISSN (online): 2321-
0613
[2] Dasgupta, Kousik et al. "A Genetic Algorithm (GA) Based Load Balancing
Strategy For Cloud Computing". ProcediaTechnology 10 (2013): 340-347. Web.
[3] Santanu Dam 1
, Gopa Mandal2
, Kousik Dasgupta3, Paramartha Dutta4 et al.
“An Ant Colony Based Load Balancing Strategy in Cloud Computing “.
Advanced Computing, Networking and InformaticsVolume 2
Smart Innovation, Systems andTechnologiesVolume 28, 2014, pp 403-413