Professional Documents
Culture Documents
Colocation Games
Colocation Games
Abstract 1 Introduction
We introduce Colocation Games as the basis of a gen- Motivation and Scope: Cloud computing has emerged
eral framework for modeling, analyzing, and facilitat- as a compelling paradigm for the deployment of dis-
ing the interactions between the various stakeholders tributed applications and services on the Internet. By
in distributed/cloud computing environments, where re- relying on virtualized resources, users are able to easily
sources are offered in an open marketplace to indepen- deploy, scale up or down, and migrate their applications
dent, rational parties interested in setting up their own seamlessly across computing resources offered by one or
applications. Virtualization technologies enable the par- more infrastructure providers. More importantly, virtual-
titioning of such resources so as to allow each player ization enables performance isolation, whereby each ap-
to dynamically acquire appropriate fractions of the re- plication is able to acquire appropriate fractions of shared
sources. When all the components are under the con- fixed-capacity resources, ensuring that the application
trol of a single administrative domain, this leads to an would meet minimal Quality of Service (QoS) require-
standard optimization problem, but when infrastructure ments.
providers make available their resources in a market- Cloud computing users leverage resources (servers,
place, and from there customers acquire the resources, networks, and storage) hosted by a provider and are
the global optimization framework is no longer appropri- billed for what they use based on a preset resource-
ate. Rather, in this paper we use a game-theoretic frame- quantum per unit-time price, like a metered utility. It
work in which the assignment of players to resources is is common the case (e.g.[1]) where this cost is bourn by
the outcome of a strategic ”Colocation Game”. Although the user whether or not the user consumes the full ca-
we show that determining the existence of an equilibrium pacity of the instance. Clearly, it is possible for multiple
for colocation games in general is NP-hard, we present a users to share the use of a cloud resource as long as their
number of simplified, practically-motivated variants of aggregate utilization does not exceed its capacity. While
the colocation game for which we establish convergence such colocation would be attractive to users (as it would
to a Nash Equilibrium, and price of anarchy bounds. In lower their costs) it is not attractive to the provider (as it
addition to these analytical results, we present an exper- would reduce their profits). This suggests that providers
imental evaluation of implementations of some of these have no incentive to “optimize” the assignment of users
variants. Experimental evaluation corroborates our ana- to resources – indeed, they have the exact opposite incen-
lytical results and also illustrates how colocation games tive. This implies that it is up to each user in the cloud
offer a feasible distributed resource management alterna- to minimize its own cost through colocation with other
tive for self-organizing systems, in which the adoption of users.
a global optimization approach would be neither practi- To summarize, given a user’s ability to unilaterally mi-
cal nor justifiable. grate from one resource to another in order to reduce
its own cost, cloud resource allocation and acquisition is
† Supported in part by the Universidad Pontificia Bolivariana and
better viewed through a game theoretic perspective. To
COLCIENCIAS–Instituto Colombiano para el Desarrollo de la Cien- that end, in this paper we introduce Colocation Games as
cia y la Tecnologı́a “Francisco José de Caldas”.
‡ Supported in part by NSF awards CCF-0820138, CSR-0720604, the basis of a general framework for modeling, analyz-
EFRI-0735974, CNS-0524477, and CNS-0520166. ing, and facilitating the interactions between the various
♭ Supported in part by NSF award CCR-0635102. stakeholders in a cloud computing environment.
Related work: Economic models have been used in 2 Colocation Games: Definition and Appli-
prior Grid resource management frameworks (e.g., [3, cations
4]). Typically, these models depend on a broker and users
abide to its decisions. This authority does not exist under Model and Notation: We use a labelled graph G =<
our model. V, E > to model the infrastructure (cloud) resources that
On the other hand, algorithmic game-theory has many are available to the users. Nodes in G represent stan-
examples ([5, 9]) where the system self-organizes reach- dalone resources, whereas edges represent relationships
ing an equilibrium state, which may be within a bound between these resources. Examples of standalone re-
from the social optimum (Price-of-Anarchy). Within sources include processors and storage. Examples of re-
these, the closest to our problem are cost-sharing games lationships between standalone resources include com-
[7, 2] which deal with the distribution of resource costs munication links and spatio-temporal adjacencies, both
among the users sharing it. In particular, cooperative cost of which would be represented as edges in G. Here we
sharing games [7] deal with the problem of assigning note that edges in G may be directed or undirected.
the shares of the costs such that the selected users are Another labelled graph T describes the set of cloud
all satisfied with the outcome. On the other hand, An- resources and underlying relationships that are neces-
shelevich et al[2] present a pure-strategies cost sharing sary to support a specific user application. We refer to
scheme applied to network formation games (and gen- this graph as the user requested task graph. Vertices and
eralized to allocation of subsets of resources) where the edges in T have the same meaning as those in the host-
cost is equally shared among all users sharing a single ing graph G. In a hosting graph, labels specify supply at-
resource. The disadvantage of the first model is that in tributes such as unit capacities and unit prices of process-
many cases such self-stabilizing cost-share assignments ing or communication links. In a requested task graph,
do not exist, may not be budget balanced or are not fair labels specify demand attributes such as the minimum
amongst the users. The limitation of the second model is CPU utilization and storage needed by a standalone pro-
that it only applies for unweighted resources. cess, or the minimum bandwidth tolerable by communi-
Contributions: We present a game-theoretic model for cating processes, etc. in the task.
the interaction of rational, selfish players sharing re- As illustrated in Figure 1, a set of requested task
sources in a distributed environment, where users can graphs (one per user) constitutes the overall workload to
easily relocate their tasks subject to QoS constraints. The be hosted on the infrastructure graph G. A mapping M
general model describes the behavior of a wide range of the set of request graphs to the hosting graph con-
of self-organizing distributed systems, where all interac- stitutes a configuration underscoring a specific assign-
tions are guided by players’ selfish goals. Under this gen- ment of users to resources. A valid configuration is one
eral setting, we show that the existence of a Nash equi- wherein supply meets demand. Given a valid configu-
librium is an NP-complete problem. Next, we explore ration, the infrastructure provider expects to be paid for
the mechanism design problem of creating a cost func- any resource in G used by at least one task (user), but
tion that induces a particular (desirable) user behavior. not for (idle) resources to which no tasks were mapped.
In particular we explore the goal of maximizing resource The price charged per resource is fixed, independent of
utilization so that all users can perform their tasks subject the number of users sharing that resource. The cost in-
to their QoS guarantees, but minimizing the total (social) curred by a user is given by a cost function which ap-
cost of the allocated resources. We present a simplified portions the price of each resource in G among all users
version of the colocation game, called the Process Colo- with tasks mapped to that resource. The cost function can
cation Game, for which we provide analytical bounds on be seen as the marketplace mechanism that governs and
convergence and price of anarchy. induces symbiotic relationships among rational, selfish
We also present empirical results obtained from two agents (the users). In this paper, we adopt a specific form
sets of experiments. One based on synthetically- of cost functions that may be conceived as fair – namely,
generated workloads to explore the characteristics of the those that split the fixed cost of a resource among tasks
game under a wide range of settings. The other based on in some proportional (e.g., linear) fashion based on the
PlanetLab traces as to evaluate the game dynamics un- utilization of that resource by the various tasks assigned
der realistic scenarios. In addition to corroborating our to it.
analytical findings, our experimental results suggest that The General Colocation Game (GCG): Given a host-
colocation games could be used as the basis for building ing graph G =< V, E > labelled with a resource ca-
distributed, on-line, self-organizing systems, in which pacity vector (R) and a price (P ), and given a collection
the adoption of a global optimization approach (central- of tasks, each in the form of a graph Ti =< Vi , Ei >,
ized or distributed) would be neither practical nor justifi- where vertices and edges are labelled with a weight un-
able. derlying a resource utilization vector (W ), the General
Figure 2: Examples of Colocation Games with no Nash
Figure 1: The Colocation Game Equilibria.
Collocation ratio
1.35 1.12
1.3 1.1
1.25 1.08
1.2 1.06
1.15 1.04
1.1 1.02
1.05 1
1 0.98
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80
1.8 2.1
BFS BFS
1.7 DFS 2 DFS
Collocation ratio
1.6 DP KP 1.9 DP KP
1.8
Figure 3: Example illustrating PoA for PCG with homo- 1.5
1.4
1.7
1.6
geneous resources 1.3 1.5
1.2 1.4
1.1 1.3
1 1.2
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80
Theorem 3. The PoA for homogeneous PCG is 3/2 while Game size (processes) Game size (processes)
Homogeneous Heterogeneous
11000
BFS
45000
BFS
(PCG), a more restricted version of GCG, along with
10000 40000
9000
8000
DFS
DP KP 35000
DFS
DP KP
many variants for which convergence and PoA results
30000
7000
could be derived. Also, using both synthetic and trace-
trials
6000 25000
5000 20000
4000 15000 driven workloads, we presented results from extensive
3000
10000
2000
1000 5000 empirical performance evaluation of practical and scal-
0 0
0 10 20 30 40 50 60 70 80 90100 0 10 20 30 40 50 60 70 80 90 100 able implementations of the strategies underlying these
Game size (processes) Game size (processes)
games.
Colocation games are not only valuable as modeling
Figure 6: Worst-case trials (synthetic)
and analysis tools, but also they provide a solid frame-
work upon which purely distributed resource acquisi-
Colocation Ratio for PlanetLab Workloads: Figure 5 tion and management protocols may be conceived for
shows the median colocation ratio (ratio of worst/best emerging cloud computing, grid, and peer-to-peer over-
social cost) using the task specifications derived from lays. In this paper we have shown that although best re-
the PlanetLab traces. These results imply a relatively sponse computation may be expensive, computationally-
small colocation ratio, which as with synthetic workloads efficient better-response heuristics are quite promising.
seems to be independent of the better response heuristic
used. As shown in Figure 5, the worst-case colocation References
ratios were not too far off.
[1] A MAZON . COM , I NC . Amazon Elastic Computing Cloud (Amazon
Convergence Speed and Overhead: Figures 6 and 7 EC2). http://aws.amazon.com/ec2/, Feb 2009.
show the number of trials it takes to reach equilibrium.
[2] A NSHELEVICH , E., D ASGUPTA , A., K LEINBERG , J., TARDOS ,
They indicate that the number of trials is directly related E., W EXLER , T., AND ROUGHGARDEN , T. The price of stability
to the number of tasks in the system and fairly indepen- for network design with fair cost allocation. In FOCS (2004).
dent by the heuristic used to compute the better response. [3] B UYYA , R., A BRAMSON , D., AND G IDDY, J. Nimrod/G: An
The relation is essentially linear for unidimensional PCG architecture for a resource management and scheduling system in
and follows a power law for higher dimensionality PCGs. a global computational grid. In HPC ASIA (2000).
[4] G OMOLUCH , J., AND S CHROEDER , M. Performance evaluation
of market-based resource allocation for grid computing. Concur-
5 Conclusion rency and Computation: Practice and Experience 16, 5 (2004),
469–475.
Colocation Games offer a natural paradigm for modeling [5] K OUTSOUPIAS , E., AND PAPADIMITRIOU, C. Worst-case equi-
and analyzing the dynamics that are likely to result when libria. Lecture Notes in Computer Science 1563 (1999), 404–413.
rational, selfish parties (users) interact in an attempt to [6] L ONDO ÑO , J., B ESTAVROS , A., AND T ENG , S.-H. Collocation
minimize the individual costs they incur to secure the games and their application to distributed resource management.
Tech. Rep. BUCS-TR-2009-002, Boston University, 2009.
shared infrastructure resources necessary to support the
[7] N ISAN , N., ROUGHGARDEN , T., TARDOS , É., AND VAZIRANI ,
QoS or SLA requirements of their applications. Coloca-
V. V., Eds. Algorithmic Game Theory, 1st ed. Cambridge Univer-
tion games offer an attractive alternative to approaches sity Press, 2007.
that require such parties to trust infrastructure providers [8] PARK , K., AND PAI , V. S. CoMon: a mostly-scalable monitoring
(who have no vested interest in minimizing user costs, system for planetlab. SIGOPS Oper. Syst. Rev. 40, 1 (2006), 65–74.
and may indeed have the exact opposite incentive) or [9] ROUGHGARDEN , T., AND TARDOS , É. How bad is selfish rout-
those that expect such parties to be altruistic or to accept ing? JACM 49, 2 (2002), 236–259.
best-effort (as opposed to reservation-based) approaches
that do not guarantee performance isolation.
In this paper we introduced the general colocation
game (GCG) as well as the process colocation game