A Process Scheduling Algorithm Based on Threshold for the Cloud Computing Environment

Similar documents
Double Threshold Based Load Balancing Approach by Using VM Migration for the Cloud Computing Environment

Enhanced Live Migration of Virtual Machine Using Comparison of Modified and Unmodified Pages

Improved Effective Load Balancing Technique for Cloud

Figure 1: Virtualization

LOAD BALANCING IN CLOUD COMPUTING USING ANT COLONY OPTIMIZATION

Bio-Inspired Techniques for the Efficient Migration of Virtual Machine for Load Balancing In Cloud Computing

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

LOAD BALANCING ALGORITHM TO IMPROVE RESPONSE TIME ON CLOUD COMPUTING

Virtual Machine Placement in Cloud Computing

ABSTRACT I. INTRODUCTION

Dynamic Task Scheduling in Cloud Computing Based on the Availability Level of Resources

CHAPTER 6 ENERGY AWARE SCHEDULING ALGORITHMS IN CLOUD ENVIRONMENT

Re-allocation of Tasks according to Weights in Cloud Architecture

Efficient Technique for Allocation of Processing Elements to Virtual Machines in Cloud Environment

A Review on Cloud Service Broker Policies

Task Scheduling Algorithm in Cloud Computing based on Power Factor

Load Balancing Algorithms in Cloud Computing: A Comparative Study

AN EFFICIENT SERVICE ALLOCATION & VM MIGRATION IN CLOUD ENVIRONMENT

Efficient Task Scheduling Algorithms for Cloud Computing Environment

A Grouping based Scheduling Algorithm on Load Balancing in Cloud Computing

An Optimized Virtual Machine Migration Algorithm for Energy Efficient Data Centers

CLOUD COMPUTING: SEARCH ENGINE IN AGRICULTURE

A Load Balancing Approach to Minimize the Resource Wastage in Cloud Computing

An Enhanced Throttled Load Balancing Approach for Cloud Environment

Cloud Load Balancing using Round Robin and Shortest Cloudlet First Algorithms

Keywords: Cloud, Load balancing, Servers, Nodes, Resources

Performance evaluation of Load Balancing with Service Broker policies for various workloads in cloud computing

Improving QoS Parameters for Cloud Data Centers Using Dynamic Particle Swarm Optimization Load Balancing Algorithm

DYNAMIC LOAD BALANCING FOR CLOUD PARTITION IN PUBLIC CLOUD MODEL USING VISTA SCHEDULER ALGORITHM

A Comparative Study of Load Balancing Algorithms: A Review Paper

Load Balancing in Cloud Computing Priya Bag 1 Rakesh Patel 2 Vivek Yadav 3

Energy-Aware Dynamic Load Balancing of Virtual Machines (VMs) in Cloud Data Center with Adaptive Threshold (AT) based Migration

Experimental Model for Load Balancing in Cloud Computing Using Throttled Algorithm

A Comparative Study of Various Computing Environments-Cluster, Grid and Cloud

ENERGY EFFICIENT VIRTUAL MACHINE INTEGRATION IN CLOUD COMPUTING

Selection of a Scheduler (Dispatcher) within a Datacenter using Enhanced Equally Spread Current Execution (EESCE)

ANALYSIS OF LOAD BALANCERS IN CLOUD COMPUTING

Experimental Model for Load Balancing in Cloud Computing Using Equally Spread Current Execution Load Algorithm

Multi-Criteria Strategy for Job Scheduling and Resource Load Balancing in Cloud Computing Environment

A QoS Load Balancing Scheduling Algorithm in Cloud Environment

A Comparative Performance Analysis of Load Balancing Policies in Cloud Computing Using Cloud Analyst

Enhanced SLA-Tree Algorithm to Support Incremental Tree Building

Scheduling of Independent Tasks in Cloud Computing Using Modified Genetic Algorithm (FUZZY LOGIC)

Alternative Approaches for Deduplication in Cloud Storage Environment

CLUSTERING BIG DATA USING NORMALIZATION BASED k-means ALGORITHM

Survey on Round Robin and Shortest Job First for Cloud Load Balancing

D. Suresh Kumar, E. George Dharma Prakash Raj

Improving CPU Performance of Xen Hypervisor in Virtualized Environment

A load balancing model based on Cloud partitioning

GSJ: VOLUME 6, ISSUE 6, August ISSN

