BitTorrent is a peer-to-peer file-sharing protocol that enables massive distribution of files over the Internet. It allows users to share very large files like movies, books and TV shows.
The BitTorrent protocol helps to efficiently download files from the Internet. It allows an unlimited number of users to connect to a site simultaneously without causing the server to run out of bandwidth.
BitTorrent is an open-source, peer-assisted program that was developed in Python programming language by Bram Cohen in 2001.
When a large number of users try to access a particular site, the connection is usually refused because of the network traffic and heavy load on the source computer. BitTorrent avoids this problem by allowing users to join a swarm of hosts, which can scatter and gather information from each other simultaneously. It allows other users, trying to download the same file to act as servers to one another. This is done by simultaneously uploading the slices of the file received by other users who are trying to request the same file. Once a user receives the entire file, that user acts as a seed (a source having the entire file available for sharing). This relieves the servers from carrying the entire burden and makes it possible for a server to handle unlimited requests without requiring a large bandwidth.
BitTorrent consists of many clients, which are nothing but programs that implement the BitTorrent protocol. Each client has the capability to prepare, request and transmit any type of file over a network. A computer running an instance of a client is called a peer. When a file needs to be shared over a network, the peer first generates a small file containing metadata about the file and the computer coordinating the file distribution, known as a tracker. Peers must first obtain the small file, called a torrent file, and then access the tracker. The tracker will direct the peer to other peers from which it can get the remaining pieces of the file.
BitTorrent offers high redundancy, high availability and lower cost to the content provider and makes it possible to disperse a file quickly and easily without requiring much infrastructure.
Read More »