BitTorrent
#1
Tongue 

[attachment=4310]
BitTorrent

BitTorrent consumes significant amount of internet traffic today
In 2004, BitTorrent accounted for 30% of all internet traffic (Total P2P was 60%), according to CacheLogic
Slightly lower share in 2005 (possibly because of legal action), but still significant
BT always used for legal software (linux iso) distribution too.
Millions want to download the same popular huge files (for free)
Media (the real example!)
Client-server model fails
Single server fails
Can’t afford to deploy enough servers



To know more information about this article,please download it from here .....
hope you are satisfied with this article....
Reply
#2
[attachment=9034]
BitTorrent is a peer-to-peer file sharing protocol used for distributing large amounts of data. BitTorrent is one of the most common protocols for transferring large files, and it has been estimated that it accounted for roughly 27% to 55% of all Internet traffic (depending on geographical location) as of February 2009.[1]
Programmer Bram Cohen designed the protocol in April 2001 and released a first implementation on July 2, 2001.[2] It is now maintained by Cohen's company BitTorrent, Inc. There are numerous BitTorrent clients available for a variety of computing platforms
Description
The BitTorrent protocol can distribute a large file without the heavy load on the source computer and network. Rather than downloading a file from a single source, the BitTorrent protocol allows users to join a "swarm" of hosts to download and upload from each other simultaneously . The protocol works as an alternative method to distribute data, and even small computers, like mobile phones, with low bandwidth are able to distribute files to many recipients.
A user who wants to upload a file first creates a small torrent descriptor file that he distributes by conventional means (web, email, etc.). He then makes the file itself available through a BitTorrent node acting as a seed. Those with the torrent descriptor file can give it to their own BitTorrent nodes which, acting as peers or leechers, download it by connecting to the seed and/or other peers.
The file being distributed is divided into segments called pieces. As each peer receives a new piece of the file it becomes a source of that piece to other peers, relieving the seed from having to send a copy to every peer. With BitTorrent, the task of distributing the file is shared by those who want it; it is entirely possible for the seed to send only a single copy of the file itself to an unlimited number of peers.
Each piece is protected by a cryptographic hash contained in the torrent descriptor.[3] This prevents nodes from maliciously modifying the pieces they pass on to other nodes. If a node starts with an authentic copy of the torrent descriptor, it can verify the authenticity of the actual file it has received.
When a peer completely downloads a file, it becomes an additional seed. This eventual shift from peers to seeders determines the overall "health" of the file (as determined by the number of times a file is available in its complete form).
This distributed nature of BitTorrent leads to a flood like spreading of a file throughout peers. As more peers join the swarm, the likelihood of a successful download increases. Relative to standard Internet hosting, this provides a significant reduction in the original distributor's hardware and bandwidth resource costs. It also provides redundancy against system problems, reduces dependence on the original distributor[4] and provides a source for the file which is generally temporary and therefore harder to trace than when provided by the enduring availability of a host in standard file distribution techniques.
Operation
In this animation, the colored bars beneath all of the 7 clients in the upper region above represent the file, with each color representing a 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.
A BitTorrent client is any program that implements the BitTorrent protocol. Each client is capable of preparing, requesting, and transmitting any type of computer file over a network, using the protocol. A peer is any computer running an instance of a client.
To share a file or group of files, a peer first creates a small file called a "torrent" (e.g. MyFile.torrent). This file contains metadata about the files to be shared and about the tracker, the computer that coordinates the file distribution. Peers that want to download the file must first obtain a torrent file for it and connect to the specified tracker, which tells them from which other peers to download the pieces of the file.
Though both ultimately transfer files over a network, a BitTorrent download differs from a classic download (as is typical with an HTTP or FTP request, for example) in several fundamental ways:
• BitTorrent makes many small data requests over different TCP connections to different machines, while classic downloading is typically made via a single TCP connection to a single machine.
• BitTorrent downloads in a random or in a "rarest-first"[5] approach that ensures high availability, while classic downloads are sequential.
Taken together, these differences allow BitTorrent to achieve much lower cost to the content provider, much higher redundancy, and much greater resistance to abuse or to "flash crowds" than regular server software. However, this protection, theoretically, comes at a cost: downloads can take time to rise to full speed because it may take time for enough peer connections to be established, and it may take time for a node to receive sufficient data to become an effective uploader. This contrasts with regular downloads (such as from an HTTP server, for example) that, while more vulnerable to overload and abuse, rise to full speed very quickly and maintain this speed throughout.
In general, BitTorrent's non-contiguous download methods have prevented it from supporting "progressive downloads" or "streaming playback". However, comments made by Bram Cohen in January 2007 suggest that streaming torrent downloads will soon be commonplace and ad supported streaming appears to be the result of those comments.
Creating and publishing torrents
The peer distributing a data file treats the file as a number of identically sized pieces, usually with byte sizes of a power of 2, and typically between 32 kB and 4 MB each. The peer creates a hash for each piece, using the SHA-1 hash function, and records it in the torrent file. Pieces with sizes greater than 512 kB will reduce the size of a torrent file for a very large payload, but is claimed to reduce the efficiency of the protocol.[6] When another peer later receives a particular piece, the hash of the piece is compared to the recorded hash to test that the piece is error-free.[7] Peers that provide a complete file are called seeders, and the peer providing the initial copy is called the initial seeder.
The exact information contained in the torrent file depends on the version of the BitTorrent protocol. By convention, the name of a torrent file has the suffix .torrent. Torrent files have an "announce" section, which specifies the URL of the tracker, and an "info" section, containing (suggested) names for the files, their lengths, the piece length used, and a SHA-1 hash code for each piece, all of which are used by clients to verify the integrity of the data they receive.
Torrent files are typically published on websites or elsewhere, and registered with at least one tracker. The tracker maintains lists of the clients currently participating in the torrent.[7] Alternatively, in a trackerless system (decentralized tracking) every peer acts as a tracker. Azureus was the first[citation needed] BitTorrent client to implement such a system through the distributed hash table (DHT) method. An alternative and incompatible DHT system, known as Mainline DHT, was later developed and adopted by the BitTorrent (Mainline), µTorrent, Transmission, rTorrent, KTorrent, BitComet, and Deluge clients.
After the DHT was adopted, a "private" flag — analogous to the broadcast flag — was unofficially introduced, telling clients to restrict the use of decentralized tracking regardless of the user's desires.[8] The flag is intentionally placed in the info section of the torrent so that it cannot be disabled or removed without changing the identity of the torrent. The purpose of the flag is to prevent torrents from being shared with clients that do not have access to the tracker. The flag was requested for inclusion in the official specification in August, 2008, but has not been accepted.[9] Clients that have ignored the private flag were banned by many trackers, discouraging the practice.[10]
Downloading torrents and sharing files
Users browse the web to find a torrent of interest, download it, and open it with a BitTorrent client. The client connects to the tracker(s) specified in the torrent file, from which it receives a list of peers currently transferring pieces of the file(s) specified in the torrent. The client connects to those peers to obtain the various pieces. If the swarm contains only the initial seeder, the client connects directly to it and begins to request pieces.
Clients incorporate mechanisms to optimize their download and upload rates; for example they download pieces in a random order to increase the opportunity to exchange data, which is only possible if two peers have different pieces of the file.
The effectiveness of this data exchange depends largely on the policies that clients use to determine to whom to send data. Clients may prefer to send data to peers that send data back to them (a tit for tat scheme), which encourages fair trading. But strict policies often result in suboptimal situations, such as when newly joined peers are unable to receive any data because they don't have any pieces yet to trade themselves or when two peers with a good connection between them do not exchange data simply because neither of them takes the initiative. To counter these effects, the official BitTorrent client program uses a mechanism called "optimistic unchoking", whereby the client reserves a portion of its available bandwidth for sending pieces to random peers (not necessarily known good partners, so called preferred peers) in hopes of discovering even better partners and to ensure that newcomers get a chance to join the swarm.[11]
The community of BitTorrent users frowns upon the practice of disconnecting from the network immediately upon success of a file download, and encourages remaining as another seed for as long as practical, which may be days – especially when there are a lot of downloading peers and when the ratio of seeders to downloading peers is low
Reply
#3
BitTorrent
INTRODUCTION