[Khanchi* et al., 5(6): June, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116

Achieving Stability in the Round Robin Algorithm

Energy Efficiency Using Load Balancing in Cloud Data Centers: Proposed Methodology

A Review on Reliability Issues in Cloud Service

Enhanced Round Robin Technique with Variant Time Quantum for Task Scheduling In Grid Computing

An Integration of Round Robin with Shortest Job First Algorithm for Cloud Computing Environment

Improved Task Scheduling Algorithm in Cloud Environment

Efficient Load Balancing Task Scheduling in Cloud Computing using Raven Roosting Optimization Algorithm

Global Journal of Engineering Science and Research Management

A new efficient Virtual Machine load balancing Algorithm for a cloud computing environment

A New Approach to Ant Colony to Load Balancing in Cloud Computing Environment

An Improved Task Scheduling Algorithm based on Max-min for Cloud Computing

Analysis of Various Load Balancing Techniques in Cloud Computing: A Review

PRIORITY BASED NON-PREEMPTIVE SHORTEST JOB FIRST RESOURCE ALLOCATION TECHNIQUE IN CLOUD COMPUTING

INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING IN RESEARCH TRENDS VOLUME 2, ISSUE 7, JULY 2015, PP Review on Various VM Migration Techniques

An Intensification of Honey Bee Foraging Load Balancing Algorithm in Cloud Computing

Hybrid of Ant Colony Optimization and Gravitational Emulation Based Load Balancing Strategy in Cloud Computing

k-tier AND SELECTIVE BACKFILLING APPROACH FOR PARALLEL WORKLOAD SCHEDULING IN CLOUD

Workload Aware Load Balancing For Cloud Data Center

Assorted Load Balancing Algorithms in Cloud Computing: A Survey

Energy Efficient Power Management in Virtualized Data Center

CHAPTER 6 STATISTICAL MODELING OF REAL WORLD CLOUD ENVIRONMENT FOR RELIABILITY AND ITS EFFECT ON ENERGY AND PERFORMANCE

Associate Professor, Aditya Engineering College, Surampalem, India 3, 4. Department of CSE, Adikavi Nannaya University, Rajahmundry, India

An Efficient Architecture for Resource Provisioning in Fog Computing

Artificial Bee Colony Based Load Balancing in Cloud Computing

A Novel Load Balancing Model Using RR Algorithm for Cloud Computing

A Survey on CloudSim Toolkit for Implementing Cloud Infrastructure

QADR with Energy Consumption for DIA in Cloud

Various Strategies of Load Balancing Techniques and Challenges in Distributed Systems

A New RR Scheduling Approach for Real Time Systems using Fuzzy Logic

Survey on Reliability Control Using CLR Method with Tour Planning Mechanism in WSN

Load Balancing in Cloud Computing System

A SURVEY OF VARIOUS SCHEDULING ALGORITHM IN CLOUD COMPUTING ENVIRONMENT

Load Balancing in Cloud Computing : A Survey

International Journal of Computer & Organization Trends Volume5 Issue3 May to June 2015

A Comparative Study of Various Scheduling Algorithms in Cloud Computing

An Optimized Time Series based Two phase strategy Pre-Copy Algorithm for Live Virtual Machine Migration

PBVMLBA: Priority Based Virtual Machine Load Balancing Algorithm for Cloud Computing

The Virtual Machine Migration in Cloud Computing Using Firefly and Gravitational Algorithm

Chapter 3 Virtualization Model for Cloud Computing Environment

A Semi-Distributed Load Balancing Algorithm Using Clustered Approach

Load Balancing in Cloud Computing

A Study on Load Balancing in Cloud Computing * Parveen Kumar,* Er.Mandeep Kaur Guru kashi University, Talwandi Sabo

A Study on Issues Associated with Mobile Network

Comparative Analysis of Host Utilization Thresholds in Cloud Datacenters

A CLASSIFICATION FRAMEWORK FOR SCHEDULING ALGORITHMS IN WIRELESS MESH NETWORKS Lav Upadhyay 1, Himanshu Nagar 2, Dharmveer Singh Rajpoot 3

A COMPARATIVE ANALYSIS ABOUT LOAD BALANCING ALGORITHMS USING CLOUD SIMULATOR

Star: Sla-Aware Autonomic Management of Cloud Resources

HSRP (Hot Stand by Routing Protocol) Reliability Issues Over the Internet Service Provider s Network

A Mediator based Dynamic Server Load Balancing Approach using SDN

Transcription:

Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 3, Issue. 4, April 2014, pg.1136 1141 RESEARCH ARTICLE ISSN 2320 088X A Process Scheduling Algorithm Based on Threshold for the Cloud Computing Environment Kiran Kumar Shakya 1, Prof. Dr. D. Singh Karaulia 2 ¹Computer Technology & Applications, India ²Professor, Computer Engineering & Application, India 1 kiran.shakya74@gmail.com; 2 dskaraulia@nitttrbpl.ac.in Abstract Cloud is a technology which supports on-demand distribution of computer resources. Resources in the cloud environment are heterogeneous in nature and geographically distributed. Demand of a cloud user cannot be predicted as it may change dynamically on runtime. Therefore, resource management and the resource scheduling, in such a large-scale distributed environment, is a challenging task. In cloud computing, there are multiple resources and large number of users that can request for same set of resources at the same time. This duly justifies need of an algorithm that optimally schedules the cloud resources for different virtual machines. This paper presents new threshold based VM scheduling approach which calculates the threshold before allocating the VM to the host. Key Terms- Cloud Computing; Distributed Computing; On Demand Resources; Round Robin; Virtualization; VM scheduling I. Introduction Cloud computing is close to utility computing to provide online IT services on demand using pay per use model. It is growing fast because of its attractive features such as on demand services, easy to use, cheap and pay as use scheme etc. [2, 3, 4]. In the cloud all resources (CPU, memory, network bandwidth etc) are provided as a service. Virtualization is a key technology behind the cloud computing, where all physical resources of a host are shared by multiple users. It allows multiple operating systems, termed guests, to run concurrently on a host server, which is implemented using hypervisor, also called virtual machine manager (VMM). Hypervisor creates a VM for each user, according to the user s resource requirement. Furthermore, one or multiple virtual machines can be run on a single host, as show in figure 1. Resource utilization, thus, increases effectively. 2014, IJCSMC All Rights Reserved 1136

Figure1. Cloud Resource Virtualization When any user makes a request for the cloud services, the load balancer of the cloud system then decides suitability of a host machine for fulfilling the user s resources requirement. Since VMs are created by the hypervisor, according to user request, users pay for the resources used only. VM scheduling is a critical job in the cloud computing, which is a mechanism that maps users VM to the appropriate host. Resources in cloud are provided to the client through the VM via internet. Further, overall system performance can also be improved via VM scheduling. There are numerous literatures which propose scheduling algorithms. Some of these proposed algorithms are particularly for serving jobs in a cloud computing environment and some are tailored to fit the cloud environment. For the cloud environment, many adapted scheduling algorithms [5, 6, 7, 8] are proposed in the literature to enhance the total system performance live VM migration, downtime, throughput and the cost. In this paper, we discuss a new VM scheduling technique. The goal of this paper is to bring out the new scheduling algorithm giving its comparative analysis with other works [10]. In section 2, we discuss the background knowledge and related work of VM scheduling. Section 2 gives brief descriptions about proposed approach with algorithm. In section 4, performance evaluation is given with comparison of previous VM scheduling techniques. Section 5 concludes the work discussed in the paper. II. Related Work A) Yang et al. [6] highlighted the issue related to the job scheduling in cloud computing environment. They argued that there is no well-defined job scheduling algorithms are available in the cloud environment that considers the system state in the future. The existing job scheduling algorithms in cloud do not consider the hardware or software failure and recovery in the cloud. To tackle this issue they proposed a Reinforcement Learning (RL) based algorithm that helps the scheduler in making scheduling decision with fault tolerable while maximizing utilities attained in the long term. B) Paul et al. [8] proposed an algorithm which focuses on how to utilize resources efficiently in cloud computing and gain maximum profits. For this purpose, a credit based scheduling algorithm is proposed which evaluates the entire group of tasks in the task queue and finds the minimal completion time of all tasks. The proposed scheduling method considers the scheduling problem as an assignment problem in mathematics where the cost matrix gives the cost of a task to be assigned to a resource. Problem with this algorithm is that it only considers the probability of a resource to be free soon after executing a task so that it will be available for the next waiting, but processing time of a job are not considered. C) Sindhu et al [7] proposed two algorithms for scheduling tasks into the cloud computing. They consider the computational complexity and the computing capacity of the processing elements to schedule the task. This algorithm works in private cloud environment where the resources are limited. D) Isam Azawi Mohialdeen [9], use a random algorithm to assign the job to the VM. In this algorithm jobs are randomly assigned to the available VM. So any process can be assigned to any VM. This method has no overhead and very less complexity. Figure2. The process of random algorithm 2014, IJCSMC All Rights Reserved 1137

