1 / 25

The BitTorrent protocol

The BitTorrent protocol. A peer-to-peer file sharing protocol. Problem Addressed. How do we transfer a piece of data quickly to a group of people interested in it. Web server Distributors Redhat patches Soln: BitTorrent based file swarming. Philosophy. Author: Bram Cohen

Anita
Download Presentation

The BitTorrent protocol

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. The BitTorrent protocol A peer-to-peer file sharing protocol.

  2. Problem Addressed • How do we transfer a piece of data quickly to a group of people interested in it. • Web server • Distributors • Redhat patches • Soln: BitTorrent based file swarming

  3. Philosophy • Author: Bram Cohen • Based on Tit-for-tat • Incentive - Uploading while downloading • Pieces of files

  4. Tracker Web Server Web page with link to .torrent .torrent C A Peer [Seed] Peer [Leech] Downloader “US” B Peer [Leech] Overall Architecture

  5. Tracker Web Server Web page with link to .torrent Get-announce C A Peer [Seed] Peer [Leech] Downloader “US” B Peer [Leech] Overall Architecture

  6. Tracker Web Server Web page with link to .torrent Response-peer list C A Peer [Seed] Peer [Leech] Downloader “US” B Peer [Leech] Overall Architecture

  7. Tracker Web Server Web page with link to .torrent Shake-hand C A Peer [Seed] Peer [Leech] Downloader “US” Shake-hand B Peer [Leech] Overall Architecture

  8. Tracker Web Server Web page with link to .torrent pieces C A pieces Peer [Seed] Peer [Leech] Downloader “US” B Peer [Leech] Overall Architecture

  9. Tracker Web Server Web page with link to .torrent pieces C A pieces Peer [Seed] Peer [Leech] Downloader “US” pieces B Peer [Leech] Overall Architecture

  10. Tracker Web Server Web page with link to .torrent Get-announce Response-peer list pieces C A pieces Peer [Seed] Peer [Leech] Downloader “US” pieces B Peer [Leech] Overall Architecture

  11. Messages • Peer – Peer messages • TCP Sockets • Peer – Tracker messages • HTTP Request/Response • B-encoding

  12. .torrent • url of the tracker • Pieces <hash1,hash2,….hashn> • Piece length • Name • Length • Files • Path • length

  13. Tracker • Peer cache • IP, port, peer id • State information • Completed • Downloading • Returns random list

  14. Peer Operation • Choking algorithm • Choke/Unchoke • Preferred peers • Optimistic unchoke • Snubbing behavior • Prevented by Anti-snubbing. • Upload to interested peers who are not choking.

  15. Peer Operation • Verify on receiving complete piece • Endgame Behavior • Cancel

  16. Experimental Client

  17. Strengths • Better bandwidth utilization • Never before speeds. • Up to 7 MB/s from the Internet. • Limit free riding – tit-for-tat • Limit leech attack – coupling upload & download • Spurious files not propagated • Ability to resume a download

  18. Drawbacks • Small files – latency, overhead • Random list of peers - naive • Scalability • Millions of peers – Tracker behavior (uses 1/1000 of bandwidth) • Single point of failure • Robustness • System progress dependent on altruistic nature of seeds (and peers) • Malicious attacks and leeches.

  19. MNL’s Interest • Robustness • Devise possible attacks and find loopholes • Secure against attacks • Scalability • Sharing across files • Millions of users • Possible extensions • Peer optimization • Upload just enough to maximize your download. • Intelligent tracker • Peer selection policy • Dead sites • Share html content

  20. Optimism - hack • Connect to as many peers as possible • Benefit • Optimistic unchoking • Probability of free download increases

  21. download upload Peer upload optimization • Upload enough to stay within the preferred list of as many peers as possible • Get the best download deal with minimum required upload

  22. Smarter tracker • Classify peers • Pick at random from each of these subsets • No compromise on random choice • Will lead to a more progressive peer network.

  23. Interesting links • Official site: http://bitconjurer.org/BitTorrent • BitTorrent FAQ: http://btfaq.com • Torrent sites • http://f.scarywater.net • http://www.suprnova.org • http://tvtorrents.com Remember • leave your download windows open • Big brother is watching!

More Related