CONTENTS
 INTRODUCTION
 OTHER FILE TRANSFOR METHODS
 STRIKING CHARACTERISTICS
 TERMINOLOGY
 ARCHITECTURE OF BITORRENT
 COMPONENTS OF BITTORRENT SYSTEM
 WORKING OF BITTORRENT
 CONCLUSION
 Bit torrent is created by bram cohen
 Transfer of large files using the minimum
internet bandwidth
 Peer-to-peer file transfer protocol
 Files are shared by many users
 Active participation of all users
 Huge success in the file sharing domain
 35% of internet traffic
Introduction
Other File Transfer Methods
 Typical HTTP file transfer
 Download Accelerator Plus (DAP)
 Other Peer to Peer systems
• Kazaa, eDonkey, Direct Connect ….
Striking Characteristics
 A central server is not needed
 No single point of failure
 More the number of users, greater will be the
transfer rate
 Data available in pieces, not as a single large
file
Terminology
 Torrent
 Peer
 Seed
 Leecher
 Swarm
 Reseed
 Tracker
 Share Ratio
Architecture of BitTorrent
HTTP Peer – Tracker
TCP Peer – Peer
Components of BitTorrent System
 Metainfo File
 Data
 Tracker
 Peers
 Client
Metainfo file
 Containes all information about a
torrent
 File with a .torrent extension
 Encoding scheme used by bittorrent is
called bencoding
 Hash of all the pieces are present in
info field of metainfo file
Data
 Data can be a single file or multiple files
contained in a directory
 Data is split into many pieces of equal size
 Each piece is further divided into many
blocks
 A piece will have a hash, needed for data
integrity check
 Common piece sizes are 256kb, 512kb and
1mb
Tracker
 Manages users participating in a torrent
 Helps peers find each other
 It is a HTTP service that works on port 6969
 Peers request tracker for other peers having
the required pieces
 Tracker responds with a list of peers that
have the requested piece
 A tracker can manage many torrents
Scraping
 Querying the state of a given torrent
 Tracker responds with a scrape page
Announce URL : http://example.com/announce
Scrape URL : http://example.com/scrape
 Scrape page has the following keys
• complete
• incomplete
• downloaded
Peers
 Ports 6881 – 6889 are used by peers
 Peers speak TCP
 Following are the key strategies used by
peers while sharing files
• Random First Piece
• Rarest First
• Endgame Mode
• Peer Distribution
• Choking
• Optimistic Unchoking
 Peers perform a handshake to start the
communication
 Handshaking involves these messages
• Character 19 followed by ‘BitTorrent Protocol’
• 20 bytes hash of the info field from metainfo file
• 20 bytes peer id
 Peers start talking to each other
 They pass a number of messages between
them to send data and control the interactions
Client
 Executable program running on user’s
machine
 Co ordinates with OS to perform read write
operations
 A .torrent file must be opened by the client
 Peers with same client perform better
Working of BitTorrent
1. Seeder generates a
torrent file and
uploads torrent to a
web server.
2. The seeder notifies
the tracker that it is
sharing the file
described in the
torrent file.
3. A leecher
downloads the
torrent file from the
web server.
4. The leecher
connects to the
tracker specified in
the torrent file.
5. The leecher
connects to its
peers to retrieve
pieces of the files.
Conclusion
 BitTorrent is a popular P2P technology deployed
across the Internet.
 The protocol has found a niche as a preferred
method for the decentralized distribution of large
files.
 It provides data integrity which ensures that the
data will always be genuine and free from flaws.
 BitTorrent uses tit for tat exchange to increase
cooperation among peers and has developed a
reputation for being efficient, scalable, and robust.
References:
 Cohen, Bram. “Incentives Build Robustness
in BitTorrent. 2003.
http://www.bittorrent.com/bittorrentecon.pdf
 BitTorrent Protocol.
http://www.bittorrent.org/protocol.html
THANK YOU

