Bittorrent Seminar by dhananjay pardeshi
-
Upload
dhananjaypardeshi13 -
Category
Education
-
view
911 -
download
3
Transcript of Bittorrent Seminar by dhananjay pardeshi
May 3, 2023
ASeminar on
Guide:-Mrs. Kale J. S.
Presented By:- Hamand Amol Sambhaji. Pardeshi Dhananjay
Rajendra.
Pardeshi Dhananjay.
May 3, 2023 2
Contents• Introduction• Types Of Data Sharing• Traditional Client-Server Downloading• Peer-Peer Downloading• What is BitTorrent?• Why BitTorrent?• Origin!• BitTorrent Terminology• How BitTorrent works?• Swarm, Tracker, Peers, Leeches, Seeds• Architecture of BitTorrent• Piece Selection• Conclusion• References
Pardeshi Dhananjay.
May 3, 2023 3
Introduction• Humans tend to share things.
• As electronic data plays a vital role these days, they acquire the “sharing” attribute.
• Sharing electronic data(emails, eBooks, multimedia files) is the need of the hour.
• Usually the data is of large size and takes too much time and bandwidth to be downloaded.
• Data sharing must be fast enough as we are now moving to 3G and 4G technologies, users expect data sharing at high speeds.
Pardeshi Dhananjay.
May 3, 2023 4
Types Of Data Sharing Manual Sharing Using Removable Media: Such as Memory Cards,
USB drives, External Hard disks etc.
Centralized Servers of Computer Networks: Network of computers interconnected for sharing resources and information via a central server (One server – many clients).
Distributed Peer-to-Peer networking: Is a Computer network where
each system in the network acts as client or server allowing shared access of resources without the need of central server.
Pardeshi Dhananjay.
May 3, 2023 5
Traditional Client-Server Downloading
• The client – server model is a centralized model.• A server is a computer that selectively shares its data on Web.• A client is a computer that contacts the server in order to request for the data.
• The Web browser software on your computer (the client) tells the server to transfer a copy of the file to your computer.
• Single server provides service to several clients simultaneously.
Handling multiple requests.
Server
Client
Pardeshi Dhananjay.
May 3, 2023 6
Contd.• Protocols used:- 1)FTP (File Transfer Protocol) 2)HTTP (Hypertext Transfer Protocol).
• The transfer speed is affected by a number of variables, including the type of protocol, the amount of traffic on the server and the number of other computers that are downloading the file.
• If the file is both large and popular, the demands on the server are great, and the download will be slow.
• Client-server model fails if1. Single server fails.2. Cant afford to deploy enough servers.
Pardeshi Dhananjay.
May 3, 2023 7
Peer-Peer Downloading• A peer-to-peer (P2P) network is a decentralized network. • In peer-to-peer sharing, all individual nodes(‘Peers’) act as both supplier and consumer of data or resources.
• In peer-to-peer sharing, a software program is used instead a Web Browser to locate computers that have the file user want.
• You run peer-to-peer file-sharing software (for example, a Napster program or Gnutella) on your computer and send out a request for the file you want to download.
• To locate the file, the software queries other computers that are connected to the Internet and running the file-sharing software.
Pardeshi Dhananjay.
May 3, 2023 8
Contd.• When the software finds a computer that
has the file you want on its hard drive , the download begins.
• Others using the file-sharing software can obtain files they want from your computer's hard drive.
• The file-transfer load is distributed between the computers exchanging files, but file searches and transfers from your computer to others can cause bottlenecks.
Pardeshi Dhananjay.
May 3, 2023 9
What Is BitTorrent?• Bit-Torrent is a peer to peer (P2P) protocol used for sharing files over the network.
• A P2P client is used on every participating nodes.
• No central resource allocation.
• A single data is accessed effectively by hundreds of peers.
• The data is chopped into pieces and further into sub pieces.
• Every peer acts as both, client and server.
• One of Bit Torrent's most powerful idea is the choking mechanism.
Pardeshi Dhananjay.
May 3, 2023 10
Why BitTorrent ?• Unlike some other peer-to-peer downloading methods, BitTorrent is a protocol that offloads some of the file tracking work to a central server called a Tracker.
• Another difference is that it uses a principal called tit-for-tat.
• This means that in order to receive files, you have to give them. This solves the problem of leeching -- one of developer Bram Cohen's primary goal.
Pardeshi Dhananjay.
May 3, 2023 11
Origin!• The BitTorrent protocol was designed by Bram Cohen in April 2001, now maintained by BitTorrent, Inc.
• BitTorrent was written in Python prior to version 06 and was a free software, now rebranded as µTorrent, no longer open source.
• In November of 2004, BitTorrent was responsible for 35% of all Internet traffic.
• As of 2009, BitTorrent reportedly had about the same number of active users online as viewers of YouTube and Facebook combined.
Pardeshi Dhananjay.
May 3, 2023 12
BitTorrent Terminology• .torrent - A pointer file that directs your computer to the file you want to download.
• Peer – Active node in the network that does not have the complete file (upload & download).
• Leeches - People who download files but do not upload files on their own computer with others.
• Seed - A computer with a complete copy of a BitTorrent file (At least one seed computer is necessary for a BitTorrent download to operate).
• Swarm - A group of computers simultaneously sending (uploading) or receiving (downloading) the same file.
.
Tracker - A server that manages the BitTorrent file-transfer process.
Pardeshi Dhananjay.
May 3, 2023 13
Contd.• Tracker - A server that keeps track of leechers and seeds in the network. The tracker is centralized.
• Share Ratio – The ratio of amount of a file downloaded to that of uploaded.
• Index sites -Also referred to as a torrent search engine. Contains .torrent files for download.
Pardeshi Dhananjay.
May 3, 2023 14
How BitTorrent Works?•You open a Web page and click on a link for the file you want.
•BitTorrent client software communicates with a tracker to find other computers running BitTorrent that have the complete file (seed computers) and those with a portion of the file (peers that are usually in the process of downloading the file).
•The tracker identifies the swarm, which are connected computers that have all or a portion of the file and are in the process of sending or receiving it.
•The tracker helps the client software to trade pieces of the file we want with other computers in the swarm. Your computer receives multiple pieces of the file simultaneously.
Pardeshi Dhananjay.
May 3, 2023 15
BitTorrent Swarm Swarm
Set of peers all downloading the same file. Organized as a random mesh.
Each node knows list of pieces downloaded by neighbors.
Node requests pieces it does not own from neighbors. Exact method explained later.
Pardeshi Dhananjay.
May 3, 2023 16
How a node enters a swarm for file “Ubantu.iso”
File Ubantu.iso .torrent hosted at a (well-known) webserver.
The .torrent has address of tracker for file.
The tracker, which runs on a webserver as well, keeps track of all peers downloading file.
Pardeshi Dhananjay.
May 3, 2023 17
How a node enters a swarm for file “Ubantu.iso”
File Ubantu.iso .torrent hosted at a (well-known) webserver.
The .torrent has address of tracker for file.
The tracker, which runs on a webserver as well, keeps track of all peers downloading file.
www.bittorrent.com
Peer
1
Ubantu.iso.torrent
Pardeshi Dhananjay.
May 3, 2023 18
How a node enters a swarm for file “Ubantu.iso”
File Ubantu.iso .torrent hosted at a (well-known) webserver.
The .torrent has address of tracker for file.
The tracker, which runs on a webserver as well, keeps track of all peers downloading file.
Peer
TrackerAddresses of peers
2
www.bittorrent.com
Pardeshi Dhananjay.
May 3, 2023 19
How a node enters a swarm for file “Ubantu.iso”
File Ubantu.iso .torrent hosted at a (well-known) webserver
The .torrent has address of tracker for file
The tracker, which runs on a webserver as well, keeps track of all peers downloading file
Peer
Tracker3
www.bittorrent.com
Swarm
Pardeshi Dhananjay.
May 3, 2023 20
Tracker• Manages users participating in a torrent (known as peers).
• Stores statistics about the torrent.
• Allows peers to find each others and start communication.
• Keeps track of pieces of file and what peer have which piece.
• Peers communicate with tracker using HTTP protocol.
Pardeshi Dhananjay.
May 3, 2023 21
Pardeshi Dhananjay.
May 3, 2023 22
Peers:- A peer is another computer on the internet that you connect to
and transfer data. Generally a peer does not have the complete file.
Leeches:- They are similar to peers in that they won’t have the complete
file. But the main difference between the two is a leech will not upload once the file is downloaded.
Seeds:- A computer that has a complete copy of a certain torrent. It only
uploads the file.
Pardeshi Dhananjay.
May 3, 2023 23
Overall ArchitectureWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
Get-announce
Response-peer list
piecespieces
pieces
Web Server
Pardeshi Dhananjay.
May 3, 2023 24
Download the torrent fileWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
TrackerWeb Server
.torre
nt
Pardeshi Dhananjay.
May 3, 2023 25
Contact the trackerWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
Get-announce
Web Server
Pardeshi Dhananjay.
May 3, 2023 26
Tracker responseWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
Response-peer list
Web Server
Pardeshi Dhananjay.
May 3, 2023 27
Peer ConnectionWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
Shake-hand
Web Server
Shake-hand
Pardeshi Dhananjay.
May 3, 2023 28
Peer ‘A’ downloads a piece from the network
Web page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
pieces
pieces
Web Server
Pardeshi Dhananjay.
May 3, 2023 29
Piece Exchange StartsWeb page with link to .torrent
A
B
C
Peer[Leech]
Downloader
“US”
Peer[Seed
]
Peer[Leech
]
Tracker
piecespieces
pieces
Web Server
Pardeshi Dhananjay.
May 3, 2023 30
Piece Selection Random First Piece
Special case, at the beginning.
Rarest First General rule.
Endgame Mode Special case.
Pardeshi Dhananjay.
May 3, 2023 31
Random First Piece
Initially, a peer has nothing to trade.
Important to get a complete piece ASAP. So as to assemble first complete piece quickly. Then participate in uploads.
Select a random piece of the file and download it.
Pardeshi Dhananjay.
May 3, 2023 32
Rarest Piece First Look at all pieces at all peers, and request piece that’s owned
by fewest peers.
Increases diversity in the pieces downloaded. avoids case where a node and each of its peers have
exactly the same pieces; increases throughput.
Increases likelihood all pieces still available even if original seed leaves before any one node has downloaded entire file.
Pardeshi Dhananjay.
May 3, 2023 33
End- Game Mode Near the end, missing pieces are requested from every peer
containing them.
This ensures that a download is not prevented from completion due to a single peer with a slow transfer rate.
Some bandwidth is wasted, but in practice, this is not too much.
Pardeshi Dhananjay.
May 3, 2023 34
Simple Example:-
Seeder: A
Downloader B
{1,2,3,4,5,6,7,8,9,10}
{}{1,2,3}
Downloader C
{}{1,2,3}
{1,2,3,4}
{1,2,3,5}
{1,2,3,4,5}
Pardeshi Dhananjay.
May 3, 2023 35
Conclusion
News of increased adoption of this revolutionary protocol continues to emerge, and this seems to be a rich area for continued research in computer networking, with significant potential benefits to society.
If BitTorrent and similar protocols do find a legal place in the internet, it will certainly help to pave the way for distributing rich media on the internet, and provide the impetus for new innovations.
Pardeshi Dhananjay.
May 3, 2023 36
References
1. http://computer.howstuffworks.com/bittorrent.htm2. http://en.wikipedia.org/wiki/BitTorrent3. http://computer.howstuffworks.com/file-sharing.htm4. http://en.wikipedia.org/wiki/World_Wide_Web5. http://en.wikipedia.org/wiki/Computer_network6. http://www.bittorrent.com/help/guides/beginners-guide
Pardeshi Dhananjay.
May 3, 2023 37
Thanks for hearing us patiently!Pardeshi Dhananjay.