BitTorrent is a protocol designed for transferring files. It is peer-to-peer in nature, as users connect to each other directly to send and receive portions of the file. However, there is a central server (called a tracker) which coordinates the action of all such peers. The tracker only manages connections, it does not have any knowledge of the contents of the files being distributed, and therefore a large number of users can be supported with relatively limited tracker bandwidth. The key philosophy of BitTorrent is that users should upload (transmit outbound) at the same time they are downloading (receiving inbound.) In this manner, network bandwidth is utilized as efficiently as possible. BitTorrent is designed to work better as the number of people interested in a certain file increases, in contrast to other file transfer protocols.
One analogy to describe this process might be to visualize a group of people sitting at a table. Each person at the table can both talk and listen to any other person at the table. These people are each trying to get a complete copy of a book. Person A announces that he has pages 1-10, 23, 42-50, and 75. Persons C, D, and E are each missing some of those pages that A has, and so they coordinate such that A gives them each copies of the pages he has that they are missing. Person B then announces that she has pages 11-22, 31-37, and 63-70. Persons A, D, and E tell B they would like some of her pages, so she gives them copies of the pages that she has.
The process continues around the table until everyone has announced what they have. The people at the table coordinate to swap parts of this book until everyone has everything. There is also another person at the table, who we will call 'S'. This person has a complete copy of the book, and so does not need anything sent to him. He responds with pages that no one else in the group has. At first, when everyone has just arrived, they all must talk to him to get their first set of pages. However, the people are smart enough to not all get the same pages from him. After a short while, they all have most of the book amongst themselves, even if no one person has the whole thing. In this manner, this one person can share a book that he has with many other people, without having to give a full copy to everyone that is interested. He can instead give out different parts to different people, and they will be able to share it amongst themselves. This person who we have referred to as 'S' is called a seed in the terminology of BitTorrent.
WHAT BITTORRENT DOES?
When a file is made available using HTTP, all upload cost is placed on the hosting machine. With BitTorrent, when multiple people are downloading the same file at the same time, they upload pieces of the file to each other. This redistributes the cost of upload to downloaders, (where it is often not even metered), thus making hosting a file with a potentially unlimited number of downloaders affordable. Researchers have attempted to find practical techniques to do this before. It has not been previously deployed on a large scale because the logistical and robustness problems are quite difficult. Simply figuring out which peers have what parts of the file and where they should be sent is difficult to do without incurring a huge overhead. In addition, real deployments experience very high churn rates. Peers rarely connect for more than a few hours, and frequently for only a few minutes. Finally, there is a general problem of fairness. The total download rate across all downloaders must, of mathematical necessity, be equal to the total upload rate. The strategy for allocating upload that seems most likely to make peers happy with their download rates is to make each peer's download rate be proportional to their upload rate. In practice it's very difficult to keep peer download rates from sometimes dropping to zero by chance, much less make upload and download rates be correlated.
BitTorrent Interface
BitTorrent's interface is almost the simplest possible. Users launch it by clicking on a hyperlink to the file they wish to download, and are given a standard "Save As" dialog, followed by a download progress dialog that is mostly notable for having an upload rate in addition to a download rate. This extreme ease of use has contributed greatly to BitTorrent's adoption, and may even be more important than, although it certainly complements, the performance and cost redistribution features
Reply
#4
Presented By
Sabinaya Mohapatra

[attachment=10229]
WHAT ACTUALLY BITTORRENT IS?
 BitTorrent is a protocol that enables fast downloading of large files using minimum Internet bandwidth. It costs nothing to use and includes no spyware or pop-up advertising.
 Unlike other download methods, BitTorrent maximizes transfer speed by gathering 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, such as videos and television programs, download much faster than is possible with other protocols.
Language Of Bit Torrent
Like most Internet phenomena, Bit Torrent has its own jargon. Some of the more common terms related to BitTorrent include:
 Leeches - People who download files but do not share files on their own computer with others
 Seed or seeder - A computer with a complete copy of a BitTorrent file (At least one seed computer is necessary for a BitTorrent download to operate.)
Language Of Bit Torrent
 Swarm - A group of computers simultaneously sending (uploading) or receiving (downloading) the same file.
 .torrent - A pointer file that directs your computer to the file you want to download.
 Tracker - A server that manages the BitTorrent file-transfer process.
Reply
#5
presented by:
Dhilan Kumar Patel

[attachment=10961]
BitTorrent
Common Scenario

 Millions want to download the same popular huge files (for free)
 ISO’s
 Media (the real example!)
 Client-server model fails
 Single server fails
 Can’t afford to deploy enough servers
Client-Server
 IP Multicast?
 Recall: IP Multicast not a real option in general settings
 Not scalable
 Only used in private settings
 Alternatives
 End-host based Multicast
 BitTorrent
 Other P2P file-sharing schemes (later in lecture)
