Abstract

Task scheduling in Cloud Computing paradigm poses new challenges for cloud provider as heterogeneous, diversified tasks arrived on to cloud console. To schedule these type of tasks efficiently on to virtual resources in cloud paradigm, an effective scheduler is needed, which precisely maps tasks to virtual machines by considering priorities of both tasks and VMs. Existing scheduling algorithms failed to map tasks precisely to virtual resources due to high dynamic nature in cloud environment which leads to increase of makespan and SLA violations will be increased. In this paper, authors proposed a task-scheduling mechanism, which considers task priorities and VMs. To model this scheduling paradigm we have chosen whale optimization through which our scheduler will take decisions for scheduling tasks precisely onto virtual resources in cloud environment. Entire simulation was carried out on CloudSim. Initially we have chosen random generated workload to run simulation and after that, we have considered a real-time workload named as BigDataBench and ran our simulation. Finally, we compared our proposed work with classical baseline mechanisms. From simulations we observed that proposed whale scheduler improved makespan for PSO, ACO, GA, and W-schedulers by 20.07%, 17.55%, 19.9%, and 6.35%, respectively, and 17.3%, 17.86%, 17.64%, and 5.93%, respectively, for BigDataBench workloads. SLA violations improved over PSO, ACO, GA, and W-Scheduler by 56.76%, 42.17%, 35.29%, and 24.53%, respectively, and 63.42%, 23.33%, 55.51%, and 40.1%, respectively, for BigDataBench workloads. From extensive simulation results, our proposed scheduler using whale optimization approach minimizes makespan and SLA violations to a great extent.

1. Introduction

Cloud Computing model gave a new hope to entire IT industry, as well as to other industries such as education, healthcare, and government sectors to accommodate their computing and storage infrastructure with different cloud services. Existing on premises infrastructure cannot accommodate huge computations and storage requirements of various industries as data are evolving in a huge manner from various resources, and therefore, to handle various storage and computing requirements of various users concurrently with existing infrastructure is a vain. Therefore, to handle these many users and their requests concurrently many of the companies migrating towards cloud environment, which gives on demand access to a network, which consists of a shared pool of configurable resources on paid bases, based on user requests [1]. To handle these large numbers of users around globe cloud paradigm uses different types of deployment models, i.e., public cloud leverages all different services to all users around the world publicly on paid basis. Private cloud-leverages services to all cloud services belong to a specific organization. Hybrid cloud-leverages services, which are restricted to some of the users in organization, and some of the services extended to all users around the world [2]. All facilities in cloud paradigm provides access to users by providing virtual resources through various service models [3] for providing computing infrastructure, storage, and network as services to users based on user requirement. To provision and deprovision virtual resources based on requirement of users Cloud Computing environment need an effective scheduler, which should map incoming heterogeneous and diversified tasks onto appropriate virtual resources by minimizing makespan and SLA violations which are integral part of any cloud paradigm. Many of existing task-scheduling algorithms proposed by authors addressed various parameters, makespan, energy consumption, and execution cost. Existing authors apply various nature-inspired algorithms, i.e., PSO [4] and ACO [5] but both of these approaches have their own limitations as PSO faces a problem and it cannot explore solution space and trapped into a local optimum, whereas ACO cannot handle dynamic population in solution space but cloud computing is a paradigm which consists of dynamic, diversified and heterogeneous requests from various users. Therefore, an efficient task scheduler need to be formulated which maps tasks effectively by considering type of requests, thereby calculating their priorities and finally need to map these requests to suitable VMs while minimizing makespan and SLA violations. In this manuscript, we used whale optimization to model our scheduler, which addresses parameters, makespan and SLA violation. The main motivation to conduct this research is to minimize number of SLA violations in Cloud Computing paradigm while provisioning or scheduling tasks to appropriate virtual resources and if SLA made between Cloud provider and Cloud user is violated in terms of services then there will be loss on both the ends. Therefore, we considered this as primary motivation to conduct this research.

Highlights and main contributions of our manuscript are presented as follows:(i)Effective task-scheduling mechanism proposed using consideration of priorities of tasks and VMs(ii)Whale optimization is used to model task-scheduling mechanism(iii)Extensive simulations conducted on CloudSim [6], workloads considered in algorithm are randomly generated workload and real time BigDataBench workloads(iv)Makespan and SLA violation are addressed as parameters

