3
Time and Cost-Effective Multi-Objective Scheduling Technique for Cloud Computing Environment

Aida A. Nasr1, Kalka Dubey2*, Nirmeen El-Bahnasawy3, Gamal Attiya3 and Ayman El-Sayed3

1 Information Technology Department, Faculty of Computers and Informatics, Tanta University, Tanta, Egypt

2 Department of Computer Science and Engineering, RGIPT Jais, Amethi, India

3 Faculty of Electronic Engineering, Menoufia University, Menouf, Egypt

Abstract

Selection of optimal resources in the cloud is one of the challenging issues that influence the cost and time of this computing paradigm. The main goal of the service provider is to schedule the cloudlets efficiently to avoid the possibility of overutilization and underutilization of resources that directly affects the services of the cloud also the budget of end-users. Several state-of-art techniques have been published to accomplish the requirement of either end-users or service provider’s QoS parameters but failed to solve completely. This paper presents a new time and cost-effective Multi-Objective Cloudlet Scheduling Approach (CSA) to overcome the mentioned issue. The main idea of this research work is to convert the large domain scheduling problem in to small size clustering problems while minimizing the makespan and computation cost. The proposed CSA divides the cloud-let list into several clusters and allocate each cluster to the best possible virtual machine without violating resources availability and others constraint. The proposed CSA is implement and validated through cloud simulator i.e. CloudSim and make comparison with existing techniques to test the effectiveness of the developed algorithm. Developed CSA is more efficient than the existing heuristic and meta-heuristic algorithms in terms of time complexity and system performance.

Keywords: Cloud computing, cluster, datacenter broker, load balancing, heuristic

3.1 Introduction

Cloud computing is well known computing paradigm that consists pool of heterogeneous resources and provision to end users over the internet pay per uses basis. Cloud computing offers on-demand resource provisioning, multi-tenant environment for the services, elasticity and scalability at run time, measured the services types of significant characteristics. Cloud computing offers several users beneficiary services through a network where cloud users have the flexibility of accessing the cloud resources, pre-build applications, design own framework, etc. [1]. There are several enterprises that are deploying their services in cost effective manner using cloud platform. Nowadays, cloud computing is becoming an efficient paradigm that provides high-performance computing resources over the Internet to solve large-scale scientific and engineering problems. Several industries and business are shifting their platform from traditional approach to cloud, due to which end users and deployment of web applications are increasing exponentially day by day. On the contrary, expectation of end users (time and cost-effective service) and vendors (maximum profit by utilizing the cloud resources) is raised as cloud-based services become common. However, scheduling of cloudlet over the resources becomes the key challenging issue and it can degrade performance, if it failed to achieve the objectives of either vendors or end users. Cloudlet schedule is char-acterized by the presence of several cloudlets (i.e. the objects that refer to tasks) that have to be executed on a limited number of virtual machines. Therefore, management of cloud resources is critical especially when many cloudlets are submitted simultaneously to cloud computing [2].

Cloud Computing models utilize the virtualization technology in data center infrastructure for delivering the SaaS, PaaS, and IaaS services to the cloud users [3]. Virtualization allow the decouples of physical machine from the operating system and created an abstraction layer between the host machine and virtual machine to run multiple Operating System (OS) on a single hardware resource [4]. Hypervisor is solely responsible for the creation of abstraction layer which provide the flexibly to run multiple OS concurrently on a single physical machine for efficient utilization of resources. Virtualization technology also supports the live virtual machine migration, dynamic resource allocation, and workload isolation features. Cloud data centers have a large number of computational capabilities with a varying capacity of physical machines which are tightly coupled. There are several expenses like resource management, manpower for maintaining the servers, license for running the software, space, cooling system, power and energy consumption are required to establish a cloud data center [5].

Figure 3.1 shown that the managing and provisioning services of cloud data centers performed in two different levels: task scheduling level and VM application policies level. However, researchers often deal with the above levels separately by developing the task scheduling algorithm for the cost benefits of cloud users and designed VM allocation policies for the benefits for cloud services providers. The major challenge of cloud data center is the efficiently utilizing the infrastructure by cooperative between the user’s submitted tasks and generate an optimal allocation sequence of virtual machine to the physical host; therefore, the requirement of an efficient task scheduling algorithm along with an optima VM allocation policy.

 A schematic illustration of managing and provisioning of task request to the cloud resources.

Figure 3.1 Managing and provisioning of task request to the cloud resources.

