exploring and improving bittorrent topologies
play

Exploring and Improving BitTorrent Topologies Christian Decker ETH - PowerPoint PPT Presentation

Exploring and Improving BitTorrent Topologies Christian Decker ETH Zurich Distributed Computing Group www.disco.ethz.ch BitTorrent Filesharing protocol Peers form Ad-Hoc networks (swarm) Trackers to join the swarm Trading


  1. Exploring and Improving BitTorrent Topologies Christian Decker ETH Zurich – Distributed Computing Group – www.disco.ethz.ch

  2. BitTorrent • Filesharing protocol • Peers form Ad-Hoc networks (swarm) • Trackers to join the swarm • Trading pieces between peers

  3. BitTorrent: handshake • Peers exchange handshakes before trading • Protocol identifier • Protocol extensions • peer id • Torrent info hash

  4. Exploring

  5. Exploring Swarm Topologies Random topology: • Tracker return random peers • Peers chose random neighbors

  6. Exploring Swarm Topologies Random topology: • Tracker return random peers • Peers chose random neighbors Studies to explore BitTorrent topologies: • Experimental setup • Traffic log • Instrumented clients

  7. Exploring Swarm Topologies Random topology: • Tracker return random peers • Peers chose random neighbors Studies to explore BitTorrent topologies: • Experimental setup • Traffic log • Instrumented clients • Live swarms

  8. Scanning method A ? S ” A m ’ I o l e l H B ”

  9. Challenges when moving to real swarms CDF of connection uptimes 1.0 0.8 CDF of connections • Scanning takes time 0.6 0.4 0.2 0.0 0 500 1000 1500 2000 2500 3000 3500 Uptime [s]

  10. Challenges when moving to real swarms CDF of connection uptimes 1.0 0.8 CDF of connections • Scanning takes time 0.6 • Invisible part of a swarm 0.4 0.2 0.0 0 500 1000 1500 2000 2500 3000 3500 Uptime [s]

  11. Challenges when moving to real swarms CDF of connection uptimes 1.0 0.8 CDF of connections • Scanning takes time 0.6 • Invisible part of a swarm 0.4 • Error detection 0.2 0.0 0 500 1000 1500 2000 2500 3000 3500 Uptime [s]

  12. Evaluation: topology sample size 42% 58% peers cannot be scanned 58%

  13. Evaluation: topology sample size 42% 58% peers cannot be scanned 58% 67% But we can scan either endpoint of a connection: 33%

  14. Evaluation: coverage How fast can we scan for all possible connections? 100 80 Coverage (%) 60 40 Concurrency 1 Concurrency 2 20 Concurrency 3 Concurrency 5 0 0 200 400 600 800 1000 Swarm Size

  15. Evaluation: coverage How fast can we scan for all possible connections? 100 80 Coverage (%) 60 40 Concurrency 1 Concurrency 2 Concurrency 3 20 Concurrency 4 Concurrency 5 0 0 100 200 300 400 500 Scan time [s]

  16. Locality Trading with random peers, that may be halfway around the globe. Closer peers may be available. � 1 a and b are connected σ ( a , b ) = 0 otherwise

  17. Locality Trading with random peers, that may be halfway around the globe. Closer peers may be available. � 1 a and b are connected σ ( a , b ) = 0 otherwise � a , b σ ( a , b ) · d ( a , b ) · E [ D ] − 1 L = � a , b σ ( a , b )

  18. Locality Trading with random peers, that may be halfway around the globe. Closer peers may be available. � 1 a and b are connected σ ( a , b ) = 0 otherwise � a , b σ ( a , b ) · d ( a , b ) · E [ D ] − 1 ? L = ≈ 1 � a , b σ ( a , b )

  19. Locality: evaluation • σ ( a , b ) provided from scanning method • d ( a , b ) provided by MaxMind GeoIP Database

  20. Locality: evaluation • σ ( a , b ) provided from scanning method • d ( a , b ) provided by MaxMind GeoIP Database • 33 recently uploaded torrents • International torrents • 50-500 peers

  21. Locality: evaluation • σ ( a , b ) provided from scanning method • d ( a , b ) provided by MaxMind GeoIP Database • 33 recently uploaded torrents • International torrents • 50-500 peers BitTorrent is not locality aware! L = 1 . 062 > 1

  22. Improving

  23. Suggesting Peer Exchange (PEX): • Reduce tracker load • Increase trading partners

  24. Suggesting Peer Exchange (PEX): • Reduce tracker load B S • Increase trading partners ”You’ll like A” • Suggest nearby peers

  25. Suggesting peers with PEX 1 Identify new peers 2 Find nearby peers 3 Connect to new peers 4 Send suggestions as PEX message

  26. Suggesting peers with PEX + No special access + No shaping or blocking + Widely supported + ISPs get information for free

  27. Suggesting peers with PEX + No special access + No shaping or blocking + Widely supported + ISPs get information for free - Limited influence

  28. How are we doing? • L : 1.062 → 0.994. • 6.3% improvement Connection length comparison 0.30 ● Influenced Swarms Untouched Swarms ● 0.25 0.20 Probability 0.15 0.10 0.05 0.00 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Connection length [km]

  29. Conclusion A ? S ”Hello I’m A” B

  30. Conclusion A ? S ”Hello I’m A” B Connection length comparison 0.30 ● Influenced Swarms ● Untouched Swarms 0.25 0.20 Probability B S 0.15 ”You’ll like A” 0.10 0.05 0.00 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Connection length [km]

  31. Thank you, questions?

Recommend


More recommend