1 / 30

Do incentives build robustness in BitTorrent?

Do incentives build robustness in BitTorrent?. Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, Arun Venkataramani. Problem of Free Riding in P2P. Consumption without contribution BitTorrent’s solution: Tit-for-tat (TFT) reciprocity Objective: induce contribution

Download Presentation

Do incentives build robustness in BitTorrent?

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. Do incentives build robustness in BitTorrent? Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, Arun Venkataramani

  2. Problem of Free Riding in P2P • Consumption without contribution • BitTorrent’s solution: Tit-for-tat (TFT) reciprocity • Objective: induce contribution • Consensus: “incentives build robustness in BitTorrent” • Question: is the consensus correct?

  3. Does TFT work? • Not when strategic clients present • Reduction of contribution can  better performance • Significant presence of altruism • Contribution that do NOT improve performance for client • Strategic client withhold altruistic contribution  degraded performance for peers

  4. BitTyrant • Modified BitTorrent • Objective: Maximize download per unit upload • Method: Policy modification • Careful selection of peers and contribution rates • Insight: All clients can improve download reducing upload • 70% performance gain using BitTyrant

  5. Effect of BitTyrant • Individual clients benefit • Non-strategic peers degraded performance • Robustness: Strategic manipulation does not affect performance • Conclusion: “Incentives do not build robustness in BitTorrent” • Much contribution can be withheld while maintaining performance

  6. Summary of Introduction • More contribution != better performance Strategic client can take advantage of this Degraded performance for peers

  7. BitTorrent Overview • Metadata file: torrent • SHA-1 fingerprint • Tracker server address • Peers contact server periodically • Obtain random set of peers • Active set: peers exchanging data with

  8. BitTorrent Overview cont’d • TFT strategy determine active set • Peer sends data to unchoked peers with most rapid upload rate • Peers whose upload too slow are removed from active set  choked • Equal split rate: Upload capacity split equally within active set

  9. BitTorrent Overview cont’d • Implementation and Percentage share • Azureus 47% • BitComet 20% • μtorrent 15% • BitLord 6% • Unknown 3% • Reference 2% • Remaining 7%

  10. Modeling AltruismSources of Altruism; how much is present? • TFT matching time • Attempts to find peers of similar capacity • Optimistic unchoke 2 every 30 seconds to explore local neighborhood • Peer is “content” with a matching once equal split rate is <= peer • High capacity have long convergence time  more optimistic unchokes  source of altruism

  11. Modeling Altruism cont’d • Probability of reciprocation • Equal split rate of 14 KB/s increases probability to almost 100% • Setting higher upload rate  altruistic contribution

  12. Expected download rate • Download rate as a function of upload capacity sublinear

  13. Expected Upload Rate • Depends on upload capacity and data availability • Have enough data of interest to saturate upload capacity • Static active set size may not be enough for high capacity peers

  14. Modeling Altruism • Altruism = expected upload rate - expected download rate

  15. Modeling Altruism cont’d • Second definition: any upload contribution that can be withdrawn without loss in download performance • All peers make altruistic contributions

  16. Building BitTyrant: A strategic client • Maximize reciprocation bandwidth per connection • High reciprocation for low offered rate • Maximize number of reciprocating peers • Until marginal cost exceeds marginal benefit • Deviate from equal split • Lower contribution as long as reciprocation continues  reallocate savings to new connection

  17. BitTyrant: Customizing Active Set Size • High capacity peers: significant reduction of equal split rate  very small reduction of reciprocation probability

  18. BitTyrant: Active Set Size • Large active set size  small equal split rate  lower reciprocation probability • Large active set size  additional opportunity for reciprocation • To maximize performance: increase active set size until additional connection reduces overall reciprocation

  19. BitTyrant: Active Set Size • Strategic peer benefits through active set size manipulation • For client with 300 KB/s upload rate:

  20. BitTyrant: Unchoke Algorithm • Dynamically sizes active set • Varies sending rate per connection • up(upload rate required for reciprocation) • dp(download rate from peer) • Rank up / dp and unchoke until up exceeds upload capacity • Best peers: reciprocate most for least bytes contributed to

  21. Implications • Maximizes download rate for upload budget • Dynamically estimate Up and Dp, optimizes download rate over time • Discover the most altruistic peers by unchoking them • Handle concurrent downloads, optimizing aggregate download rate

  22. Determining Up • Initialize based on distribution of equal split capacities • Decrease by 10% if reciprocates for 3 rounds • Increase by 20% if reciprocation stops

  23. Determining Dp • Rate at which data is obtained • For peers who have not uploaded: • Estimates with frequency of block announcement • Susceptible to cheating – false announcement of blocks

  24. Increasing Local Neighborhood • Request as many peers as possible from tracker • Overhead: 0.9%  1.9% of total file data received • Not significant

  25. Additional Strategies • Exploiting optimistic unchokes • Reconnecting to wipe record of trade deficit • Downloading from seeds • Seeds upload to fastest downloaders • Exploit by falsifying have messages • Recent versions: upload randomly • Falsifying block availability • Appear more attractive by falsifying block announcement

  26. Evaluation • 1. Evaluate on real swarms to measure performance for single strategic client • Realistic bandwidth distribution • Realistic implementation distribution • Measure performance gain • 2. Planet Lab • Evaluate sensitivity to upload rates • Universally deployed

  27. Single Strategic Peer • Simultaneously joined swarm with Azureus client and BitTyrant client • 128 KB/s upload capacity limit • Compared completion time • Performance gain: factor of 1.72

  28. Many BitTyrant Peers • Strategic • Uses BitTyrantunchoking algorithm • Selfish • Withholds excess capacity that does not improve performance • Many strategic peers • Performance and altruism increase • High capacity peers download faster and contribute to swarm

  29. Many BitTyrant Peers cont’d • Many selfish peers • Performance degradation • Altruistic contribution withheld • Reduced optimistic unchokes

  30. Conclusion • Performance dominantly improved by altruistic contribution from high capacity minority • Little to do with TFT • Altruism not consequence of TFT • Most users are altruistic because they use BitTorrent software as is • BitTyrant is publicly available; will people be selfish?

More Related