Bit Torrent Protocol

  • 2.
    CONTENTS  INTRODUCTION  OTHERFILE TRANSFOR METHODS  STRIKING CHARACTERISTICS  TERMINOLOGY  ARCHITECTURE OF BITORRENT  COMPONENTS OF BITTORRENT SYSTEM  WORKING OF BITTORRENT  CONCLUSION
  • 3.
     Bit torrentis created by bram cohen  Transfer of large files using the minimum internet bandwidth  Peer-to-peer file transfer protocol  Files are shared by many users  Active participation of all users  Huge success in the file sharing domain  35% of internet traffic Introduction
  • 4.
    Other File TransferMethods  Typical HTTP file transfer  Download Accelerator Plus (DAP)  Other Peer to Peer systems • Kazaa, eDonkey, Direct Connect ….
  • 5.
    Striking Characteristics  Acentral server is not needed  No single point of failure  More the number of users, greater will be the transfer rate  Data available in pieces, not as a single large file
  • 6.
    Terminology  Torrent  Peer Seed  Leecher  Swarm  Reseed  Tracker  Share Ratio
  • 7.
  • 8.
    HTTP Peer –Tracker TCP Peer – Peer Components of BitTorrent System  Metainfo File  Data  Tracker  Peers  Client
  • 9.
    Metainfo file  Containesall information about a torrent  File with a .torrent extension  Encoding scheme used by bittorrent is called bencoding  Hash of all the pieces are present in info field of metainfo file
  • 10.
    Data  Data canbe a single file or multiple files contained in a directory  Data is split into many pieces of equal size  Each piece is further divided into many blocks  A piece will have a hash, needed for data integrity check  Common piece sizes are 256kb, 512kb and 1mb
  • 11.
    Tracker  Manages usersparticipating in a torrent  Helps peers find each other  It is a HTTP service that works on port 6969  Peers request tracker for other peers having the required pieces  Tracker responds with a list of peers that have the requested piece  A tracker can manage many torrents
  • 13.
    Scraping  Querying thestate of a given torrent  Tracker responds with a scrape page Announce URL : http://example.com/announce Scrape URL : http://example.com/scrape  Scrape page has the following keys • complete • incomplete • downloaded
  • 14.
    Peers  Ports 6881– 6889 are used by peers  Peers speak TCP  Following are the key strategies used by peers while sharing files • Random First Piece • Rarest First • Endgame Mode • Peer Distribution • Choking • Optimistic Unchoking
  • 15.
     Peers performa handshake to start the communication  Handshaking involves these messages • Character 19 followed by ‘BitTorrent Protocol’ • 20 bytes hash of the info field from metainfo file • 20 bytes peer id  Peers start talking to each other  They pass a number of messages between them to send data and control the interactions
  • 16.
    Client  Executable programrunning on user’s machine  Co ordinates with OS to perform read write operations  A .torrent file must be opened by the client  Peers with same client perform better
  • 17.
    Working of BitTorrent 1.Seeder generates a torrent file and uploads torrent to a web server. 2. The seeder notifies the tracker that it is sharing the file described in the torrent file.
  • 18.
    3. A leecher downloadsthe torrent file from the web server. 4. The leecher connects to the tracker specified in the torrent file.
  • 19.
    5. The leecher connectsto its peers to retrieve pieces of the files.
  • 20.
    Conclusion  BitTorrent isa popular P2P technology deployed across the Internet.  The protocol has found a niche as a preferred method for the decentralized distribution of large files.  It provides data integrity which ensures that the data will always be genuine and free from flaws.  BitTorrent uses tit for tat exchange to increase cooperation among peers and has developed a reputation for being efficient, scalable, and robust.
  • 21.
    References:  Cohen, Bram.“Incentives Build Robustness in BitTorrent. 2003. http://www.bittorrent.com/bittorrentecon.pdf  BitTorrent Protocol. http://www.bittorrent.org/protocol.html
  • 22.