Scanning the Internet for External Cloud Exposures via SSL Certs
Bittorrent final seminar
1. Seminar on :
A Peer-to-peer Network System
Presented By :
Chirodeep Das.
BCSE-IV.
Roll-000810501008.
Jadavpur University.
2. Introduction
Why “BitTorrent”?
Traditional Client-server System
Peer to peer network system
What is “ BitTorrent ”?
BitTorrent components
How BitTorrent works?
Pictorial explanation on the Working
Piece Selection Mechanisms
Advantages
Some Facts
Conclusion
References
3. BitTorrent is a peer to peer (P2P) file transferring system
and was designed in April 2001 by Brahm Cohen
and then maintained by Cohen’s company BitTorrent, Inc.
Unlike other traditional download methods, BitTorrent
maximizes transfer speed by locating the pieces of the file you
want and downloading these pieces simultaneously from
people who already have them.
This process makes popular and very large files download
much faster .
This is more popular and efficient file transferring system
than the traditional client – server system.
4.
5. Client-server computing or networking is an
application architecture that partitions the work loads between
service providers (servers) and service requesters, called clients.
Millions want to download the same popular huge files
1. Softwares
2. Media (the real example!)
You open a Web page and click a link to download a file to your
computer.
The Web browser software on your computer (the client) tells
the server (a central computer that holds the Web page and the
file you want to download) to transfer a copy of the file to your
computer.
The transfer is handled by a protocol (a set of rules), such as
FTP (File Transfer Protocol) or HTTP (Hypertext Transfer
Protocol).
7. Client-server model fails if
Single server fails or
Can’t afford to deploy enough servers
Another issue is huge Traffic Overload in the
server(s) which is the central point of failure.
8. BitTorrent is a peer-to-peer file sharing
protocol allowing users to distribute large
amounts of data without putting the level of
strain on their computers that would have
been needed for standard Internet hosting.
Peer-to-peer file sharing is different from
traditional file downloading. In peer-to-peer
sharing, you use a software program (rather
than your Web browser) to locate computers
that have the file you want to download.
Because these are ordinary computers like
yours, as opposed to servers;they are
called peers.
9. tracker
Peer
Each peer is directly connected to other peer.
The file to be transferred is divided into equal size of pieces.
Peer uploads the pieces it has while downloads any piece it
can get from other peers.
These pieces are downloaded from different peers
parallely.
It is used for large file transfer.
10. No central point of failure
✓E.g. the internet & the web do not have a central point of
failure.
✓Most internet & web services use the client-server model
(e.g. HTTP) so a specific service does have a central point of
failure.
Scalability
✓Since every peer is alike, it is possible to add more peers to
the system and scale to larger networks.
11. Like most Internet phenomena, Bit Torrent
has its own jargon. Some of the most common terms
related to BitTorrent include:
BitTorrent Client Software
.torrent file or METAinfo file
Leechers
Peers
Seeds
Swarm
Tracker
Piece (of a file)
Torrent index server
12. Client S/W – program which resides on a peers’ computer and
implements the BitTorrent protocol.
It controls all operations such as :
reads information present in the .torrent file.
After reading .torrent file it sends message to tracker to send
the list of peers and then it connects to peers.
It keeps all record of the file which is receiving.
13. It has extension as .torrent and downloaded
from torrent index server.
Contains the information that points to the
actual file and the people who are sharing it.
The main contents of the .torrent file are -
Name/size/date for each .torrent file.
# no. of pieces of each files.
SHA-1 hash of each file for
maintaining the data integrity.
Trackers associated with that
torrent.
14. These are the clients who have entire file.
They upload pieces of the file to other peers.
These are the clients who do not have the
entire file.
They upload the parts of file they have at the
same time when they download other parts.
These are the clients who are responsible for
the file transfer.
Peers = leechers + seeds.
Downloading speed of any file using torrent
depends on number of peers.
15. 1 2 3 4 5 6 7 8
The file which is to be downloaded is divided
into similar size of pieces.
Several pieces are downloaded parallelly.
Each piece is downloaded from different peers.
16. Tracker is the server that manages the BitTorrent
file transfer process.
It provides all list of peers which are associated
with a particular torrent.
These trackers are mentioned in the Metafile.
Client S/W sends request to the tracker to send the
list of peers and after getting the complete list of
peers client s/w connects to the peers.
The group of computers that are simultaneously
sending (uploading) or receiving (downloading)
the same file is called Swarm.
17. Source of .torrent files
Torrent search engine
22. Initial seeder chops file into many pieces.
Leecher first locates the .torrent file that directs it to a
tracker, which tells which other peers are downloading
that file. As soon as a leecher downloads pieces of the
file, replicas of the pieces are created. More downloads
mean more replicas are available.
As soon as a leecher has a complete piece, it can
potentially share it with other downloaders. Eventually
each leecher becomes a seeder by obtaining all the
pieces, and assembles the file. Finally it verifies the
checksum using SHA-1.
23. 1. Seeder
generates a
torrent file
Uploads torrent
to a web server.
Seeder – A client
sharing 100% of
the shared file.
24. 2. The seeder
notifies the
tracker that it is
sharing the file
described in the
torrent file.
25. 3. A leecher
downloads the
torrent file from
some torrent index
server.
Leecher – client
which has some
parts and
downloads the
other parts of the
shared file from
the seeder.
26. 4.The leecher
(client) connects
to the tracker(s)
specified in the
torrent metafile.
The tracker
returns a list of
other peers who
are sharing the
file.
27. 5. The leecher
connects to its
peers to retrieve
pieces of the files.
28. A machine with
a complete
copy (the seed)
can distribute
incomplete
pieces to
Seed multiple peers
Peers exchange
different pieces of As soon as the user has
the file with one a piece of the file on his
another until they machine, he can
assemble a whole become a source of that
piece to other peers,
helping speed download
30. torrent: group of
tracker: tracks peers
peers exchanging
in torrent; provides
chunks of a file
tracker list
trading
chunks
torrent index server: peer
search for torrents;
provides .torrent file
31. The order in which pieces are selected by
different peers is critical for good performance.
If an inefficient policy is used, then peers may
end up in a situation where each has all
identical set of easily available pieces, and none
of the missing ones.
If the original seed is prematurely taken down,
then the file cannot be completely downloaded!
What are ―good policies?‖
Some piece(chunk) selection mechanisms are-
Rarest Piece First
General rule
Random First Piece
Special case, at the beginning
Endgame Mode
Special case, at the end
32. Initially, a peer has nothing to trade.
So it is important to get a complete piece as
early as possible.
Policy is to select a random piece of the file and
download it.
33. Determine the pieces that are most rare among
your peers, and download those first.
This ensures that the most commonly available
pieces are left till the end to download.
It also ensures that a large variety of pieces are
downloaded from the seed.
34. Near the end, missing pieces are requested
from every peer containing them. When the
piece arrives, the pending requests for that
piece are cancelled.
This ensures that a download is not
prevented from completion due to a single
peer which has a slow transfer rate.
Some bandwidth is wasted, but in practice,
this is not too much.
35. Once download is complete, a peer has no
download rates to use for comparison nor
has any need to use them. The question is,
which nodes to upload to?
Policy: Upload to those peers with the best
upload rate. This ensures that pieces get
replicated faster, and new seeders are
created fast.
36. BitTorrent is an open-source program that offers a
spyware- and nuisance-free installation.
Allows users to share large amounts of data in a
short span of time.
Discourages ―freeloading‖ or ―free riders‖ (those
who only download but never upload) by
rewarding the fastest uploaders.
The more popular a file is — the more people want
a copy of it — the faster it can be downloaded,
because there are lots of replicas already present in
the system.
37. Bit torrent is responsible for roughly 27-55% of all
internet traffic and 45-78% of P2P traffic.
As of 2011 bitTorrent has more than 100 million users
and grater share of bandwidth than Netflix and Hulu
combined.
THE PIRATE BAY:
Who in september 2008 had 69,12,029 visits and
21,40,325 unique visitors making it 109th most popular
website
Another popular torrent tracker isoHunt claims to have
9857 TB of data
38. BitTorrent is a great protocol with its huge potential
to distribute large files very easily.
Bit Torrent is conceived as a way of distributing large
and popular file more quickly, efficiently, and reliably.
As a P2P file sharing system BitTorrent is
quickly becoming the method of choice for publishing
and sharing large files across the internet.