E) Problem with this approach is that it does not consider the size of the process so some time it considers a machine which is overloaded. F) Subramanian S. et al. [14] proposed a Greedy algorithm for the VM scheduling in cloud. It is a default VM scheduling algorithm used in Eucalyptus. It is simple and straight forward. In this algorithm first node that it finds with suitable resources for running the VM that is to be allocated. The first node that is identified is allocated the VM. This means that the greedy algorithm exhausts a node before it goes on to the next node. The main advantage of the Greedy algorithm is its simplicity. It is also easy to implement and also the allocation of VMs does not require any complex processing. But major drawback would be the low utilization of available resources. This drawback can be overcome by the Round Robin algorithm. G) Isam Azawi Mohialdeen [9], uses Round Robin method to assign the job to the VM. In this approach a process is selected from the job pool. Then this select process is assigned to the available VM in round robin manner, where all jobs are treated equally. H) Yiqiu Fang et al.[10] proposed a two levels task scheduling mechanism based on load balancing in cloud computing. Cloud Computing Architecture consists of three layers, viz. application layer, platform layer and infrastructure layer [11]. They are using two level scheduling, first level scheduling is from the users application to the virtual machine, and the second is from the virtual machine to host resources. First level scheduler creates a VM description and the second level scheduler finds the appropriate host to the VM according to the task description. Problem with this approach is that they schedule the virtual machine to the host with lightest load each time. The advantage is to avoid overloading for the host holding more resources. Recent studies show that on average an idle server consumes approximately 70% of the power consumed when it is fully utilized. Only task response time and the demand for resources are considered in this paper. III. Proposed work The principle of proposed threshold based technique is to efficiently allocate the cloud computing resources where user s application changes its resource requirement dynamically with respect to time. Resource allocation policies are concerned with efficient utilization of resources for optimum use of cloud server capacity. A cloud system is a collection of data centers located in different parts of the world, in which each data-center is a collection of host servers. During the allocation of resources to a cloud service or cloud application, scheduling algorithms should be applied on the both levels viz. data center level and host server level. At the data center level, appropriate data center is chosen where host server having enough resources to fulfill the dynamic requirement of application with respect to time exists. Whereas, at the host server level resource allocation to the application being scheduled, is considered. Here in this algorithm, as shown in figure2, two concepts of virtual machine scheduling algorithms are applied. First concept is related to selection of a data center that is having some of the host server with free resources to assign to the new cloud application or cloud service. Second concept is to apply the threshold based comparison of data center limit and host server limit. Algorithm 1: Cloud VM Scheduling () Initialize Number of Data Center=m, Number of Host[j] in DataCenter[i]=n, Host_Limit, H_UTD, H_LTD, VM_List. [1] Arrange all hosts into the decreasing order of their capacity [2] for each VM from the VM_List [3] for each Host [j] on current Data_Center [i] do [4] if the host is having sufficient resources then 2014, IJCSMC All Rights Reserved 1138

