Dynamic Task Assignment and Resource Management in Cloud Services Using Bargaining Solution

Size: px
Start display at page:

Download "Dynamic Task Assignment and Resource Management in Cloud Services Using Bargaining Solution"

Transcription

1 Dynamc ask Assgnment and Resource Management n Cloud Servces Usng Barganng Soluton KwangSup Shn 1, Myung-Ju Park 2 and Jae-Yoon Jung 2 1 Graduate School of Logstcs, Incheon Natonal Unversty 12-1 Songdo-Dong, Yeonsu-Gu, Incheon, , Korea ksshn@ncheon.ac.kr 2 Department of Industral and Management Systems Engneerng, Kyung Hee Unversty 1 Seocheon-Dong, Gheung-Gu, Yongn-S, Gyeongg-Do, , Korea {pmj0684, jyjung}@khu.ac.kr Correspondng author Abstract Cloud computng provdes nfrastructure, platform and software as servces to customers. For the purpose of provdng relable and truthful servce, a far and elastc resource allocaton strategy s essental from the standpont of servce customers. In ths paper, we propose a game-theoretc mechansm for dynamc cloud servce management, ncludng task assgnment and resource allocaton to provde relable and truthful cloud servces. A user utlty functon s frst devsed consderng the dynamc characterstcs of cloud computng. he elementary stepwse system s then appled to effcently assgn tasks to cloud servers. A resource allocaton mechansm based on barganng game soluton s also adopted for far resource allocaton n terms of qualty of servce of requested tasks. hrough numercal experments, t s shown that the proposed mechansm guarantees better system performance than several exstng methods. he expermental results show that the mechansm completes the requested tasks earler wth relatvely hgher utlty whle provdng a sgnfcant level of farness compared to exstng ones. he proposed mechansm s expected to support cloud servce provders n elastcally managng ther lmted resources n a cloud computng envronment n terms of qualty of servce. Keywords: Barganng Soluton, Cloud Computng, Qualty of Servce, Resource Allocaton, ask Assgnment

2 1. Introducton 1.1 Research background Gartner recently dentfed cloud computng as one of the top strategc technologes for the next ten years [1]. Cloud computng s desgned to power the next-generaton data centers as the enablng platform for dynamc and flexble applcaton provsonng. hs s facltated by exposng data center s capabltes as a network of vrtual servces so that users are able to access and deploy applcatons from anywhere n the Internet drven by the demand and Qualty of Servce (QoS) requrements [2]. he fundamental concept of cloud computng s to share resources among cloud servce consumers, cloud partners and cloud vendors n a value chan [3]. he essental characterstcs of Cloud computng can be represented wth scalablty, flexblty, qualty of servce (QoS) guaranteed on-demand servce provsonng and resource poolng [4]. By explorng these advantageous functons of Cloud computng, t s possble to delegate computng and data on desktops and portable devces to large data centers, called cloud servces [5]. here are several key challenges assocated wth provsonng of servces on clouds: servce dscovery, montorng, deployment of Vrtual Machnes (VMs) and applcatons, and load-balancng among others [6]. In partcular, the resource requests for cloud servces change over tme and the computng resources can be allocated dynamcally upon the requrements and preferences of consumers. herefore t s not easy to dynamcally and effcently allocate the cloud resources because consumers may access applcatons and data n the Cloud from anywhere at any tme and dfferent users have conflctng preferences [7]. Addtonally, although Cloud has been ncreasngly seen as the platform that can support elastc applcatons, t faces certan lmtaton pertanng to core ssues such as ownershp, scale, and localty. For nstance, a Cloud can only offer a lmted number of hostng capablty to applcaton servces at a gven nstances of tme: hence, scalng the applcaton s capacty beyond a certan extent becomes complcated [6]. herefore, tradtonal system-centrc resource management archtecture cannot process the resource assgnment task and dynamcally allocated the avalable resources n a cloud computng envronment [7]. For these reasons, effectve and effcent resource allocaton s a core and challengng ssue n Cloud computng, and a next-generaton technology requres flexble resource management such as montorng current servce requests and adjustng schedules, prces, and amount of allocated resources for servce requests [2].

3 1.2 Challenges and motvaton Recently, resource allocaton mechansms are developed or analyzed for each servce types of Cloud computng, Software-as-a-Servce (SaaS) [8], Infrastructure-as-a-Servce (IaaS) [9], and Platform-as-a- Servce (PaaS) [10]. hese researches cannot represent the conflctng relatonshp among users or the requested Cloud servces from users. In order to consder the conflctng relatonshp of Cloud computng, t seems that a game theoretcal approach s needed for developng effcent resource allocaton mechansm. Great deals of researches have proposed game theoretc resource management mechansms for Grd computng [11-20], and a few researches for Cloud computng [4, 21-23]. However, there are great dfferences between the Grd computng and Cloud computng n terms of basc objectves, characterstcs and the way of assgnng tasks and allocatng resources [24]. Hence, t s dffcult to drectly apply the pror mechansms whch are developed for the tradtonal grd computng to cloud computng. In addton, most of pror game theoretc approaches n both Grd computng and Cloud computng have adopted the effcent and effectve schedulng or dscrmnatve mechansms lke auctons. hus, t seems to be dffcult to guarantee the vtal characterstcs of Cloud computng, on-demand servce provsonng, and also to correspond to the dynamc change of users requests. Consequently, for the effcent and effectve Cloud servce provdng, a new approach for task assgnment and resource allocaton should be developed to guarantee the on-demand servce provsonng as well as the hgh level of system performance, whch can be evaluated wth general quanttatve metrcs such as average lead tme, network bandwdth, completon tme (make-span), task costs, relablty and farness [7, 25]. hese requrement of performance evaluaton can be found n the ncreased mportance of Applcaton Performance Management (APM) of Cloud computng. As more applcatons are pushed on the cloud, montorng performance and measurng the SLAs for applcaton performance n cloud [26]. he software packages such as AppDynamcs, Koscom, Ovum, and CA APM provde the functon of performance evaluaton n the vew pont of users as well as montorng over the whole resources ncludng nfrastructure, network and applcaton for Cloud servces. As ncluded n the pool of metrcs of performance evaluaton and Ergu, et al. and Chandak, et al. have ponted [7, 25], the farness should be ncluded n the pool of metrcs for performance evaluaton. Because users pay costs accordng to the amount of resource usage n Cloud computng, the effectveness and effcency of resource usage become the prmary metrcs n cloud users poston. In addton, resource allocaton and task assgnment mechansms n the pror researches have been developed n order to make servce provder s utlty or proft hgher, not consdered the users. hus, n order to keep the better contnuty of busness, a Cloud servce provder should be able to guarantee not only hgher