Many researchers have developed different techniques to solve scheduling problems [329]. Some researchers reduce the makespan time of applications, but they ignore other important constraints like requirements of different cloudlets, availability of computing resources, and time complexity of scheduling algorithm. Whenever an algorithm focused at only one parameter, it takes less time to compute the applications. As the number of parameters is increased, the time of algorithms is also increase due to conflicting parameters. Hence, it is tough to find the optimal solution of conflicting parameters in cloud computing. Most of the developed traditional approaches failed to find the solution of contradictory objectives. For example, heuristic algorithms often have low time complexity, but they provide a large schedule length as they provide near-optimal solutions. On the other hand, meta-heuristic algorithms like Genetic Algorithm (GA) and Simulated Annealing (SA) take more time to schedule a set of cloudlets (i.e. tasks) but they provide a small schedule length. This paper presents a new Cloudlet Scheduling Approach (CSA) for the cloud computing environment. The CSA enhances the overall performance of cloud-let scheduling by taking into account both the cloudlets requirements and resources available, and improving schedule length, time complexity, and load balancing degree. The contributions of this research work are divided into following two parts:

  • Build the several small size clusters by converting the large size scheduling problems into small size clusters.
  • Developing a new efficient Cloudlet Scheduling Approach (CSA) for the cloudlets allocation.

The remainder part of the research work is organized in six sections. Literature survey is done in Section 3.2. Basic details about cloud computing and cloudlet scheduling problem is covered in the section 3.3. Section 3.4 illustrates the formulation of scheduling problem as an optimization problem. Section 3.5 presents some of the popular heuristic and meta-heuristic techniques to overcome the scheduling problem. The proposed CSA is developed in section 3.6. Section 3.7 presents the simulation results while section 8 presents the conclusion of this research work.

3.2 Literature Survey

There have been so many task scheduling algorithms presented in the literature to overcome the scheduling issues in the cloud environments. Several algorithms inspired with the metaheuristic based optimization technique to achieve the desired results in terms of various Quality of Services (QoS) parameters. Guo [6] developed a multi-objective task scheduling algorithm for efficiently and optimally placement of the cloud request to the available number of virtual machines. The developed techniques consider multiple parameters for evaluating the performance. The proposed algorithm is based on the fuzzy self-defense for designing the scheduling scheme. A simulation based experiment performed to validate the effectiveness of the proposed work and compared the results with the existing techniques. Alsaidy et al. [7] developed a scheduling algorithm which is inspired from the Partial Swarm Optimization (PSO) to tackle the issue of task scheduling in the cloud environment. The effectiveness of the proposed algorithm was checked by implemented it with the help of CloudSim in cloud environment. The simulation results shown some enhancements in the various parameters compared to the other standard task scheduling algorithms.

NoorianTalouki et al. [8] uses optimized cost table to produce the optimal results by placing the higher priority task first and lower priority task on the below order for the execution. The proposed approach follows the HEFT algorithm for reducing the makespan time of dependent tasks. To analyze the performance of proposed technique, a different scientific workflow dataset is used. A significant increment in the performance of the developed technique is notice while comparing other heuristic and metaheuristic based techniques. The performance of the proposed work is checked on the makespan, Schedule Length Ratio (SLR), efficiency, and speed up parameters. Oudaa et al. [9] designed a model which is based on the multi-agent system for finding the optimal schedule sequence to allocate the task to the available number of virtual machines. The proposed model uses the Deep Enforcement Learning (DER) for the generation optimal schedule sequence of tasks. A number of experiments performed which shows the effectiveness of the proposed model in the cloud environment. Yang et al. [10] focused on the realization of rapid reconfiguration of cloud resources to make the scheduling more flexible and enhancement in the utilization of these resources. A new Software Defined Cloud Manufacturing (SDCM) method for handing the task allocation problem in the cloud environment formalizes the time constraint data traffic problem and divided the tasks into the sub tasks and allocated them to generate an optimal salutation to overcome the data traffic issues. The proposed algorithm combined the two metaheuristic-based approaches for generating the safe schedule sequence. The experiment results demonstrate the usefulness of the algorithm in terms of preventing network congestion and successful to reduce the network latency.

Sanaj et al. [11] developed a nature multi objective task scheduling algorithm which use the features of chaotic squirrel search for resolving the task scheduling problem for the independent tasks in the cloud environment. The proposed technique synthesized with the messy local search to enhance the optimal searching ability. To check the performance of the proposed technique, a cloud simulator toolkit is used to implement the proposed technique along with the other standard task scheduling methods. The simulation results proof the effectiveness of the research work. Dubey et al. [12] designed a hybrid multi-objective task scheduling framework for the dependent task which combined the features of two metaheuristic- based optimization techniques named as CRO and PSO to overcome the scheduling issue in the cloud. The proposed framework also considers the security aspect during submission of task to the cloud. The proposed framework tested over the CloudSim with the synthetic data set and compared with the other existing technique. The comparison result proves that the proposed framework achieved the desired result.

3.3 Cloud Computing and Cloudlet Scheduling Problem