Below section discusses briefly about various related works conducted by researchers using metaheuristic and nature-inspired algorithms.

The authors formulated task-scheduling mechanism in [7] aims at parameters, i.e., makespan, throughput, and resource utilization. Adaptive PSO used as methodology for scheduling problem, which dynamically balance incoming workloads, based on inertia weights. Extensive experiments were conducted by using CloudSim. Workload was taken from [8], a benchmark dataset to evaluate efficacy of approach. It evaluated against different variants of PSO, and from results, it proved that it outperforms all compared approaches for improvement in makespan, throughput, and utilization of resources by 10%, 12%, and 60%, respectively. In [9] authors formulated a task-scheduling mechanism for balancing load in cloud. MCFCMA and PSO algorithms are used to model scheduling algorithm. Initially tasks are selected based on their load and cluster those tasks with MCFCMA approach and scheduling of tasks to VMs based on PSO approach. Entire simulation is implemented on CloudSim. It is compared aganist metaheuristic algorithms. From results, it proved that load balance of tasks and scheduling improved over existing variations of PSO. In [10], a deadline aware task-scheduling approach using multiobjective function were developed for heterogeneous workloads. Adaptive PSO-RADL algorithm was used as methodology based on dynamic inertia weights assignment in algorithm. It was implemented on CloudSim, and generation of workload was carried out with synthetic and real-time benchmark datasets. It was evaluated against different metaheuristic approaches. From results, PSO-RDAL showed huge impact over existing approaches for makespan, response time, resource utilization, penalty cost, and total execution cost. In [11], multiobjective scheduling mechanism developed which aims at parameters, i.e., makespan, execution time, execution cost, and energy consumption. A hybrid approach, i.e., CR-PSO was used as methodology for scheduling. Simulation was carried out on CloudSim. It was evaluated over different metaheuristic approaches. From results, it proved that a significant reduction was observed for specified parameters. In [5], a multiobjective scheduling mechanism was developed using combination of GA and ACO approaches. GA and ACO algorithms hybridized to model task-scheduling approach. Simulations were carried out on CloudSim. It was compared over GA and ACO algorithms, and from results, it observed that throughput, task completion time, and response time significantly minimized with GA-ACO approach. In [12], a hybrid task-scheduling algorithm was developed to address parameters, makespan, utilization of resources, and total computation cost. It was modeled by using a hybrid approach PSO-ACO. PSO was used for generating decisions at a global level, and ACO was used for generating decisions at a local level. Experiments were conducted on CloudSim. It was evaluated against variants of PSO and ACO algorithms. Experimental data revealed that hybrid approach showed impact over variants. In [13], hybrid task scheduling was formulated to address parameters, makespan and overall cost. A hybrid approach with nature-inspired algorithms was used for modeling task scheduler. Cuckoo and crow search algorithms were used to model scheduling algorithm. It was simulated on CloudSim tool. It was compared over MO-ACO, Min-Min, and ACO algorithms, and the results showed that CCSA outperforms existing algorithms. In [14], scheduling approach designed by updating pheromone leads to increase in acceleration of ant exploration in solution space. MOTS-ACO was used as methodology for designing scheduling problem. It was implemented on CloudSim. It was compared over existing scheduling algorithms modeled various metaheuristic approaches, and finally, simulation results revealed that MOTS-ACO outperforms existing approaches for makespan, turnaround time, and consumption of power. In [15], a hybrid task scheduling was developed to focus on task completion time and load balance of tasks. EDA-GA was used for scheduling mechanism. It was simulated on CloudSim and was compared against existing EDA and GA approaches. From results, hybrid approach proved that it outperforms existing EDA and GA algorithms for specified parameters. In [16], an energy efficient scheduling mechanism was formulated to minimize energy consumption. Aim of this scheduling approach is for identifying appropriate virtualized execution environment for a task while minimizing energy consumption. It was implemented on a customized simulation environment. It was compared against existing RC-GA, AMTS, and E-PAGA approaches, and from results, EPETS outperforms existing mechanisms for a specified parameter. In [17], a scheduling mechanism was devised to determine effective task transfer time. This task transfer time calculated based on task capacity, size of task, number of tasks, number of VMs, and throughput. MVO-GA was used as methodology for scheduling in this scenario. Simulations were carried out on MATLAB, and effectiveness of task transfer time with respect to all the aforementioned parameters were identified, and MVO-GA showed its effectiveness for task transfer time. In [18], a scheduling algorithm was formulated for customer satisfaction where quality of service and makespan were addressed as parameters in multi-cloud environment. GA-based customer satisfaction framework was developed, where in first phase resource allocation and task scheduling were based on shortest jobs to generate scheduling decisions. All the simulations were carried out on MATLAB, and from results, GACCRATS proved that makespan and customer satisfaction can improve in multi-cloud environment. In [19], authors formulated a multi-objective scheduling algorithm addresses parameters, makespan, response time, and QoS. Genetic algorithm modified and added greedy search for methodology of this approach. CloudSim was used for simulation and evaluation over greedy search, GA. The results revealed that MGGS show impact over baseline approaches. In [20], a hybridized approach was formulated using OBL and CS algorithms to address parameters, makespan and cost. OBL was used as global search and CS was used as local search for this approach. It was evaluated over PSO, IDEA, and GA approaches. OCSA outperforms existing mechanisms for specified parameters.

