4

Click here to load reader

Cloud Resource Allocation

Embed Size (px)

Citation preview

Page 1: Cloud Resource Allocation

Optimal Resource Allocation for MultimediaApplication Providers in Multi-site Cloud

Xiaoming Nan, Yifeng He and Ling GuanDepartment of Electrical and Computer Engineering,

Ryerson University, Toronto, Ontario, Canada

Abstract— Cloud-based multimedia applications have beenwidely used in recent years. With the advance of globalization,application providers hope to offer services at multiple sitesserving users all over the world. The key challenge is how toeffectively manage resource allocation and workload balancing.In this paper, we study the optimal resource allocation problemin multi-site cloud. Specifically, we jointly optimize the globalworkload assignment and the local VM allocation to minimizethe resource cost under the service response time requirements.Moreover, we propose a greedy algorithm to efficiently apply ourstudy in a practical way. Experimental results demonstrate thatthe proposed optimal resource allocation scheme can optimallyallocate resources and balance workload to achieve the minimalresource cost for multimedia application providers.

I. INTRODUCTION

In recent years, we have witnessed the fast developmentof cloud computing. In cloud data centers, a shared pool ofservers are managed to provide on-demand resources (e.g.computation, storage, platform, software, etc.) as services viathe Internet. According to different levels of service provision-ing, cloud computing can be categorized into Infrastructure asa Service (IaaS), Platform as a Service (PaaS), and Softwareas a Service (SaaS), among which the SaaS model is mostfamiliar to individual users. In the SaaS model, applicationproviders rent VMs from cloud vendors and deliver servicesto users. By using cloud-based applications, users are freefrom the burden of application installation and software main-tenance.

The rapid development of cloud computing has offeredgreat opportunities for multimedia applications. Cloud-basedmultimedia applications, like on-line photo sharing, cloud-based video streaming, and various social media applications,have been increasingly used in daily life. For multimediaapplication providers, they have two major concerns: theQuality of Service (QoS) and the resource cost. Consideringthe delay-sensitive characteristic, the service response time istaken as the major QoS factor. The service response timeis defined as the duration from the time when a requestarrives at a data center to the time when the request has beencompletely served. The service response time is contractedinto the Service Level Agreement (SLA). Thus, it is importantto meet service response time requirements for all users.Besides QoS, the resource cost is another important concern.Generally, cloud vendors can offer two different VM rentalschemes: the reservation scheme and the on-demand scheme.Price rates in the reservation scheme are much lower than

those in the on-demand scheme. But VMs in the reservationscheme have to be subscribed in advance with deposit. Duringthe service provisioning, if the initially reserved VMs cannotmeet resource demands, application providers can requeston-demand VMs instantly at the expense of a higher pricerate. Facing different applications and resource demands, it ischallenging for application providers to provide satisfactoryservices at a minimal cost.

With the advance of globalization, application providershope to provide services to different locations. They are alsoseeking to distribute workload among data centers in orderto efficiently utilize resources and increase the availability ofapplications. Owing to the increasing scale of cloud basedapplications, an effective resource allocation is becomingone of the biggest challenges faced by application providers.Currently, the common approaches are the isolated approaches.In the isolated approaches, a local controller gathers runtimeinformation, balances workload, and manages resource alloca-tion in the data center. The isolated approaches are effectivefor one specific data center, but they lack an overview of thewhole system, probably leading to the unbalanced workloadand even the local congestion. For example, some data centersneed extra on-demand VMs to tackle the increasing workloadwhile some other data centers still have spared VMs. Lackingglobal information, the isolated approaches in multi-site cloudcan only achieve a local optimum.

To address above mentioned challenges, we study the re-source allocation problem in this paper. Our contribution canbe presented as follows. We propose the optimal resourceallocation scheme for multimedia application providers, inwhich we jointly optimize the global workload assignment andthe local VM allocation to minimize the resource cost underthe service response time requirements. Since the formulatedoptimization problem is a NP-hard problem, we also proposea greedy algorithm to efficiently allocate VMs in a practicalway.

II. RELATED WORK