4 effcency (or effectveness) but also relatvely hgher farness compared wth other users or past servce usng experences. 1.3 Contrbuton he ultmate goal of ths paper s to propose an effcent resource allocaton mechansm n Cloud computng envronment, whch can enhance the farness of resource utlzaton whle consderng the conflctng relatonshp among the requested Cloud servces. In order to accomplsh the ultmate goal, we adopt a barganng soluton, Nash barganng soluton (NBS), whch s well known to guarantee the farness based on the utlty among players n competton, for task assgnment and resource allocaton n cloud computng servces. Wth the proposed mechansm, t seems to be possble to effectvely and effcently utlze lmted computng resources whle guaranteeng the ondemand cloud servce provsonng. We also present and analyze numercal experments to show that the proposed mechansm guarantees better performance than exstng methods such as proportonal share (PS), Aucton and the equal rate allocaton system (ERAS). From the result of analyss, t has been shown that the proposed mechansm usng NBS guarantees the shortest average lead tme and make-span than others, and provdes a relatvely hgher farness of utlty-cost rato. he proposed mechansm, NBS, can be appled to general cloud servces such as SaaS, IaaS and PaaS, and hybrd servces whch are combned wth general servces by modelng cloud resources such as CPU, memory, physcal dsk space and bandwdth as general cloud resources. It also supports cloud servce provders n flexbly managng ther lmted resources n a cloud computng envronment n terms of qualty of servce. he remander of ths paper s organzed as follows: We ntroduce related work n Secton 2. he overall procedure of the proposed mechansm s explaned n Secton 3, and the detaled algorthms for task assgnment and resource allocaton are then descrbed n Secton 4. We llustrate the performance of the proposed mechansm wth numercal experments n Secton 5. Fnally, we conclude the paper n Secton Related Work 2.1 Game theoretc resource allocaton mechansms

5 Resource allocaton has been a research topc and key factor n dstrbuted computng and grd computng [23, 27-30]. Varous game theoretc solutons have been adopted n settngs of both Cloud and Grd computng [22]. Generally, the game theory concerns the necessty of decson makng n a certan stuaton where by two or more ratonal opponents are beng occuped under condtons of competton along wth conflctng nterests n expectaton of defnte outcomes n excess perod of tme [31]. Game-theoretc resource allocaton mechansms are categorzed based on the types of models such as general equlbrum, barganng and negotaton, bd based proportonal sharng, and aucton. Especally, Buya et al., have ntroduced varous economc approaches such as commodty market model [32], posted prce model, barganng model, tenderng/contract-net model, aucton model, bd-based, proportonal resource share model [14]. In ths secton, the game theoretc task assgnment and resource allocaton mechansms for Grd computng and cloud computng are summarzed at frst. And then, task schedulng models and other ssues related resource management are dscussed. General equlbrum: he resource allocaton approaches applyng economcs n Grd computng have been covered n many researches [13, 14, 33-37]. he majorty of them nvestgated the economy n general equlbrum, whch can be converted to the Nash equlbrum (NE) [31]. Yazr et al. [38] proposed a new approach for dynamc autonomous resource allocaton n computng clouds through dstrbuted multple crtera decson analyss. Lee and et al. (2010) suggested an evolutonary game theoretc mechansm, whch s called Nuage, allows applcatons to adapt ther locatons and resource allocaton to the envronmental condtons n a cloud [39]. Bayesan Nash Equlbrum Allocaton algorthm to solve resource management problem n cloud computng has been developed by eng and Magoulès. hey have been shown that cloud users may receve Nash equlbrum allocaton solutons accordng to the gamblng stages, and the resource wll converge to the optmal prce [40]. We and et al. (2010) developed a stepwse mechansm for a QoS constraned resource allocaton problem n cloud computng. her game theoretc soluton s obtaned by two steps. Frst, each partcpant solves ts optmal problem ndependently, and then evolutonary mechansm whch takes both optmzaton and farness nto account s desgned [23]. Aucton: Aucton s the most popular resource allocaton mechansm when users or tasks compete for lmted computng resources n Cloud computng as well as Grd computng because t can descrbe the negotaton process well and s easy to understand and mplement. Le and et al. (2008) proposed an aucton based resource allocaton mechansm usng predcton of others bd based on the mean value of hstorcal bds [16]. Aucton model usng SmGrd framework [15], combnatoral aucton based resource allocaton protocol [11],

