Cloud Resource Allocation Games

Cloud computing is a newly emerging paradigm in which a client pays as it uses computing resources owned by a cloud provider. Since multiple clients share the cloud’s resources, they could potentially interfere with each others’ tasks. Current pricing and resource allocation mechanisms are quite preliminary (e.g., fixed pricing in Amazon EC2/S3) and do not take into account the conflict of interests between multiple clients using the cloud simultaneously. This can lead to clients being overpriced, depending upon their allocated resources. Further, these mechanisms do not allow the provider to optimize its resource utilization. In this paper, we take the first step towards modeling the complex client-client and client-provider interactions in a cloud by using game theory. We define a new class of games called Cloud Resource Allocation Games (CRAGs). CRAGs solve the resource allocation problem in clouds using game-theoretic mechanisms, ensuring that clients are charged (near) optimal prices for their resource usage and that resources of the cloud are used near their optimal capacity. We present the conditions for reaching various stable equilibria in CRAGs and provide algorithms that ensure close to optimal performance. We further provide results of several experiments performed using traces from PlanetLab and the Parallel Workload Archives which show that the new mechanisms result in as much as 15% to 88% increase in performance compared to existing resource allocation mechanisms like Round-Robin.

[1]  Randal C. Burns,et al.  CA-NFS: A congestion-aware network file system , 2009, TOS.

[2]  KyoungSoo Park,et al.  CoMon: a mostly-scalable monitoring system for PlanetLab , 2006, OPSR.

[3]  Azer Bestavros,et al.  Colocation Games and Their Application to Distributed Resource Management , 2009, HotCloud.

[4]  Carrie Grimes,et al.  Using a market economy to provision compute resources across planet-wide clusters , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[5]  Donald F. Ferguson,et al.  Economic models for allocating resources in computer systems , 1996 .

[6]  Tim Roughgarden Stackelberg Scheduling Strategies , 2004, SIAM J. Comput..

[7]  Pradeep Dubey,et al.  Inefficiency of Nash Equilibria , 1986, Math. Oper. Res..

[8]  Tim Roughgarden,et al.  Algorithmic Game Theory , 2007 .

[9]  Tim Roughgarden,et al.  How bad is selfish routing? , 2002, JACM.

[10]  Berthold Vöcking,et al.  Selfish Traffic Allocation for Server Farms , 2010, SIAM J. Comput..

[11]  Amin Vahdat,et al.  SHARP: an architecture for secure resource peering , 2003, SOSP '03.

[12]  A. Peressini,et al.  The Mathematics Of Nonlinear Programming , 1988 .

[13]  Thomas Sandholm,et al.  Market-Based Resource Allocation using Price Prediction in a High Performance Computing Grid for Scientific Applications , 2006, 2006 15th IEEE International Conference on High Performance Distributed Computing.

[14]  Li Zhang,et al.  Tycoon: An implementation of a distributed, market-based resource allocation system , 2004, Multiagent Grid Syst..

[15]  Ariel Orda,et al.  Achieving network optima using Stackelberg routing strategies , 1997, TNET.

[16]  Andrew V. Goldberg,et al.  Quincy: fair scheduling for distributed computing clusters , 2009, SOSP '09.

[17]  Amin Vahdat,et al.  Why Markets Could (But Don't Currently) Solve Resource Allocation Problems in Systems , 2005, HotOS.