IP multicast
 End-host based multicast
 “Single-uploader” è “Multiple-uploaders”
 Lots of nodes want to download
 Make use of their uploading abilities as well
 Node that has downloaded (part of) file will then upload it to other nodes.
 Uploading costs amortized across all nodes
 End-host based multicast
BitTorrent
 Written by Bram Cohen (in Python) in 2001
 “Pull-based” “swarming” approach
 Each file split into smaller pieces
 Nodes request desired pieces from neighbors
 As opposed to parents pushing data that they receive
 Pieces not downloaded in sequential order
 Previous multicast schemes aimed to support “streaming”; BitTorrent does not
 Encourages contribution by all nodes
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
How a node enters a swarm for file “Bolt.mpeg”
 File Bolt.mpeg.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
 How a node enters a swarm
for file “Bolt.mpeg”
File Bolt.mpeg.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
How a node enters a swarm for file “Bolt.mpeg”
 File Bolt.mpeg.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
How a node enters a swarm for file “Bolt.mpeg”
 File Bolt.mpeg.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
Contents of .torrent file
 URL of tracker
 Piece length – Usually 256 KB
 “files” – allows download of multiple files
Terminology
 Seed: peer with the entire file
 Original Seed: The first seed
 Leech: peer that’s downloading the file
 Fairer term might have been “downloader”
 Sub-piece: Further subdivision of a piece
 The “unit for requests” is a subpiece
 But a peer uploads only after assembling complete piece
Peer-peer transactions:
Choosing pieces to request

 Rarest-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
Random First Piece:
 When peer starts to download, request random piece.
 So as to assemble first complete piece quickly
 Then participate in uploads
 When first complete piece assembled, switch to rarest-first
Choke & Unchoke
 Peer A said to choke peer B if it (A) decides not to upload to B
 Each peer (say A) unchokes at most 4 interested peers at any time
 The three with the largest upload rates to A
 Another randomly chosen (Optimistic Unchoke)
Snubbing
 A peer is said to be snubbed if each of its peers chokes it
 To handle this, snubbed peer stops uploading to its peers
Why BitTorrent took off
 Better performance through “pull-based” transfer
 Slow nodes don’t bog down other nodes
 Allows uploading from hosts that have downloaded parts of a file
 In common with other end-host based multicast schemes
Pros and cons of BitTorrent
 Pros
 Proficient in utilizing partially downloaded files
 Alleviates server strain as described above
 As long as torrents are made and distributed, and trackers remain online, BitTorrent will continue to run
 BitTorrent is open-source. Anybody can make a BitTorrent client with whatever features he wants.
 No spyware, adware, malware, popups, or other undesirables are bundled with it.
Pros and cons of BitTorrent
 Cons
 Assumes all interested peers active at same time; performance deteriorates if swarm “cools off”
 Even worse: no trackers for obscure content
 if you're not letting people download from you then you won't be allowed to download from them
 Old, obscure and non-mainstream material, on the other hand, is difficult to find
 Single point of failure: New nodes can’t enter swarm if tracker goes down
