Upload
parth-akbari
View
134
Download
2
Embed Size (px)
Citation preview
BittorrentA peer to peer file sharing protocol
BittorrentA peer to peer file sharing protocol
BY: Parth Akbari (74)
Abstract BitTorrent is the name of a peer-to-peer
(P2P) file distribution protocol, and is the name of a free software implementation of that protocol.
The protocol was originally designed and
created by programmer Bram Cohen, and is now maintained by BitTorrent Inc.
BitTorrent is designed to distribute large amounts of data widely without incurring the corresponding consumption in costly server And bandwidth resources.
The original BitTorrent client was written in Python. Its source code, as of version has been released under the BitTorrent Open Source License.
So what is Bittorrent? Definition: Bittorrent is a peer to peer network
protocol for sharing files over the web.
Peer-to-peer: Users consume and provide resources directly to other users in the network without the need of a central entity.
Application layer: Works on top of the TCP layer
BitTorrent protocol: has been built on a technology which makes it possible to distribute large amounts of data without the need of a high capacity server, and expensive bandwidth.
Introduction
ApproachesIntroduction
What are its Terminology? Client(Peers): Piece of computer software
that implements the Bittorrent protocol. Peers are nothing but computers running a Bittorrent client.
Tracker: Server that established the communication between peers in the Bittorrent network. A tracker is a HTTP/HTTPS service and typically works on port 6969.
Leeches : They are similar to peers in that they
won't have the complete file.
Introduction
.Torrent : this refers to the small metadata file you receive from the web server(the one that ends in .torrent.) Metadata here means that the file contains information about the data you want to download, not the data itself.
Seed : A computer that has a complete copy of a certain torrent. Once a client downloads a file completely, he can continue to upload the file which is called as seeding. This is a good practice in the BitTorrent world since it allows other users to have the file easily.
Introduction
How does it work?
1. The file provider(seed) makes the file available on the network.
2. Peers make requests for the file. 3. Peers get pieces of the file on a rarest
first basis.4. Peers make pieces that were already
downloaded available to other peers while downloading missing pieces
5. Once a peer has all the parts that make the file if will become a seed.
Can I see?
* The image is taken for study purpose : http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29
In this animation, the colored bars beneath all of the 7 clients in the animation above represent the file, with each color representing an individual piece of the file. After the initial pieces transfer from the seed (large system at the bottom), the pieces are individually transferred from client to client. The original seeder only needs to send out one copy of the file for all the clients to receive a copy.
Architecture
Metainfo File.Torrent File
Torrent File
Announce (strin
g)
Info (Dictionary)
Piece Lengt
h (integ
er)
Single/Multiple File
Name (string)
Providers www.youtorrent.com www.H33t.com www.torrentz.in( Search Engine ) www.torrentcafe.com http://torrents.to ( Search Engine )
Screen Shot-I
Screen Shot-II
Screen Shot-III
How to Create?
HTTP vs. Bittorrent
Terminology HTTP BittorrentFile Transfer Single Stream Random partsStreaming Specific order RandomUplink Depends on server
bandwidthSeeder Bandwidth
Redundancy Not Redundant Redundant
Server Load Complete load Distributed loadEncryption HTTPS Message Stream
Encryption Resume Capability
Limited Depends on Seeders
Network Impact?
Cable Labs estimates that 18% of all broadband traffic happens through the Bittorrent Protocol.
Cache Logic did a study in 2004 where it concluded that as much as 35% of all internet traffic was carried using the Bittorrent protocol.
The protocol also offers a challenge for network routers that use Network Address Translation (NAT). Most routers keep a 2000 records table while Bittorrent client can easily make 300-500 requests per second.
Conclusion
BTP may be The Next Version of Downloading Methodology
Works on Concept of Distributing data Load over the Users.
Bibliography
http://www.bittorrent.org/protocol.htm.
en.wikipedia.org/wiki/BitTorrent_(protocol)
THANK YOU