From Wikipedia, the free encyclopedia - View original article
A BitTorrent tracker is a server that assists in the communication between peers using the BitTorrent protocol. It is also, in the absence of extensions to the original protocol, the only major critical point, as clients are required to communicate with the tracker to initiate downloads. Clients that have already begun downloading also communicate with the tracker periodically to negotiate with newer peers and provide statistics; however, after the initial reception of peer data, peer communication can continue without a tracker.
A BitTorrent tracker, also simply referred to as a tracker, is different from a BitTorrent indexer, indexer for short, in that a tracker actually coordinates communication between peers attempting to download the payload of the torrents. By contrast, an indexer aggregates torrent data from one or more tracker sources into a central database, publicly or privately searchable, making available the metadata contained in the .torrent file such as the tracker URL. A tracker is not necessarily affiliated with an indexer.
However, some BitTorrent websites do operate and rely on their own tracker server. Sites such as these allow users to upload torrents to the index with the tracker's URL embedded in them, providing all the features necessary to initiate a download.
Public or open trackers can be used by anyone by adding the tracker address to an existing torrent, or they can be used by any newly created torrent. The most popular are OpenBitTorrent, PublicBitTorrent and istole.it. The Pirate Bay operated one of the most popular public trackers until disabling it in 2009 amid legal trouble, opting to offer only magnet links.
A private tracker is a BitTorrent tracker that restricts use, by requiring users to register with the site. The method for controlling registration used amongst many private trackers is an invitation system, in which active and contributing members are given the ability to grant a new user permission to register at the site.
Perhaps the most complicated portion of this legal debate is the fact that although BitTorrent indexes and trackers provide means to receive and send copyrighted data between users, they do not host any copyrighted materials, and no copyrighted materials ever traverse these trackers or indexers. Many torrent trackers have been the target of cease and desist lawsuits from copyright bodies despite the fact that a tracker does not actually host or distribute any copyrighted data itself, due to the fact that files are transferred directly from each user's machine instead of distributed via the tracker itself.
A complicating factor is that torrent tracking websites operate in a variety of countries, including countries with copyright laws that differ from the country of origin of the copyrighted material, and countries in which different actions may be legal or illegal.
There are several circumstances under which it is legal to distribute copyrighted material or parts thereof.
There are also experiments at legally selling content that is distributed over BitTorrent using a "secure" tracker system.
Trackers are the primary reason for a damaged BitTorrent "swarm". (Other reasons are mostly related to damaged or hacked clients uploading corrupt data.) The reliability of trackers has been improved through two main innovations in the BitTorrent protocol.
Multi-tracker torrents contain multiple trackers in a single torrent file. This provides redundancy in the case that one tracker fails, the other trackers can continue to maintain the swarm for the torrent. One disadvantage to this is that it becomes possible to have multiple unconnected swarms for a single torrent where some users can connect to one specific tracker while being unable to connect to another. This can create a disjoint set which can impede the efficiency of a torrent to transfer the files it describes.
Vuze (formerly Azureus) was the first 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.
Current versions of the official BitTorrent client, µTorrent, BitComet, Transmission and BitSpirit all share compatibility with Mainline DHT. Both DHT implementations are based on Kademlia. As of version 184.108.40.206, Vuze (formerly Azureus) also supports Mainline DHT in addition to its own distributed database through use of an optional application plugin [MainlineDHT Plugin]. This potentially allows the Vuze (formerly Azureus) client to reach a bigger swarm.
Most BitTorrent clients also use Peer exchange (PeX) to gather peers in addition to trackers and DHT. Peer exchange checks with known peers to see if they know of any other peers. With the 220.127.116.11 release of Vuze, all major BitTorrent clients now have compatible peer exchange.
One of the options for this HTTP based tracker protocol is the "compact" flag. This flag specifies that the tracker can compact the response by encoding IPv4 addresses as a set of 4 bytes (32 bits). IPv6 though are 128 bits long, and as such, the "compact" flag breaks IPv6 support. Trackers which support IPv6 clients thus currently ignore the compact flag. There have been mentions of a "compact6" flag,[by whom?] but this mechanism has not been adopted yet by the various BitTorrent clients.
BitStorm is a small tracker written in PHP which does not require a database and runs on any PHP compatible web server. Anybody with even a little technical knowledge can use it to add a tracker functionalty to their webserver.
Hefur is a standalone BitTorrent tracker written in C++, under the MIT license.