From Table 1, we can clearly observe that many of task-scheduling algorithms formulated using various metaheuristic approaches and they suffer to provide accurate solutions by assigning appropriate virtual resources to incoming requests by various users. Many of existing authors addressed parameters, i.e., makespan, execution cost, execution time, and energy consumption, but many authors ignored SLA violations as a parameter, even some authors addressed SLA violation as a metric they failed to achieve mapping tasks to suitable VMs for consideration priorities of tasks and VMs. Therefore, we considered whale optimization algorithm as methodology for scheduling in cloud paradigm while minimizing SLA violations and makespan.

3. Problem Definition and System Architecture

This section discusses problem definition and proposed system architecture used for scheduling. Consider that we assumed set of tasks indicated as .set of VMs indicated as , set of hosts indicated as , and set of datacenters as . Therefore, problem is defined in a way that tasks are mapped on to s which are resided in hosts in turn resided back with datacenters by considering priorities of tasks and VMs, while minimization of makespan, and SLA violations. Table 2 shows notations used in proposed system architecture.

Figure 1 indicates proposed system architecture. Initially, concurrent user requests put forward to cloud administrative console and broker on behalf of cloud users submits them to task manager. Task manager verify validity of user requests coming onto cloud interface by concerning with SLA. If they are valid requests, it will pass those requests to waiting queue before passing it to task scheduler. In this architecture, after validating requests from task manager it calculates priorities of all diversified and heterogeneous tasks based on size and run time capacity of tasks. After calculation of task priorities, VM priorities are calculated based on unit cost electricity price. Based on the calculation of priorities from tasks and VMs, they will be fed to the waiting queue and it will map the highest prioritized task to a highest prioritized VM. While mapping these requests according to these priorities scheduler minimize makespan and SLA violations.

Initially to evaluate priorities of tasks, we calculated workload on all VMs. Workload on all VMs was indicated by using the following equation:

represents workload on VMs.

These VMs resided in set of hosts. Therefore, entire workload on hosts is calculated by using the following equation:where represents workload on hosts.

We need to verify whether user requests or tasks can processed on to a certain VM. For this purpose, processing capacity of a VM has to be defined and it is indicated by using the following equation:where represents processing elements and represents processing capacity based on number of instructions processed per second.

For mapping of tasks to precise, VMs scheduler need to know the size of the task and it is calculated using the following rquation:

Now priorities of all tasks are calculated using the following equation:

VM priorities using unit electricity cost are calculated using the following equation:

Our main objectives in this research are to map tasks suitably to virtual resources while minimizing makespan and SLA violations. Therefore, makespan is evaluated using the following equation:

After calculation of makespan, our next objective is to calculate SLA violations. Primarily SLA violation depends upon active time of a host and performance degradation. Therefore, active time of a host and performance degradation calculated using the follwoing equations, respectively.

Using above equations (8) and (9) we calculate SLA violations as follows:

In this research, as discussed in abstract and introduction section, existing authors used various metaheuristic and nature-inspired approaches for scheduling in cloud paradigm. In this manuscript, we used whale optimization algorithm which can cover entire problem solution space either exploit or by shrinking mechanisms. To achieve this, we calculate the optimization function as follows:

After carefully formulated mathematical modeling, in the next section we discussed about methodology used in our scheduling mechanism.

