comparison of bittorrent with traditional content
play

Comparison of BitTorrent with Traditional Content Distribution - PowerPoint PPT Presentation

Comparison of BitTorrent with Traditional Content Distribution Networks (CDNs) ENSC 835 High Performance Networks Catherine Chan Sean Puttergill Roadmap Introduction & Motivation Overview of Related Work Technical


  1. Comparison of BitTorrent with Traditional Content Distribution Networks (CDNs) ENSC 835 – High Performance Networks Catherine Chan Sean Puttergill

  2. Roadmap • Introduction & Motivation • Overview of Related Work • Technical Details • Implementation & Simulation in ns-2 • References 2003/11/27 Comparison of BitTorrent with Traditional CDNs 2

  3. Motivation • Traditional CDN – client-server based – fixed infrastructure – network of HTTP and/or FTP mirror sites – server to download from selected by locality – all upload cost placed on server – does not scale – not free! 2003/11/27 Comparison of BitTorrent with Traditional CDNs 3

  4. Introduction • BitTorrent – peer-to-peer (P2P) – ad-hoc – sophisticated protocol with numerous optimisations to increase efficiency – fairness - downloaders required to upload – balance upload & download rate through choking 2003/11/27 Comparison of BitTorrent with Traditional CDNs 4

  5. Overview of Related Work • “Traditional” P2P networks – Gnutella, Kazaa/FastTrack, etc. • Konspire-2b – broadcast, random first, copy and forward • Logistical backbone (L-bone) – running on Internet2 – developed at University of Tennessee – file stored in logistical network depots (L-bone) – XML encoded metadata file (exNode) maps segments of file to L-bone storage locations 2003/11/27 Comparison of BitTorrent with Traditional CDNs 5

  6. Technical Details • .torrent metafile – contains file info & tracker URL – served from regular Web server • Tracker node – maintains list of peers & gathers statistics – returns random subset of peers when queried • Seed node – starts off with complete file 2003/11/27 Comparison of BitTorrent with Traditional CDNs 6

  7. foo.mpg List of Peer IPs Tracker Node Seed Node foo.mpg.torrent http://www.bar.com/foo.mpg.torrent Peer A Web Server Peer B Peer F Peer C Peer E Peer D 2003/11/27 Comparison of BitTorrent with Traditional CDNs 7

  8. List of foo.mpg Peer IPs peer introduces itself Tracker Node Seed Node Tracker replies with foo.mpg.torrent list of peers = {C,E,F} Peer A Web Server Peer B Peer F Peer C Peer E Peer D 2003/11/27 Comparison of BitTorrent with Traditional CDNs 8

  9. foo.mpg List of Peer IPs Tracker Node Seed Node foo.mpg.torrent Peer A Web Server Peer B Peer F Peer C Peer E Peer D 2003/11/27 Comparison of BitTorrent with Traditional CDNs 9

  10. Protocol Highlights • File fragmentation – content file split into fixed sized pieces – pieces further subdivided into sub-pieces – SHA1 hash checks data integrity of pieces • Pipelining – peer keeps multiple sub-piece requests pending – offsets overhead of TCP slow-start 2003/11/27 Comparison of BitTorrent with Traditional CDNs 10

  11. Piece Selection • Peers advertise the set of pieces they have • How to choose which piece to get next? • Strict priority – always finish a piece before seeking another – rapidly obtain complete pieces to share with others • Rarest First – choose rare pieces amongst group of peers – helps ensure peer has pieces others want – rapidly disseminates pieces from seed node 2003/11/27 Comparison of BitTorrent with Traditional CDNs 11

  12. Piece Selection continued • Rarest First exception – randomly choose first piece – get a piece quickly so node has something to share • Endgame Mode – once all remaining sub-pieces are actively being requested then send requests to all peers – send cancels as sub-pieces come in – prevents a very slow peer with remaining sub- pieces from delaying completion of download 2003/11/27 Comparison of BitTorrent with Traditional CDNs 12

  13. Choking • Enforces balance of upload & download • Temporary refusal to upload to another peer • Peers maximise own download rate • Uses tit-for-tat – peers reciprocate uploading to peers who they themselves have successfully downloaded from 2003/11/27 Comparison of BitTorrent with Traditional CDNs 13

  14. Choking continued • Peer starts out with all peers choked • Decides which subset of peers to unchoke • Choking decisions made every 10s – avoids thrashing • Decisions based on estimated download rate – uses 20s rolling average 2003/11/27 Comparison of BitTorrent with Traditional CDNs 14

  15. Optimistic Unchoking • attempts to find better peers • periodically replace one unchoked peer with a new peer chosen regardless of download rate history • optimistic unchoke round robins amongst choked peers 2003/11/27 Comparison of BitTorrent with Traditional CDNs 15

  16. Peer B Peer L Peer C Peer K Peer D Peer A Peer J Peer E Peer I Peer F Peer H Peer G 2003/11/27 Comparison of BitTorrent with Traditional CDNs 16

  17. Peer B Peer L Peer C Peer K Peer D Peer A Peer J Peer E Peer I Peer F Peer H Peer G 2003/11/27 Comparison of BitTorrent with Traditional CDNs 17

  18. Anti-snubbing • Occasionally peer will be choked by all peers it was previously downloading from • If after 1 minute no new pieces obtained then assume snubbed by peer • When snubbed, stop uploading to peer • Instead do an additional optimistic unchoke • Results in faster restoration of download rate 2003/11/27 Comparison of BitTorrent with Traditional CDNs 18

  19. Implementation & Simulation • Simulate using ns-2 (v2.26) • Model a traditional CDN • Model a BitTorrent network – implement piece selection and choking – abstract other protocol details • Simulate downloading of single fixed size file • Metrics – bandwidth efficiency – elapsed time until all peers complete download 2003/11/27 Comparison of BitTorrent with Traditional CDNs 19

  20. Network Topology Peer B Peer C Peer A ISP A Peer D ISP B Peer I ISP C Peer E Peer H Peer G Peer F 2003/11/27 Comparison of BitTorrent with Traditional CDNs 20

  21. Traditional CDN • Place CDN server in each AS • Assume file already replicated on all CDN servers • Peers download file from closest server • Download via HTTP 2003/11/27 Comparison of BitTorrent with Traditional CDNs 21

  22. BitTorrent • Add Seed Node & Tracker Node to network • Peers require multiple TCP connections so follow GnutApp example • Peers remain connected for a random amount of time after their download completes 2003/11/27 Comparison of BitTorrent with Traditional CDNs 22

  23. References 1. Bram Cohen, "BitTorrent: Protocol Specification", November 10, 2003. http://www.bitconjurer.org/BitTorrent/protocol.html 2. Jason Rohrer, "Konspire2b: a revolution in mass-scale content distribution", November 10, 2003. http://konspire.sourceforge.net 3. Sir Lancelot, "Bit Torrent Head Quarters", October 23, 2003. http://www.cen.uiuc.edu/~halm/index.html 4. Unknown Author for Webpage, "Wiki theory.org - Bit Torrent FAQ", November 8, 2003. http://wiki.theory.org/index.php/BitTorrentFAQ 5. Sameer G, "A Brand New File Sharing App", November 10, 2003. http://www.rediff.com/netguide/2003/jun/19konspire.htm 6. Guillaume Pierre, "Globule: an Open-Source Content Distribution Network", November 6, 2003. http://www.globule.org 7. A Bassi, M Beck, T Moore, J S Plank, Logistical Computing & Internetworking Lab, “The Logistical Backbone: Scalable Infrastructure for Global Data Grids”, December 2002 http://loci.cs.utk.edu/modules.php?name=Content&pa=showpage&pid=2_4 2003/11/27 Comparison of BitTorrent with Traditional CDNs 23

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend