contracts practical contribution incentives for p2p live
play

Contracts: Practical Contribution Incentives for P2P Live Streaming - PowerPoint PPT Presentation

Contracts: Practical Contribution Incentives for P2P Live Streaming Michael Piatek, Arvind Krishnamurthy, Arun Venkataramani, Richard Yang, David Zhang, Alexander Jaffe U. of Washington, U. of Massachusetts, Yale, PPLive Live streaming


  1. Contracts: Practical Contribution Incentives for P2P Live Streaming Michael Piatek, Arvind Krishnamurthy, Arun Venkataramani, Richard Yang, David Zhang, Alexander Jaffe U. of Washington, U. of Massachusetts, Yale, PPLive

  2. Live streaming with PPLive • P2P distribution • Over 20 million active users worldwide • Current design offers no reward for capacity contributions How to provide contribution incentives? Michael Piatek NSDI’10 2

  3. Overview 1. Challenges for live streaming incentives 2. Contracts design 3. Evaluating PPLive with Contracts Michael Piatek NSDI’10 3

  4. PPLive design 1 1 S

  5. PPLive design 1 1 2 S

  6. PPLive design 1 1 2 3 S

  7. PPLive design 1 1 2 3 S

  8. PPLive design 1 1 2 3 1 S

  9. PPLive design 1 1 2 3 4 S 1

  10. PPLive design 1 1 2 3 4 S 1

  11. PPLive design 1 2 3 4 S 1

  12. PPLive design 1 2 3 4 5 S 1

  13. PPLive design 1 2 2 3 3 4 5 S 1 1

  14. PPLive design 1 3 2 3 4 5 S 2 1 1

  15. PPLive design 1 3 3 4 5 S 2 1 1

  16. PPLive design 1 3 3 4 5 6 S 2 1 1

  17. PPLive design 1 3 3 3 3 4 4 5 5 6 S 2 2 2 1 1

  18. PPLive design 1 2 3 5 3 4 5 6 S 2 3 4 1 1 2 3

  19. PPLive design 1 2 3 5 3 4 5 6 S Wire-level protocol very similar to BitTorrent 2 3 4 1 1 2 3

  20. Can we apply tit-for-tat? • Bilateral reciprocation: Contribute to peers that contributed to you • Challenges for live streaming: • Capacity heterogeneity • Limited trading opportunities • No compelling reward Michael Piatek NSDI’10 14

  21. Capacity heterogeneity • Top 10% of users contribute 58% of total capacity Michael Piatek NSDI’10 15

  22. Capacity heterogeneity • Top 10% of users contribute 58% of total capacity All users watching at Capacity max possible quality utilization Supported users Michael Piatek NSDI’10 15

  23. Capacity heterogeneity • Top 10% of users contribute 58% of total capacity • With balanced exchange: Capacity Maximizing quality excludes 86% of users utilization Supporting 95% of clients wastes 85% of capacity Supported users Michael Piatek NSDI’10 16

  24. Imbalanced exchange? • Is relaxing balance sufficient? • Reciprocation depends on trading opportunities • But, live streams swarm over few blocks • Clients near the source: block monopoly • Distant clients: perpetual trade imbalance • Outcome: few trading opportunities Michael Piatek NSDI’10 17

  25. Transfer opportunities Data availability from a snapshot of client buffer states Michael Piatek NSDI’10 18

  26. Transfer opportunities Reciprocation most common with similar distance to the source Data availability from a snapshot of client buffer states Michael Piatek NSDI’10 19

  27. Transfer opportunities Most transfers are between peers with a large imbalance of blocks to send Data availability from a snapshot of client buffer states Michael Piatek NSDI’10 20

  28. Rewarding contribution • For bulk data: Increase contribution rate → increase download rate • Live streaming: inelastic All users download at the stream rate How to create a compelling reward? Michael Piatek NSDI’10 21

  29. Overview 1. Challenges for live streaming incentives 2. Contracts design 3. Evaluating PPLive with Contracts Michael Piatek NSDI’10 22

  30. Contracts design overview Global evaluation contract rather than bilateral reciprocation • Recognizes globally effective contributions Reward contributions with robustness by optimizing the overlay topology • If the system becomes capacity constrained, contributors fail last Michael Piatek NSDI’10 23

  31. Evaluating contributions • Goals: 1. Contribute capacity – As in any P2P system, contributions required 2. Choose effective peers – Live streaming has playback deadlines – Prioritize peers that replicate data quickly Michael Piatek NSDI’10 24

  32. Tracking contributions • Cryptographic receipts attest to 1 the contributions of peers Receipts Data • Presented to other peers to 2 demonstrate contributions Michael Piatek NSDI’10 25

  33. Tracking contributions E • Cryptographic receipts attest to 1 the contributions of peers Receipts Data • Presented to other peers to 2 demonstrate contributions (From to , for example) 1 E Michael Piatek NSDI’10 25

  34. Tracking effectiveness E • Gossip receipts in a one hop neighborhood 1 • Allows to compute: Receipts E 2 → 1 Data 3 → 2 • Effectiveness of peers ( ) 1 4 → 2 2 • Contributions of peers of peers ( ) 2 3 4 • Clients prioritize effective peers Michael Piatek NSDI’10 26

  35. Evolving the topology • Compute contributions of distant peers using forwarded receipts • Preferentially connect to highest capacity peers Prune unproductive peers • High capacity peers: percolate towards the source • Low capacity peers: pushed to mesh periphery Michael Piatek NSDI’10 27

  36. Evolving the topology • Compute contributions of distant peers using forwarded receipts • Preferentially connect to highest capacity peers Because failures cascade, proximity to the source Prune unproductive peers improves quality of service • High capacity peers: percolate towards the source • Low capacity peers: pushed to mesh periphery Michael Piatek NSDI’10 28

  37. Collusion defenses • Limit identity creation at PPLive coordinator • Weight contributions by diversity of network addresses • Flow integrity check – Incoming data rate cannot exceed stream rate Outgoing data rate cannot exceed capacity Michael Piatek NSDI’10 29

  38. Overview 1. Challenges for live streaming incentives 2. Contracts design 3. Evaluating PPLive with Contracts Michael Piatek NSDI’10 30

  39. Evaluation overview This talk • Contracts improves performance • Contracts strengthens contribution incentives Paper • Computational and network overhead • Comparison with FlightPath [OSDI’08] • Topology convergence • Over-provisioning and loss-rate Michael Piatek NSDI’10 31

  40. Experimental setup • Modified PPLive to support Contracts and rate-based tit-for-tat • Synthetic broadcast on 100 Emulab machines • Churn from clients joining at 10 second intervals, remaining for 20 minutes, repeating for 2 hours • Capacities from measured distribution of over 90,000 PPLive users Michael Piatek NSDI’10 32

  41. PPLive performance Stream rate chosen to induce capacity constraints Michael Piatek NSDI’10 33

  42. PPLive performance 28% of peers receive 90% of blocks by the deadline Stream rate chosen to induce capacity constraints Michael Piatek NSDI’10 33

  43. PPLive performance Only 13% of users with loss-free playback Stream rate chosen to induce capacity constraints Michael Piatek NSDI’10 33

  44. PPLive + tit-for-tat Tit-for-tat reduces performance for live streaming Michael Piatek NSDI’10 34

  45. PPLive + tit-for-tat High capacity users close to the source Distant peers cannot obtain enough data to trade, regardless of capacity Tit-for-tat reduces performance for live streaming Michael Piatek NSDI’10 34

  46. PPLive + Contracts Contracts substantially improves performance Michael Piatek NSDI’10 35

  47. PPLive + Contracts Loss-free playback 4 × unmodified PPLive Contracts substantially improves performance Michael Piatek NSDI’10 35

  48. Incentives Contracts strengthens contribution incentives Michael Piatek NSDI’10 36

  49. Incentives Tit-for-tat reward increases slowly, varies widely Michael Piatek NSDI’10 37

  50. Incentives Contracts strengthens contribution incentives Michael Piatek NSDI’10 38

  51. Conclusions • Live streaming exhibits new challenges for fostering P2P contribution incentives • Contracts improves performance and incentives • Evaluation contract rather than bilateral exchange • Restructure topology to reward contributions with quality of service Michael Piatek NSDI’10 39

Recommend


More recommend