Conclusion
 BitTorrent's interface is almost the simplest possible.
 Users launch it by clicking on a hyperlink to the file they wish to download, and are given a standard "Save As" dialog
Reply
#6
Presented By
G.N.AJAY

[attachment=12109]
ABSTRACT
Bit Torrent is a protocol designed for transferring files. It is peer-to-peer in nature, as users connect to each other directly to send and receive portions of the file. However, there is a central server (called a tracker) which coordinates the action of all such peers. The tracker only manages connections, it does not have any knowledge of the contents of the files being distributed, and therefore a large number of users can be supported with relatively limited tracker bandwidth. The key philosophy of BitTorrent is that users should upload (transmit outbound) at the same time they are downloading (receiving inbound.) In this manner, network bandwidth is utilized as efficiently as possible. Bit Torrent is designed to work better as the number of people interested in a certain file increases, in contrast to other file transfer protocols.
One analogy to describe this process might be to visualize a group of people sitting at a table. Each person at the table can both talk and listen to any other person at the table. These people are each trying to get a complete copy of a book. Person A announces that he has pages 1-10, 23, 42-50, and 75. Persons C, D, and E are each missing some of those pages that A has, and so they coordinate such that A gives them each copies of the pages he has that they are missing. Person B then announces that she has pages 11-22, 31-37, and 63-70. Persons A, D, and E tell B they would like some of her pages, so she gives them copies of the pages that she has.
The process continues around the table until everyone has announced what they have. The people at the table coordinate to swap parts of this book until everyone has everything. There is also another person at the table, who we will call 'S'. This person has a complete copy of the book, and so does not need anything sent to him. He responds with pages that no one else in the group has. At first, when everyone has just arrived, they all must talk to him to get their first set of pages. However, the people are smart enough to not all get the same pages from him. After a short while, they all have most of the book amongst themselves, even if no one person has the whole thing. In this manner, this one person can share a book that he has with many other people, without having to give a full copy to everyone that is interested. He can instead give out different parts to different people, and they will be able to share it .
1. INTRODUCTION
Bit Torrent was created by Bram Cohen as a way to distribute large files around a network. There is a lot of potential behind Bit Torrent, especially for people who need to distribute large files to Internet users. If you had a 1GB file and there was 300 people trying to download it, it would take a lot of time to distribute 300GB of data for most people. So instead, you distribute the file in small pieces to users who then share them around with other users until they have the full file. After they have the full file they can continue to upload to other users to help them also get the full file, this is known as seeding. The speed of Bit Torrent can be absolutely amazing; with very large files transferring in a few hours. it was to help distribute content quicker around an unreliable network.
Bit Torrent is a free speech tool. You have something terrific to publish a large music or video file, software, a game or anything else that many people would like to have. But the more popular your file becomes, the more you are punished by soaring bandwidth costs. If your file becomes phenomenally successful and a flash crowd of hundreds or thousands try to get it at once, your server simply crashes and no one gets it. With Bit Torrent, those who get your file tap into their upload capacity to give the file to others at the same time. Those that provide the most to others get the best treatment in return.
The Problem with Publishing:
More customers require more Cooperative distribution can grow almost without limit, because each new participant brings not only demand, but also supply. Instead of a vicious cycle, popularity creates a virtuous circle. And because each new participant brings new resources to the distribution, you get limitless scalability for a nearly fixed cost.
Bit Torrent is not just a concept, but has an easy-to-use implementation capable of swarming downloads across unreliable networks. Bit Torrent has been embraced by numerous publishers to distribute to millions of users. With Bit Torrent free speech no longer has a high price.
The Bit Torrent Solution:
Users cooperate in the distribution
2. BIT TORRENT FILES
A popular file sharing service developed by Bram Cohen that prevents people from downloading constantly unless they are willing to share in the overall transmission load on the network.
Large Files Become Torrents Instead of downloading an entire file, Bit Torrent breaks a file into chunks and distributes them among several participating users. When you download a "torrent," you are also uploading it to another user. Bit Torrent balances the load because broadband download and upload speeds are not the same. Users download files faster than they can upload them, which make them less interested in sharing bandwidth to upload to someone else. BitTorrent ensures every user participates in uploading.
BitTorrent has become widely used for transferring huge program files as well as pirated movies. In 2004, one estimate placed BitTorrent files as a third of Internet traffic. Even if widely exaggerated, torrent traffic has been substantial, and the software has made its mark
File swapping systems have been architected in different ways as outlined in the following illustrations:
BitTorrent is a peer-to-peer (P2P) file distribution tool. The reference implementation is written in Python. With BitTorrent, files are broken into smaller fragments, typically a quarter of a megabyte each. As the fragments get distributed to the peers, they can be reassembled on a requesting machine in a random order. Each peer takes advantage of the best connections to the missing pieces while providing an upload connection to the pieces it already has. This scheme has proven particularly adept in trading large files such as videos and software source code. In conventional downloading, high demand leads to
2.1 SHARING FILES
BitTorrent greatly reduces the load on the server, because the users generally download the file from each other, not the server. As the colored bars below each client show, the file is downloaded in random order, instead of sequential order.
To share a file using Bit Torrent, a user creates a .torrent file, a small "pointer" file which contains:
• the filename, size, and the hash of each block in the file (which allows users to make sure they are downloading the real thing)
• the address of a "tracker" server (which is discussed below)
• And some other data.
The torrent file can then be distributed to other users, often via email or placed on a website. The BitTorrent client is then started as a "seed node", allowing other users to connect and commence downloading. When other users finish downloading the entire file, they can optionally "reseed" it--becoming an additional source for the file. One outcome of this approach is that if all seeds get taken offline, the file may no longer be available for download, even if the torrent file is possessed. Downloading with Bit Torrent is straightforward. Each person who wants to download the file first downloads the torrent and opens it in the BitTorrent client software. The torrent file tells the client the address of the tracker, which, in turn, maintains a log of which users are downloading the file and where the file and its fragments reside. For each available source, the client considers which blocks of the file are available, and then requests the rarest block it does not yet have. This makes it more likely that peers will have blocks to exchange. As soon as the client finishes importing a block, it hashes it to make sure that the block matches what the torrent file said it should be. Then it begins looking for someone to upload the block to.
Though Bit Torrent is a good protocol for a broadband user, it is less effective for dial up connections, where disconnections are common.
2.2 WEB SEEDING
One recently implemented feature of Bit Torrent is web seeding. The advantage of this feature is that a site may distribute a torrent for a particular file or batch of files and make those files available for download from that same web server application; this can simplify seeding and load balancing greatly once support for this feature is implemented in the various Bit Torrent clients. This feature is an unofficial one, created by the author of a specific third-party client.
2.3 PRE - BITTORRENT
Bit Torrent on its own is a protocol to enable file-downloading. When used in conjunction with directory style websites, Bit Torrent becomes a powerful tool enabling users of the system to share large files. The users of the system download the files from each other but they rely on a centralized system in order to do this.
File Sharing (Pre - Bit Torrent)
A computer network is a system for communication among two or more computers allowing exchange of traffic back and forth between them. The Internet is an interconnected system of networks that connects computers around the world via the TCP/IP protocol
One of the most popular uses of the Internet is file downloading. This method was restricted by the number of people attempting to download files from the server.
P2P file-sharing is a more efficient way of downloading high-bandwidth material like music and video.
In order for a P2P application to be successful the system should adhere to several criteria
It should have a high availability of different files
1. The content should be of good quality
2. High download speeds should be available
3. The Bit Torrent Protocol
Reply
#7