The resource allocation in cloud has always been a chal-lenging research topic. Nan et al. [1] propose queueing mod-el based resource allocation schemes for multimedia cloud.Chaisiri et al. [2] present an optimal VM placement algorithmbased on the stochastic integer programming. However, [1]and [2] do not consider resource allocation in multiple datacenters. Bouyoucef et al. [3] formulate virtual server allocation

978-1-4673-5762-3/13/$31.00 ©2013 IEEE 449

Page 2: Cloud Resource Allocation

Globalcontroller

Transferredworkload

Transferredworkload

Transferredworkload

Localcontroller

Data center 1

Workloadmonitor

App1

App2

AppM

DispatcherRequests

Req

uest

queu

e

VM repository

Class-1 Class-2 Class-N

Localcontroller

Data center 3

Workloadmonitor

DispatcherRequests

App1

AppM

App2

Req

uest

queu

e

VM repository

Class-1 Class-2 Class-N

Localcontroller

Data center 2Workloadmonitor

App1

App2

AppM

Dispatcher Requests

Req

uest

queu

e

VM repository

Class-1 Class-2 Class-N

Fig. 1. The SaaS architecture in multi-site cloud.

as a linear programming. Nan et al. [4] propose distributedapproaches to optimize VM allocation. But [3] and [4] lackan overview of the whole system, leading to a local optimum.Comparing with the work in [1-4], our paper is different in thefollowing senses: 1) we jointly optimize the global workloadand the local resource allocation; 2) we provide the theoreticaloptimal solution and the practical greedy algorithm.

III. SYSTEM MODELS

A. SaaS Architecture in Multi-site Cloud

In multi-site cloud, application providers can deploy ser-vices at multiple data centers. Each data center consists of abunch of servers to support the running and provisioning ofVMs. Generally, different classes of VM instances have dif-ferent configuration levels in terms of compute unit, processorfrequency, memory size, I/O rate, etc. Multiple VMs can beaggregated as a virtual cluster to accelerate processing speed.

The proposed SaaS architecture is illustrated in Fig. 1. Theservice process can be summarized as follows. When requestsarrive at data center, the dispatcher will schedule requeststo the corresponding request queue. The workload monitorperforms a live monitoring on the type and number of requests,and reports to the local controller. The local controller takestwo responsibilities. Firstly, it gathers information includinglocal workload and available resources, and forwards theinformation to the global controller for analysis. Secondly, thelocal controller executes commands from the global controller,transfers workload, and allocates VMs in the data center.Based on the workload and resource information from alllocal controllers, the global controller jointly optimizes theworkload assignment and VMs allocation to minimize the totalresource cost.

B. Resource Allocation Model

We propose the resource allocation model to study theoptimal resource allocation in multi-site cloud. Since the work-load in cloud computing is time varying, we divide the timedomain into time slots. We choose a time slot 𝑡 which is shortenough so that the workload in each time slot 𝑡 is assumedto be constant. Suppose that 𝐿 data centers are distributed atdifferent locations and the set of data centers can be denotedas 𝐷 = {𝐷1, 𝐷2, . . . , 𝐷𝐿}. At time slot 𝑡, the transmissiondelay between 𝐷𝑙 and 𝐷𝑙′ is denoted as 𝑑

(𝑡)𝑙𝑙′ . Specially, when

𝑙′ = 𝑙, 𝑑(𝑡)𝑙𝑙 = 0. Suppose that 𝑁 classes of VMs are provided.Let 𝑝𝑟𝑙𝑖 and 𝑝𝑑𝑙𝑖 denote the price rates of reserved and on-demand class-𝑖 VM instance at 𝐷𝑙, respectively. In the initialreservation phase, application providers will reserve a certainnumber of VMs in different classes. Let 𝐾𝑖𝑛𝑖

𝑙𝑖 be the numberof initially reserved class-𝑖 VMs at 𝐷𝑙.