Cloud computing technology contains four main components namely, client, cloud information system, cloud datacenter broker, and virtual machines. Figure 3.2 depicted the major component bs of cloud computing model. Clients are the end users and submitted work in the form of tasks or cloudlet to the cloud datacenter broker for the processing the cloudlet based on the resource requirements. Cloud information system is a repository which stores all the critical information about the cloudlets like cloud-let identification numbers, length, number of resource requirement, and arrival time of cloudlets. This information is used by the datacenter broker for the selection of resources to the cloudlets. Scheduler is responsible for finding the schedule sequence for the submitted cloudlets. Scheduler is the backbone of datacenter broker and determines the order according to which each cloudlet is executed. Virtual machines are the main components in cloud computing environment that responsible for execution of cloudlet and return the results.

In cloud computing environment, several cloudlets arrive to the system at the same time. Each cloudlet needs to be assigned into a suitable VM to be executed in shortest time. However, because the number of available VMs is less than the number of submitted cloudlets, a scheduling algorithm is required to schedule the cloudlets onto the available VMs. This problem is called cloudlets scheduling problem. Briefly, given a set of n cloudlets to be executed on m of VMs in the cloud computing environment, the cloudlets require certain resources and have computational capacity requirements. On the other hand, VMs are also capacitated. Therefore, need to find the efficient cloudlet execution order so that the cloudlet completion time can be minimized whereas the necessary requirement of cloudlets is met and the virtual machines capacity are not compromised.

“A schematic illustration of the components of cloud computing environment.”

Figure 3.2 Components of cloud computing environment.

3.4 Problem Formulation

The cloudlet-scheduling problem may be formulated as an optimization problem to be solved by optimization approaches. Designing amathematical model to the cloudlet scheduling problem involves two steps: (i) formulate a cost function to represent the objective of the cloud-lets scheduling, (ii) formulate set of constraints in terms of the cloudlets requirements and the availability of the VMs resources.

To formulate the scheduling problem, let n be the number of cloudlets, m is number of VMs, eiv be the execution time of cloudlet i on machine v, and xiv is a binary variable such that xiv is 1 if the cloudlet i is assigned to machine v and 0 otherwise as shown in eq. (3.1).

The scheduling problem may be formulated mathematically as:

Subject to

In this model, the objective of scheduling is formulated, in eq. (3.2), to minimize the execution time. Indeed, several constraints are modeled to meet the requirements of cloudlets and not violate the availability of virtual resources. The first constrain, eq. (3.3), guarantees that each cloudlet i is assigned to exactly one VMv. The second constraint, eq. (3.4), guarantees that the requirement of cloudleti doesn’t exceed the capacity of VMv. The third constraint, eq. (3.5), guarantees that total memory requirements should not exceed the maximum available memory.

We can define an optimal solution Sopt as a best solution that achieves the lowest makespan. According to reference [3], page (106), the system can achieve the lowest makespan (i.e. optimal solution) if and only if the next conditions are met:

  1. Each cloudlet is assigned to distinct number VM.
  2. Each cloudlet starts execution as soon as possible.

By another way, we distributed cloudlets among the VMs to balance the workload. Thus, high load balancing is achieved, when optimal solution is founded. We can say that a solution with maximum balancing degree is the near optimal solution.

3.5 Cloudlet Scheduling Techniques

Recently, several cloudlet-scheduling techniques were developed [13]. They may be classified into static scheduling and dynamic scheduling. The distinction indicates the time at which the scheduling decisions are made. In dynamic scheduling, cloudlets are submitted at different time slots, and scheduled during run time (on the fly) based on the current state of VMs. Jing et al. [14] is an example of dynamic approaches. In this paper, authors developed a new hybrid meta-heuristic exploiting the features of simulated annealing and particle swarm optimization techniques for maximization of cloud service providers profit and minimizes the execution time. Yuan et al. [15] proposed an effectively dynamic task scheduling algorithm for dispatch all arriving tasks to private CDC and public clouds. The disadvantage of scheduling is the overhead incurred to determine the schedule while the program is running. This study concerned with static scheduling. In static scheduling, all cloudlets arrive simultaneously; the number of them is more than the number VMs and information regarding the cloudlets is known prior to execution. In this case, all cloudlets are scheduled first at compile time, before running process. Furthermore, it is easy to implement on the cloud environment while archiving the desired goal of cost saving, makespan time, energy consumption. We can classify a static scheduling into two classes: Heuristic methods and meta-heuristic methods.

3.5.1 Heuristic Methods

Heuristic algorithms use the predictions to achieve near optimal solutions [1618]. These algorithms have low time complexity. However, they often give high schedule length. Some examples of heuristic algorithms on cloud computing are as follows:

First Come First Serve (FCFS): FCFS is the first technique used in cloud computing model for performing the scheduling of cloudlets on the available number of virtual machine [19]. It is based on the concept of first come first serve similar to the queue in a bank. Cloudlets are schedule to the resources accordance to the order of arrival time. Cloudlets are scheduled to the virtual machine according to the arrival time. FCFS technique is very easy to implement in the cloud environment. However, it does not consider any other criteria associated with the cloudlets while allocating the virtual machine to them. Therefore, the total processing time to execute the cloudlet is very high and resource balancing degree is very low because of less utilization of cloud resources.