[attachment=15512]
Introduction
BitTorrent is a peer to peer communication protocol for file sharing.
The data to be shared is divided into many equal sized portions called pieces.
Each piece is further sub-divided into equal-sized sub-pieces called blocks.
All clients interested in sharing the same data are grouped into a swarm.
It does not require a user to download a file completely from a single server.
Instead a file can be downloaded from many such users who are indeed downloading the same file.
A user who has the complete file, called the seed will initiate the download by transferring pieces of file to the users.
Once a user has some considerable number of such pieces of a file then even he can start sharing them with other users who are yet to receive those pieces.
Pieces are not downloaded in sequential order.
This concept enables a client not to depend on a server completely .
It also reduces the overall load on the server.
Terminology
Torrent : refers to the small metadata file you receive from the web server.
Peer : A peer is another computer on the internet that you connect to and transfer data.
Leech: peer that’s downloading the file
Seed : A computer that has a complete copy of a certain torrent.
Swarm : The group of machines that are collectively connected for a particular file.
Tracker : A server on the Internet that acts to coordinate the action of BitTorrent clients. The clients are in constant touch with this server to know about the peers in the swarm.
Share ratio : This is ratio of amount of a file downloaded to that of uploaded.
Choked : It is a state of an uploader where he does not want to send anything on his link. In such cases, the connection is said to be choked.
Working of BitTorrent
BitTorrent protocol shares data through what are known as torrents.
For a torrent to be alive or active it must have several key components to function.
These components include a tracker server, a .torrent file, a web server where the .torrent file is stored and a complete copy of the file being exchanged.
The first step in the BitTorrent exchange occurs when a peer downloads a .torrent file from a server.
The role of .torrent files is to provide the metadata that allows the protocol to function.
The .torrent files contains :
The URL of the tracker
Pieces <hash1, hash 2,…, hash n>
Piece length
Name of the file
Length of the file
When a .torrent file is opened by the peer’s client software, the peer then connects to the tracker server responsible for coordinating activity for that specific torrent.
BitTorrent: publishing a file
Architecture of BitTorrent
The BitTorrent protocol can be split into the following five main components:
Metainfo File - a file which contains all details necessary for the protocol to operate.
Tracker - A server which helps manage the BitTorrent protocol.
Peers - Users exchanging data via the BitTorrent protocol.
Data - The files being transferred across the protocol
Architecture of BitTorrent
Client - The program which sits on a peers computer and implements the protocol
Peers use TCP to communicate and send data
A tracker uses HTTP/HTTPS service and typically works on port 6969.
BitTorrent clients communicate with the tracker using HTTP GET requests, which is a standard CGI method.
BitTorrent uses ports 6881-6889 to send messages and data between peers.
Tracker
Piece Selection