6 and the Contnuous Double Aucton [18] have been adopted to resolve some neffectveness of grd resource allocaton. Dfferent from these mechansms usng only a sngular prce and match, there exsts a research whch adopted more sophstcated aucton protocol [19]. Also, decentralzed aucton mechansm has been adopted n resource accountng systems such as POPCORN [17], Spawn [20], and CPM [12]. Sun et al. (2012) has developed a resource allocaton model, ESPSA, based on the second prce aucton for both grd and cloud computng envronments. hs model ntroduced a bdder number restrcton method to assure the vctorous probablty of each users and resource brokers [22]. Also, they developed a heurstc resource allocaton algorthm based on a contnuous double aucton and M/M/1 queung model to mprove both performance-qos and economc-qos smultaneously [4]. Barganng and negotaton model: In the barganng model, resource brokers bargan wth Grd Servce Provders (GSPs) for lower access prces and hgher usage duratons. Both brokers and GSPs have ther own objectve functons and they negotate wth each other as long as ther objectves are met. hs negotaton s guded by user requrements and brokers can take rsks and negotate for cheaper prces as much as possble, and they can dscard expensve machnes. However, ths mght lead to lower resource utlzaton, so GSPs generally employ ths model when market supply and demand and servce prces are not clearly establshed [14]. An et al. devsed a negotable contract model wth commtment prce and de-commtment cost between the cloud servce provder and customers, whch the agents negotate to generate contracts for resource leases for a fxed tme nterval [21]. We et al. proposed a two-stage optmzaton algorthm usng game theory [23]. Bd based proportonal sharng: Resource allocaton models usng bd-based proportonal resource sharng are qute popular n cooperatve problem solvng envronments such as clusters (n a sngle admnstratve doman). In ths model, the percentage of resource share allocated to the user applcaton s proportonal to the bd value n comparson to other s bds [14]. Examples systems such as Rexec/Anemone, Xenosevers and D Agents CPU market employ a proportonal resource sharng model n managng resource allocatons [13]. ask schedulng: Effcent task schedulng mechansm can meet users requrements and mprove the resource utlzaton [41]. An evolutonary mechansm and game theoretc method have been developed to fnd the optmal schedule of dependent cloud computng servces based on the smulaton approach [42]. By applyng game theoretc approaches, most of resource allocaton schedulng model have consdered the relatonshp between users and grd resources, not the nteracton among users [43]. Especally, Ergu, et al.

7 suggested a task orented schedulng mechansm usng Analytc Herarchy Process (AHP) n Cloud computng [7]. hey set the rank on the cloud tasks based on the results of parwse comparson among dynamcally requested tasks and user preferences for evaluatng performance of resource allocaton, whch rank values are utlzed as the crtera for task schedulng and resource allocaton. Other ssues: In addton, the ssue of determnng how many hosts or resources are adequate for mantanng stable servces whle satsfyng oblgatons [44], and autonomc detectng and dynamc resolvng models (scalng up or down) for bottlenecks n a mult-ter Web applcaton hosted on a cloud based on response tme [45] have been ntroduced. here are some dfferent features n the process of assgnng tasks and allocatng resources between the Cloud computng and other paradgms. Frst of all, for grd computng, the resources are hghly unpredctable, heterogeneous, and ther capabltes are typcally unknown and changng over tme, whch may connect and dsconnect from the grd at any tme. herefore, the same task s sent to more than one computer n Grd computng, and the user receves the output of the computer that completes the task frst [24]. Dynamc allocaton of tasks to computers s complcated n the grd computng envronment due to the complcated process of assgnng multple copes of the same task to dfferent computers [7]. However, Cloud computng enables users to access to a cloud computng envronment to vst ther data and obtan the computaton at anytme and anywhere [46]. In addton, Cloud computng s attemptng to provde cheap and easy access to measurable and bllable computatonal resources comparng wth other paradgms. Hence, varous task assgnment and resource allocaton mechansms cannot be drectly appled to Cloud computng wthout modfcaton. 2.2 Lmtatons Despte a varety of studes, some lmtatons to develop effcent and effectve resource management mechansms for Cloud computng stll reman. Frst of all, resource management should take nto consderaton the essental characterstc of Cloud computng, QoS-guaranteed on-demand servces, whch dstngush from other computng paradgms [47]. It means that users can access cloud servces just at the tme when they request whle provdng a certan level of servce qualty. Most of pror researches have stll adopted dscrmnatve approaches such as auctons or market based models whch guarantee the more barganng power to certan users to ncrease proft of the servce provder. However, task schedulng or

8 dscrmnatve assgnment mechansms such aucton assume that the requested task can be delayed for the effcency of the resource utlzaton. It may also cause the problem that requested tasks are aborted or dscarded. Note that, before a task s aborted or dscarded, t consumes system resources ncludng network bandwdth, storage space, and processng power, and thus can drectly or ndrectly affect the system performance [48]. hus, t may be sad that the ultmate goal of Cloud computng cannot be accomplshed. In other words, the performance of the resource utlzaton may be evaluated based on the delay of completon tme (make-span), but the startng tme of task executon should not be delayed after the requested tme. In addton, both the effcency and effectveness can be enhanced smultaneously f t s possble to prevent the resource utlzaton get lower whle applyng the barganng model. herefore, a dynamc and flexble resource management s requred to guarantee the on-demand servce provsonng. In the most game-theoretc mechansms adopted to solve optmzaton problems of compettve resource allocaton and task assgnment, each task s consdered as an ndependent decson maker that competes for cloud resources [23]. hese ndependent players can partcpate n the resource allocaton game only when the far mechansm s assured. he farness of the market means that each resource owner has an equal opportunty to offer ts resource and t can obtan a far proft accordng to ts capablty [49]. Although the farness of resource allocaton should be consdered as the crtera for the performance evaluaton lke response tme, compete tme and relablty, only two models, commodty market model [32] and ncentve based schedulng [49] n Grd computng have tred to mnmze the farness devaton among resources. It s hard to fnd researches whch consder the farness n Cloud computng. Motvated by these consderatons, we have devsed a task assgnment and resource allocaton mechansm usng the barganng soluton, Nash Barganng Soluton (NBS) to guarantee the on-demand servce provsonng as well as the farness of resource allocaton whch s evaluated wth utlty-cost rato. 3. Proposed Mechansm In ths secton, we descrbe the overall procedure of the proposed task assgnment and resource allocaton mechansm usng NBS. he system archtecture of the proposed mechansm focuses on the procedure of Cloud servce executon, as shown n Fgure 1. he system to provde cloud servce s generally composed wth four dfferent layers: user nterface layer, servce management layer, servce executon layer and resource vrtualzaton layer.

