Cachemeifyoucan& - College of Computer and Information · PDF file · 2012-05-18d...
Transcript of Cachemeifyoucan& - College of Computer and Information · PDF file · 2012-05-18d...
Cache me if you can Capacitated Selfish Replica0on Games
Dimitrios Kanoulas R. Rajaraman, R. Sundaram
R. Gopalakrishnan, N. Karuturi, C. P. Rangan
LATIN’12, CCIS Department, Northeastern University
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)2
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
β β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)3
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
β β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*6 + 1*0 = 24 4*6 + 2*0 = 24
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)4
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
β β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*6 + 1*0 = 24 4*6 + 2*0 = 24
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)5
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
β α
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*2 + 1*0 = 8 4*0 + 2*2 = 4
cost cost
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)6
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
β α
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*2 + 1*0 = 8 4*0 + 2*2 = 4
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)7
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
α α
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*0 + 1*6 = 6 4*0 + 2*6 = 12
cost cost
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)8
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
α α
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*0 + 1*6 = 6 4*0 + 2*6 = 12
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)9
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
α β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*0 + 1*2 = 2 4*2 + 2*0 = 8
cost cost
Costj =�
α∈O
ratej(α)d(j, j’s nearest node holding α)10
Capacitated Selfish Replica0on Game Instance
Server
Server
i k
α β
α β
d(S,k) = 6
d(i,k) = 2
d(S,i) = 6
ratek(α) = 4 ratek(β) = 1
ratei(α) = 4 ratei(β) = 2 4*0 + 1*2 = 2 4*2 + 2*0 = 8
cost cost
Stable 11
Capacitated Selfish Replica0on (CSR) CSR Network:
• A set V of nodes sharing a collec0on O of unit-‐sized objects.
• Access cost func0on d: V x V -‐> ℜ • d(i,j) is the cost incurred at node i for accessing an object at node j.
• Each node has a cache with limited capacity to store a certain number of objects. Server node: has the capacity to store all objects.
• Node’s placement: set of stored objects. Global placement: the set of all nodes’ placements.
12
Capacitated Selfish Replica0on (CSR) CSR Game: A CSR network, where each node i: • aYaches a uFlity Ui to each global placement • has a rate ri for each object α, represen0ng the rate at which node accesses the object. • has a strategy set which is the set of all feasible placements at the node.
Example of a numerical u0lity func0on (sum):
Pure Nash Equilibria: global placement such that there is no node that can increase its u0lity by unilaterally devia0ng from its strategy, i.e. by replica0ng different set of objects.
Ui(P ) = −�
α∈O
ri(α)d(i,i’s nearest node holding α)
13
Applica0ons
P2P networks and content delivery applica0ons
• P2P movie sharing service: distributed version of ne,lix where you can access movies (objects) both from other users (nodes) and from the ne\lix server at some cost ($$).
• Brave new 4G wireless world: being both a consumer and provider of apps (objects) to others (nodes) around you, where the server is the app store.
14
Related Work
[B. Chun, K. Chaudhuri, H. Wee, M. Barreno, C. H. Papadimitriou, and J. Kubiatowicz] -‐ PODC 2006
Pure Nash equilibria in a sebng with storage cost, but no cache capaci0es.
[N. Laoutaris, O. Telelis, V. Zissimopoulos, and I. Stavrakakis] – Trans. Parallel Distr. Syst. 2006 [G. Pollatos, O. Telelis, and V. Zissimopoulos] -‐ Networking 2008 Hierarchical networks: one-‐level using sum u0lity func0on.
Our work: Capacitated in general networks 15
Our Results ( Does pure Nash equilibrium always exist?)
Object rates & count Undirected networks Directed Networks
Binary, two objects Yes (Finding an equilibrium: in P)
No (In P to decide)
Binary, three or more objects
Yes (Finding an equilibrium: we don’t know if in P)
No (NP-‐complete to decide)
General, two objects Yes (Finding an equilibrium: in P)
No (NP-‐complete to decide)
General, three or more objects
No (NP-‐complete to decide)
Hierarchical: Yes (Finding an equilibrium: in P)
No (NP-‐complete to decide)
16
Hierarchical Networks
3
1
Example of a 3-‐level hierarchical network:
17
10
8
i j k l server
Why Hierarchical Networks?
18
Have been extensively used to model communica0on costs of content delivery and P2P systems:
• [Karger et al. – STOC 1997]: for modeling content delivery networks.
• [Leff et al. -‐ IEEE Trans. Parallel Distrib. Syst. 1993], [Tewari et al. – ICDCS 1999], [Korupolu et al. -‐ Journal of Algorithms 2001]: for modeling cooperaFve caching in hierarchical networks.
Our Results on Hierarchical Networks
Poly-‐0me construc0on of equilibrium: FicFonal Players Algorithm
3
1
19
i j k
α β γ α β γ α β γ
Our Results on Hierarchical Networks
3
1
20
i:γ j:β k:γ
α β γ α β γ α β γ
Equilibrium
Our Results on Hierarchical Networks
3
1
21
i:γ j:β k:γ
α
β γ α β γ α β γ
Our Results on Hierarchical Networks
3
1
22
i:α j:β k:γ
α
β γ α β γ α β γ
Equilibrium (in polynomial number of steps)
Our Results on Hierarchical Networks
3
1
23
i:γ j:β k:γ
α
β
γ
α β γ α β γ
Equilibrium (in polynomial number of steps)
Our Results on Hierarchical Networks
3
1
24
i:γ j:β k:γ
α
β
γ
α β γ α β γ
Equilibrium (in polynomial number of steps)
Our Results on Hierarchical Networks
3
1
25
i:γ j:β k:γ
α
β
γ
β γ α β γ
Equilibrium (in polynomial number of steps)
Our Results on Hierarchical Networks
3
1
26
i:γ j:α k:γ
Equilibrium
Concluding Remarks • Numerical u0li0es -‐> General framework • Frac0onal version: nodes hold frac0ons of objects.
Open QuesFons • Open complexity ques0ons: finding a pure Nash equilibrium for undirected networks with binary preferences.
• Dynamically changing networks.
• Finding approximate equilibria (mixed or correlated).
27