p2p systems gossip protocols
play

P2P Systems: Gossip Protocols CS 6410 By Alane Suhr & Danny - PowerPoint PPT Presentation

P2P Systems: Gossip Protocols CS 6410 By Alane Suhr & Danny Adams 1 Outline Timeline CAP Theorem Epidemic algorithms for replicated database maintenance Managing update conflicts in Bayou, a weakly connected replicated


  1. P2P Systems: Gossip Protocols CS 6410 By Alane Suhr & Danny Adams 1

  2. Outline ❖ Timeline ❖ CAP Theorem ❖ Epidemic algorithms for replicated database maintenance ❖ Managing update conflicts in Bayou, a weakly connected replicated storage system ❖ Conclusion 2 A

  3. Timeline 1978 1982 1985 1987 1990 1995 1998 Lamport Lamport FLP Demers Schneider Terry Lamport Time, Clocks, The Byzantine Impossibility of Epidemic Implementing Managing The part-time and the Generals Distributed algorithms for fault-tolerant update conflicts parliament services using Ordering of Problem Consensus with replicated in Bayou, a the state Events in a One Faulty database weakly machine Distributed Process maintenance connected approach: A System replicated tutorial storage system 3 A

  4. CAP ● Consistency -- all nodes contain the same state ● Availability -- requests are responded to promptly ● Partition ○ part of a system completely independent from the rest of the system ○ ideally should maintain itself autonomously ● Partition tolerance -- system can stay online and functional even when message passing fails 4 A

  5. CAP Theorem ● Paxos: prioritize consistency given a network partition ● Gossip: prioritize availability Paxos given a network partition & Gossip 5 A

  6. Gossip 6 D

  7. Gossip Overview ❏ Authors ❏ Motivations ❏ Epidemic Models ❏ Direct Mail ❏ Anti-Entropy ❏ Rumor mongering ❏ Evaluation ❏ DC’s ❏ Spatial Distribution 7 D

  8. A u t Carl Hauser Alan Demers Dan Greene h PhD Cornell Cornell PARC Washington University Research o State University r Scott Shenker s Doug Terry EECS Amazon Web Berkeley Services 8 D

  9. Motivations ● Unreliable network ● Unreliable nodes ● CAP: *AP* ○ always be able to respond to a (read/write) request ○ eventual consistency 9 D

  10. Epidemic Models 10 A

  11. Proposers and Acceptors ● Proposer ○ In Paxos: clients propose an update to the database ○ Epidemic model: a node infects its neighbors ● Acceptor ○ In Paxos: acceptor accepts an update based on one or more proposals ○ Epidemic model: a node is infected by a neighbor 11 A

  12. Types of Epidemics ❖ Direct Mail ❖ Anti-Entropy ❖ Rumor Mongering A 12

  13. Advantages ➢ Simple algorithms ➢ High Availability ➢ Fault Tolerant ➢ Tunable ➢ Scalable ➢ Works in Partition 13 A

  14. ● Notify all neighbors of an update ● Timely and reasonably efficient ● n messages per update Direct Mail 14 D

  15. Direct Mail 15 D

  16. Direct Mail 16 D

  17. Direct Mail Messages sent: O(n) where n is number of neighbors Not fault tolerant -- doesn’t guarantee eventual consistency High volume of traffic with site at the epicenter 17 D

  18. Anti-Entropy ❏ Site chooses random partner to share data ❏ Number of rounds til consistency: O(log n) ❏ Sites use custom protocols to resolve conflicts ❏ Fault tolerant 18 A

  19. Anti-Entropy 19 A

  20. Anti-Entropy 20 A

  21. Anti-Entropy 21 A

  22. Anti-Entropy 22 A

  23. Anti-Entropy 23 A

  24. Anti-Entropy 24 A

  25. Anti-Entropy 25 A

  26. Anti-Entropy 26 A

  27. Anti-Entropy What happens next? 27 A

  28. Mechanism: Push & Pull 28 D

  29. Push vs. Pull Push Pull {A, B} {A, C} {A, B} {A, C} {A, B} {A,B,C} {A, B, C} {A, C} 29 D

  30. {A, B} {A, C} What is Push-Pull? 30 {A, B, C} {A,B,C} D

  31. Propagation times of Push vs. Pull Push: P i+1 = P i e -1 2 Pull: P i+1 = P i Pull is faster!! P= Probability node hasn’t received update after the i th round 31 D

  32. Rumor Mongering 1. Sites choose a random neighbor to share information with 2. Transmission rate is tuneable 3. How long new updates are interesting is also tuneable 4. Can use push or pull mechanisms 32 A

  33. Rumor Mongering Complexity ● O(ln n) rounds leads to consistency with high probability ● Push requires O(n ln n) transmissions until consistency ● Further proved lower bound for all push-pull transmissions: 0(n ln ln n) Karp et al 2000. Randomized rumor spreading. In FOCS. 33 A

  34. Analogy to epidemiology ● Susceptible: site does not know an update yet ● Infective: actively sharing an update ● Removed: updated and no longer sharing Rumor mongering: nodes go from susceptible to infective and eventually (probabilistically) to removed 34 A

  35. Rumor mongering 35 A

  36. Rumor mongering 36 A

  37. Rumor mongering 37 A

  38. Rumor mongering 38 A

  39. Rumor mongering 39 A

  40. Rumor mongering 40 A

  41. Rumor mongering A 41 A

  42. Rumor mongering Pros: Cons: ● ● Fast A site can potentially miss an ● Low call on resources update ● Fault-Tolerant ● Less traffic 42 A

  43. Backups Anti-entropy can be used to ● “update” the network regularly after direct mail or rumor mongering If inconsistency found in ● anti-entropy, run the original algorithm again 43 D

  44. Death Certificates ❖ How are items deleted using epidemic models? 44 D

  45. I DON’T like I like Bread Bread! I like orange juice 45 D

  46. Death Certificates ❖ How to remove items from epidemic model? ❖ Drawbacks ➢ Space ➢ Increases traffic ➢ DC Can be lost ❖ Dormant death certificates & retention 46 D

  47. Evaluating Epidemic Models ➢ Residue: remaining susceptibles when epidemic finishes Traffic: ➢ ➢ Delay: ○ T avg : Average time between start of outbreak and arrival of update @ given site ○ T last : Delay until last update 47 D

  48. Spatial Distribution Helping Or Hurting 48 A

  49. Convergence Times and Traffic ● Linear network: anti entropy ○ Nearest-neighbors ■ O(n) convergence ■ O(1) traffic ○ Random connections ■ O(log(n)) convergence ■ O(n) traffic 49 A

  50. Optimizations for realistic network distributions ● Select connections from list of neighbors sorted by distance ● Treat network as linear ● Compute probabilities based on position in list 50 A

  51. Rumor Mongering Non-Standard Distribution ● Increase k -- number of rounds a rumor is “interesting” ● Use push-pull 51 A

  52. Takeaways ● Availability >> consistency ● Updates can be expensive ● Distribution protocols should be robust ● Network design can hurt overall performance ● Byzantine Behavior not addressed Questions? 52 A

  53. Additional Reading Managing update conflicts in Bayou, a weakly connected replicated storage system 1995 53 D

  54. ● Weak consistency makes unstable network applications possible ● Developing good interfaces allows for complex functions like merging to be interchangeable via the application 54 D

  55. Timeline 1978 1982 1985 1987 1990 1995 1998 Lamport Lamport FLP Demers Schneider Terry Lamport Time, Clocks, The Byzantine Impossibility of Epidemic Implementing Managing update The part-time and the Generals Distributed algorithms for fault-tolerant conflicts in parliament services using Bayou, a weakly Ordering of Problem Consensus with replicated the state connected Events in a One Faulty database machine replicated Distributed Process maintenance approach: A storage system System tutorial 55 D

  56. What is Bayou? ● Storage system designed for mobile computing ○ Network is not stable ○ Parts of the network may not be connected all the time ○ Goal: high availability ○ Guarantees weak consistency 56 D

  57. Write (unique ID) Client Anti-Entropy Server Read Request Server Client Data Bayou System Diagram 57 D

  58. Consistent Replicas ● Writes are first tentative ● Eventually they are committed, ordered by time ● Clients can tell whether writes are stable (committed) ● Primary servers deal with committing updates 58 A

  59. Detecting and Resolving Conflicts ● Dependency checks ● Merge procedures ● Described by the clients, application-dependent 59 A

  60. Conclusions ● Distributed systems need a form of consensus ● Effectively choosing the correct consensus model for a system has to be weighed carefully with the attributes of the system 60 A

  61. Acknowledgements Content Inspired by: Ki Suh Lee: “Epidemic Techniques”[2009] Eugene Bagdasaryan: “P2P Gossip Protocols” [2016] Photos www.pixabay.com www.unsplash.com www.1001freedownloads.com/free-cliparts 61 A

Recommend


More recommend