9 QoS based ask Assgnment Utlty-based Resource Allocaton End User Servce Request Servce Management Layer Servce Executon Layer S S S E E E User Interface Layer User Request Management ask Pool Vrtualzed Servce Provder Provde the result of task executon Montor the procedure of task executon Resource Vrtualzaton Layer Fgure 1. Archtecture of a cloud computng system Frst of all, the Cloud servce provder lke Google, Amazon, and Salesforce.com desgns and deploys ts own servces n the servce management layer. hs cloud servce may be composed wth one or more unt servces. Each unt servce can be characterzed wth the mnmum requrement of resource and unt prce. Lke conventonal Web-based servces, users request the servce provder to execute Cloud servces through the user nterface layer. After user requested Cloud servces, a new nstance of requested unt Cloud servce s created, called a task. he propertes of a task follow those of the requested unt servce. For example, let s assume that a Cloud servce for the quotaton s composed wth three dfferent unt servces such as create customer, create quotaton table and compare wth other quotaton, and t has been deployed n the Cloud system. If two dfferent sales representatves request a quotaton servce, respectvely, two dfferent set composed wth three predefned tasks are ntated and requested accordng to the flow of tasks. hen, Cloud system should execute the requested tasks and provde the results, respectvely. In the proposed system structure, these requested tasks are gathered n a task pool n the servce management layer and then handed over to the servce executon layer. In the servce executon layer, upon the arrval of tasks, a QoS-based task management module chooses the proper dstrbuted servers n the resource vrtualzaton layer whch can guarantee the hgher level of utlty (QoS). After executng the tasks, the result s provded to the users. In ths paper, we focus on task assgnment and resource allocaton n the servce executon layer, whch s composed of dstrbuted physcal servers.

10 o smplfy the task assgnment and resource allocaton problem wthout loss of generalty, we assume that the cloud computng envronment s characterzed as follows: (1) ndependent and ndvsble cloud task: a task s a mnmum ndependent and ndvsble servce unt, (2) sngle type of resources: all physcal servce are composed wth a sngle type of resource and all unt servces requre the sngle type of resource and (3) Agent based automatc performance evaluaton: the devce users own has an agent to communcate wth the cloud system to submt requests and receve the computatonal result, thus users can quanttatvely evaluate the QoS based on the lead-tme to complete the requested tasks. he notatons used n the proposed mechansm are summarzed n able 1. able 1 Notatons and descrptons Notaton Descrpton S set of servces provded n cloud computng c s 0 R s M Q j c b 0 R s total R t R t X unt prce of a resource whle usng servce s S mnmum amount of resources requred for executng servce s S set of cloud servers resource capacty of the cloud server j M set of tasks n servces requested by users, and S unt prce of a resource whle executng task, avalable budget for executng task that a user has set mnmum amount of resources requred for executng task, total amount of resources requested by users, R total =b /c s amount of resources allocated to task at tme t utlty of task, a functon of the amount of allocated resources at tme t, X t =π (R t ) here are S types of unt Cloud servce, and the characterstcs of each servce are represented by the unt cost per resource (c s ) and the mnmum resource amount (R 0 s ). Snce the task s an nstance of cloud servce, all propertes of a task follow those of the correspondng cloud servce. herefore, f a task, s an nstance of a servce type s, the mnmum requrement and unt cost of the task become equal to those of servce s, (R 0 = R 0 s, c =c s ), respectvely. On requestng task, users set the budget (b ) for executng the task. Here, the total resource requrement (R total ) s determned by b /c, and there are m dstrbuted physcal servers wth maxmum resource capacty (Q j ).

11 Utlty-based ask Assgnment Resource Allocaton for ask Assgnment R 1 MAX R 1 0 ask Pool ask 1 Server 1 ask ask Q 1 R 2 MAX R 2 0 ask 2 Server j Q j R MAX R 0 ask ask ask ask ask Server m Q m R n MAX R n 0 ask n ask ask ask Fgure 2. Descrpton of the problem: ask assgnment and resource allocaton he proposed mechansm performs task assgnment and resource allocaton usng a barganng soluton. he overall structure of the problem s depcted n Fgure 2. It s assumed that there are m dstrbuted physcal servers wth maxmum resource capacty (Q j ). he frst problem pertans to whch dstrbuted server the requested cloud task s assgned to. Let x j be a bnary decson varable ndcatng whether task s assgned to cloud machne j. he equaton, j M x j =1, can be establshed because a task s a mnmum ndvsble servce unt. Snce each server has a dfferent resource capacty Q j, the amount of resources allocated to the tasks s dependent on the maxmum capacty of the dstrbuted server and the requrements of other tasks that are assgned to the same server. he second problem s determnng how to allocate resources to tasks assgned to the same server. Because the amount of allocated resources determnes the utlty of each task (QoS), all tasks compete wth other tasks to secure as many resources as possble. hese two problems should be ntegrated because the result of one problem has an mpact on the other. Here, the ntegrated problem s modeled as a game of tasks that compete for the lmted resources of servers. hus, the task assgnment and resource allocaton mechansm should guarantee that all tasks have the best utlty. Barganng solutons such NBS and KSBS are utlzed for the resource allocaton mechansm because they are known to guarantee farness. In ths paper t wll be shown that the problem can have at least Nash equlbrum by provng that the problem can be transformed nto a congeston game. he Elementary Stepwse System (ESS) s also proposed to guarantee that the Nash equlbrum can be reached n polynomal tme.

12 Algorthm 1. ask assgnment and resource allocaton Input: a task set, ( ) and the total requrement of each task ( R total ) a cloud servers set, M ( M j ) and maxmum amount of resources requred for each server (Q j ) task sets requested at tme t, N t ( ), 0 t t MAX Set t=0 Repeat Set the status of N t to on Randomly assgn tasks whose status are on ( t R t <R total ) to cloud servers Update the maxmum requrement of tasks, R MAX = R total t - t R Repeat at most (n-1) tmes { 1) Allocate resources (Q j ) to tasks that are assgned to server j usng Resource-Allocaton (R MAX, c, Q j ) for all j ( M) 2) Calculate utltes (X ) for the allocated resources 3) Create an ordered queue of tasks SEQ n descendng order of the utlty gaps, X MAX - X 4) Update the task assgnment usng ESS (descrbed n Algorthm 2) wth SEQ and Resource-Allocaton (R MAX, c, Q j ) } set the status of tasks to whch all requred resources are allocated ( t R t =R total ) as off t t+1 Untl t t MAX Resource-Allocaton (R MAX, c, Q j ){ R =0; whle ( R =Q j or R = R MAX, for all ) { R = R + amount of resources allocated to task usng one of the resource allocaton methods; Q j = Q j - R ; R MAX = R MAX - R ; } return R; }