4. Methodology and Proposed Task-Scheduling Mechanism Using Whale Optimization

Whale optimization [21] used as methodology for scheduling in Cloud Computing in this research. It is a nature-inspired approach, which is based on whale’s behavior in the nature. This algorithm initially starts with whale population, i.e., agents and looks for prey until its best solution is identified. It continuously searches for prey with these agents by using two phases, exploitation or shrinking phase. In this algorithm, a humpback whale population generated randomly and it is represented as and best search agent is represented as . Initially position of prey is identified randomly and assumed that current prey indicated as best solution identified by search agent. Current best solution identified can be represented as where represents present iteration, represents position vector, represents best solution for identified position vector, and represents coefficient vector.

Updated next position of search agent is calculated as follows:where represents coefficient vector. , are calculated using the following equations:

Next best search agent is identified based on modification of values of coefficient vectors. Initially, value of ranges from 2 to 0. Value of indicates random number between 0 and 1. These are modified and when looking for next best search agent a phase named as exploitation begins where it consists of encircling and spiral updation mentioned in [22]. Values of coefficient vectors updated to new values as [−1, 1] and then for this spiral updation position of agent is calculated using the following equation:where c is a constant and e is a value that lies in between interval −1 and 1. is represented as follows:

Entire search agent process is carried out between two phases, i.e., either shrinking or exploitation based on chosen probability of a search agent. If probability is less than 0.5 it uses shrinking approach , which is calculated by using equation (13). Otherwise, if probability is greater than or equals to 0.5 it uses spiral updation. After exploitation phase, exploration starts using an agent by choosing it randomly. It is represented by using the following equations:

Termination begins after exploration after search agent moves out of region and this process continues till best solution is arrived is shown in Algorithm 1.

Input: set of tasks , set of VMs , set of hosts , Set of datacenters
Output: Scheduling of tasks mapped to VMs while minimizing makespan, SLA Violation.
Start
Populate whale population randomly
Calculation of priorities of using equation (5).
Calculation of priorities of using equation (6).
Calculation of fitness function using equation (11).
if (probability < 0.5)
if (|E| < 1)
calculate search agent position using equation (13).
else if (|E| < 1)
calculate search agent position using equation (19).
End if
End if
If (probability ≥ 0.5)
Calculate position of search agent using equation (16).
End if
Calculate makespan, SLA violation using equations (7) and (10).
If (agent moves outside region)
Calculate
Update iterations
End if
End

5. Simulation Setup and Results

This section discusses clear configuration settings for simulation and simulation results.

5.1. Simulation Configuration Settings

In our research, simulation was carried out using CloudSim [6] toolkit. This simulator helps us to simulate exact simulated environment for cloud paradigm. It was installed upon a machine which consists of configuration of 16 GB RAM, 5 TB hard disk, i7 processor. Table 3 represents exact standard configuration settings used in our simulation.

5.2. Calculation of Makespan

Initially, we calculated makespan using random generated workload and after that we used real time workload, i.e., BigDataBench workload [23]. We compared our proposed whale approach against existing PSO, ACO, GA, and W-Scheduler algorithms.

Table 4 represents the calculation of makespan for PSO, ACO, and proposed whale scheduler for 100, 500, and 1000 tasks. Makespan generated with random generated workload for PSO is 1289.5, 1678.76, and 1989.56, respectively. Makespan generated with random generated workload for ACO is 1156.9, 1563.8, and 2146.8, respectively. Makespan generated with random generated workload for GA is 1543.8, 1475.3, and 1934.57, respectively. Makespan generated with random generated workload for W-scheduler is 1058.35, 1342.78, and 1864.9, respectively. Makespan generated with random generated workload for proposed whale scheduler is 968.9, 1257.9, and 1784.8, respectively.

Table 5 represents calculation of the makespan for PSO, ACO, and proposed whale scheduler for 100, 500, and 1000 tasks. Makespan generated with BigDataBench workload for PSO is 1367.8, 1747.9, and 2045.7, respectively. Makespan generated with BigDataBench workload for ACO is 1243.9, 1643.9, and 2387.8, respectively. Makespan generated with BigDataBench workload for GA is 1437.7, 1532.9, and 2243.6, respectively. Makespan generated with BigDataBench workload for W-scheduler is 1138.3, 1476.4, and 1956.56, respectively. Makespan generated with BigDataBench workload for proposed whale scheduler is 1036.9, 1387.8, and 1899.5, respectively.