Round-Robin (RR): RR technique is very much similar to the FCFS methods for the allotment of virtual machine to the cloudlet [20]. The main difference of this technique, a time slot or time quantum, has been allocated for each cloudlet. After end of time slot of cloudlet, stop the execution of current cloudlet and next cloudlet from the cloudlet provide the resource for the execution. The time slot continuously checks for every cloudlet until the cloudlet finished the execution. Round robin techniques have high resource utilization rate but it finished the execution of cloudlet with very high makespan time.

Min-Min Algorithm: It is the most famous heuristic techniques for scheduling the cloudlet to the virtual machine in the cloud environment [21–23]. It calculates the completion time of each cloudlet against the available number of virtual machine in the cloud datacenters. Then, arrange cloud-lets according to the completion time and schedule the cloudlet to the VM which have the minimum completion time. Min-Min technique has very low makespan time due to the better management of cloudlet. However, it has a very low load balancing degree because of allocated smaller task to the high performance virtual machines.

Max-Min Algorithm: it selects the cloudlets with longest completion time to be scheduled on VM that gives it minimum completion time [24, 25]. Therefore, the max-min is more efficient than min-min algorithm, and it considers the system load balancing.

Conductance Algorithm: It is a heuristic technique for solving the scheduling problem in cloud computing environment [26]. This technique represents virtual machine as a pipe and VM can be classified as: thicker VM and thin VM. A thicker pipe has the more water conductance than the thin pipe. Similarly, thicker VM have higher processing power than the thin VM. The developed conductance technique considers four variables: cloudlet length, VM processing power in MIPS, conductance value, and stripe variable for designing the scheduling algorithm for the cloudlet. Cloudlet length measures the size of request task while virtual machine processing power measured in MIPS. Conductance value represents the power capacity of each virtual machine and stripe value find the number of cloudlet which are going to executed on virtual machine according to the conductance value. Furthermore, the proposed technique has a low time complexity but it gives the higher makespan time. Another major drawback of conductance algorithm is that it does not take care of load balancing factor, where it shortlists the number of cloudlet according to the stripe value and the longest cloudlet assign the thicker virtual machine.

3.5.2 Meta-Heuristic Methods

Meta-heuristic techniques are design to solve the cloudlet scheduling problem in cloud environment [27, 28]. These techniques are either single objective or multiple objectives based on the cloudlet requirement set by the cloud user. Heuristic based methods try to find the acceptable solution for the cloudlet scheduling problem with a large search space while meta-heuristic based techniques are population based and begin with initialization of solution which further enhanced after end of iteration by applying various search methods and operation on the exiting solutions. Most famous meta-heuristic based techniques are discussed below.

Genetic Algorithm (GA): It is a nature inspired search-based optimization techniques to solve the cloudlet scheduling problems in cloud environment [2931]. Generally, GA method is used to find either an optimal solution or sub-optimal solution for the specific problem by performing the crossover and mutation function. S. Singh and M. Kalra presented Modified Genetic Algorithm (MGA) for cloud computing [32]. The MGA algorithm uses GA method in which initial solution is initialized with the new version of max-min algorithm. The MGA improves performance of scheduling in term of makespan. It has low makespan than the max-min algorithm. However, the time complexity is very high.

Simulated Annealing (SA): It has smaller time complexity than GA [33, 34]. X. Liu and J. Liu developed new scheduling algorithm based on SA for cloud computing. The algorithm uses greedy strategy [35, 36] to guarantee that the initial task scheduling near the optimal solution and improve the efficiency of the search algorithm simulation. MSA algorithm is better than the greedy algorithm in terms of makespan and load balancing, but it has high time complexity than the greedy.

Cloudlet scheduling in cloud computing belongs NP Complete problem class and to meta-heuristic based techniques shown a powerful impact for solving the NP complete problems in a reasonable amount of time. Particle swarm optimization [37] is a nature inspired optimization technique and the most useful technique for solving the scheduling problem. Ant Colony Optimization [38] another famous metaheuristic-based technique used by various researcher for cloud scheduling. Furthermore, Chemical Reaction Optimization [39] is new one technique helpful for generating the schedule sequence in cloud domain.

3.6 Cloudlet Scheduling Approach (CSA)

3.6.1 Proposed CSA

The proposed CSA is shown in Figure 3.2. The CSA consists of three processes: Resources Availability and Cloudlet Requirements Process, Clustering Process, and Resource Selection and Cloudlet Assignment Process.

  • Process 1: Resources Availability and Cloudlet Requirements, Datacenter broker looks for the availability of resources presented in the system and collects information about those resources. This information includes what are the available resources and what are cloudlets requirements. Indeed, the CSA algorithm sorts cloudlet list by descending order to schedule the large cloudlet firstly.
  • Process 2: Clustering, the arrived cloudlet list is grouped into several clusters equal to the number of VMs. Each cluster has two important values: Cluster Maximum Load (CML) and Cluster Total Length (CTL). For each VM, the algorithm groups some of cloudlets into one cluster according the CML value as in equation (3.6).

