1 / 22

Incentives-Compatible Peer-to-Peer Multicast

Incentives-Compatible Peer-to-Peer Multicast. Tsuen-Wan “Johnny” Ngan with Dan Wallach and Peter Druschel Rice University. Background. P2p multicast: Bullet, SplitStream [SOSP’03] Existing systems rely heavily on cooperation Most incentivized solutions not suitable

kenda
Télécharger la présentation

Incentives-Compatible Peer-to-Peer Multicast

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. Incentives-Compatible Peer-to-Peer Multicast Tsuen-Wan “Johnny” Ngan with Dan Wallach and Peter Druschel Rice University

  2. Background • P2p multicast: Bullet, SplitStream [SOSP’03] • Existing systems rely heavily on cooperation • Most incentivized solutions not suitable • Storage: Auditing [IPTPS’03], Samsara [SOSP’03] • Bandwidth: BitTorrent [P2pEcon’03] • Do not map onto multicast fairness • Rely on tit-for-tat • Multicast trees are usually static

  3. SplitStream Concept Exploit that the forest trees can be interior-node disjoint D A E G B C A G B F C F D E Stripe 1 Stripe 2

  4. SplitStream Reliability Peer failure only affects a single stripe D A E G B C A G B F C F D E Stripe 1 Stripe 2

  5. Freeloading Model • Assume rationality • Selfish, but not malicious, freeloaders • Nodes can refuse to accept children • Nodes can refuse forwarding data A, can you be my parent, please? I can’t receive any data, so I can’t forward anything to you. No, I can’t take any more children. No problem! I will accept you. A, can you be my parent, please? A F

  6. Design Overview • Distinguish nodes with selfish behavior • Reduce the quality of service of selfish nodes • Goal: freeloaders should not receive more data than they send • Make judgment only by observing behaviors • Avoiding many thorny trust issues

  7. Design Overview (cont.) • Periodic tree reconstructions • Avoid suffering forever • Potentially reversing parent-child relationships • Measure various metrics of other nodes • Combine to form a robust policy

  8. Pairwise Debt A F: –1 B C G F D E B: +1

  9. Ancestor Rating (Confidence) A A: +1 B C G F D E A: +1 B: +1 A: –1 C: –1

  10. B C G D E Parental Availability (PA) A, can you be my parent, please? No, I already have enough children. …… A F A made itself available as parent

  11. Reciprocal Request I should ask F to be my parent next time A B C G F D E Ok, F is accepting children

  12. Experiments • On SplitStream, part of FreePastry • Stochastic model for node proximity • 500 nodes randomly distributed on a plane • Each node subscribe to 16 trees • Good nodes accept up to 16 children

  13. 16 msgs for 500 nodes Tree Reconstruction Cost 64 byte/msg, reconstruct 16 trees every 2 min, 128Kbps stream  1.71% overhead

  14. Parental Availability (PA) PA can be very low Prob. the prospective parent becomes (in)direct parent

  15. Debt Level Cannot distinguish selfish nodes from normal nodes! Debt / Expected debt

  16. Confidence Effectively distinguish selfish nodes 5% selfish nodes refusing to forward data

  17. Enforcing Policy • A simple policy using the above schemes • Two types of selfish nodes • Refuse to accept children • Accept children but refuse to forward data • Different start time to freeload • Begin cheating immediately • Start only after time 32

  18. The Policy • Not to use debt level • Normal nodes will not serve those with • Confidence <–2 • PA < 0.44 and confidence < 0.2 • Positive confidence/PA decay over time • Allow preemption if 0.1 higher in PA • Reciprocal requests if requests are 8 times more

  19. Normal nodes Refuse to accept children after 32 Refuse to forward data after 32 Always refuse to accept children Always refuse to forward data Result from Enforcing Policy

  20. More on Policy • Increasing selfish nodes reduces the reception of normal nodes • 4% selfish nodes  90% reception • Can use encoding • Receive above a certain fraction of data to decode anything at all • Freeloaders get no service, would probably leave

  21. Related Work • Media streaming [Habib & Chuang, IWQoS’04] • Choosing peer to serve through scoring • Focus on request-stream model • Rely on trust system

  22. Concluding Remarks • Mechanism effective by tracking only first-hand observed behavior • Low network and computation overhead • Future work: • Robustness against more freeloaders • Learn parameters using Bayesian approach • Study dependence on multicast application, p2p substrate, and network topology

More Related