[5] Host_load= all VM available in that host [6] if Host_Load<=H_UTD && Host_Load>=H_LTD [7] then allocate VM to the host [8] else goto step 3. [9] end if [10] end for Figure3. Virtual machine scheduling model Here a threshold based process scheduling system is designed. This environment is composed of one data center and a physical host server. Where each data-center is a collection of the physical host servers connected by a communication network. Here two threshold values are used to compare the load and these threshold values are calculated using total capacity of the server s CPU power and RAM multiplied by respective weight coefficients. H_TD = Host_Limit * α (Where H_TD is Threshold value of the host and α is a constant for host server set by cloud provider on the basis of dynamic behavior of applications and services). The cloud computing environment is established using CloudSim simulator to implement this system. CloudSim simulator is based on java technology. The flow chart of the proposed algorithm is given in above figure 3. IV. Performance Evaluation We have verified the accuracy and feasibility of the proposed approach using the CloudSim simulator which creates the cloud-computing environment. CloudSim is a, generalized, and extensible simulation framework that allows seamless modeling, simulation, and experimentation of emerging cloud computing infrastructures and application services. The simulation of this work is performed using CloudSim toolkit by developing a cloud environment where load balancing and server consolidation algorithms can be applied in various levels. In this work both have been applied on host server level in cloud environment. At host level, the host server provides its resources to virtual machine up to upper threshold as demand comes. In the CloudSim simulator, VmScheduler is used in virtual machine level which works on 2014, IJCSMC All Rights Reserved 1139