Suppose that there are 𝑀 types of multimedia applications.For each application, different classes of VMs have differentprocessing speed. Let 𝜇𝑖𝑗 be the service rate of class-𝑖 VMinstance for processing type-𝑗 application requests. Sincethe two consecutive requests arriving at 𝐷𝑙 may be fromtwo different users, the inter-arrival time can be modeledas an exponential random variable [5]. Therefore, the initialarrivals of type-𝑗 application requests at 𝐷𝑙 follow a Poissondistribution with an average of 𝜆𝑖𝑛𝑖(𝑡)

𝑙𝑗 . After global workloadbalancing, some type-𝑗 requests may be transferred to otherdata centers for service. Let 𝑧

(𝑡)𝑙𝑙′𝑗 denote the ratio of type-𝑗

requests transferred from 𝐷𝑙 to 𝐷𝑙′ . Since all requests will beprocessed, we can get

∑𝐿𝑙′=1 𝑧

(𝑡)𝑙𝑙′𝑗 = 1. With the requests from

other data centers, the arrivals of type-𝑗 application requestsat 𝐷𝑙 can be formulated as 𝜆

(𝑡)𝑙𝑗 =

∑𝐿𝑙′=1 𝑧

(𝑡)𝑙′𝑙𝑗𝜆

𝑖𝑛𝑖(𝑡)𝑙′𝑗 .

For type-𝑗 application at 𝐷𝑙, let 𝐾𝑟(𝑡)𝑙𝑖𝑗 and 𝐾

𝑑(𝑡)𝑙𝑖𝑗 denote

the number of allocated class-𝑖 VMs in the reservation schemeand the on-demand scheme, respectively. We will propose theoptimal resource allocation scheme to determine the optimalworkload assignment 𝑧

(𝑡)𝑙𝑙′𝑗 , and the optimal VMs allocation

𝐾𝑟(𝑡)𝑙𝑖𝑗 and 𝐾

𝑑(𝑡)𝑙𝑖𝑗 (𝑙 ∈ {1, . . . , 𝐿}, 𝑖 ∈ {1, . . . , 𝑁}, and 𝑗 ∈

{1, . . . ,𝑀}).

IV. OPTIMAL RESOURCE ALLOCATION SCHEME IN

MULTI-SITE CLOUD

In this section, we study the optimal resource alloca-tion scheme in multi-site cloud. Our objective is to min-imize the total resource cost. The total resource cost canbe formulated as 𝐶

(𝑡)𝑔𝑙𝑏 =

∑𝐿𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑟𝑙𝑖𝐾

𝑟(𝑡)𝑙𝑖𝑗 +∑𝐿

𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑑𝑙𝑖𝐾

𝑑(𝑡)𝑙𝑖𝑗 , in which the first term is the cost

of VMs in the reservation scheme and the second term is thecost of VMs in the on-demand scheme.

We take the service response time as the QoS measurement.Let 𝑇 𝑟𝑠𝑝(𝑡)

𝑙𝑗 be the service response time of type-𝑗 applicationat 𝐷𝑙. The service response time includes the local executiontime 𝑇

𝑒𝑥𝑒(𝑡)𝑙𝑗 and the requests transferring time 𝑇

𝑡𝑟𝑎(𝑡)𝑙𝑗 , i.e.

𝑇𝑟𝑠𝑝(𝑡)𝑙𝑗 = 𝑇

𝑒𝑥𝑒(𝑡)𝑙𝑗 + 𝑇

𝑡𝑟𝑎(𝑡)𝑙𝑗 .

450

Page 3: Cloud Resource Allocation

At 𝐷𝑙,(𝐾

𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗

)class-𝑖 VMs work together as

the class-𝑖 virtual cluster to process type-𝑗 requests with theservice rate of

(𝐾

𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗

)𝜇𝑖𝑗 . To balance the workload

among different virtual clusters, we use the normalized servicerate as the scheduling probability, i.e. one type-𝑗 request isscheduled to class-𝑖 virtual cluster with the probability of

𝜔(𝑡)𝑙𝑖𝑗 =