13 he ultmate goal of ths research s to develop a task assgnment and resource allocaton mechansm to enhance the utlty of all requested tasks. hs goal can be acheved by Algorthm 1, whch descrbes the overall procedure of assgnng tasks to dstrbuted servers that can guarantee the better utlty. he utlty of task, X = π (R ), s calculated based on the amount of allocated resources. In ths algorthm, once tasks are assgned to a dstrbuted server, resources are allocated usng resource allocaton mechansm untl all amounts of resources n a server are consumed or the maxmum requrements are met of all assgned tasks. And, the sequence of server change s then determned based on the gap between the maxmum and current utltes (X MAX - X ). Each task changes ts server choces f another server guarantees greater utlty than the current one. hs procedure s repeated untl an equlbrum status s reached. he procedures and crtera for resource allocaton whch s descrbed n the functon, Resource-Allocaton (R MAX, c, Q j ), vary wth the dfferent resource allocaton mechansms. Detals of the resource allocaton framework are gven n the followng sectons. 4. Utlty-Based ask Assgnment and Resource Allocaton In ths secton, the utlty functon of a task s frst devsed consderng the characterstcs of cloud computng servce. hen, the task assgnment and resource allocaton framework based on utlty are descrbed n detal. 4.1 Utlty functon of a task A utlty functon s the crteron used for task assgnment and resource allocaton n ths research. As depcted n Fgure 1, Cloud servces are contnuously and dynamcally requested from users, and dstrbuted servers should execute the requested tasks and present the result to users as soon as possble. Meanwhle, users do not recognze whch cloud server wll take ther tasks and how many resources are allocated to the tasks. hus, users can evaluate the qualty of servces based only on how ther tasks are executed. In ths paper, we present a utlty functon nspred from the concept of response tme n order to consder the fundamental characterstcs and relatonshp between the Cloud system and users. In practce, pror researches [50-52] have shown that the response tme s dependent on the amount of allocated resource and user s utlty functon n Cloud computng has the nverse relatonshp wth the response tme. Fgure 3A shows response tme as a functon of the amount of allocated resources. As the amount of resources ncreases, the response tme decreases and gets close to a certan pont (D ). From ths pont of vew, the utlty, whch s defned as the value a user places on the cloud servces accordng to the amount of allocated resources, can be llustrated as shown Fgure 3B. As the amount of allocated resources ncreases, the margnal utlty decreases.

14 response tme utlty (QoS) A B D R 0 amount of allocated resources R R 0 amount of allocated resources R Fgure 3. Response tme and utlty (QoS) vs. amount of allocated resources: A, response tme; B, utlty By reflectng the fact that utlty s nversely proportonal to response tme, we devsed a generalzed utlty functon as follows: QoS R 0 R R, (1) D R R 0 where R s the amount of allocated resources, and ω, k, R 0 and D are parameters dependent on servce type. Note that k and ω are postve and D s non-negatve. Here, the amount of allocated resource (R ) for task should be equal to or greater than the mnmum requrement (R 0 ). If R s less than R 0, the QoS becomes zero. herefore, the mnmum requrement can be nterpreted as the dsagreement pont or the mnmal requrement for guaranteeng the performance solaton. 4.2 Utlty-based task assgnment In ths study, task assgnment s performed based on the utlty derved from the amount of allocated resources. If the assgnment of multple tasks can change smultaneously, the resource allocaton plan cannot be acheved [53-55]. herefore, we assume that only one task can change the server selecton at a tme, and we mplement the framework wth ESS. It has been proven that ESS converges to Nash equlbrum [54] and that the requred number of task assgnments for n tasks to reach Nash equlbrum s at most n-1, whch s lnearly proportonal to the number of tasks [56]. In the remander of ths subsecton, we descrbe how to apply ESS to our problem. he order n whch to change the server selecton s determned based on the utlty gaps of tasks, ρ (x j )=X MAX -X *, whch s defned as the dfference between the maxmum achevable utlty and current one. Hence, the bgger utlty gap a task has, the earler the task changes the server selecton. he procedure of the proposed ESS s descrbed n Algorthm 2.

15 Algorthm 2. ESS for task assgnment Input: Ordered queue of users, SEQ task assgnment x=(x ), SEQ Repeat 1) Retreve a task wth the largest utlty gap n SEQ. u=seq.pop() 2) Suppose task u s assgned to cloud server w (.e., x uw =1). If another cloud server can offer greater utlty than w, update the task assgnment of u. s * arg max u R xuj jm f R x R x, x 0 and x 1. Untl SEQ s empty u uw u us uw us * * 4.3 Resource allocaton usng barganng game solutons Here, the resource allocaton framework usng a barganng soluton, NBS, s explaned under the assumpton that all tasks are assgned to servers Barganng power and feasble soluton he barganng power of tasks should be defned before developng resource allocaton mechansm usng the NBS. Generally, snce barganng power s used to represent the dscrmnated prorty to the resource, the barganng power s defned based on the unt prce of the cloud servce that s nstantated by a task as follows: 1 c c j n n 1 j1. (2) he servce provder can adjust gaps n barganng power among tasks usng the parameter, ξ (0).