Power Consumption (KWH) Kiran Kumar Shakya et al, International Journal of Computer Science and Mobile Computing, Vol.3 Issue.4, April- 2014, pg. 1136-1141 two policies namely TimeShared and SpaceShared. In the VM level, each virtual machine divides the resources among Cloudlets running on it using cloudletscheduler which also uses two policies namly TimeShared and SpaceShared. CloudSim simulation tool of cloud computing is java based tool to create cloud environment with data center and host server. Entire functionality of CloudSim toolkit is implemented in java classes to perform cloud operation. Java classes of datacenter, datacenterbroker, datacentercharacterstics, host, vm,vmallocationpolicy, vmscheduler, cloudlet and cloudletscheduler are the main classes of the CloudSim simulator. In the first step of establishing cloud environment, datacenters are created using the host server having its characteristics and physical host server and its resources description. The proposed approach is implemented using threshold values. If load or utilization of any host system is more than threshold value then user requests are transferred to another host machine to fulfill the resource requirement. Probability of VM migrations are increased with the load, which affect the efficiency of the cloud system. The proposed work is simulated using various threshold values from 0.5 to 1.0. 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 10 20 30 40 50 60 Number of Host Machine [0.50] [0.60] [0.70] [0.80] [0.90] Figure4.1. Simulation Result for threshold The graph presented in figure 4.1, represents the comparative analysis of scheduling algorithm using threshold values in terms of power consumption by cloud system for different number of cloudlet execution time. As shown in the above graph, the threshold based algorithm presents better result when the threshold value is equal to 0.8. It is, thus, the optimum threshold value for cloud server with efficiency. Figure 4.2, represents the comparative study of threshold based algorithm and general scheduling algorithm. As shown in figure, the proposed algorithm is power efficient compared to general scheduling algorithm [10]. Proposed algorithm uses the concept of threshold value to allocate resources to the virtual machine. The threshold value restricts the virtual machine to occupy all resources of the host machine. Due to this, in the approach, dynamic requirement of resources can be handled without migration of virtual machine. 2014, IJCSMC All Rights Reserved 1140

Power Consumption (KWH) Kiran Kumar Shakya et al, International Journal of Computer Science and Mobile Computing, Vol.3 Issue.4, April- 2014, pg. 1136-1141 2 1.5 1 0.5 0 10 20 30 40 50 60 Number of Host Machine General Schedulin g Algo Based Schedulin g Algo. [0.80] Figure4.2. Comparative Simulation Result Conclusion VM scheduling is an important feature of the virtualization. Resource utilization can be increased by the proper VM scheduling. It can also play an important role in reducing the number of migration. A threshold based virtual machine scheduling algorithm, proposed in this paper, is able to allocate VMs to the host till the upper threshold is reached. It is found that the uses of threshold increases resource utilization and reduces power consumption in a Cloud setup. References [1] Peer1 hosting site puts a survey on Visualized: ring around the world of data center power usage. From engadget.com,2011 [2] Peter Mell,Timothy Grance, "Cloud Computing" by National Institute of Standards and Technology - Computer [3] Yatendra sahu, R.K. Pateriya cloud computing overview with load balancing techniques International Journal of Computer Applications (0975 8887) Volume 65 No.24, March 2013, pp: 40-44. [4] Wenke Ji, Jiangbo Ma A Reference Model of Cloud Operating and Open Source Software Implementation Mapping in 18th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, 2009.. [5] Li et al. A scheduling algorithm for private clouds. Proceedings of 12 th IEEE International Conference on Cloud and Service Computing, 2011 [6] Yang, B et al. An utility based job scheduling algorithm for cloud computing considering reliability factor. Proceedings of IEEEmInternational Conference on Cloud and Service Computing, Dec 2011. [7] Sindhu, S. et al. Efficient task scheduling algorithms for cloud computing environment. Commun. Comput. Inform. Sci., PP.79-83,2011. [8] Paul, M. et al. Task-scheduling in cloud computing using credit based assignment problem,.international journal of Comput. Sci. Eng., pp. 26-30, 2011 [9] Miyuki sato creating next generation cloud computing based network services and the contribution of social cloud operation support system (OSS) to society 18th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, 2009. [10] Yiqiu Fang et al. A Task Scheduling Algorithm Based on Load Balancing in Cloud Computing, 18th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, 2010. [11] Armbrust, M.: Above the Clouds: A Berkeley View of Cloud Computing. In: EECS Department, University of California, Berkeley (2009) [12] Börje Ohlman, Anders Eriksson What Networking of Information Can Do for Cloud Computing 18th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, 2009. [13] Anas BOUA Y AD, Asmae BLILA T, Nour el houda MEJHED, Mohammed EL GHAZI Cloud computing: security challenges IEEE Computer Society, 2012 [14] Subramanian S, Nitish Krishna G, Kiran Kumar M, Sreesh P4and G R Karpagam, An Adaptive Algorithm For Dynamic Priority Based Virtual Machine Scheduling In Cloud IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 6, No 2, November 2012. 2014, IJCSMC All Rights Reserved 1141