BitTorrent

From Citizendium, the Citizens' Compendium
Jump to: navigation, search
This article is developing and not approved.
Main Article
Talk
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and not meant to be cited; by editing it you can help to improve it towards a future approved, citable version. These unapproved articles are subject to a disclaimer.
(CC) Image: Langille and Eisen, 2010
File sharing via BitTorrent breaks up the files into small pieces (shown as pattern blocks within black box), and allows peer-to-peer sharing among computers with full copies or partial copies of the files. This allows faster transfer times and decentralization of the data, as compared to more traditional protocols like FTP
For more information, see: Content delivery and distributed file sharing networks.

BitTorrent is a hybrid between pure peer-to-peer and client-server file sharing. The servers are more concerned with directory functions and managing content flows that actually holding the content. BitTorrent seems to have been much more successful than other P2P companies in establishing working relationships with the entertainment industry, avoiding the adversarial relationships that closed down other P2P systems. When the protocol first deployed, it was at end user quality levels. Evolved versions can meet enterprise quality needs. There is also a content distribution service, based on BitTorrent technology but as opposed to P2P, with contractual SLAs. CacheLogic runs this commercial service. BitTorrent claims that its traffic is 35% of the total Internet traffic, although this has not been independently confirmed.

The original BitTorrent client, written in the Python programming language, had its source code released under the BitTorrent Open Source License, which is a modified version of the Jabber Open Source License. There are numerous compatible clients, written in a variety of programming languages, and running on a variety of computing platforms.

Protocol architecture

While BitTorrent implements are called clients, the protocol operations are not strongly client-server. NetNews is a conceptual predecessor, in that the clients exchange information about what they have and what they need. As opposed to news, however, the exchanges are not pairwise, but as parallel as possible. The more clients that have the file of interest, the smaller the workload of each. Each client in the “swarm” of cooperating computers knows which other pieces of the file have been transferred.

After downloading a file, the BitTorrent netiquette is to act as a seeder after it has the complete file. This, it offers the file to other clients. Being able to expand the number of sources of content led to the marketing-oriented but meaningful term "application multicasting".

As important as the share ratio may be the length of time the client stays open. The longer that time, the more new clients can find a peer that has that file.

How do would-be downloaders find the clients with the files? The first client to get the file and offer it, called the initial seeder, registers its existence and content with a server called a tracker. Trackers make the information about seeders and trackers available as web pages, but, unless they are coincidentally seeders/clients, do not themselves have the content. They are merely brokers.

In NNTP, the client requests specific messages, but here, they request random pieces of the content file. Randomness increases the probability that more than one client will have the file, such that the work is spread over more computers. The larger the file, the larger the piece. A hash for error detection covers the pieces.

As more peers join the swarm, they share pieces with one another, reducing the load on the initial seeder. Clients should prefer to send data to peers who upload data to them, a means of encouraging fair sharing of the work. If this policy is overly strict, however, a peer that just joined the swarm may not get any data because it is not offering any.

BitTorrent business models

Where several P2P vendors have gone out of business, typically due to huge legal problems with pirated information, BitTorrent seems to have managed to stay more mainstream. BitTorrent distributes BitTorrent's own updates, as well as OpenOffice.org and most LINUX distributions. Free and Open Source conferences have distributed video of their conferences via BitTorrent. NASA uses it for large image files.

Bram Cohen, the inventor of BitTorrent, and the movie industry executed an agreement in 2005. It required that the bittorrent.com website not have any linked to unlicensed movie content. Of course, this had no effect on other servers not under Cohen's control, but it appears there is a mutual attempt to work out compromises between this P2P operator and the entertainment industry than with several other services.

BitTorrent has received the usual legal attacks over copyright infringement, but its main counterargument is that its servers do not contain copyrighted information, but only metadata about it. Nevertheless, the matter is before several courts at the time of this writing. Law enforcement, in several countries, seized servers. BitTorrent websites, perhaps more than for other P2P services, tend to have prominent anti-piracy warnings.

Other BitTorrent servers not subject to this agreement continue to be shut down through legal action. BitTorrent's design does give it some legal protections that other P2P services do not have. BitTorrent itself does not have a search engine, so clients are responsible for finding the material.