380 likes | 526 Views
Selfish Caching in Distributed Systems: A Game-Theoretic Analysis. By Byung-Gon Chun et al. UC Berkeley PODC’04. Outline. Motivation Game Theory Problem Formulation Theoretical Results Simulation Results Conclusions. Motivation.
E N D
Selfish Caching in Distributed Systems: A Game-Theoretic Analysis By Byung-Gon Chun et al. UC Berkeley PODC’04
Outline • Motivation • Game Theory • Problem Formulation • Theoretical Results • Simulation Results • Conclusions CSE658 wireless Seminar
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 CSE658 wireless Seminar
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
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
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 CSE658 wireless Seminar
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
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
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
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
Social Optimal Caching CSE658 wireless Seminar
Social Optimal Caching • Social Optimal Cost: C(So) = minS CSE658 wireless Seminar
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
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
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
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 N 2. 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
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
Price of Anarchy (PoA) of Single Object Game • PoA = C(WNE)/C(SO) CSE658 wireless Seminar
Inefficiency of NE CSE658 wireless Seminar
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
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
Results of Payment Game • Theorem In the payment game, there is always Nash equilibrium that implements the social optimum configuration CSE658 wireless Seminar
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
Varying Placement Cost CSE658 wireless Seminar
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 CSE658 wireless Seminar
Distributed Selfish Replication By N. Laoutaris etc IEEE TPDS 2005
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
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
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. CSE658 wireless Seminar
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.
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
Game model becomes more complicated!! • Thus a pure strategy NE is in question, even omitting the caching cost! CSE658 wireless Seminar