(𝐾𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗

∑𝑁𝑖=1(𝐾

𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗

. According to the decomposition

property of Poisson Process, the arrivals of scheduled requestsat class-𝑖 virtual cluster also follow a Poisson Process with anaverage of 𝜔

(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗 . From [5], the processing time at class-𝑖

virtual cluster can be approximated as exponential distributionwith the average of 1

(𝐾𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗

. Thus, the service process

of type-𝑗 application at class-𝑖 virtual cluster can be analyzedas an 𝑀/𝑀/1 queueing system [5]. To make the queue stable,𝜔(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗 < (𝐾

𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗 should be satisfied. Therefore,

the mean execution time of the type-𝑗 application at 𝐷𝑙 is

given by 𝑇𝑒𝑥𝑒(𝑡)𝑙𝑗 =

∑𝑁𝑖=1

𝜔(𝑡)𝑙𝑖𝑗

(𝐾𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗−𝜔

(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗

.

Since the workload can be dynamically redirected to othersites for service, we have to consider the transmission delay.Let Ψ(𝑡)

𝑙𝑗 = {𝑙′∣𝑧(𝑡)𝑙′𝑙𝑗 ∕= 0} denote the set of data centers whichtransfer type-𝑗 requests towards 𝐷𝑙. In order to meet the QoSdemands for all users, we choose the maximal transmissiondelay max{𝑑(𝑡)𝑙′𝑙 ∣𝑙′ ∈ Ψ

(𝑡)𝑙𝑗 } as the transferring time at 𝐷𝑙. If

requests from the furthest data center can be satisfied, otherrequests’ demands will be satisfied. Thus, the transferring time𝑇

𝑡𝑟𝑎(𝑡)𝑙𝑗 is given by 𝑇

𝑡𝑟𝑎(𝑡)𝑙𝑗 = max{𝑑(𝑡)𝑙′𝑙 ∣𝑙′ ∈ Ψ

(𝑡)𝑙𝑗 }.

Based on the above analysis, the service response time𝑇

𝑟𝑠𝑝(𝑡)𝑙𝑗 can be formulated as 𝑇

𝑟𝑠𝑝(𝑡)𝑙𝑗 = 𝑇

𝑒𝑥𝑒(𝑡)𝑙𝑗 + 𝑇

𝑡𝑟𝑎(𝑡)𝑙𝑗 =

∑𝑁𝑖=1

𝜔(𝑡)𝑙𝑖𝑗

(𝐾𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗−𝜔

(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗

+max{𝑑(𝑡)𝑙′𝑙 ∣𝑙′ ∈ Ψ(𝑡)𝑙𝑗 }.

At each data center, the total number of allocated class-𝑖VMs in the reservation scheme should be no more than thenumber of initially reserved class-𝑖 VMs. The constraints canbe formulated as

∑𝑀𝑗=1 𝐾

𝑟(𝑡)𝑙𝑖𝑗 ≤ 𝐾𝑖𝑛𝑖

𝑙𝑖 .Based on the above analysis, we can formulate the optimal

resource allocation problem in multi-site cloud as follows.

Minimize{𝐾𝑟(𝑡)

𝑙𝑖𝑗 ,𝐾𝑑(𝑡)𝑙𝑖𝑗 ,𝑧

(𝑡)

𝑙𝑙′𝑗}

∑𝐿𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑟𝑙𝑖𝐾

𝑟(𝑡)𝑙𝑖𝑗

+∑𝐿

𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑑𝑙𝑖𝐾

𝑑(𝑡)𝑙𝑖𝑗

subject to∑𝑁

𝑖=1

𝜔(𝑡)𝑙𝑖𝑗

(𝐾𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗−𝜔

(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗

+max{𝑑(𝑡)𝑙′𝑙 ∣𝑙′ ∈ Ψ(𝑡)𝑙𝑗 } ≤ 𝜏𝑗 ,

𝜔(𝑡)𝑙𝑖𝑗𝜆

(𝑡)𝑙𝑗 < (𝐾

𝑟(𝑡)𝑙𝑖𝑗 +𝐾

𝑑(𝑡)𝑙𝑖𝑗 )𝜇𝑖𝑗 ,∑𝐿

𝑙′=1 𝑧(𝑡)𝑙𝑙′𝑗 = 1,∑𝑀

𝑗=1 𝐾𝑟(𝑡)𝑙𝑖𝑗 ≤ 𝐾𝑖𝑛𝑖

𝑙𝑖 ,

(1)

where 𝜏𝑗 is the upper bound of the service response time fortype-𝑗 application, 𝑙 ∈ {1, . . . , 𝐿}, 𝑖 ∈ {1, . . . , 𝑁}, and 𝑗 ∈{1, . . . ,𝑀}.

The optimal resource allocation problem (1) is a mixedinteger programming, which is known to be NP-hard. Theproblem can be solved by the branch-and-bound method

[6]. However, since application providers require an efficientresource allocation scheme, which can be rapidly executed toadapt to the time varying workload. Therefore, we propose agreedy algorithm to allocate VMs in a practical way.

In the proposed greedy algorithm, we introduce the unitcost to measure the performance of VMs. The unite costcan be formulated as 𝜃

𝑟(𝑡)𝑙′𝑖𝑗 =

(1

𝜇𝑖𝑗+ 𝑑

(𝑡)𝑙𝑙′

)𝑝𝑟𝑙′𝑖 and 𝜃

𝑑(𝑡)𝑙′𝑖𝑗 =(

1𝜇𝑖𝑗

+ 𝑑(𝑡)𝑙𝑙′

)𝑝𝑑𝑙′𝑖, where 𝜃

𝑟(𝑡)𝑙′𝑖𝑗 and 𝜃

𝑑(𝑡)𝑙′𝑖𝑗 are unit costs of a

type-𝑗 request at 𝐷𝑙 served by one class-𝑖 VM at 𝐷𝑙′ inthe reservation and on-demand schemes, respectively. If therequest is served at local site (i.e. at 𝐷𝑙), the unit costs willbe changed to 𝜃

𝑟(𝑡)𝑙𝑖𝑗 = 1

𝜇𝑖𝑗𝑝𝑟(𝑡)𝑙𝑖 and 𝜃

𝑑(𝑡)𝑙𝑖𝑗 = 1

𝜇𝑖𝑗𝑝𝑑(𝑡)𝑙𝑖 . The unit

cost represents the cost-performance ratio by using one class-𝑖 VM instance to serve one type-𝑗 application request. In thegreedy algorithm, we are seeking to place requests on VMswith the minimum unit cost to achieve the most economicexpenditure. The proposed greedy algorithm is presented inAlgorithm 1.

Algorithm 1 Greedy Algorithm in Multi-site Cloud1: for each 𝐷𝑙 ∈ 𝐷 do2: Initialize 𝑧

(𝑡)𝑙𝑙′𝑗 = 0, unit cost set Θ =

{𝜃𝑟(𝑡)111 , 𝜃𝑑(𝑡)111 , . . . , 𝜃

𝑟(𝑡)𝐿𝑁𝑀 , 𝜃

𝑑(𝑡)𝐿𝑁𝑀} and set Λ

(𝑡)𝑙 =

{Λ(𝑡)𝑙1 , . . . ,Λ

(𝑡)𝑙𝑀}, in which Λ

(𝑡)𝑙𝑗 = 𝜆

𝑖𝑛𝑖(𝑡)𝑙𝑗 represents

the unprocessed type-𝑗 application requests.3: Sort unit cost set Θ in ascending order.4: repeat5: Select the minimum 𝜃

𝑣(𝑡)𝑙′𝑖𝑗 (𝑣 = 𝑟 or 𝑑).

6: if 𝜃𝑣(𝑡)𝑙′𝑖𝑗 from reserved VMs (i.e. 𝑣 = 𝑟) then

7: Allocate 𝐾𝑟(𝑡)𝑙′𝑖𝑗 class-𝑖 reserved VMs to serve

requests 𝜆𝑡𝑚𝑝𝑙𝑗 (𝜆𝑡𝑚𝑝

𝑙𝑗 ≤ Λ(𝑡)𝑙𝑗 ) as long as

1

𝐾𝑟(𝑡)

𝑙′𝑖𝑗 𝜇𝑖𝑗−𝜆(𝑡𝑚𝑝)𝑗

+ 𝑑(𝑡)𝑙′𝑙 ≤ 𝜏𝑗 and 𝐾

𝑟(𝑡)𝑙′𝑖𝑗 ≤ 𝐾𝑖𝑛𝑖

𝑙′𝑖

are both satisfied. Update Λ(𝑡)𝑙𝑗 = Λ

(𝑡)𝑙𝑗 − 𝜆𝑡𝑚𝑝

𝑙𝑗 and

𝐾𝑖𝑛𝑖𝑙′𝑖 = 𝐾𝑖𝑛𝑖

𝑙′𝑖 −𝐾𝑟(𝑡)𝑙′𝑖𝑗 . If the reserved VMs are not

at 𝐷𝑙, 𝑧𝑡𝑙𝑙′𝑗 = 𝑧(𝑡)𝑙𝑙′𝑗 + 𝜆𝑡𝑚𝑝

𝑙𝑗 .

8: else if 𝜃𝑣(𝑡)𝑙′𝑖𝑗 from on-demand VMs (i.e. 𝑣 = 𝑑) then

9: Allocate 𝐾𝑑(𝑡)𝑙′𝑖𝑗 class-𝑖 on-demand VMs to serve

all remaining type-𝑗 application requests Λ(𝑡)𝑙𝑗 until

1

𝐾𝑑(𝑡)

𝑙′𝑖𝑗 𝜇𝑖𝑗−Λ(𝑡)𝑙𝑗

+ 𝑑(𝑡)𝑙′𝑙 ≤ 𝜏𝑗 is satisfied. Update

Λ(𝑡)𝑙𝑗 = 0. If the on-demand VMs are not at 𝐷𝑙,

𝑧𝑡𝑙𝑙′𝑗 = 𝑧(𝑡)𝑙𝑙′𝑗 + Λ

(𝑡)𝑙𝑗 .

10: end if11: until all requests have been processed.12: end for13: Calculate the total resource cost 𝐶

(𝑡)𝑔𝑙𝑏 =∑𝐿

𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑟𝑙𝑖𝐾

𝑟(𝑡)𝑙𝑖𝑗 +

∑𝐿𝑙=1

∑𝑁𝑖=1

∑𝑀𝑗=1 𝑝

𝑑𝑙𝑖𝐾

𝑑(𝑡)𝑙𝑖𝑗

and the workload assignment 𝑧(𝑡)𝑙𝑙′𝑗 =𝑧(𝑡)

𝑙𝑙′𝑗𝜆𝑖𝑛𝑖(𝑡)𝑙𝑗

.

451

Page 4: Cloud Resource Allocation

0500

100015002000250030003500400045005000

1 2 3 4 5 6 7Mea

n re

ques

t arr

ival

rat

e

(req

uest

s/s)

Time slot

Data Center 1Data Center 2Data Center 3

Fig. 2. Mean request arrival rate ateach data center.

0

10

20

30

40

50

60

1 2 3 4 5 6 7

Res

ourc

e co

st (d

olla

rs)

Time slot

Greedy algorithm

Optimal resource allocation scheme

Fig. 3. Comparison of resource costbetween optimal resource allocationscheme and greedy algorithm.

V. EXPERIMENTAL EVALUATION

A. Parameter Settings

We perform simulations to evaluate the proposed optimalresource allocation scheme. Amazon EC2 [7] is one of themost popular clouds allowing application providers to deployservices. To make our evaluation convincible, we simulate onthree geographically distributed Amazon data centers, in whichdata center 1 (𝐷1) is located at Asia Pacific region Tokyo, datacenter 2 (𝐷2) is located at EU region Ireland, and data center3 (𝐷3) is located at US region East Virginia. Three classesof VM instances are tested, including small capacity, largecapacity, and extra large capacity. The detailed VM instanceconfiguration and price rates can be found from [7]. Theapplication providers supply three multimedia applications.The service rates of different VMs are relative to the number ofAmazon EC2 compute units, which can be referred to [8]. Theservice response time requirements are 𝜏={0.4s, 0.6s, 0.8s}.The arrivals of users’ requests vary with time.

B. Experimental Results

We first compare the resource cost between the proposedoptimal resource allocation scheme, in which the VMs andworkload assignment are optimized by solving the resourceoptimization problem (1), and the proposed greedy algorithmin multi-site cloud. The optimal resource allocation schemeis the global optimal solution but slow to execute, while thegreedy algorithm is sub-optimal but lightweight and efficient.

The mean request arrival rate in each data center is shownin Fig. 2. The corresponding resource cost between the op-timal resource allocation scheme and the greedy algorithmis compared in Fig. 3. From Fig. 3, we can see that theoptimal resource allocation scheme can achieve a lower costcompared to the greedy algorithm under the same workload.The greedy algorithm only considers the current minimal unitcost, while the optimal scheme searches the whole feasibleregion to reach the global optimum. In Fig. 3, the maximaldifference of resource cost between the two schemes are 4.2dollars at the 4th time slot.

We also evaluate the performance of workload balancing. Atthe 4th time slot in Fig. 2, 𝐷1 and 𝐷2 have light workload,while 𝐷3 reaches a peak of 4000 requests/s. By applying theproposed optimal resource allocation scheme, the workload isbalanced as shown in Fig. 4. From Fig. 4, we can find that

Fig. 4. Workload assignment inmulti-site cloud at the 4th time slot.

3,000 4,000 5,000 6,000 7,000 7,50010

20

30

40

50

60

Mean request arrival rate (requests/s)

Res

ou

rce

cost

(d

oll

ars

)

Optimal resource allocation schemeGreedy algorithmIsolated approach [4]

Fig. 5. Comparison of resourcecost among optimal resource alloca-tion scheme, greedy algorithm, andisolated approach in [4]

𝐷1 and 𝐷2 process 100% of their local requests and help 𝐷3

to serve 30% and 17% of requests, respectively. In such way,𝐷3 can redirect workload to other two data centers to avoidthe local congestion.

We compare the resource cost among the proposed optimalresource allocation scheme, the greedy algorithm, and theisolated approach in our previous work [4]. The isolatedapproach in [4] optimizes VM allocation in each data centerto minimize the resource cost, without considering the globalworkload balancing. Fig. 5 shows the comparison result whenthe request arrival rate increases from 3000 to 7500 requests/s.From Fig. 5, we can find that the proposed optimal resourceallocation scheme achieves a lower resource cost compared tothe greedy algorithm and the isolated approach in [4].

VI. CONCLUSION

In this paper, we study the optimal resource allocation prob-lem for multimedia application providers. Based on the SaaSarchitecture and the resource allocation model, we proposethe optimal resource allocation scheme in multi-site cloud. Inthe proposed scheme, we jointly optimize the global workloadassignment and the local VM allocation to achieve the minimalresource cost under the service response time requirements.Moreover, we propose a greedy algorithm to efficiently allo-cate resources in a practical way. The experimental resultsdemonstrate that the proposed optimal resource allocationscheme can effectively achieve the minimal resource cost formultimedia application providers.

REFERENCES

[1] X. Nan, Y. He, and L. Guan, “Optimal resource allocation for multi-media cloud based on queuing model,” in Proc. of IEEE Workshop onMultimedia Signal Processing (MMSP), pp. 1–6, 2011.

[2] S. Chaisiri, B. Lee, and D. Niyato, “Optimal virtual machine placementacross multiple cloud providers,” in Proc. of IEEE Services ComputingConference, pp. 103–110, 2009.

[3] K. Bouyoucef, I. Limam-Bedhiaf, and O. Cherkaoui, “Optimal allocationapproach of virtual servers in cloud computing,” in Proc. of IEEE NextGeneration Internet, pp. 1–6, 2010.

[4] X. Nan, Y. He, and L. Guan, “Optimal allocation of virtual machinesfor cloud-based multimedia applications,” in Proc. of IEEE Workshop onMultimedia Signal Processing, pp. 175–180, 2012.

[5] D. Cross and C. Harris, “Fundamentals of queuing theory,” John Wilyand Sons, 1998.

[6] J. Karlof, Integer programming: theory and practice. CRC Press, 2006.[7] Amazon ec2. [Online]. Available: http://aws.amazon.com/ec2/[8] Amazon ec2 benchmark. [Online]. Available: http://www.phoronix.com/

452