16 4.3.2 Nash barganng soluton (NBS) Only one generalzed NBS X * =(X 1 *,, X n * ) exsts that satsfes the sx axoms explaned n [57]. Addtonally, the generalzed NBS s the soluton of the followng optmzaton problem [58, 59]: * n X arg max G( X ) X 1 d XS 1 1 s. t X,..., X S, d X, n 1, 0, for all. n (3) where (X 1,, X n ) s the jont utlty pont n the feasble soluton, S, defned n wth barganng power. In ths study, the dsagreement pont, d = (d 1,, d n ) s assumed to be the orgn. For any optmzaton problem wth dfferentable objectve and constrant functons for whch strong dualty holds, any par of prmal and dual optmal ponts must satsfy the Karush-Kuhn-ucker (KK) condtons. Moreover, f the prmal problem s convex, the KK condtons are suffcent for the ponts to be prmal and dual optmal [60]. If t s possble to assume that G(X) s a concave functon and S s a convex set, the prmal problem s convex [57]. In addton, f G(X) s a non-decreasng functon, the optmal soluton should be n the barganng set B, whch s a set of all ndvdually ratonal, Pareto optmal utlty pars n a feasble soluton, S [61, 62]. hus, the optmzaton problem can be expressed as follows: * n X arg max G( X ) X 1 XS X s. t, R Q R n n n D0 X (4) X 0,for all Snce the objectve functon and constrant functons are dfferentable, the followng KK condtons are establshed [57]: 0 n n 1) Prmal constrants: / 0 1 X D X Q R 1, X >0 for all ; 2) Dual constrants: 0; 3) Complementary slackness: X =0 for all ; 4) he gradent of the Lagrangan wth respect to X vanshes: ( G(X)) - +( /( -D 0 X ) 2 )=0 for all ;

17 where ( G(X)) represents the th element n the vector of G(X) and and are Lagrangan multplers assocated wth the th nequalty constrant and equalty constrant, respectvely. he gradent of the objectve functon s as follows:. (5) G ( X ) a X n X n n 1 1,..., a X X 2 n n 1 he frst condton s satsfed because the generalzed NBS s a pont n the barganng set, B. he thrd condton (complementary slackness) s satsfed by settng =0 because X >0 for all due to the assumpton that a hgher utlty than the dsagreement pont s allocated to each task. Hence, the second condton (dual constrants) s obvously satsfed. From the last condton, the gradent of the Lagrangan can be rewrtten as ( G(X)) -( /( -D 0 X ) 2 ) for all. Snce s a constant, the relatonshp between X m and X k s establshed by settng mth and kth rows to be equal as follows: D X D X 2 2 m m 0m m k k 0k k. (6) X X m m k k By applyng ths equaton, the NBS can be easly obtaned f one of the ponts can be fxed. When assumng the utlty of the frst task s obtaned, the utltes of the remanng tasks can be determned by usng the followng equaton: R k D R R D R R 11 k 11 k 1 k1 k 0k f D0 k D0 k (7) 0 0 k R1 R D01 R1 R 1 0 Rk f D0 k 0, k 2... n 1 1 Here, the bsecton method [60] s appled to the optmal soluton because t can be used to obtan the soluton n the n-th polynomal tme. By adoptng the upper bound (u=q) and the lower bound (l=r 0 ) of resource allocaton, the bsecton method can be easly appled. he method then requres exactly log 2 ((ul)/) teratons [57].

18 5. Illustratve Experments In ths secton, the results of numercal experments are presented to llustrate how the proposed task assgnment and resource allocaton framework works and the superor performance of the mechansm compared to other resource allocaton frameworks. 5.1 Expermental desgn A few assumptons for expermental desgn such as the type and the amount of resources are chosen from the CloudSm model [6] whch characterzes and smplfes the general crcumstances of Cloud computng. Other assumptons and parameters for the experments are artfcally generated to llustrate how the proposed mechansm works. Especally, the parameters for the utlty functons, D 0, w, and k, can adjust the characterstcs of utlty functons, such as the maxmum level, the velocty of convergence, and senstvty to the amount of allocated resources. hus, the values are selected to llustrate the envronment of general cloud computng by utlzng the mnmum response tme of a famous cloud servce, Google Calendar, and the maxmum tolerable watng tme. he parameters for the experments are summarzed n able 2. able 2. Parameter settngs for numercal experments Parameters for experments Parameters for cloud servce types Parameters Values no. c D 0 ω κ λ no. c D 0 ω κ λ M Q 4GBytes RAM =1, R 0, S S = In the experments, to make the experments smple, t s assumed ten types of Cloud servce, whch each servce has dfferent parameters for utlty functon and unt prce for sngle type of resource. he mnmum requrement for all servce type s assumed as zero, and the maxmum requrement s determned based on the level of budget that users have randomly set for each servce request and the unt prce of requested servce type (R MAX = b /c ). hs maxmum requrement s contnuously updated accordng to the result of resource allocaton as n Equaton (8). In the equaton, t s the ndex of teraton tme. If the maxmum requrement s satsfed at the tme t, (R MAX,t =R t ), the requested task,, s termnated. R R R (8) MAX, t total t

19 In order to quanttatvely evaluate the performance of task assgnment and resource allocaton, an artfcal workload model whch servces are randomly requested, at frst. We have developed a workload model by usng random arrval process whch follows a Posson dstrbuton wth arrval rate, λ. hs arrval rate of each servce type has ts own value. However, n order not to make characterstcs of servce types have mpacts on the result of smulaton, the total number of servce requests for all servce types s equally set to be one hundred. Consequently, a thousand tasks are randomly requested. he smulaton wll be termnated when the all tasks are termnated. Also, we assumed that there are ten dstrbuted servers, that each server has 4GBytes of RAM memory. By syntheszng the results of repeated smulaton wth these assumptons and settngs, t may be able to evaluate the effcency and effectveness of proposed task assgnment and resource allocaton mechansm when cloud servers are crowded wth tasks. 5.2 Other resource allocaton mechansms he performance of the proposed framework n allocatng resources s evaluated n comparson wth other resource allocaton frameworks, ncludng the ERAS, PS and PA. On-demand servce provsonng means that all tasks should be executed as soon as requested. In other words, the servce provder should allocate resources to all requested tasks. he resource allocaton mechansms NBS, MRPS, CBPS and ERAS are able to guarantee the on-demand provson of servce. PA guarantees on-demand servce provsonng only to tasks wth hgher bd prces, whle makng the other tasks wat for ther servces untl resources are avalable. Even though PA cannot guarantee on-demand servce provsonng to all tasks, t has been ncluded to compare the other metrcs aglty and effcency. ERAS s the most smple and ntutve resource allocaton framework, whch s supposed to guarantee farness by allocatng exactly equal amounts of resources to all tasks remanng n the system. Here, to avod allocatng more resources than requred, the amount of resources allocated to task at tme t s determned by Equaton (9). R t Q n MAX, t mn, R t (9) In ths equaton, n t s the number of tasks remanng n the system at tme t whle applyng the ERAS framework.