There are three stages of piece selection, which change depending on which stage of completion a peer is at.
Random First Piece
When downloading first begins, as the peer has nothing to upload, a piece is selected at random to get the download started. Once this happens, the 'rarest first' strategy begins.
Rarest First
When a peer selects which piece to download next, the rarest piece will be chosen from the current swarm.
Piece Selection
End-game mode:
When requests sent for all sub-pieces, (re)send requests to all peers.
To speed up completion of download
Cancel request for downloaded sub-pieces
Tit-for-tat as incentive to upload
Want to encourage all peers to contribute
Peer A said to choke peer B if it (A) decides not to upload to B
Each peer (say A) unchokes at most 4 interested peers at any time
The three with the largest upload rates to A
Where the tit-for-tat comes in
Another randomly chosen (Optimistic Unchoke)
To periodically look for better choices
Simple example
Conclusion
BitTorrent pioneered mesh-based file distribution that effectively utilizes all the uplinks of participating nodes.
BitTorrent is a well thought-out protocol that embraces aspects of cooperation and self-optimizing mechanisms.
BitTorrent propose solutions for current optimization and scalability problems
Reply

Important Note..!

If you are not satisfied with above reply ,..Please

ASK HERE

So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: bittorrent alternative, cloudanalyst dht, bittorrent am, bolt stops, bittorrent ppt, social network bittorrent, who is vanya cohen,

[-]
Quick Reply
Message
Type your reply to this message here.

Image Verification
Please enter the text contained within the image into the text box below it. This process is used to prevent automated spam bots.
Image Verification
(case insensitive)

Possibly Related Threads...
Thread Author Replies Views Last Post
Thumbs Down BitTorrent projectsofme 1 1,107 29-09-2010, 04:10 PM
Last Post: projectsofme

Forum Jump: