Abstract
Cloud computing is the ubiquitous on demand service that has brought remarkable revolution in the commercialization of High Performance Computing (HPC) [1]. Quality of Service (QoS) is the vital factor that always seeks high attention. Efficient Resource allocation and management techniques along with advance load balancing approaches make a bigger difference in terms of total system throughput. Several frameworks and algorithmic approaches are proposed in these areas to improve the throughput. Cloudlets are the tasks formed as the requirements of cloud users and submitted to the Local Queues (LQ) of Virtual Machines (VM) by the Datacenter Broker (DCB) to be processed. In this paper the main focus is given to this cloudlet scheduling policy which is nothing but an enhancement of the existing Improved Round Robin Cloudlet Scheduling Algorithm (IRRCSA) and Round Robin Algorithm (RRA). CloudSim 3.0.3 is used to implant the modelling and several parameters like Context Switching (CS), waiting Time (WT), Turnaround Time (TAT) are taken into account to highlight the QoS improvement in comparison with the IRRCSA and RRA approaches.
Keywords
Introduction
Cloud computing is one of the powerful technologies that are growing faster for its on demand services without being worried about the maintenance cost from the perspective of cloud users. It bridges between the requirements of cloud users and services by the cloud provider. This on demand ubiquitous service thus dragging the attention of many researchers to work and improve its each and every area to shape it as more advanced technologies. SLA (Service Level Agreement) [2] is the contract through which the cloud provider and cloud user decides about the services and cost to be taken care of. Cloud users need not to worry about the resource management and maintenance having the flexibility to access in the cloud anytime from anywhere. The services are needed to be provided continuously to meet the needs of cloud users. Thus virtualization of resources takes many technologies together and combines it for better QoS [3]. Several parameters affect the QoS leading towards the need of constant improvements. Several frameworks and algorithmic approaches have been proposed to modify and improve the QoS. From the architectural development to the infrastructural advancements, all revolves around the QoS parameters. Efficient resource allocation and management techniques imply the reliability while advancements in the cloudlet scheduling policies implant the flexibility towards the increased system throughput. Our proposed work brings remarkable advancements over IRRCSA [4] which is highlighted in Section 5.
Our contribution
The proposed work modifies the existing cloudlet scheduling algorithm concentrating on the time consuming factor which affects the QoS of the cloud computing. The proposed algorithm in this paper prioritizes shorter cloudlets to be processed first but with a dynamic time quantum along with the Remaining Execution Time (RET) which is elaborated in the Section 3. This hybrid approach brings noteworthy improvements as it reduces the CS, WT and TAT remarkably which further implies the greater system efficiency.
Organization
The rest of the paper is organized as follow: Section 2 depicts similar works done on this area. Section 3 highlights the evaluation of proposed work elaborating the relevant formulations, algorithm and flowchart. Experimental results are tabulated in the Section 4. Comparison and Analysis section is elaborated in Section 5 which comprises of two sub sections-Tabular analysis and Graphical Analysis. Future research direction and conclusion are discussed in Section 6 and 7 respectively.
CloudSim working principle.
The research domain of Cloud Computing [5, 6, 7] has involved numerous researchers and scientists all over the world for its different elementary and parametric developments. Many improved cloudlet assignment policies are developed by several researchers for better resource allocation and cloudlet scheduling. The newly created algorithms and policies are mainly simulated in CloudSim [8] framework. GridSim Toolkit [9] provides a system to design and evaluate new scheduling algorithms. It helps in modeling and simulating various Grid resources [10, 11], resource broker, schedulers and applications that forms various entities of parallel and distributed computing. SimGrid [12], GridSim [13], GangSim [14], MicroGrid [15] and EDGSim [16] are some of the well-known grid simulators. Grid simulators though can be used to evaluate the execution costs of distributed applications on cloud infrastructure and address problems related to performance evaluation of heterogeneous grid systems in controlled manner; it does not provide support for seamless simulation, modeling and experimentation systems on cloud computing infrastructure. It also does not support modeling of virtualization enabled resources and application management required on demand [17].
CloudSim framework
CloudSim is an open source framework that provides seamless modeling, experimentations and simulations possible on cloud infrastructure [18]. CloudSim 3.0.3 is developed on the famous CloudSim [19] framework that is further built on GridSim toolkit [20]. CloudSim framework is a self-contained platform that provides a system to model elements of cloud infrastructure like VMs, datacenters, datacenter broker and policies for improved scheduling and allocation of VMs and cloudlets in large scale cloud platforms. Cloudsim 3.0.3 comprises various abstract and concrete classes for implementation of VM schedulers, Datacenters, Cloudlet scheduler, Datacenter Broker and VM allocation policies. CloudAnalyst is a tool based on cloudsim framework for modelling and analyzing issues related to cloud computing environments [21, 22]. Figure 1 depicts the CloudSim working principle.
CloudSim modules that are used in our research are listed below [1].
VM Scheduler – It is an abstract class that keeps in mind the stated scheduling policy (time shared, space shared) and is implemented by any host component to schedule VMs to Processing Elements (PE) [23]. Cloudlet Scheduler – It is an abstract class that obeys the scheduling policy and schedules suitable cloudlet residing in the LQ of the VM [24]. VM Allocation Policy – It is an abstract class used to define required VM allocation policy that will be obeyed to allocate VMs to suitable hosts in datacenters [25]. Datacenter Broker or DCB – It is a class that encapsulates and exhibits broker properties, that is able to takes care of user requirements and handle various tradeoff among service providers and cloud users [26].
RRA
In this algorithm, after the cloudlets are allocated in the corresponding LQs of a particular VM, DCB sets a Time Quantum (TQ) for the cloudlets to be executed. Then the first cloudlet in the LQ starts its execution and gets executed for one TQ after which its execution is preempted and the next cloudlet in the LQ gets a chance to get executed for another TQ. This process goes on until all the cloudlets in the LQ have completed their execution.
IRRCSA
In this algorithm a static TQ for all the VMs are assigned by the DCB and cloudlets are executed accordingly. The RET is taken into account for each complete iteration of the cloudlets till the assigned TQ. If the RET of the currently executed cloudlet is less than or equal to the static TQ then that particular cloudlet is not preempted and is allowed to continue its execution for another TQ.
In the proposed work the drawbacks of the existing scheduling algorithms mentioned have been improved in terms of average WT, average TAT and number of CS. It makes a dynamic approach regarding TQ assignment in each VM as discussed in detail in Section 3.
Proposed work
In the cloud computing, a global pool of shared memory is used to avail the resources physically. The list of host with varying configuration is registered to Management Information System (MIS) [28] for the Datacenter Broker (DCB) to access them easily. On the other side, the Cloud Service Provider (CSP) [29] receives request from the Cloud Users (CU) on the basis of demands and requirements. The requirements vary in terms of types of requests, length of files, number of processing elements which are nothing but the tasks included to form the cloudlets. In the CloudSim simulation environment, the modeling is done based on the real time scenarios but implanted virtually. The allocation of cloudlets in the Virtual Machines is done by the Data Centre Broker while the total information regarding the actual hardware configuration of VMs is fetched from the MIS for the proper deployment of the VMs in the Datacenters. After the cloudlet allocation phase, several batches of cloudlets get allocated to the respected local queues of deployed VMs.
TQ has a direct impact on the number of CS according to Eq. (1).
Where,
The Response Time (RT) is another factor which is highly depended on the TQ as of Eq. (2).
Smaller TQ increases
The proposed work focuses on the cloudlet scheduling policy for the cloudlets residing in the LQs of each VM extending the work of existing IRRCSA algorithm. The proposed algorithm inherits the advantageous features of three different scheduling policies – Shortest Remaining Time First (SRTF) [32], Shortest Job First (SJF) [31] and Round Robin (RR) [32] algorithm. All the cloudlets residing in the LQ of a particular VM get sorted first to prioritize the shortest cloudlets to be executed first. Then a Dynamic Time Quantum (DTQ) is assigned that is obtained from Eq. (6). The DTQ is named so because it varies from one VM to another depending on the Expected Execution Time or ET of cloudlets. After every execution of cloudlets for one DTQ, RET for the cloudlets are deduced according to Eq. (7) and compared with the DTQ. Those cloudlets whose RET is found to be less than or equal to the DTQ, are allowed to get executed for another DTQ.
Our proposed approach has brought noticeable improvement over the existing IRRCSA and RRA algorithm. It has reduced the number of Context Switching (CS) along with the Waiting Time (WT) and Turnaround Time (TAT) in comparison with the existing algorithms. These reductions imply greater improvements in QoS of the total system.
The ET of the cloudlets can be calculated by
Where
The ET of the cloudlets according to Eq. (4) is calculated after the batch of the cloudlets is allocated to the VMs and then the cloudlets are sorted in ascending order following their ETs. Thus shortest cloudlets will come first for execution.
To assign the DTQ the average ET of the cloudlets is calculated following Eq. (5).
Where
Where DTQ
RET of n
RET is then compared with DTQ according to Eq. (8).
If the condition is true then the execution of the cloudlets is allowed to continue for another DTQ.
In this way our proposed algorithm improves the performance over the existing RRA and IRRCSA algorithm.
Step 1: START
Step 2: VMs are created and stored in vm_list
Step 3: A batch of cloudlets are assigned in the cloudlet_list
Step 4: All the cloudlets are assigned to the VM in FCFS manner
Step 5: for each VM present in the vm_list{
While (Local Queue!
for i
ET of cloudlet
}
}
}
Step 6: Sort the LQ in ascending order based on the ET of cloudlets
Step 7: Set ET
for i
If (ET
ET
}
}
Step 8: ET
Set DTQ
Step 9: While (Local Queue!
for i
for j
RET
}
// ith Cloudlet executed for one DTQ
if (RET
// the current executing cloudlet continue its execution
}
Else {
// the currently executing cloudlets context switch and the next cloudlet starts execution.
}
}
// the process is continued until all the allotted cloudlets of different VMs present in vm_list did not complete their execution.
}
Flowchart
Flowchart of the proposed work is depicted in Fig. 2.
Flowchart of the proposed work.
We have considered ten cloudlets and four VMs in this example. Table 1 represents cloudlet properties which comprises the cloudlet ids and their respective MIs. Table 2 shows the properties of VMs comprising the VM ids and their respective MIPS. Table 3 shows the cloudlets being mapped to particular VMs according to First Come First Serve or FCFS manner and thus consists of Cloudlet ids or Cld_ids with their respective VM ids and ETs. In Tables 4–7 cloudlets allocated to each VM (0, 1, 2, 3) are shown respectively. In VM
Properties of cloudlets
Properties of cloudlets
Properties of VMs
Cloudlet to VM map table with respective ET
Allotted cloudlet to VM
Allotted cloudlet to VM
Allotted cloudlet to VM
Allotted cloudlet to VM
WT, TAT and Number of CS in VM
WT, TAT and Number of CS in VM
WT, TAT and Number of CS in VM
WT, TAT and Number of CS in VM
WT for RRA, IRRCSA and PROPOSED in VM
TAT for RRA, IRRCSA and PROPOSED in VM
Number of CS in RRA, IRRCSA and PROPOSED in VM
WT for RRA, IRRCSA and PROPOSED in VM
TAT for RRA, IRRCSA and PROPOSED in VM
Number of CS in RRA, IRRCSA and PROPOSED in VM
WT for RRA, IRRCSA and PROPOSED in VM
TAT for RRA and IRRCSA in VM
Number of CS in RRA, IRRCSA and PROPOSED in VM
WT for RRA, IRRCSA and PROPOSED in VM
TAT for RRA, IRRCSA and PROPOSED in VM
Number of CS in RRA, IRRCSA and PROPOSED in VM
Summery table for Rate of Improvement (%)
In this section the results of RRA, IRRCSA and the PROPOSED algorithms will be compared to each other and analyzed in two ways –
5.1) Tabular Analysis 5.2) Graphical Analysis
In Section 5.1, Tables 12, 15, 18 and 21 depict the average WT of VM
In Section 5.2, Figs 3–5 represent the comparison of WT, TAT and number of CS respectively in all the four VMs in case of RRA, IRRCSA and Proposed algorithm.
Tabular analysis
Graphical analysis
Average WT for RRA, IRRCSA and PROPOSED in VM
Average TAT for RRA, IRRCSA and PROPOSED in VM
Number of CS for RRA, IRRCSA and PROPOSED in VM
Cloudlet scheduling policy [30] is the important part leading towards the need for more advance algorithmic approaches focusing on the time shared and space shared module. Besides, formation of newer frameworks which deal with the newer dimensions of this area should always be taken under consideration. Load balancing and optimization of resource allocation techniques are also the fields that are needed to be focused by the researchers. The critical issues like scalability, fault tolerance of the entire system have been considered for future work which will make the approach more robust.
Conclusion
The virtualization of the resources and flexible on demand services has leaded cloud computing towards the greatest heights in comparison with other newer technologies. Thus our proposed work has the potential to include the advancements to the cloud computing technology in terms of system efficiency and QoS improvement. We will extend our work further to form more advanced and efficient approaches considering newer dimensions.
