selfish caching in distributed systems: a game-theoretic analysis by byung-gon chun et al. uc...
Post on 20-Dec-2015
240 views
TRANSCRIPT
Selfish Caching in Distributed Systems: A Game-Theoretic Analysis
By Byung-Gon Chun et al.UC Berkeley
PODC’04
CSE658 wireless Seminar 2
Outline
Motivation Game Theory Problem Formulation Theoretical Results Simulation Results Conclusions
CSE658 wireless Seminar 3
Motivation
Traditional networks assume nodes are cooperative and follow certain protocol
In reality, nodes may behave selfishly Seek to maximize their own benefit Many applications: P2P, ad hoc network
Selfish Caching is to: Find appropriate object placement strategies for distributed replication groups of selfish nodes
Game Theory Definition: A formal way to analyze interaction among a
group of rational players who behave strategically. Game
a set of players: {1, 2, …, n} player i has a set of alternative strategies: S_i
each strategy is called a pure strategy mixed strategy: choosing all strategies according to prob. dist.
Strategy profile s= (s_1, s_2, …, s_n), where s_i є S_i Payoff function h_i(s): the payoff to player i when the
players choose strategy profile s All above are common knowledge to each player
CSE658 wireless Seminar 5
Game Theory Continued Nash equilibrium (NE): strategy profile in
which no player can be strictly better off by unilateral deviation
Why NE? It is a stable, self-enforcing solution Theorem (Nash, 1951) – “For a game with finite
players and each player having a set of finite strategies, there always exists an equilibrium in (mixed) strategy.”
In most cases, NE does not achieve social optimum due to selfishness of each player
CSE658 wireless Seminar 6
How to quantify the selfishness?
Price of anarchy (Papadimitriou et al, 1999) loss of efficiency ratio of the social cost of the worst possible
Nash equilibrium to the cost of social optimum
Optimistic Price of anarchy Smallest ratio of NE and social optimum
Caching and Selfish Caching
CSE658 wireless Seminar 8
Traditional Caching Problem
Given: n servers; m objects distance matrix D: d_{ij} is the distance from server i to
server j demand matrix W: w_{ij} is the demand of server i to
object j Placement cost matrix P: α_{ij} is the placement cost of
server i for object j No memory constraint
Goal:Place objects into servers s.t. the total access cost + placement cost is minimized
It is uncapacitated multi-facility location problem – NP hard
CSE658 wireless Seminar 9
Selfish caching problem
Each node tries to minimize its own access + placement cost
Model selfish caching problem as a non-cooperative game with n players whose strategies are sets of objects to cache
Each node (player) chooses a pure strategy that minimize its own cost
CSE658 wireless Seminar 10
Basic Selfish Caching Cost Model Given:
s_i: strategy chosen by server i (set of objects i places)
Strategy profile: s = (s_1, s_2, …, s_n) the cost of server i:
For each object, at least one server will choose to cache
CSE658 wireless Seminar 11
Separability of Uncapacitated Version
We can look at individual object placement separately due to no memory constraint
Nash equilibrium of the multi-object caching game is the combination of the Nash Equilibria of single object caching game
CSE658 wireless Seminar 12
Social Optimal Caching
CSE658 wireless Seminar 13
Social Optimal Caching
Social Optimal Cost: C(So) = minS
CSE658 wireless Seminar 14
Single Object Selfish Caching Game
Strategy: si = 1, when i replicates ; 0, otherwise
strategy profile: s = (s1, s2, …, sn) Cost of server i to access object j
Social cost of s: ∑ ci(s)
CSE658 wireless Seminar 15
Major Questions Does a pure strategy Nash equilibrium exist in single object selfish caching game?
If so, what is the price of anarchy in such NE?
How does price of anarchy vary under different demand distribution, underlying topology and placement cost?
Can Nash equilibrium achieve social optimum?
CSE658 wireless Seminar 16
Major Results
Pure strategy NE exists in single-object caching game
Price of anarchy can be bad: O(n)
With payment as incentive for nodes to replicate, there exists pure strategy NE achieving social optimum
CSE658 wireless Seminar 17
How to find the pure strategy NE in single object caching game?
Assume placement cost the same for all servers: α ; server i’s demand is w_i
Algorithm:1. Remove “zero demand” servers from the server set N2. Pick a server y s.t. α/w_y is the minimum 1) y places the object 2) Remove y and all z where w_z*d_{zy} ≤ α
3. Continue 2 until N is empty
CSE658 wireless Seminar 18
Continued… Claim: The resulting configuration X is
a pure strategy NE
All such y have no incentive to remove its object
All such z have no incentive to replicate
No player has incentive to deviate, its NE.
CSE658 wireless Seminar 19
Price of Anarchy (PoA) of Single Object Game
PoA = C(WNE)/C(SO)
CSE658 wireless Seminar 20
Inefficiency of NE
CSE658 wireless Seminar 21
Payment Game Each player i offers a payment to another
player j as incentive for j to replicate object Strategy for player i: (v_i, b_i, t_i)
v_i: the player to whom i makes a bid b_i: the value of the i’s bid t_i: payment threshold beyond which i will
replicate Total amount of bids received by i: R_i i replicates iff R_i >= t_i I_i = 1 if i replicates object, I_i = 0 if not
CSE658 wireless Seminar 22
Payment Game Continued…
If i makes bid b_i to j If j replicates the object, then i must pay j amount of
b_i If j does not replicate, i does not pay j
The outcome of the game is: {(I_i, v_i, b_i, R_i)}
Cost Model
CSE658 wireless Seminar 23
Results of Payment Game
Theorem In the payment game, there is
always Nash equilibrium that implements the social optimum configuration
Simulation
CSE658 wireless Seminar 25
Proof Observation If node i replicates the object, j is the nearest node to
i that replicates the object, and dij < α, then i should have a threshold at least (α – dij )
Consider the social optimal configuration Φ. i is one of the cache nodes, Qi the set of nodes that
access object from i (not including i). For each j in Qi, δj is extra cost needed if not
accessing j Claim: If node i replicates the object, j is the nearest
node to i that replicates the object, if i is
CSE658 wireless Seminar 26
CSE658 wireless Seminar 27
Varying Placement Cost
Effects of Payment and Different Underlying Topology
CSE658 wireless Seminar 29
CSE658 wireless Seminar 30
CSE658 wireless Seminar 31
Conclusions Introduce a non-cooperative game
model for selfish caching
Pure strategy NE exists and the price of anarchy can be O(n)
With payments, price of anarchy can be improved as one
Distributed Selfish Replication
By N. Laoutaris etcIEEE TPDS 2005
CSE658 wireless Seminar 33
Network Model Object sets O={o_1, o_2…,o_N}, n
players Accessing object from a node’s local
cache costs t_l, from a remote node’s cache t_r, and from origin server t_s,
with t_l <= t_r <= t_s Each node has memory capacity: C_i Goal is to maximize the excess gain
(access cost reduced due to caching)
CSE658 wireless Seminar 34
Game Model
Node i’s strategy P_i: the set of objects replicated at i
Global object placement P = {P_1, P_2,…, P_n}; P_-i = P_1 U … U P_{i-1} U P_{i+1} U… U P_n
The gain for i under P is
CSE658 wireless Seminar 35
There exists a NE Step 1 (Greedy Local): each node
caches the top C_i popular object according to its own access demand
Step 2: in the order of their node id, each node adjusts its placement (move in/out objects) according to the current placement of all other nodes.
What obtained is a NE.
Sketch of proof (why its NE):
Only need to show in step 2 above, for any node i, the changes in the cache placement by the nodes following i’s turn do not affect the optimality of i’s placement (i.e. the top C_i popular data do not change).
Lemma 1: In step 2, for any node, only object with more than 1 copy in the network can be removed
Otherwise, the object’s gain won’t be reduced and thus won’t be removed out
Lemma 2: In sep 2, only object with zero copy in the network can be moved in
By way of contradiction Each removed object does not affect i’s cache placement
optimality since there are at one more copy in the network Each moved-in object does not affect i’s cache placement
optimality since its gain must be lower than that of any objects currently in i’s cache.
So each node has no incentive to change its cache placement.
CSE658 wireless Seminar 37
Our approach
Network Model (two major difference compared with existing work): Consider both memory capacity of
each node and the number of hops between nodes; consider both caching cost and access cost
Network nodes are the source nodes of all the objects
CSE658 wireless Seminar 38
Game model becomes more complicated!!
Thus a pure strategy NE is in question, even omitting the caching cost!