Where, Total MIPS is the summation of MIPS for all VMs, and Total MI is the summation of MI for all cloudlets. CTL (Ci) is the total MI of the cloudlets that belong to cluster Ci. Wherever each cluster takes approximately cloudlets with CTL equals to CML, the schedule length will decrease. Therefore, the algorithm uses ratio value to guarantee that each cluster will take its capacity or approaches it. After 500 experiments, we find that the Ratio value at 1.002 is more efficient.

  • Process 3: Resource Selection and Cloudlet Assignment, it is a deciding state in which a specific resource is selected to execute specific cluster. In this process, the CSA algorithm assigns the clusters to the available VMs. Only one cluster is assigned to specific VM and each VM executes only one cluster.

3.6.2 Time Complexity

The time complexity of the proposed CSA is analyzed according to algorithm shown in Figure 3.2. The time complexity is the summation of time complexity of Process 1, Process 2, and Process 3. In the process 1, the CSA algorithm sorts the arrived cloudlets using quick sort algorithm with time complexity O(n log n). In the process 2, the algorithm grouped the cloud-lets into number of clusters equal to the number of VMs. This process has time complexity O(n). The last process assigns each cluster Ci to specific VMi with time complexity O(m). So, the overall time complexity of the proposed CSA is O(n log n+ n+ m) = O(n (log n+ 1)+ m) = O(n log n+ m). On the other hand, the time complexity of SA [35] is computed by time of greedy algorithm as the initial solution plus the time of SA without applying the greedy algorithm. The greedy algorithm has O(n2+nm). Because it sorts cloudlets in descending order and then it schedules each one to VM which minimize the execution time. The SA has O(itr × n), where itr is the number of iterations. The overall running time is O(itr × n+n2+nm). Like SA, MGA sorts the cloudlets in descending order to select the largest cloudlet. The time complexity of MGA [32] is composed from two parts: Max-Min algorithm with time complexity O(mn2), and the modified genetic algorithm with time complexity O(G×P(mn)). Where, G is the number of generations and P is the number of populations. The overall time complexity of MGA is O(G×P(mn))+n2m).

From the previous analysis, it is noted that the proposed CSA has lower time complexity than both MGA and SA algorithms. The CSA collects the advantages of heuristic algorithm and meta-heuristic algorithm, where it gives low makespan and low time complexity.

3.6.3 Case Study

To validate the working sequence of proposed CSA technique, we consider example of ten independent cloudlets as shown in the Table 3.1 allocated to the three virtual machines.

In the first process, the CSA collects information about cloudlets requirements and resources availability. It sorts the cloudlets in descending order.

With the second process, firstly, the CSA algorithm creates three empty clusters equal to the number of VMs. Secondly; it distributes the cloudlets on the clusters C0, C1, and C2, according to CML value for each cluster.

According to Eq. (3.6), we can calculate a CML value of each cluster as following:

CML (C0) = (450/850)*41000 = 21705.9, CML(C1) = (250/850)*41000 = 12058.8, and CML(C2) = (150/850)*41000 = 7235.3, where total MI = (1000 + 1500 + 2500 + 3500 + 4000 + 6000 + 6500 + 8000 + 3000 + 5000) = 41000. Finally, the CSA algorithm constructs the clusters based on the CML value as the follows. C0 = {T2, T3, T7, T8, T9} with CTL = 22000 CML (C0) = 21705.9, C1 = {T1, T4, T6} with CTL = 12000 CML(C1) = 12058.8, and C2 = {T0,T5} with CTL = 7000 CML(C2) = 7235.

By applying process 3 of the CSA, C0 will be allocated into VM0, C1 will be allocated into VM1, and C2 will be allocated into VM2. The schedule length is 48.89 sec with running time equals 0.005 sec. By applying conductance, MGA, and MSA algorithms, the schedule lengths are 65.5 sec, 50 sec, and 50 sec respectively. In addition, the running times for the algorithms are 0.001 sec for the conductance algorithm, 0.007 sec for SA, and 0.015 sec for the MGA.

Table 3.1 Cloudlet length.

CloudletLength MI
T01000
T11500
T22500
T33500
T44000
T56000
T66500
T78000
T83000
T95000

3.7 Simulation Results

This section discuss the performance analysis of CSA, which is evaluated by considering schedule length, balancing degree, and running time of the CSA., In addition, the simulation results are compared with the most recent heuristic technique, conductance algorithm [26], and with the well-known meta-heuristic algorithms, MGA [32], and MSA [35]. The conductance algorithm is selected because it provides low time complexity. In addition, it finds a good solution than FCFS as the default scheduler of cloud computing model. While, the MGA and MSA algorithms are selected as the meta-heuristic scheduling algorithms due to (i) firstly, the MGA algorithm is the update of the most famous meta-heuristic GA technique. Secondly, it gives better solution than Max-min and Min-min algorithms. (ii) The MSA algorithm provides low time complexity and better solutions than greedy algorithm.

