1 / 23

Distributed Selfish Replication

Distributed Selfish Replication. Nikolaos Laoutaris Orestis Telelis Vassilios Zissimopoulos Ioannis Stavrakakis {laoutaris, telelis, vassilis,ioannis}@di.uoa.gr. Department of Informatics and Telecommunications, University of Athens, Greece.

kyla-price
Download Presentation

Distributed Selfish Replication

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Distributed Selfish Replication Nikolaos Laoutaris Orestis Telelis Vassilios Zissimopoulos Ioannis Stavrakakis {laoutaris,telelis,vassilis,ioannis}@di.uoa.gr Department of Informatics and Telecommunications, University of Athens, Greece

  2. A Distributed replication group(Leff et al., IEEE TPDS ‘93) origin server Applications • Content distribution • Shared memory • Network file systems access cost: tl <tr<ts ts • n nodes • Νobjects tr vj tl group Cj: vj’s storage capacity rij: vj’s request rate for obj. oi

  3. Two main issues to address • Object placement • which objects to replicate in each node? • …will be the focus of this talk • Request routing • how to find a node that replicates the requested object? • … our object placement solution facilitates perfect routing • routing to the closest node that’s holding the object

  4. Socially Optimal (SO) placement strategy minimizes the average access cost in the entire group requires complete information (all request vectors) anda centralized algorithm Leff et al.: SO by casting the object placement problem as a capacitated transportationproblem (polynomial complexity) SO appropriate under a single authority (e.g., CDN operator) Two popular obj. placement strategies • Greedy Local (GL) placement strategy • each node acting in isolation (completely uncooperative) • node vj replicates the Cj most popular objects according to the local demand rj • requires only local information (the local request vector)

  5. What happens when nodes are selfish? • a selfish node: • seeks to minimize its local access cost • is a better model for applications with: • multiple/independent authorities • e.g., P2P, distributed web-caching • our main research goal will be to:“Find appropriate object placement strategies for distributed replication groups of selfish nodes”

  6. Why not use SO or GL? • the SO strategy: • can mistreat some nodes (example coming next) • requires transmitting too much information • the GL strategy: • being uncooperative • leads to poor performance

  7. SO replicates the most popular objects locally (smaller id-> greater popularity) 5 13 17 1 9 uses the storage capacity of all other nodes to replicate the next most popular ones 14 6 10 2 18 19 7 11 15 3 8 12 20 4 16 Mistreatment under SO “Lets get out of here!” an over-active node 1000 reqs/sec 10 reqs/sec “I can do better by following GL” (replicate objs 1,2,3,4) group these nodes end up replicating potentially irrelevant objects. They are mistreated by SO … mistreated nodes pursue GL and the group disintegrates

  8. The problem with nodes following GL • Poor performance under common scenarios • Lets assume that the nodes: • have similar demand patterns • are adjacent (trtl) • then fetching an object locally or remotely costs the same • If all nodes follow GL: • they will be replicating the same few objectsmultiple times • this is inefficient. Clearly they can do much better by: • replicating different objects, and • fetching the missing ones from their (adjacent) neighbors Uncooperativeness is harmful to both the social and the local utility

  9. The bottom line… • Seems that a selfish node faces a deadlock • (1) it cannot blindly trust the SO strategy because SO might mistreat him • (2) it is not satisfied with the potentially poor performance of the (uncooperative) GL Research question: How can we claim the (freely) available “cooperation gain” without risking a mistreatment and do that without complete information?

  10. The Equilibrium (EQ) placement strtgy • is our approach for breaking the deadlock • fills the gap between SO and GL in both: • performance (access cost) • required amount of information • is based on the concept of pure Nash equilibrium from game theory • forbids the mistreatment of any one node • all nodes do at least as good as GL • and typically much better (cooperation driven by selfish motives) no reason for a node to abandon the group then • requires the exchange of a small amount of information

  11. The Distributed Selfish Replication (DSR) game • nodes players • n players • local placements  strategies • playervj can choose among (N choose Cj) possible strategies • global placement outcome of the game • global placement=sum of the individual local placements • reduction of access cost payoff function DSR is a non-cooperative, non-zero-sum, n-player game pure Nash equilibria?

  12. Our approach for finding EQ strategies for the DSR game • starting with the DSR game in normal form • we assume that nodes act sequentially following some pre-defined order (v1,v2,…,vn) • this resembles an extensive game formulation • we use the ordering as a device for • finding pure Nash equilibrium strategies for the original DSR game • … in a distributed manner without requiring complete information

  13. Step1 (improvement): • nodes line up; node vj: • “observes” the placements of the other nodes • proceeds to improve its GL placement according to the following definition of “excess gain” incomplete information • only the strategies are revealed • but not the payoff functions rij(ts-tl), ifoi not replicated in another node rij(tr-tl), ifoi replicated in another node distance reduction with respect to the previous closer copy gij= Our first algorithm: TSLS Two Step Local Search • Step0 (initialization): • each node computes its GL placement

  14. so a node might exchange some multiple objects from its GL placement with unrepresented ones TSLS (continued) • each node solves a0/1 Knapsack problem • unit-weight objects, valuegij, integral knapsack capacity • greedy solution optimal • at the end of Step 1of TSLS ->Nash eq. plcmnt • no node can benefit unilaterally • proof: • vj’s OPT placement at the time of its turn to improve: • remains OPT until the end of TSLS • despite the changes performed from nodes that followvj • only multiple objects are evicted during Step 1 • only unrepresented objects are inserted during Step 1

  15. Comments on the use of ordering • TSLS without ordering • may never converge to an EQ placement • nodes inserting/evicting the same objects indefinitely • impact of ordering on individual gains: • sometimes a certain turn (higher or lower) gives an advantage to a node • identifying the OPT turn for a node requires knowing the remote payoff functions (not possible) • when demand patterns (thus the payoffs also) are alike -> then higher turns (towards the end of Step 1) are better • simple “merit based” protocol for deciding turns more important nodes getting a better turn

  16. Eliminating the impact of ordering • Suppose that the nodes are identical • same capacity, demand pattern, request rate • TSLS+”merit-based” protocol • give some nodes an advantage (better turn) • hard to justify since: • nodes are identical • thus lack any kind of difference in merit • We would like to have an algorithm where: • a node’s turn does not have a large impact on the amount of gain that it gets

  17. TSLS(k): improving the TSLS fairness • Same as TSLS but: • at Step 1 -> up to k changes allowed • k (multiple) objects belonging to the GL placement • substituted by k (unrepresented) ones • if more changes are desirable • a node has to wait for the next round • TSLS(k) requires multiple rounds to converge to EQ • we show that convergence is guaranteed • for small k a node’shas a diminishing effect on the amount of gain it receives • for large k TSLS(k) reduces to TSLS

  18. Distributed protocol • Decide turn according to “merit” • e.g., jth largest node getting the jth better turn • Phase 0: compute GL placements • all nodes in parallel • each node to multicast its own • Phase 1: improve the GL placements • nodes lining up • each one improving its GL plcmnt and multicasting the differences • 1 round for TSLS, M rounds for TSLS(k) M  ceil(Cmax/k)

  19. to represent all the rate vectors aggregate storage capacity Main benefit  reduced information • centralized algorithm • has to send up to n*N (obj. id, obj. rate) pairs to a central node • our protocol • transmits up to ΣCj obj. ids • large reduction on the amount of info sent • typically ΣCj << N • obj ids encoded easily (can use Bloom filters) • (obj. id, obj. rate) pairs harder to represent • known placements  perfect routing

  20. Example • n=2, N=100, C1= C2=40, Zipf-like(0.8) demand, tl=0, tr=1, ts=2, ρ1=1

  21. Wrap up • many content distribution applications involve selfish nodes • previous socially optimal object placement solutions not suitable • new EQ strategies: • avoid mistreatment problems • harness the freely available cooperation gain • require limited information to be implemented • only the local demand pattern • remote placements (but not the remote demands)

  22. The end Q ?

More Related