BitTorrent client
From Wikipedia, the free encyclopedia
| This article may require cleanup to meet Wikipedia's quality standards. Please improve this article if you can. (October 2007) |
A BitTorrent client is a program that downloads files using the BitTorrent protocol.
The first client was created by Bram Cohen in the summer of 2002, and most of the other ones started out from BitTorrent and on, even more are being created right now.
The following tables compare general and technical information for a number of applications supporting BitTorrent. Please see the individual products' articles for further information. This article is neither all-inclusive nor necessarily up-to-date.
Contents |
| BitTorrent client | FOSS | Runs on | IPv6[1] | Super-seeding | Tracker | Supports | Language | Based on | Interface | Cache[2] | Supports | Remote control via web | Engine | Auto updates | Notes / Other | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux/Unix | Windows | OS X | UPnP[3] | NAT | DHT[4] | Peer exchange | Encryption | Web seeding[5] | Broadcatching (RSS) | Prioritisation | Selective downloads | SOCKS | ||||||||||||||
| NAT Port Mapping Protocol | NAT traversal | |||||||||||||||||||||||||
| ABC | Yes | S | Yes | No | S | No | Yes | Yes | ? | No | No | No | No | Python | BitTornado | GUI and web | ? | Yes | No | Yes | No | ? | Yes | Separate download | ? | Linux version = old version + Buggy IPv6 [6] |
| Acquisition | No | No | No | Yes | ? | No | No | No | Yes | No | No | ? | No | Objective-C and Cocoa | Limewire | GUI | ? | No | No | No | No | No | No | No | ? | Partial3 torrents max, infinity when registered |
| Anatomic P2P | Yes | Yes | Yes | Yes | No | Yes | S | Yes | ? | ? | ? | ? | No | Python | BitTornado | GUI and old CLI | ? | Yes | ? | ? | ? | ? | ? | ? | ? | Tracker exists as a separate download |
| Arctic Torrent | Yes | No | Yes | No | No | No | No | No | ? | No | No | Yes | No | C++ | libtorrent | GUI | ? | No | No | No | No | No | No | No | ? | |
| Azureus | Yes | Yes | Yes | Yes | Yes[7] | Yes | Yes | Yes | Yes | Yes[8] | Yes[9] | Yes | Yes | Java and SWT | - | GUI, CLI, Telnet, Web, XML over HTTP remote control API | Yes | Yes[10] | Plugin | Yes | Yes | Yes | Plugin[11] | 3rd party plugins | Yes | |
| BitComet | No | No | Yes | No | No | Yes | S | Yes | Yes | Yes | Yes | Yes | Yes | C++ | ? | GUI | Yes | No | No | Yes | Yes | Yes | No | Built-in Web browser | Yes | Adware + Tracker exists as a separate download |
| BitFlu | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | Yes | No | Perl | - | Telnet and Web | S | No | No | No | Yes | No | Yes | No | No | No built-in Cache-Disk cache but a Delayed commit |
| BitLet | Planned | Yes | Yes | Yes | ? | No | No | Yes | No | No | No | No | No | Java and JavaScript | - | Web XHTML | No | No | No | No | No | No | No | No | Yes | Completely web based client |
| BitLord | No | No | Yes | No | No | No | No | Yes | ? | Yes | No | Yes | No | C++ | BitComet | GUI | Yes | No | No | Yes | Yes | Yes | No | Built-in Web browser | Yes | Adware |
| BitPump | No | No | Yes | No | No | ? | ? | No | ? | ? | ? | ? | ? | C++ | GUI | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
| BitTornado | Yes | Yes | Yes | Yes | Yes | Yes | Yes[12] | Yes | ? | No | No | No | Yes | Python | BitTorrent | GUI and CLI | Yes | Yes | No | Yes | Yes | No | No | No | No | |
| BitTorrent 5 / Mainline | Yes | Yes | Yes | Old version | No | No | Yes[12] | Yes | Yes | No | Yes | Yes | Yes | Python | GUI and CLI | ? | Yes | No | Yes | Yes | No | No | Yes | Yes | ||
| BitTorrent 6 | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes[13] | Yes | C++ | µTorrent | GUI and CLI | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |
| BitSpirit | No | No | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | ? | Yes | C++ | BitComet | GUI | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | |
| Bits on Wheels | No | No | No | Yes | No | No | No | No | ? | ? | No | ? | No | Objective-C and Cocoa | - | GUI | ? | ? | ? | ? | No | ? | No | ? | ? | |
| BitTyrant | Yes | Yes | Yes | Yes | Yes[7] | Yes | Yes | Yes | Yes | Yes[14] | Yes[9] | Yes | Yes | Java and SWT | Azureus | GUI, CLI, Telnet, Web, XML over HTTP remote control API | Yes | Yes[15] | Plugin | Yes | Yes | Yes | Plugin[11] | 3rd party plugins | Yes | |
| Blizzard Downloader | No | No | Yes | Yes | ? | No | No | No | ? | No | No | No | No | ? | BitTorrent client for early version | GUI | ? | No | No | No | No | ? | No | No | ? | |
| Blog Torrent | Yes | No | Yes | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | BitTorrent client for early version | GUI | ? | No | No | No | No | ? | No | No | ? | Malware state : unknown |
| BTG | Yes | Yes | [16] | Yes | Yes | ? | No | Yes | Yes | ? | Yes | ? | Yes | C++ | libtorrent | CLI, GUI and web | Yes | Yes | No | Yes | Yes | ? | Yes | No | No | |
| BtManager | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | Python | ? | GUI | ? | ? | ? | ? | ? | ? | ? | ? | ? | Malware state : unknown |
| BTPD | ? | Yes | No | No | Planned | ? | ? | ? | ? | ? | Yes | ? | ? | C | - | CLI | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| BTSharp (Library) | No | No | Yes | No | No | No | Yes | Yes | No | No | No | No | No | C# | N/A | API | Yes | No | No | No | No | No | No | No | No | |
| burst! | Yes | No | Yes | No | ? | Yes | No | ? | ? | ? | ? | ? | No | Python | ? | GUI | ? | ? | ? | ? | No | ? | ? | ? | ? | 20 torrents max |
| CTorrent | Yes | Yes | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | C++ | ? | CLI | ? | ? | ? | Yes | No | ? | ? | ? | No | |
| Deluge | Yes | Yes | Yes | Yes[17] | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Python and C++ | libtorrent | GUI and Web | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Notification only | |
| FlashGet | No | No | Yes | ? | No | ? | ? | ? | ? | ? | Yes | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| FoxTorrent | Partially[18] | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | XUL / JavaScript | Red Swoosh | FireFox | No | No | No | No | Yes | No | No | No | Yes | Streaming capacities ! |
| freeloader | Yes | Yes | No | No | ? | ? | No | ? | ? | ? | ? | ? | No | Python | ? | GUI | ? | ? | No | ? | ? | ? | No | No | ? | |
| G3 Torrent | Yes | No | Yes | No | ? | No | No | No | ? | No | No | ? | No | Python | BitTorrent | GUI and web | ? | No | Yes | Yes | Yes | No | Yes | No | ? | |
| BitTorrent client | FOSS | Runs on | IPv6[1] | Super-seeding | Tracker | Supports | Language | Based on | Interface | Cache[2] | Supports | Remote control via web | Engine | Auto updates | Notes / Other | |||||||||||
| Linux/Unix | Windows | OS X | UPnP[3] | NAT | DHT[4] | Peer exchange | Encryption | Web seeding[5] | Broadcatching (RSS) | Prioritisation | Selective downloads | SOCKS | ||||||||||||||
| NAT Port Mapping Protocol | NAT traversal | |||||||||||||||||||||||||
| Gnome BitTorrent | Yes | Yes | No | No | ? | ? | No | No | ? | ? | No | No | No | Python | ? | GUI | ? | No | No | ? | No | ? | No | No | ? | |
| Halite | Yes | No | Yes | No | ? | No | No | No | No | No | Yes | ? | No | C++ | libtorrent | GUI | ? | No | No | ? | ? | No | No | ? | ? | Have a stand-alone version |
| KTorrent | Yes | Yes | No | Yes | ? | Yes | No | Yes | Yes | No | Yes | Yes | Yes | C++ | - | GUI, Web and CLI (Alpha) | ? | No | Yes | S | Yes | ? | Yes | Built-in Web browser | ? | Prioritization exists, but in an alpha stage |
| LimeWire | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | Yes | No | No | Java | - | GUI | Yes | No | No | No | No | Yes | No | No | Yes | |
| Localhost | Yes | Yes | Yes | No | ? | Yes | Yes | Yes | ? | Yes | Yes S. |
? | No | Java and SWT | Azureus | Web | Yes | No | Plugin | Yes | Yes | Yes | Plugin[11] | Yes | ? | DHT are required by Localhost |
| MLDonkey | Yes | Yes | Yes | Yes | No | No | Yes | No | ? | No | No | ? | No | Ocaml | - | CLI, Telnet, Web, Network GUI | Yes | No | 3rd party bash script | Yes | No | No[19] | Yes | Yes[20] | No | |
| MonoTorrent (Client Library) | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | C# | N/A | N/A | No | No | No | Yes | Yes | No | No | No | No | |
| MooPolice | No | No | Yes | No | Yes | No | No | Yes | Yes | No | Yes | Yes[21] | Yes | C++ | libtorrent | GUI | No | Yes | No | Yes | Yes | No | No | No | No | |
| Opera | No | Yes | Yes | Yes | S[22] | No | No | No | ? | ? | No | No | No | C++ | - | GUI | ? | ? | No | No | No | ? | No | Built-into Web browser | No | |
| QTorrent | Yes | Yes | No | No | ? | No | No | No | ? | No | No | No | No | C++ | The SHAD0W | GUI | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| Qbittorrent | Yes | Yes | No | Yes | Yes | No | No | Yes | ? | No | Yes | Yes | Yes | C++ | libtorrent | GUI Qt (toolkit) | No | Yes | Yes | Yes | Yes | ? | No | Yes[23] | No, only search engines parser | |
| rTorrent | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | C++ | Rakshasa's libTorrent | CLI and SCGI | S | No | 3rd party utility [24] | Yes | Yes | No | Yes | No | No | Buggy IPv6 [6] + No built-in Cache-Disk cache but a Delayed sync |
| Rufus | Yes | Yes | Yes | No | No | No | No | ? | ? | No | No | ? | No | Python | G3 Torrent | GUI and web | ? | No | Yes | Yes | Yes | ? | Yes | No | ? | |
| Shareaza | Yes | No | Yes | No | No | No | No | Yes | ? | No | Yes[25] | ? | No | C++ | Shareaza core | GUI and web | Yes | No | No | Yes | No | No | Yes | Yes | Yes | 10[26] |
| sharktorrent | Yes | Yes | Yes | Yes | ? | No | No | Yes | ? | No | Yes | ? | No | C++ | libtorrent | GUI wxwidgets | No | No | No | No | No | No | No | No | ? | |
| SymTorrent | Yes | No | No | No | ? | No | No | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| Tomato Torrent | Yes | No | No | Yes | No | No | Yes | ? | ? | ? | ? | ? | No | Cocoa | BitTorrent? | GUI | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| Torrent Swapper | Yes | Yes | Yes | Yes | Yes[6] | Yes | Yes[12] | Yes | ? | No | No | Yes | No | Python | BitTorrent | GUI and web | Yes | Yes | Yes | Yes | Yes | No | Yes | Built-in Web browser | Yes | |
| TorrentFlux | Yes | Yes | Yes | Yes | ? | Yes | No | Yes | ? | No | No | No | No | PHP | BitTornado | Web | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | ? | |
| TorrentVolve | Yes | Yes | Yes | Yes | [27] | [27] | No | [27] | [27] | [27] | [27] | [27] | [27] | PHP | Azureus | Web | [27] | No | No | Yes | Yes | No | Yes | No | [27] | |
| Transmission | Yes | Yes | No | Yes | No | No | No | Yes | Yes | No | No | Yes[28] | Yes | C and Cocoa | - | GUI and CLI | ? | No | No | Yes | Yes | No | No | No | Yes | |
| Turbo Torrent | No | No | Yes | No | ? | Yes | Yes | Yes | ? | No | No | ? | No | Python | G3 Torrent | GUI and web | ? | No | No | Yes | Yes | ? | Yes | Built-in Web browser | ? | Malware present |
| TorrentSpy Rufus | Yes | No | Yes | No | ? | No | No | ? | ? | ? | No | ? | No | Python | Rufus | GUI | ? | No | Yes | Yes | Yes | ? | ? | ? | ? | Adware [29] |
| µTorrent | No | No[30] | Yes | No[30] | Yes | Yes | Yes | Yes | Yes | Yes | Yes[31] | Yes[32] | Yes | C++ | - | GUI, Web and Mobile phone GUI (beta) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |
| WizBit | Yes | No | No | No | ? | No | No | No | ? | No | No | No | No | Python | - | Mobile phone GUI (alpha) | No | No | No | No | ? | No | No | Yes | ? | |
| XTorrent | No | No | No | Yes | No | No | No | Yes | Yes | No | No | Yes[33] | No | C and Cocoa | Transmission | GUI | ? | ? | Yes | No | No | Yes | No | Yes | Yes | |
| ZipTorrent | No | No | Yes | No | ? | ? | ? | Yes | ? | No | ? | ? | No | C++ | libtorrent | GUI | ? | ? | Yes | ? | ? | ? | ? | ? | ? | |
| BitTorrent client | FOSS | Runs on | IPv6[1] | Super-seeding | Tracker | Supports | Language | Based on | Interface | Cache[2] | Supports | Remote control via web | Engine | Auto updates | Notes / Other | |||||||||||
| Linux/Unix | Windows | OS X | UPnP[3] | NAT | DHT[4] | Peer exchange | Encryption | Web seeding[5] | Broadcatching (RSS) | Prioritisation | Selective downloads | SOCKS | ||||||||||||||
| NAT Port Mapping Protocol | NAT traversal | |||||||||||||||||||||||||
- ^ a b c Clients that have been seen in the real world to actually work with IPv6, see IPv6 BitTorrent Clients
- ^ a b c Reduces disk usage, file fragmentation (in case it is not preallocated) and latencies due to larger written blocks and cached data for hash checking finished pieces.
- ^ a b c Automatically configure port forwarding (requires Router with UPnP support)
- ^ a b c DHT permits use of trackerless torrents (with supporting clients) to resume normal torrents when their tracker is down. However, some trackers that register their users for keeping tabs on fair usage (such as a ratio of bytes downloaded to uploaded) may not reliably measure and update usage for users employing DHT.
- ^ a b c Recently implemented (unofficial) web seeding feature, see HTTP-Based Seeding Specification
- ^ a b c Announcements to the tracker are made via IPv6 if possible, but the client doesn't listen on the respective port.
- ^ a b Linux version works, Windows version doesn't work with IPv6 due to Java Bug 6230761
- ^ Since version 2.5.0.2. It's UDP based, an experimental feature and only supported by other Azureus clients
- ^ a b Not compatible with Official BitTorrent client DHT.
- ^ Supports the Getright Webseeding spec in addition to the Bittornado spec[1]
- ^ a b c Provides a Java-based and a simple HTML/JS based WebUI
- ^ a b c Tracker included with Linux binaries and with source, but not with Windows binary
- ^ Exchanging with BT 6 and µTorrent clients (and now MooPolice)
- ^ It's UDP based, an experimental feature and only supported by other Azureus based clients
- ^ Supports the Getright Webseeding spec in addition to the Bittornado spec[2]
- ^ Through wwwBTG, a web front-end
- ^ Available via MacPorts
- ^ Claims to be open-source but is based on a binary-only component (Red Swoosh), which is installed automatically along with FoxTorrent.
- ^ See task #4401 Socks Proxy; however, http proxy is supported.
- ^ GUIs exist with built-in web browser
- ^ Exchanging with µTorrent
- ^ Opera 9.2.1 on Linux works with IPv6, Windows version doesn't work with IPv6
- ^ Integrated
- ^ 3rd party utility RSSDler
- ^ It's not a DHT network, but Shareaza uses gnutella2 to find other Shareaza clients.
- ^ Max active torrents number depends of configured connection speed
- ^ a b c d e f g h i j When Azureus module is used
- ^ Exchanges with µTorrent and Azureus peers.
- ^ Unofficial version of Rufus created by TorrentSpy with WhenU SaveNow adware bundled in it; reportedly possible to opt-out during installation.
- ^ a b The official FAQ and manual claim that µTorrent works under Linux, BSD, and MacOSX using Wine 0.9.16+ with only minor interface issues.
- ^ µTorrent's [3] DHT implementation is the same as Mainline and BitComet's, but unfortunately this is incompatible with Azureus's implementation.
- ^ Exchanging with BT 6 and µTorrent clients (and now MooPolice)
- ^ Exchanges with µTorrent and Azureus peers.
- Comparison of file sharing applications
- BitTorrent
- BitTorrent tracker
- Bittorrent peer_id specification
- SourceForge's "Bittorrent" section
- SourceForge's "File Sharing" section
- Bittorrent peer_id specification
|
|
|
|---|---|
| Companies | BitTorrent, Inc. · Azureus, Inc. |
| Individuals | Bram Cohen · Ashwin Navin · Ludvig Strigeus |
| Technology | Tracker · Client · Super-seeding · Peer exchange · Distributed hash tables · Broadcatching · Protocol encryption · terminology · DNA (Delivery Network Accelerator) |
| Clients | BitTorrent (original client) · ABC · Azureus · BitComet · BitTornado · Deluge · KTorrent · LimeWire · rTorrent · Shareaza · Transmission · µTorrent Linkage |
| Search engines | Btjunkie · Demonoid (offline) · isoHunt · mininova · myBittorrent · The Pirate Bay · Suprnova.org · TorrentSpy |