3.7.1 Simulation Environment

In this study, the well-known CloudSim simulator [40] is used to simulate the cloud-computing environment. Indeed, a cloudlet generator is developed to generate random independent set of cloudlets. The generated cloudlets have lengths from 1000 MI to 10,000 MI. In addition, there is a VM generator to generate list of VMs with MIPS in the range of 100 to 1000 MIPS.

3.7.2 Evaluation Metrics

In this study, two evaluation parameters are used to compare the proposed CSA with the other algorithms, namely schedule length and balancing degree.

  1. The schedule length (i.e. makespan) is the maximum execution time for all used virtual machines.
  2. The Balancing Degree (BD) is the degree of load balancing between the VMs that achieves after scheduling. By using the optimal solution definition in section (3.4), we can use eq. (3.7) to calculate the balancing degree.

From Eq. (3.7), we noted that the algorithm with high balancing degree is the near optimal solution.

3.7.2.1 Performance Evaluation with Small Number of Cloudlets

Table 3.2 shows the simulation results of scheduling 10, 20, 40, 60, 80, and 100 cloudlets into three VMs by the proposed CSA, MGA [32], MSA [35], and conductance algorithm [26]. From Table 3.2, we see that the proposed CSA provides the best results. It gives low schedule length at low running time. This is because CSA algorithm assigns each cluster into the VM that minimizes its execution time. Since CSA algorithm gives only one solution using clustering idea, it schedules large number of cloudlets in low running time. Unlike MGA and MSA, they find many solutions. And then they compare the solutions to find the best of them. This operation spends more time.

From the results SL of conductance algorithm, we can see that our algorithm has lower SL than the conductance. This is because the conductance algorithm assigns largest cloudlets in one VM. Thus, it doesn’t balance between the requirement of computing power and available VMs capacity.

3.7.2.2 Performance Evaluation with Large Number of Cloudlets

Tables 3.3, 3.4, 3.5, and 3.6 show the simulation results of scheduling largest number of cloudlets on different VMs. From these tables, we noted that the CSA algorithm minimizes the schedule length and running time. The algorithm distributes large number of cloudlets in small number of clusters. After that, it assigns the clusters instead of the cloudlets. This operation takes very small time. Thus, CSA algorithm has low running time. The CSA provides also the heights BD values. This means that it allocates the cloudlets into the available resources with high balancing degree. This balancing increases the system utilization. In addition, the makespan of CSA is less than that resulting from the other algorithms. This is because the CSA conceders a VM capacity. It calculates CML and CTL values to each cluster. This values balance VMs capacity with cluster requirements.

Tables 3.5, 3.6, and 3.7 indicate that the CSA is more efficient with large number of cloudlets. It can schedule 2000 cloudlets at only one second. This time is very small compared with the MGA and MSA algorithms. We see also that the running time with red color of MGA algorithm is more than schedule length of it. This means that MGA algorithm can’t use with large number of cloudlets, because it is not useful. As an example, in Table 3.5, the running time of MGA algorithm of 1000 cloudlets at 100 VMs equals 111. This value is larger than the schedule length (i.e. 106). Similarly, we see SL of MGA is larger than running time of all red values in Tables 3.6 and 3.7.

Table 3.2 Scheduling different cloudlets on three VMs.

images

Table 3.3 Scheduling 100 cloudlets on different numbers of VMs.

images

Table 3.4 Scheduling 500 cloudlets on different numbers of VMs.

images

Table 3.5 Scheduling 1000 cloudlets on different numbers of VMs.

images

Table 3.6 Scheduling 2000 cloudlets on different numbers of VMs.

images

Table 3.7 Scheduling large numbers of cloudlets on different numbers of VMs.

images

From all tables, the proposed CSA can achieve lower schedule length than the MGA, and SA. In addition, it finds a near optimal solution faster than both of them by 99.5% with MGA and 92.9% with MSA.

Although the conductance algorithm gives low time complexity as shown in all of tables, the CSA gives very low schedule length compared the conductance algorithm. It gives lower makespan than conductance scheduling algorithm by 41%. The proposed CSA not only minimize the schedule length, but also makes the system more balancing than any algorithm. In addition, the CSA appears like heuristic algorithm in result stability. It generates only one solution at all run times for specific problem, while the other meta-heuristic algorithms may give more than different solutions at each run for the same problem. In addition, it appears like meta-heuristic in minimizing schedule length.

3.8 Conclusion