From Figures 2 and 3 we can clearly observe that our proposed whale scheduler improves makespan over state-of-the art algorithms. The reason for the improvement of makespan over existing algorithms is because our proposed whale scheduler calculates priorities of tasks and VMs for all sets of tasks coming onto cloud console and whale approach carefully schedule tasks based on these priorities which minimizes makespan as mentioned in Figures 2 and 3.

5.3. Calculation of SLA Violation

Table 6 represents calculation of SLA violation for PSO, ACO, and proposed whale scheduler for 100, 500, and 1000 tasks. SLA violation generated with random generated workload for PSO is 17, 25, and 28, respectively. SLA violation generated with random generated workload for ACO is 12, 18, and 22, respectively. SLA violation generated with random generated workload for GA is 15, 12, and 21, respectively. SLA violation generated with random generated workload for W-Scheduler scheduler is 12, 10, and 9, respectively. SLA violation generated with random generated workload for proposed whale scheduler is 5, 9, and 18, respectively.

Table 7 represents calculation of SLA violation for PSO, ACO, and proposed whale scheduler for 100, 500, and 1000 tasks. SLA violation generated with random generated workload for PSO is 19, 30, and 35, respectively. SLA violation generated with random generated workload for ACO is 10, 12, and 18, respectively. SLA violation generated with random generated workload for GA is 18, 21, and 29, respectively. SLA violation generated with random generated workload for W-scheduler is 17, 19, and 10, respectively. SLA violation generated with random generated workload for proposed whale scheduler is 8, 10, and 12, respectively.

From Figures 4 and 5 we can clearly observe that our proposed whale scheduler minimizes SLA violations over state-of-the-art algorithms. The reason for the minimization of SLA violation over existing algorithms is that our proposed whale scheduler calculates priorities of tasks and VMs for all sets of tasks coming onto cloud console and whale approach carefully schedule tasks based on these priorities which minimizes makespan as mentioned in Figures 4 and 5.

5.4. Analysis of Results

This subsection gives detailed analysis on results obtained through our proposed whale scheduler. Initially for our scheduling algorithm, we have given randomized workload and evaluated over existing algorithms. After the initial evaluation we have given the workload from BigDataBench workloads [23]. For both the workloads we ran simulation with 100, 500, and 1000 tasks with 50 iterations. Tables 8 and 9 represents improvement percentage of makespan and SLA violations over existing baseline approaches while evaluating with proposed whale scheduler.

From Tables 8 and 9, it is evident that our proposed whale scheduler improvised makespan and SLA violations carefully over existing state-of-the-art algorithms.

6. Conclusion and Future Work

Task scheduling in Cloud Computing poses challenges to cloud provider as workload coming to cloud console is diversified and heterogeneous. It is challenging for cloud users as well if a proper scheduler is not employed in cloud paradigm. It leads to increase in makespan and SLA violations, which affects the quality of service. Therefore, in this manuscript, we proposed an effective task-scheduling algorithm, which takes priorities of tasks and VMs to appropriately map incoming tasks to virtual resources. To model this scheduling approach we used a whale optimization algorithm. Entire simulation and experiments are implemented on CloudSim. It is compared against existing algorithms PSO, ACO, GA, and W-scheduler. Initially in simulation random, generated workload was used and later a real time dataset was used, i.e., BigDataBench. From results, it evident that our proposed whale scheduler outperforms existing approaches by minimizing makespan and SLA violations. From simulations we observed that proposed whale scheduler improved makespan for PSO, ACO, GA, and W-schedulers by 20.07%, 17.55%, 19.9%, and 6.35%, respectively, and 17.3%, 17.86%, 17.64%, and 5.93%, respectively, for BigDataBench orkloads. SLA violations improved over PSO, ACO, GA, and W-Scheduler by 56.76%, 42.17%, 35.29%, and 24.53%, respectively, and 63.42%, 23.33%, 55.51%, and 40.1%, respectively for BigDataBench workloads. In the future, we need to employ a machine learning approach for better handling of scheduling algorithm in Cloud Computing paradigm.

Data Availability

No data used for supporting this study were disclosed by the authors.

Conflicts of Interest

The authors declare that they have no conflicts of interest.