20 Dfferent from ERAS, proportonal share proportonally allocates resources accordng to the weghts of each task. wo dfferent proportonal share mechansms, maxmum requrement-based proportonal share (MRPS) and cost-based proportonal share (CBPS), are adopted n the experments. In these two mechansms, the amount of allocated resources s determned accordng to the maxmum resource requrements and costs, as calculated n Equatons (10) and (11), respectvely. R (10) MAX, t t ( j ) t Q n j j MAX, t R j1 j R x c R ( x ) mn Q, R t MAX, t j t j n j c j1 j (11) For a PA, a task can be nterpreted as the bdder at an aucton, and the unt prce of servce type and the maxmum resource requrement at each tme are regarded as the bd prce and quantty, respectvely. In a bd profle Φ=(Φ 1,, Φ n ), a task bd Φ means that task wants to purchase a quantty R MAX,t at the unt prce, c. he auctoneer adopts an aucton rule A to determne an allocaton A(Φ)=(R t (Φ), C(Φ)), where R t (Φ) and C (Φ) are the quantty allocated to and the total cost pad by task, respectvely. he resource allocaton rule of PA proposed n [58] s adopted as follows:, Q Rk Qc (12) k: c c k MAX, t t MAX, t R R mn R, Q( c, ) MAX, t R (13) k k: ckc Equatons (18) and (19) represent the fact that the resource Q j s allocated to tasks wth a hgher bd prce pror to tasks wth a lower prce. erm Q(c, Φ - ) denotes the quantty remanng after complete allocaton to all tasks wth hgher prces than task. R t (Φ) s the revsed allocaton rule proposed n [63]. If the remanng quantty Q(c, Φ - ) s suffcent, R MAX,t can be allocated to task ; otherwse, the remanng resource s dvded amongst task and the tasks wth the same bd prce as task. hen, the remanng resource Q(c, Φ - ) s shared proportonally to meet the maxmum resource requrements of tasks, R MAX,t k. In the event that the remanng quantty s suffcent, the remander wll be agan allocated to the tasks that have lower bd prces than task.

21 5.3 Performance evaluaton For the performance evaluaton, two dfferent crtera, aglty and effcency, have been utlzed. here s no doubt that aglty and effcency are the basc performance ndcators for generc applcatons Aglty: Average lead tme and makespan Generally, aglty represents how long t takes the system to execute the requested cloud tasks. In ths paper, the average lead tme and makespan are utlzed as the metrcs for aglty. he frst metrc, average lead tme can be measured when each task s termnated because the requested tme of each task s already known. Makespan s the measure throughput of completon tme. It can be calculated as maxmum of completon tme [25]. Fgure 4 shows the number of tasks remanng n the cloud computng system. All resource allocaton frameworks show a dfferent number of remanng tasks as tme elapses. If there are more tasks remanng, t can be sad that relatvely more tme s requred to complete those tasks. Fgure 4. he number of tasks remanng n the cloud computng system After all requested tasks are fnshed, the average lead tme can be determned. o mnmze the effect of randomness, the experments are repeated 30 tmes. he dstrbuton, mean and standard devatons of average lead tmes are summarzed n Fgure 5. And same nformaton of makespan s depcted n Fgure 6.

22 Makespan Average Leadtme ERAS NBS PA MRPS CBPS A. dstrbuton of average lead tme B. mean and standard devaton of average lead tme Fgure 5. Dstrbuton, mean and standard devaton of average lead tme of the repeated experments ERAS NBS PA MRPS CBPS A. dstrbuton of makespan B. mean and standard devaton of makespan Fgure 6B. Dstrbuton, mean and standard devaton of makespan of the repeated experments he random workload model and servce type assgnng make the requested tme and total requrement of all tasks be randomly determned n each experment. hus, t s nsuffcent to compare aglty wth the smple average and standard devaton of average lead tme ( L ) and makespan ( MS ). For a more exact comparson, a pared t-test s appled because t can compare two populaton means of two samples by parng observatons n one sample wth those n the other. Wth the results of pared t-tests, the followng hypotheses can be tested. H 0 : L NBS < L other, MS NBS < MS other H 1 : L NBS L other, MSNBS MS other he results of the pared t-tests of average lead tme and makespan are summarzed n able 3 and able 4, respectvely

23 able 3. Results of pared t-test comparsons of average lead tme NBS vs. other mechansms Results Progressve ERAS Aucton MRPS CBPS μ NBS-Other σ NBS-Other SE % upper bound for mean dfference t-value p-value able 4. Results of pared t-test comparsons of makespan NBS vs. other mechansms Results Progressve ERAS Aucton MRPS CBPS μ NBS-Other σ NBS-Other SE NBS-Other % upper bound for mean dfference t-value p-value he pared t-test results ndcate that the null hypothess cannot be rejected. herefore, t can be sad that the resource allocaton mechansm usng NBS guarantees the best performance n both terms of average lead tme and makespan. In addton to barganng solutons, each resource allocaton mechansm (PA, MRPS and CBPS) shows a dfferent result. MRPS sets the weght of each task based on the maxmum requrement and allocates a certan amount of resources to all tasks. hus, MRPS termnates most of the tasks at the same tme and shows worse performance than CBPS Effcency: Farness ndex he performance of task assgnment and resource allocaton n Cloud computng should be evaluated based on cost and utlty [64]. hus, we have desgned the metrc, effcency, to consder both cost and utlty, smultaneously. QoS dfferentaton and adaptaton s beyond the capablty of systems n a tradtonal besteffort servce archtecture. he best-effort servce model offers excellent prce-performance ratos n the