In this research work, a new efficient Cloudlet Scheduling Approach has been proposed to solve the cloudlet scheduling problem in cloud computing. The main idea of the proposed approach is to minimize the overall time complexity by converting large size cloudlet scheduling problem into small size cluster scheduling problem and increases the system utilization. The proposed CSA enhances the overall system performance. It increases the balancing degree between the different VMs in the system. The new approach is more efficient than the most recent heuristic and meta- heuristic algorithms. The simulation results depicted that the CSA reduces the makespan than MGA and SA techniques and finds good solutions faster than them by 99.5% with MGA and 92.9% with SA. In addition, the CSA gives lower makespan than heuristic conductance scheduling algorithm by 41%.

References

  1. 1. https://www.ibm.com/cloud‐computing/learn‐more/what‐is‐cloud‐computing/.
  2. 2. https://en.wikipedia.org/wiki/Cloud_computing.
  3. 3. Dubey, K., Nasr, A.A., Sharma, S.C., El-Bahnasawy, N., Attiya, G., El-Sayed, A., Efficient VM placement policy for data centre in cloud environment, in: Soft Computing: Theories and Applications, pp. 301–309, Springer, Singapore, 2020.
  4. 4. Swathi, T., Srikanth, K., Raghunath Reddy, S., Virtualization in cloud computing. Int. J. Comput. Sci. Mobile Comput., 3, 5, 540–546, 2014.
  5. 5. Dubey, K. and Sharma, S.C., An extended intelligent water drop approach for efficient VM allocation in secure cloud computing framework. J. King Saud Univ.-Comput. Inf. Sci., 2020.
  6. 6. Guo, X., Multi-objective task scheduling optimization in cloud computing based on fuzzy self-defense algorithm. Alexandria Eng. J., 60, 6, 5603–5609, 2021.
  7. 7. Alsaidy, S.A., Abbood, A.D., Sahib, M.A., Heuristic initialization of PSO task scheduling algorithm in cloud computing. J. King Saud Univ.-Comput. Inf. Sci., 2020.
  8. 8. NoorianTalouki, R., Shirvani, M.H., Motameni, H., A heuristic-based task scheduling algorithm for scientific workflows in heterogeneous cloud computing platforms. J. King Saud Univ.-Comput. Inf. Sci., 2021.
  9. 9. Oudaa, O., Gharsellaoui, H., Ahmed, S.B., An agent-based model for resource provisioning and task scheduling in cloud computing using DRL. Proc. Comput. Sci., 192, 3795–3804, 2021.
  10. 10. Yang, C., Liao, F., Lan, S., Wang, L., Shen, W., Huang, G.Q., Flexible resource scheduling for software-defined cloud manufacturing with edge computing. Engineering, 2021.
  11. 11. Sanaj, M.S. and Joe Prathap, P.M., Nature inspired chaotic squirrel search algorithm (CSSA) for multi objective task scheduling in an IAAS cloud computing atmosphere. Eng. Sci. Technol., Int. J., 23, 4, 891–902, 2020.
  12. 12. Dubey, K. and Sharma, S.C., A novel multi-objective CR-PSO task scheduling algorithm with deadline constraint in cloud computing. Sustain. Comput.: Inform. Syst., 32, 100605, 2021.
  13. 13. Mathew, T., Sekaran, K., Jose, J., Study and analysis of various task scheduling algorithms in the cloud computing environment. International Conference on Advances in Computing, Communications, and Informatics (ICACCI), pp. 658–664, 2014.
  14. 14. Bi, J., Yuan, H., Tan, W., Zhou, M.C., Zhang, J., Li, J., Application- Aware dynamic fine-grained resource provisioning for virtualized cloud data centers. IEEE Trans. Autom. Sci. Eng. (TASE), 14, 2, 1172–1184, 2015.
  15. 15. Yuan, H., Bi, J., Tan, W., Zhou, M.C., Li, B.H., Li, J., TTSA: An effective scheduling approach for delay bounded tasks in hybrid clouds. IEEE Trans. Cybern. (TCYB), 47, 11, 3658–3668, 2016.
  16. 16. Bi, J., Yuan, H., Tan, W., Li, B.H., TRS: Temporal request scheduling with bounded delay assurance in a green cloud data center. Inf. Sci. (INS), 2016.
  17. 17. Kimpan, W. and Kruekaew, B., Heuristic task scheduling with artificial bee colony algorithm for virtual machines. The 8th International Conference on Soft Computing and Intelligent Systems (SCIS) and 17th International Symposium on Advanced Intelligent Systems (ISIS), 2016.
  18. 18. Nasr, A., EL-Bahnasawy, N., El-Sayed, A., Performance enhancement of scheduling algorithm in heterogeneous distributed computing systems. Int. J. Adv. Comput. Sci. Appl.(IJACSA), 6, 5, 88–96, 2015.
  19. 19. Nasr, A., EL-Bahnasawy, N., El-Sayed, A., A new duplication task scheduling algorithm in heterogeneous distributed computing systems. Bull. Electr. Eng. Infor. (BEEI), 5, 3, 373–382, September 2016.
  20. 20. Pavithra, B. and Ranjana, R., A comparative study on performance of energy efficient load balancing techniques in cloud. International Conference on Wireless Communications, Signal Processing and Networking (WiSPNET), pp. 1192–1196, 2016.
  21. 21. Chen, H., Wang, F., Helian, N., Akanmu, G., User-priority guided min-min scheduling algorithm for load balancing in cloud computing. National Conference on Parallel Computing Technologies (PARCOMPTECH), pp. 1–8, 2013.
  22. 22. Kokilavani, T. and George Amalarethinam, D.I., Load balanced min-min algorithm for static meta-task scheduling in grid computing. Int. J. Comput. Appl., 20, 2, 43–49, 2011.
  23. 24. Etminani, K. and Naghibzadeh, M., A min-min max-min selective algorithm for grid task scheduling. IEEE/IFIP International Conference in Central Asia on Internet, pp. 1–7, 2007.
  24. 25. Devipriya, S. and Ramesh, C., Improved max-min heuristic model for task scheduling in cloud. International Conference on Green Computing, Communication and Conservation of Energy (ICGCE), pp. 883–888, 2013.
  25. 26. Chatterjee, T., Ojha, V.K., Adhikari, M., Banerjee, S., Biswas, U., Snáše, V., Design and implementation of an improved datacenter broker policy to improve the QoS of a cloud. Proceedings of the 5th International Conference on Innovations in Bio-Inspired Computing and Applications IBICA, Springer International Publishing, pp. 281–290, 2014.
  26. 27. Adil, S.H., Raza, K., Ahmed, U., Ali, S.S.A., Hashmani, M., Cloud task scheduling using nature inspired meta-heuristic algorithm. International Conference on Open Source Systems & Technologies (ICOSST), pp. 158–164, 2015.
  27. 28. Tawfeek, M.A., El-Sisi, A., Keshk, A.E., Torkey, F.A., Cloud task scheduling based on ant colony optimization. 8th International Conference on Computer Engineering & Systems (ICCES), pp. 64–69, 2013.
  28. 29. Sindhu, S. and Mukherjee, S., A genetic algorithm based scheduler for cloud environment. 4th International Conference on Computer and Communication Technology (ICCCT), September 2013, IEEE, pp. 23–27.
  29. 30. Omara, F.A. and Arafa, M.M., Genetic algorithms for task scheduling problem. J. Parallel Distrib. Comput., 70, 1, 13–22, 2010.
  30. 31. Kar, I., Parida, R.N.R., Das, H., Energy aware scheduling using genetic algorithm in cloud data centers. International Conference on Electrical, Electronics, and Optimization Techniques (ICEEOT), IEEE, 2016.
  31. 32. Singh, S. and Kalra, M., Scheduling of independent tasks in cloud computing using modified genetic algorithm. International Conference on Computational Intelligence and Communication Networks (CCIN), Nov. 2014, IEEE, pp. 565–569.
  32. 33. Attiya, G. and Hamam, Y., Task allocation for maximizing reliability of distributed system: A simulated annealing approach. J. Parallel Distrib. Comput., 66, 1259–1266, 2006.
  33. 34. Kashani, M. and Jahanshahi, M., Using simulated annealing for task scheduling in distributed systems. International Conference on Computational Intelligence, Modeling and Simulation, pp. 265–269, 2009.
  34. 35. Liu, X. and Liu, J., A task scheduling on simulated annealing algorithm in cloud computing. Int. J. Hybrid Inf. Technol. (IJHIT), 9, 6, 403–412, 2016.
  35. 36. Kahraman, C., Engin, O., Kaya, İ., Öztürk, R.E., Multiprocessor task scheduling in multistage hybrid flow-shops: A parallel greedy algorithm approach. Appl. Soft Comput., 10, 4, 1293–1300, September 2010.
  36. 37. Awad, A., EL-Hefnawy, N., Abdel_Kader, H., Enhanced particle swarm opti-mization for task scheduling in cloud computing environment. International Conference on Communication, Management and Information Technology (ICCMIT), pp. 920–929, 2015.
  37. 38. Tumeo, A., Pilato, C., Ferrandi, F., Sciuto, D., Lanzi, P., Ant colony optimization for mapping and scheduling in heterogeneous multiprocessor systems. International Conference on Embedded Computer Systems, Architectures, Modeling, and Simulation, SAMOS, pp. 142–149, 2008.
  38. 39. Xu, J., Lam, A., Li, V., Chemical reaction optimization for the grid scheduling problem. IEEE International Conference on Communications, ICC, pp. 1–5, 2010.
  39. 40. Calheiros, R.N., Ranjan, R., Beloglazov, A., De Rose, C.A., Buyya, R., CloudSim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw.- Pract. Exp., 41, 1, 23–50, 2011.

Note

  1. *Corresponding author: [email protected]
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset