Xiong Fuand Yeliang Cang
Schoolof Computer Science and Technology,Nanjing University of Posts and Telecommunications,Nanjing 210023,China
Task scheduling and virtualmachine allocation policy in cloud computing environment
Xiong Fu*and Yeliang Cang
Schoolof Computer Science and Technology,Nanjing University of Posts and Telecommunications,Nanjing 210023,China
Cloud computing represents a novelcomputing model in the contemporary technology world.In a cloud system,the computing power of virtual machines(VMs)and network status can greatly affect the completion time of data intensive tasks.However,most ofthe currentresource allocation policies focus only on network conditions and physical hosts.And the computing power of VMs is largely ignored.This paper proposes a comprehensive resource allocation policy which consists of a data intensive task scheduling algorithm that takes account of computing power of VMs and a VMallocation policy thatconsiders bandwidth between storage nodes and hosts.The VM allocation policy includes VM placementand VMmigration algorithms.Related simulations show that the proposed algorithms can greatly reduce the task completion time and keep good load balance ofphysicalhosts atthe same time.
cloud computing,resource allocation,task scheduling, virtualmachine(VM)allocation.
Many scientific or web tasks which demand high performance of computing and data transmission speed have emerged nowadays.And some of them are very complex and data-intensive.As cloud computing[1]provides a flexible way of delivering an on-demand and pay-as-yougo service which can serve common users all over the world via the Internet[2],an increasing number of people are using it to execute those tasks of high complexity. Cloud computing represents a novelcomputing paradigm accessible and understood only by a selected group ofcompany workers and experts[3].In a cloud system,a coming application may be divided into severalparts which are called tasks,and a task plus the physicalresources(RAM, CPU,etc.the task requests)can be packed as a virtual machine(VM)using virtualization technology[4,5].And VMs can be migrated among differenthosts which makes itpossible to deliver elastic service to cloud users[6].
With the rapid growth of cloud computing,some cloud providers(Amazon EC2,Google,and Microsoftetc.)have builtlarge scale ofdata centers thatmay be distributed over the whole world[7,8].In such a scenario,the data that accessed by cloud-based tasks may be stored in a storage node thathave some geographicalor logicaldistances[9]. For a certain data-intensive task,the data it requests may be spread over data centers of large scale,and its performance is heavily subjectto the volatile bandwidth between hosts and storage nodes[10].As to cloud providers,lower utilization of bandwidth can cause longer data transmission time which means a higher energy cost.In consideration of the huge energy consumed in data centers[11], it is significative to minimize data transmission time for data-intensive tasks.Yet most of the current VM placement and migration algorithms in cloud mainly concentrate on promoting the utilization rate ofphysicalresources like RAM,CPU and bandwidth[12–14],using data management techniques like data replication and caching to cutdown network data access cost[15–17],oroptimizing VMmigration to reduce energy consumption[18–20].
While mostof resource allocation policies focus on dynamic VM consolidation,few of them take consideration of the task scheduling[21–23].In fact,there may be different types of applications in a cloud such as web applications,distributed applications and parallel applications. And many of these applications are divided into multiple tasks ofhigh complexity.These tasks may require different numberof CPUs and have diverse length.And the computing power of each VMalso varies a lot.Therefore,a comprehensive resource allocation policy which consists of a task scheduling algorithm thattakes accountof computing power of VMs and a VM allocation policy that considers bandwidth between storage nodes and hosts is proposed in this paper.
The main objective of the resource allocation policy we are aboutto presentis to promote the performance of tasks in a cloud system.The completion time of a task includes execution time and data transmission time.Therefore,we mainly deal with two aspects of the resource allocation problem:how to schedule tasks to VMs to reduce the execution time;and how to allocate VMs to hosts to cutdown the data transmission time.
Firstly,we should resolve the problem of sending tasks thathave longerprocessing length to the VMs with higher computing power so that the execution time of these tasks willbe reduced.We name itas a task scheduling problem. Secondly,how to allocate VMs to hosts so as to cut down the data transmission time of these VMs is called as a VM allocation problem for short.And there are two algorithms to deal with the VM allocation problem.One is to decide which hostto place a VM,and the other is to select a suitable hostwhen network changes.
The remaining partofthis paperis structured as follows. Related work is shown in Section 2,and the system model is presented in Section 3.In Section 4 and Section 5,severalresource allocation algorithms are introduced and experiment results are shown in Section 6.Finally,conclusions and future work are shown in Section 7.
In a cloud system,computation resources managementis a critical issue,and a number of efforts have been made by researchers from various fields to resolve this problem.A coming application is divided into multiple tasks,and each task plus the computation resources(CPU,RAM,etc.)is packed as a VM to be executed in a physical host using virtualization technology.Mostof the current resource allocation policies only focus on VM allocation,while the task scheduling is largely ignored.Yetthere are some work involves this aspect.
Fang et al.[21]proposed a two-level task scheduling mechanism based on load balancing of hosts.The firstlevelscheduling concentrates on creating the task description of a VM according to the resources required by the task.Then the second-levelscheduling focuses on finding an appropriate physicalhostto place the VM based on the task description.Also load balance of hosts is considered in this algorithm.However,the diversity of VMcomputing powerand the effectof network bandwidth are notconsidered in this scheduling mechanism.In[22],an improved task scheduling algorithm in cloud computing was proposed.In this scheduling algorithm,both computation performance and resource costare considered.Moreover,the user tasks are grouped based on a certain cloud resource’s characteristics to reduce communication overhead,and are sent to the resource.However,the limitation of network bandwidth is notinvolved in this algorithm.
A cloud task scheduling method was proposed in[23]. This method is based on load balancing ant colony optimization.Its main contribution is to balance the system load and minimize the makespan of a given tasks set.In [24],a load-adaptive cloud resource scheduling was presented.Itallocates fastcloud resources using antcolony algorithm to bearsome load on the load-free node.However, only localsolutions can be obtained in these two methods. Long time for network search is needed and therefore they are notsuitable for a large scale data center.
Hatzopoulos etal.[25]proposed a dynamic virtualmachine allocation policy whose objective is to cutdown the VM energy consumption in a cloud system.It can carry out VM execution with less power consumed.Each cloud server facility in this system is supported by an attached renewable energy source(RES).And the central idea of this policy is to match the VM load with the RES provisioned power.In[18],energy-efficientresource allocation heuristics in cloud computing are proposed.An architecturalframework and rules of saving energy for cloud data centers are defined in this algorithm.And the algorithm allocates the resources of a data center to user tasks under the condition that the negotiated quality of service(QoS) is delivered.Beloglazov etal.[26]presented a noveladaptive algorithm of dynamic VMconsolidation according to the historicaldata analysis ofVMresource utilization.This algorithm can greatly decrease energy consumption while not violating the service level agreements(SLA)between the cloud infrastructure provider and end users.In[27], a multi-objective VM placement in cloud computing is presented.It converts the VM placement problem into a multi-objective optimization problem which can promote resource utilization and reduce energy consumption atthe same time.Reference[19]presented an energy-aware provisioning of VMs to dealwith real-time services.Itmodels the real-time services as VMs thathave real-time requests, and allocates the VMs using the strategy of dynamic voltage frequency scaling(DVFS).
Nonetheless,all of these resource allocation policies only involve VMallocation and do notconsiderbandwidth requirements of tasks,nor did them consider the diversity of tasks and the computing power of VMs.Piao etal.[28] introduced a network aware VM placementand migration scheme whose objective is to minimize the data transfer time of data-intensive applications.However,choosing a faster link on the network always withoutconsidering the workload of hosts can lead to congestion in which too many VMs occupy a single host and in turn cause performance degradation.In contrast to the studies we dis-cussed above,we present a comprehensive resource allocation policy in cloud computing which notonly takes accountof the diversity of tasks and VMs,but also involves the network bandwidth limitation and congestion.Itschedules tasks to VMs corresponding to these VMs’computing power and allocates these VMs to hosts considering network conditions.
In a cloud system,cloud users can send various requests to the cloud system.The requests are packed as differenttasks and then are allocated to appropriate VMs.Finally,these VMs are placed in physicalhosts based on a certain policy. Fig.1 shows the overview of the cloud system model.
Fig.1 A cloud system
This model divides a cloud computing framework into three layers:the layer of tasks,the layer of VMs and the layer of physical hosts,and there are schedulers between the neighbouring layers(which are not shown in the figure).When a sequence of tasks arrives,task illustrations are created by the scheduler between the task layerand the VM layer.And then the monitor find appropriate physical resources from hosts based on the task illustrations and a sequence of VMs are created.Then,the schedulerbetween VM layer and physical host layer allocates these VMs to hosts based on the policy we are about to propose.Related parameters(see Table 1)of this system model are described as follows.is denoted as a set of three dimensional resources,task length expressed in million instructions(MI)or processing requirements, memory capacity expressed in megabytes and bandwidth expressed in bit per second(bps).All of the items in TK=(tk1,tk2,...,tktki,...,tkNum(tk))are sorted in descending orderofthe processing length.Num(tk)is the number of tasks.H={h1,h2,...,hhi,...,hNum(h)}isrefers to a physicalhost.The symbolofspecifies the CPUcapacity of hhiexpressed in million instructions per second(MIPS). And the remaining resources in a host can be denoted as
Table 1 Key notations
We assume that each VM belongs to a specific VM class,and all the VM classes can be represented as V C={vc1,vc2,...,vcvci,...,vcNum(vc)}.There are Num(vc)classes of VMs available in the cloud system.specifies the CPU capacity of vcvciexpressed in MIPS,memory capacity expressed in megabytes,and bandwidth expressed in bps.The variation range of VMCPU capacity is denoted as v Rangecpu.The method of how to determine the V C is based on the variation of vRangecpu.The number of VMs in each class is V CX={vcx1,vcx2,...,vcxvci,...,vcxNum(vc)}andAfter the allocation of all the tasks is completed,all of the VMs can be denoted as the vector V Mr=(vm1,vm2,...,vmk,...,vmNum(tk)). The items in the V Mrare sorted in descending order of totalfile size.Num(tk)is the number of tasks or VMs.
F={f1,f2,...,ffi,...,fNum(f)}is the set of files that in the cloud system.And the symbol of SN= {sn1,sn2,...,snsni,...,snNum(sn)}is the set of storage nodes.
The distribution offiles throughoutstorage nodes is represented as
where snfi,jrefers to the size ofseparated partof fjin the storage node sni.
The bandwidth between physical hosts and storage nodes is represented as
where tdfi,jrefers to the transfer time of the file fjwhen requested by the host hi.
The file requestsequence of vmiis denoted as
where vfk∈{0,1}.1 represents that the file fkis requested by the VM,and 0 represents the opposite,1? i?Num(tk).Then for vmi,the data transfer time in each physicalhostcan be denoted as
where ptf vi,krefers to the file transfer time of vmiplaced in the host hk.
The bandwidth between physical hosts can be denoted as
where ppbwi,jrefers to bandwidth between hosts hiand hj,and ppbwi,j=ppbwj,i.
4.1 Description of task scheduling
We assume that the number of physical hosts is already known,and all of the data that tasks request are uploaded to storage nodes in advance.When a sequence of tasks arrives,task illustrations are created according to the resource demand of these tasks.The illustrations include storage resources,network resources,computing resources and other configuration information.And then the monitorfind appropriate physicalresources from physicalhosts based on the task illustrations and create a number of classes of VMs.
Since the diversity of tasks and VMs exists,itis essential to figure out how to allocate cloud tasks to VMs to obtain the minimum execution time.That is,for a given task tktki,we should find the appropriate vmito ensure that the task execution time(which does not include data transmission time)
gets the minimum value,where fers to the length ofrepresents the computing power of vmi.
4.2 Task scheduling algorithm
The basic thought of the task scheduling algorithm is to allocate tasks that have longer length(expressed in MI) to the VMs that have more powerful computing capacity (expressed in MIPS).Firstly,we find three tasks(may be the same)that have the maximumfrom TK and determineSimilarly,we find another three tasks that have the mini-from TK and determineThen we selectappropriate variation range vRangecpuof the VM computing power according to the CPUcapacity ofphysicalhosts.Secondly,we create Num(vc)classes of VM based on tkmaxand tkmin,and allocate tasks to the VMs.The approach can be described by the following pseudo code.
Algorithm 1Computing power based task-scheduling algorithm(CBTSA)
Input:task configuration TK,computing power range vRangecpu,VMclasses V C
Output:VMlist V Mr
1:determine tkmaxand tkminbased on T K;
3:foreachvcvciin V Cdo
4:vcvci={v Rangecpu·(Num(vc)?vci+1)/·(Num(vc)?vci+1)};
5:foreachtktkiin TKdo
6:foreachvcvciin V Cdo
8:create a VM vmiof vcvci;
9:allocate tktkito vmi;
10:add vmiin V Mr;
11:vcxvci++;
12:endif;
13:break;
14:return V Mr,V C.
5.1 Description of VMallocation
For a given vmi,a suitable physicalhostis selected to get the minimum data transmission time based on the file distribution matrix SNF and bandwidth matrix HB?1.At the same time,itshould avoid network congestion in which too many VMs occupy a single hostand cause performance degradation.
Moreover,in a real cloud system,bandwidth between physical hosts and storage nodes will change over time. Thus,when the network bandwidth changes,the VM thathas longer data transmission time should be migrated to another host so that it can get shorter data transfer time.And the remaining resources of each host should be updated over the whole process.Namely,for vmiwe should traverse the matrix PTFVi=T DF×V Fi= (ptfvi,1,ptf vi,2,...,ptf vi,k,...,ptfvi,Num(h))Tto find the minimum ptf vi,k.Each item in PTFVirepresents the data transmission time of vmiifitis allocated to a specific host.
5.2 Bandwidth-aware VMplacement algorithm
For a VMthathosts a task and requests a sequence of data files,it is desirable to place the VM on a host thathas the shortest data transmission time.If the next VM accesses one ormore files thatare already in the file sequence ofthe previous one and its favorite host may be the same,then network congestion occurs.In thatcase,the host’s network bandwidth performance will be deteriorated by the next VM that is about to be placed on.Therefore,it is essential to update the matrix HB?1after the VMis allocated to the host.Assume that vNkis the numberof VMs in the host hkafter a VM is placed in this host,then we modify the matrix HB?1as
Then,to improve the execution performance,we allocate the VM that has the longest total file size first. Moreover,the remaining resources of each host HRR= {hrr1,hrr2,...,hrrhi,...,hrrNum(h)}should be updated,too.The VM-placementalgorithm can be illustrated as follows:
Algorithm 2Bandwidth aware VM-placement algorithm(BAVP)
Input:host list H,storage nodes SN,data files F, bandwidth matrix HB?1,data distribution matrix SNF, V Mr
Output:placementof VMs
1:calculate TDF=HB?1×SNF;
2:foreachvm thatbelongs to vc in V Mr
3:calculate PTFVi=T DF×V Fi;
4:traverse PT FVito find the minimum ptf vi,p&& hrrp>vcvci;
5:returnp;
6:allocate vmito hp,hp∈H;
7:if(vmiis allocated succeed)
8:updating bandwidth matrix HB?1;
10:endif;
11:returnthe placementof VMs.
The Step 8“updating bandwidth matrix HB?1”means thatwe modify the bandwidth matrix HB?1as
In Algorithm 2,hrrp>vcvcispecifiesIt means that the remaining resources in hpshould be sufficientfor vmithat belongs to vcvci.
5.3 Network aware VM-migration algorithm
The network condition of a cloud system in a real life is changing allthe time.When the network changes,the data transmission time of some VMs will change accordingly and might not be the minimum value.Therefore,it is essentialto migrate the VMs to otherhosts thathave the minimum file transfer time.Thatis
where ppbwp,oldrefers to the bandwidth between the host hpthat the VM which is about to be migrated in and the old host holdwhich is the current host of the VM.is the migration time that a VMof class vcvcibeing migrated from the host holdto the host hp.
Moreover,physical resources should be updated in the host hpand the old host hold.Also,when a task is finished in a VM,the VM will be destroyed.This will lighten the workload of the physical machine where the VMis hosted and its network condition is improved.Some of VMs should also be migrated to this hostto geta shorter file access time.Thus when a network condition changesor a task is finished,this VM-migration approach willbe triggered.Atthis moment,some of the files that vmirequests may already have been transferred successfully.Thus,we should modify V Fi,and set vfkto zero if fkhas been transferred successfully.Here is the illustration of the migration algorithm.
Algorithm 3Bandwidth aware VM-migration algorithm(BAVM)
Input:hosts H,storage nodes SN,data files F,bandwidth matrix HB?1,data distribution matrix SNF, V Mr,placementof VMs before migration
Output:VMplacementafter migration
1:update bandwidth matrix HB?1;
2:calculate matrix T DF=HB?1×SNF;
3:foreachvmithatbelongs to vcvciin V Mr
4:foreachvfx==1 in V Fi
5:if(fxhas been transferred successfully)
6:vfx=0;
7:endif;
8:calculatePTFVi=TDF×V Fi;
9:traversePTFVito find the minimum ptfvi,p&& hrrp>vcxvci;
10:returnp;
11:if(hp!=hold&&hp!=null&&ptf vi,p+
12:migrate vmito hp,hp∈H;
13:if(vmiis allocated succeed)
14:updating bandwidth matrix HB?1;
15:hrrp
17:endif;
18:endif;
19:returnVMplacementafter migration.
Afterthe migration process,the data file access time will stay atits minimum value.
To evaluate the effectiveness of the proposed policy,we implementand test it by using CloudSim 3.03 which supports a simulating large scale of virtualized data centers [29,30].In this experiment,we compare the totaltask completion time from each ten times of experimentresults.
In the initial phase of the experiment,there are fifty physical hosts in the data center.And the length of cloudlets varied from 100 000–200 000 MI and these cloudlets required no data files.The configuration information of hosts and VMs is shown in Table 2.
Table 2 Configuration of hosts and VMs
There are 100 data files in the data center,and the sizes of them varies from 60 000 Mb to 120 000 Mb.The bandwidth between storage nodes and hosts varies from 500 Mbps to 8000 Mbps.
6.1 Evaluation of CBTSA
We evaluate the performance of CBTSA by comparing it with another two algorithms and no data files are accessed by allthe tasks.One is the defaulttask scheduling approach in CloudSim(we callit DTSA for short),and another one allocated tasks to VMs randomly(we call it RTSA for short).Since all of the tasks required no data files,we use the defaultVMallocation policy in ClouSim(VMAllocation Policy Simple,we call it VMAS for short).The processing length of each task differs from 100 000 MI to 200 000 MI.When the number of tasks changes,here is the results in Fig 2.
Fig.2 Totaltask completion time when the processing length ofeach task differs from 100 000 MI to 200 000 MI
When the length of cloudlets varies from 200 000 MIto 400 000 MI,the resultis shown in Fig.3.
Fig.3 Total task completion time when the length of each task varies from 200 000 MIto 400 000 MI
Underthe previous conditions in Fig.2,the CPU capacities of VMs varies from 100 MIPS to 9 000 MIPS,and the resultis shown in Fig.4.
Fig.4 Totaltask completion time when the length of each task varied from 200 000 MI to 400 000 MI and the CPU capacities of VMs vary from 100 MIPS to 9 000 MIPS
From the previous three figures,we can conclude that the more the diversity of tasks and VMs changes,the more obvious the advantage CBTSA have over the other two algorithms.
6.2 Evaluation of BAVP
To analyze the performance of BAVP,the length of cloudlets are allsetto 1 000 MI.Each ofthe cloudletwould randomly require 20 differentdata files.And all the other configration information are set to the initial phase of the experiment.We compared it with VMAS and the network aware VMallocation policy(NAVA)proposed in[28].The results is shown in Fig.5.
Fig.5 Totaltask completion time of tasks when each task requests 20 files
The above figure shows that when multiple files are required,the performance of NAVA will deteriorate and be instable as the numberoftasks increases.The reason ofthis phenomenon is thatin NAVA,physicalhosts can getoverloaded easily and the network conditions ofthese hosts deteriorate because ofthe large amountof VMs.The number of VMs in each hostis shown in Fig.6 when there are 150 cloudlets.
Fig.6 Number of VMs in each host when there are 150 tasks and when each task requests 20 files
6.3 The evaluation ofthe overallresource allocation policy
We conduct three group of experiments.In each group,a task scheduling algorithm and the three VMplacementalgorithm are crarried out.And the configration information of hosts is the same as thatin the initialphase of the experiment.Allof the results are shown in Fig.7–Fig.9.
Fig.7 Total task completion time when task scheduling algorithm is RTSA
Fig.8 Total task completion time when task scheduling algorithm is DTSA
Fig.9 Total task completion time when task scheduling algorihtm is CBTSA
Due to the fact the number of VMs in each host has nothing to do with the task scheduling algorithms,we only show the number of each host in the second group of experimentwhen there are 150 cloudlets in Fig.10.
Fig.10 Number of VMs in each host when there are 150 cloudlets and the overall resource allocation policy is evaluated
6.4 The evaluation of BAVM
In a real cloud system,the network condition changes all the time,thus itis essentialto dealwith the unstable bandwidth between hosts and storage nodes when VMs access data files.In this experiment,the bandwidth between hosts and storage nodes changed every 120 s.The length of all the cloudlets is setto 1 000 MI,and other configration information is the same as thatin the initialphase.We compare BAVM with another two algorithms.One is the VM migration apprach proposed in[28](NAVM),and another is the defaultVMplacementalgorithm in CloudSim which does not migrate VMs when network changes(VMAS). The results are shown in Fig.11.
VMAS dose not migrate VMs when network bandwidth changes.VMAS allocates VMs to hosts randomly and therefore has the worstperformance.NAVM allocatesVMs to hosts in consideration ofnetwork conditions.However,itdoes nottake the hostload into account.The reason why the proposed algorithm cannotoutperform the NAVM is that in BAVM,VMs are migrated too often because of the changing network and different finish time of tasks. VMmigration takes time,and therefore can extend the totalcompletion time which includes the file accessing time and so on.
Fig.11 Totalcompletion time of tasks when network changes
Although BAVM does not have a decided advantage over NAVM in the aspect of reducing completion time,it can keep good load balance of hosts.The number of VMs in each hostwhen there are 150 cloudlets in moment300 s can be shown in Fig.12.
Fig.12 Number of VMs in each host in moment 300 s when there are 150 cloudlets and network changes
Data-intensive tasks interact with data files frequently. These files can be distributed in data centers of large scale.And network status between physicalhosts and storage nodes can affectthe completion time of tasks greatly. Therefore,it is significant to place the VM that a task is hosted in on a physical host to obtain shorter data access time.This paper proposes a resource allocation policy in cloud computing.The firstalgorithm can allocate tasks that have longer processing length to VMs that have more powerfulcomputing capacity.The second can place a VMon a physicalhostthatcan obtain shorterdata access time and take consideration of the host workload at the same time. Moreover,a VM migration algorithm is also presented to dealwith the unstable network condition in a cloud system. Oursimulations on CloudSim 3.03 demonstrate thatthe algorithms we proposed can effectively reduce task completion time and keep a good load balance of physicalhosts.
Although the VMmigration algorithm we proposed has a better performance of keeping load balance of physical hosts,itdoes nothave a decided advantage over NAVMin the aspect of task completion time.Several other aspects are also not considered in this paper such as reducing energy consumption of data centers,meeting service level agreement between cloud users and providers,and dealing with dynamic work load of tasks.In the future,we endeavorto find a VMmigration approach thathas a better property of cutting down task completion time and keep load balance of physical hosts.Also more realistic conditions in data centers willbe taken into account.
[1]P.Kalagiakos,P.Karampelas.Cloud computing learning. Proc.of the 5th International Conference on Application of Information and Communication Technologies,2011:1–4.
[2]Y.Jadeja,K.Modi.Cloud computing-concepts,architecture and challenges.Proc.ofthe InternationalConference on Computing,Electronics and Electrical Technologies,2012:877–880.
[3]E.J.Qaisar.Introduction to cloud computing for developers: key concepts,the players and their offerings.Proc.of the IEEE TCF Information Technology Professional Conference,2012: 1–6.
[4]P.A.Pandey.Virtual machine performance measurement. Proc.of the Recent Advances in Engineering and Computational Sciences,2014:1–3.
[5]G.Wang,T.S.E.Ng.The impactofvirtualization on network performance of Amazon EC2 Data Center.Proc.ofthe 29th International Conference on Computer Communications,2010: 1–9.
[6]Q.Duan,Y.Yan,A.V.Vasilakos.A survey on service-oriented network virtualization toward convergence of networking and cloud computing.IEEE Trans.on Network and Service Management,2012,9(4):373–392.
[7]S.Marston,Z.Li,S.Bandyopadhyay,et al.Cloud computing—the business perspective.Decision Support Systems, 2011,51(1):176–189.
[8]J.Peng,X.Zhang,Z.Lei,etal.Comparison of several cloud computing platforms.Proc.of the 2nd International Symposium on Information Science and Engineering,2009:23–27.
[9]K.Sato,H.Sato,S.Matsuoka.A model-based algorithm for optimizing i/o intensive applications in clouds using VM-based migration.Proc.of the 9th IEEE/ACM International Symposium on Cluster Computing and the Grid,2009:466–471.
[10]M.Alicherry,T.V.Lakshman.Optimizing data access latencies in cloud systems by intelligentvirtualmachine placement.Proc.ofthe 32th InternationalConference on Computer Communications,2013:647–655.
[11]C.L.Belady.In the data center,power and cooling costs more than the itequipmentitsupports.http://www.electronicscooling.com,2007.
[12]R.Buyya,R.Ranjan,R.N.Calheiros.Modeling and simulation of scalable cloud computing environments and the CloudSim toolkit:challenges and opportunities.Proc.of the International Conference on High Performance Computing& Simulation,2009:1–11.
[13]C.Tang,M.Steinder,M.Spreitzer,etal.A scalable application placement controller for enterprise data centers.Proc.of the 16th International Conference on World Wide Web,2007: 331–340.
[14]T.Huang,C.Rong,Y.Tang,et al.VirtualRack:bandwidthaware virtual network allocation for multi-tenantdatacenters. Proc.of the IEEE International Conference on Communications,2014:3620–3625.
[15]X.Zhang,Z.Huo,J.Ma,et al.Exploiting data deduplication to accelerate live virtualmachine migration.Proc.of the IEEE International Conference on Cluster Computing,2010:88–96.
[16]J.Lin,C.Chen,J.Chang.QoS-aware data replication for data intensive applications in cloud computing systems.IEEE Trans.on Cloud Computing,2013,1(1):1–10.
[17]R.Neumann,E.Goltzer,R.Dumke,et al.Caching highly compute-intensive cloud applications:an approach to balancing costwith performance.Proc.ofthe JointConference ofthe 21st Workshop on Software Measurement and 6th Conference on Software Process and Product Measurement,2011:96–105.
[18]A.Beloglazov,J.Abawajy,R.Buyya.Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing.Future Generation Computer Systems, 2012,28(5):755–768.
[19]K.H.Kim,A.Beloglazov,R.Buyya.Power-aware provisioning of virtual machines for real-time Cloud services.Concurrency and Computation:Practice and Experience,2011, 23(13):1491–1505.
[20]B.Li,S.L.Song,I.Bezakova,etal.EDR:an energy-aware runtime load distribution system for data-intensive applications in the cloud.Proc.ofthe IEEE International Conference on Cluster Computing,2013:1–8.
[21]Y.Fang,F.Wang,J.Ge.A task scheduling algorithm based on load balancing in cloud computing.Proc.of the International Conference on Web Information Systems and Mining,2010: 271–277.
[22]S.Selvarani,G.S.Sadhasivam.Improved cost-based algorithm for task scheduling in cloud computing.Proc.of the IEEE InternationalConference on ComputationalIntelligence and Computing Research,2010:1–5.
[23]K.Li,G.Xu,G.Zhao,etal.Cloud task scheduling based on load balancing ant colony optimization.Proc.of the 6th AnnualChinagrid Conference,2011:3–9.
[24]X.Lu,Z.Gu.A load-adapative cloud resource scheduling model based on ant colony algorithm.Proc.of the IEEE International Conference on Cloud Computing and Intelligence Systems,2011:296–300.
[25]D.Hatzopoulos,I.Koutsopoulos,G.Koutitas,etal.Dynamic virtualmachine allocation in cloud server facility systems with renewable energy sources.Proc.of the IEEE International Conference on Communications,2013:4217–4221.
[26]A.Beloglazov,R.Buyya.Optimalonline deterministic algorithms and adaptive heuristics for energy and performance efficientdynamic consolidation ofvirtualmachinesin cloud data centers.Concurrency and Computation:Practice and Experience,2012,24(13):1397–1420.
[27]J.Xu,J.A.B.Fortes.Multi-objective virtual machine placement in virtualized data center environments.Proc.of the IEEE/ACM International Conference on Green Computing and Communications&International Conference on Cyber, Physical and Social Computing,2010:179–188.
[28]J.T.Piao,J.Yan.A network-aware virtualmachine placement and migration approach in cloud computing.Proc.of the 9th International Conference on Grid and Cooperative Computing,2010:87–92.
[29]R.N.Calheiros,R.Ranjan,A.Beloglazov,etal.CloudSim:a toolkitfor modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software:Practice and Experience,2011,41(1):23–50.
[30]L.Wang,Y.Lan,Q.Xia.Using CloudSim to modeland simulate cloud computing environment.Proc.of the 9th InternationalConference on ComputationalIntelligence and Security, 2013:323–328.
Xiong Fuwas born in 1979.He received his B.S. degree in computerscience and technology in 2002, and Ph.D.degree in computer science and technology in 2007,both from the University of Science and Technology of China(USTC).From 2007,he has been serving as a faculty member in the School of Computer Science and Technology at Nanjing University of Posts and Telecommunications.Currently,he is an associate professor.His main research interests are paralleland distributed computing,and cloud computing.
E-mail:fux@njupt.edu.cn
Yeliang Cangwas born in 1991.He received his B.S.degree in computer science from the Nanjing University of Posts and Telecommunications, in 2013.He is currently pursuing his M.S.degree at the Nanjing University of Posts and Telecommunications.His research interests include cloud computing,and computer networks.
E-mail:cangyl@qq.com
10.1109/JSEE.2015.00092
Manuscript received September 05,2014.
*Corresponding author.
This work was supported by the National Natural Science Foundation of China(61202354;61272422),and the Scientific and Technological Support Project(Industry)of Jiangsu Province(BE2011189).
Journal of Systems Engineering and Electronics2015年4期