24 Average Farness Index of Utlty-Cost Rato multplexng of shared computng and communcaton resources. However, t does not allow for the smultaneous provson of excellent servces and sustaned hgh usage of shared resources [65]. hus, the effcency of resource allocaton based on QoS s evaluated wth the utlty-cost rato (r t =X t /c R t ) n ths paper. As descrbed n the frst secton, the farness of the market means that each resource owner has an equal opportunty to offer ts resource and t can obtan a far proft accordng to ts capablty [49]. Only a few prevous researches [32, 66] have tred to mnmze the farness devaton for the Grd computng. It s also evaluated based on the level of farness of the resource allocaton by comparng each task wth others usng the farness ndex, whch was developed n [67] as follows: n 2 n 2 / 1 1 FI r n r (14) hs farness ndex can be appled to the utlty-cost rato n order to evaluate the absolute extent of user satsfacton and relatve to cost. he average farness ndces of the experments are depcted n Fgure ERAS NBS PA MRPS CBPS A. dstrbuton of average farness ndces B. mean and standard devaton of average lead tme Fgure 7. he mean and standard devaton of average farness ndces of repeated experments By referencng the Fgure 7, we may ntutvely expect that ERAS wll show the hghest FI value because t allocates exactly the same amount of resources to each task. On the other hand, the aucton may show the lowest value due to the dscrmnatng strategy. Instead, NBS, whch guarantees the best performance n terms of aglty, shows a level of farness nearly dentcal to that wth CBPS and ERAS. Lke the case of aglty n the pror subsecton, the followng hypotheses are tested based on the results of pared t-tests.

25 H 0 : H 1 : FI other < FI NBS FI other FI NBS able 5. Results of pared t-tests comparng the farness ndex other mechansms vs. NBS Results Progressve ERAS vs. CBPS ERAS MRPS CBPS Aucton μ X1-X σ X1-X SE X1-X % upper bound for mean dfference t-value p-value able 5 shows the results of the pared t-tests. Based on the results, we can say that NBS dd not show better performance than ERAS and CBPS, but PA and MRPS. As expected, the aucton shows the worst performance wth regard to the farness ndex. It s notable that CBPS shows the best performance n terms of the farness ndex. In addton, we cannot say that ERAS whch s expected to show the best performance may perform better than or even equal to CBPS. he reason of these results can be found n the characterstcs of farness ndex of utlty-cost rato. Snce the farness ndex does not compare the absolute value of the utlty-cost rato, but computes the degree of farness wth the varance, t seems to be natural that NBS cannot guarantee the hghest farness ndex. Although NBS always guarantees the same or better level of farness by comparng ERAS and CBPS, t s possble to say that the performance of NBS s not far behnd ERAS and CBPS when consderng the mean rato of average farness ndex of NBS to ERAS (98.7%) and CBPS (98.1%). When syntheszng the results of the performance comparson n terms of aglty and farness, we can conclude that NBS s more sutable for addressng the task assgnment and resource allocaton problem n a cloud computng system because t guarantees the best aglty and has nearly the hghest level of farness. In other words, users wll be satsfed wth the rapd response tme n the executon of requested tasks and wll be assured that the Cloud servce s far to all users.

26 6. Concluson In ths paper, we presented a game-theoretc mechansm for task assgnment and resource allocaton n cloud computng. Whle prevous studes on servce deployment and resource allocaton generally focused on the evaluaton of servce qualty and resource allocaton based on the relatonshp between a cloud servce provder and users or on the users perspectve, we devsed a utlty functon based on the response tme consderng the characterstcs of the cloud servce. hen, we proposed a game-theoretc mechansm for task assgnment and resource allocaton usng ESS and barganng soluton, NBS, based on the compettve relatonshp among tasks gven lmted cloud resources. hrough numercal experments, we showed that the proposed mechansm can guarantee better performance than exstng methods ncludng ERAS, MRPS, CBPS and PA, n terms of aglty and farness. Applyng NBS for resource allocaton guarantees that the requested tasks wll be termnated earler. Also, snce ths method yelds a hgher farness wth regard to the utlty-cost rato, resource allocaton usng NBS s more sutable for resource management n the cloud computng system than exstng methods. In other words, wth the proposed mechansm, a servce manager can elastcally manage cloud resources n response to the dynamc changes n user requests n a cloud computng envronment. Here, a lmtaton can be found n the characterstcs of utlty functon. Actually, NBS can be adopted only when the convexty of utlty functons can be assumed. Because the margnally decreasng utlty functon s the representatve form as found n a great deal of pror researches, the convexty of utlty functon may be assumed. However, f the utlty functon shows dfferent forms such as stepwse or sgmod functon, t s mpossble to adopt the NBS. If the convexty cannot be assured, KSBS can substtute NBS because KSBS can fnd the Pareto optmal soluton even though the convexty cannot be obtaned whle guaranteeng the smlar level of performance to NBS [68, 69]. In addton, the proposed game-theoretc mechansm can be appled to any type of cloud computng servces, such as IaaS, PaaS and SaaS, by the general cloud resource nterpreted as CPU, memory, physcal dsk space and network bandwdth, and the qualty of servce can be consdered n terms of response tme. Stll, some lmtatons reman. In the proposed approach, only a sngle type of resource s assumed. However, n general, two or more dfferent types of resources, for example CPU, memory and network bandwdth, are smultaneously requred n order to execute a cloud task. hus, the response tme can be devsed as an aggregate functon wth the dfferent resources. herefore, the proposed mechansm can be extended to consder resource combnatons and optmzaton.