BitTorrent client

From Wikipedia, the free encyclopedia

A BitTorrent client is a program that manages torrent downloads and uploads using the BitTorrent protocol.

The first client, known as BitTorrent, was created by Bram Cohen in the summer of 2002. Many other subsequent clients are based on in the first BitTorrent client in some parts. There are clients which are based on their coding base though. In addition, not all clients were built originally for BitTorrent, with some having the BitTorrent protocol support added later in. Since there are a large amount of BitTorrent Clients, there have been attempts to package malware as clients.

Contents

[edit] Comparison

The following tables compare general and technical information for a number of applications supporting the BitTorrent protocol. Please see the individual products' articles for further information. This article is neither all-inclusive nor necessarily up-to-date.

[edit] General

BitTorrent client FOSS Linux/Unix Windows Mac OS X IPv6[1] Programming language Based on Interface Spyware/Adware /Malware-free Open Source
ABC Yes Partial Yes No buggy[2] Python BitTornado GUI and web Yes Yes
Acquisition No No No Yes ? Objective-C and Cocoa Limewire GUI Yes Partly
Anatomic P2P Yes Yes Yes Yes No Python BitTornado GUI and old CLI Yes Yes
Arctic Torrent Yes No Yes No No C++ libtorrent GUI Yes Yes
aria2 Yes Yes Yes Yes ? C++ - CLI Yes
Azureus Yes Yes Yes Yes Partial[3] Java and SWT - GUI, CLI, Telnet, Web, XML over HTTP remote control API Yes Yes
BitComet No No Yes No No C++ ? GUI Yes [4] No
BitFlu Yes Yes No Yes Yes Perl - Telnet and Web Yes Yes
BitLet Planned Yes Yes Yes ? Java and JavaScript - Web XHTML Yes No
BitLord No No Yes No No C++ BitComet GUI Adware No
BitPump No No Yes No No C++ - GUI Yes
BitThief No Yes Yes Yes ? Java ? GUI Yes
BitTornado Yes Yes Yes Yes Yes Python BitTorrent GUI and CLI Yes Yes
BitTorrent 5 / Mainline Yes Yes Yes Old version No Python - GUI and CLI Yes No
BitTorrent 6 No No Yes Yes Yes C++ µTorrent GUI and CLI Yes No
BitSpirit No No Yes No No C++ BitComet GUI Yes
Bits on Wheels No No No Yes No Objective-C and Cocoa - GUI Yes No
BitTyrant Yes Yes Yes Yes Partial [3] Java and SWT Azureus GUI, CLI, Telnet, Web, XML over HTTP remote control API Yes Yes
Blizzard Downloader No No Yes Yes ? ? BitTorrent client for early version GUI Yes No
Blog Torrent Yes No Yes Yes ? ? BitTorrent client for early version GUI Malware-Status: unknown Yes
BTG Yes Yes Partial[5] Yes No C++ libtorrent CLI, GUI and web Yes No
BTPD Yes Yes No No Planned C - CLI Yes
BTSharp (library) No No Yes No No C# No - API Yes
burst! Yes No Yes No ? Python ? GUI Yes
CTorrent Yes Yes No No No C++ ? CLI Yes Yes
Deluge Yes Yes Yes Yes[6] Yes Python and C++ libtorrent GUI and Web Yes Yes
FlashGet No No Yes ? No ? ? ? Yes
FoxTorrent Partial[7] Yes Yes Yes No XUL / JavaScript Red Swoosh GUI (FireFox) Yes No
Free Download Manager ? No Yes No ? C++ libtorrent GUI Yes Yes
freeloader Yes Yes No No ? Python ? GUI Yes Yes
G3 Torrent Yes No Yes No ? Python BitTorrent GUI and web Yes
Gnome BitTorrent Yes Yes No No ? Python ? GUI Yes Yes
Halite Yes No Yes No ? C++ libtorrent GUI Yes Yes
KTorrent Yes Yes No [3] Yes Yes C++ - GUI, Web and CLI (Alpha) Yes Yes
LimeWire Yes Yes Yes Yes No Java - GUI Yes Yes
Localhost Yes Yes Yes No ? Java and SWT Azureus Web Yes
MP3 Rocket Yes No Yes No No Java - GUI Yes No
MLDonkey Yes Yes Yes Yes No Ocaml - CLI, Telnet, Web, Network GUI Yes
MonoTorrent (library) Yes Yes Yes Yes Yes C# - API Yes Yes
MooPolice No No Yes No Yes C++ libtorrent GUI Yes Yes
Opera 9.0 No Yes Yes Yes Yes C++ - GUI Yes No
Opera 9.5 No Yes Yes Yes Yes C++ - GUI Yes No
QTorrent Yes Yes No No ? C++ The SHAD0W GUI Yes
Qbittorrent Yes Yes No Yes Yes C++ libtorrent GUI Qt (toolkit) Yes
rTorrent Yes Yes No Yes buggy[2] C++ Rakshasa's libTorrent CLI and SCGI Yes Yes
Rufus Yes Yes Yes No No Python G3 Torrent GUI and web Yes Yes
Shareaza Yes No Yes No No C++ Shareaza core GUI and web Yes Yes
sharktorrent Yes Yes Yes Yes ? C++ libtorrent GUI wxwidgets Yes Yes
Snark Yes Yes ? ? ? ? ? ? Yes Yes
SymTorrent Yes No No No ? ? ? ? Yes Yes
Tomato Torrent Yes No No Yes No Cocoa BitTorrent GUI Yes Partly
Torrent Swapper Yes Yes Yes Yes buggy[2] Python BitTorrent GUI and web Yes Yes
TorrentFlux Yes Yes Yes Yes Yes PHP BitTornado Web Yes
TorrentRelay No Yes Yes Yes Yes Perl & Python Bittorent Web Yes
TorrentVolve Yes Yes Yes Yes [8] PHP Azureus Web Yes
Transmission Yes Yes No Yes No C and Cocoa - GUI, CLI, Daemon and Web Yes Yes
Tribler Yes Yes Yes Yes Yes Python ABC GUI and CLI Yes Yes
Turbo Torrent No No Yes No ? Python G3 Torrent GUI and web Malware
TorrentSpy Rufus Yes No Yes No ? Python Rufus GUI Adware[9]
µTorrent No With Wine[10] Yes Yes[10] Yes C++ - GUI and Web Yes No
WizBit Yes No No No ? Python - Mobile phone GUI (alpha) Yes
XTorrent No No No Yes No C and Cocoa Transmission GUI Yes
ZipTorrent No No Yes No ? C++ libtorrent GUI Yes
BitTorrent client FOSS Linux/Unix Windows Mac OS X IPv6[1] Programming language Based on Interface Spyware/Adware /Malware-free

[edit] Features I

BitTorrent client Super-seeding Tracker UPnP[11] NAT Port Mapping Protocol NAT traversal DHT[12] Peer exchange Encryption UDP tracker
ABC No Yes Yes ? No No No No ?
Acquisition No No No Yes No No ? No ?
Anatomic P2P Yes Separate download Yes ? ? ? ? No ?
Arctic Torrent No No No ? No No Yes No ?
aria2 ? ? ? ? ? Yes Yes Yes ?
Azureus Yes Yes Yes Yes Yes[13] Yes[14] Yes Yes Yes
BitComet Yes Separate download Yes Yes Yes Yes Yes Yes Yes
BitFlu No No No No No No Yes No ?
BitLet No No Yes No No No No No ?
BitLord No No Yes ? Yes No Yes No Yes
BitPump Yes ? No No No No ? ? ?
BitThief ? ? ? ? ? ? ? ? ?
BitTornado Yes Yes[15] Yes ? No No No Yes ?
BitTorrent 5 / Mainline No Yes[15] Yes Yes No Yes Yes Yes ?
BitTorrent 6 Yes Yes Yes Yes No Yes Yes[16] Yes ?
BitSpirit Yes No Yes Yes Yes Yes ? Yes Yes
Bits on Wheels No No No No No No No No ?
BitTyrant Yes Yes Yes Yes Yes[17] Yes[14] Yes Yes ?
Blizzard Downloader No No No ? No No No No ?
Blog Torrent ? Yes ? ? ? ? ? ? ?
BTG ? No Yes Yes ? Yes ? Yes ?
BTPD ? ? ? ? ? Yes ? ? ?
BTSharp(library) No Yes Yes No No No No No ?
burst! Yes No ? ? ? ? ? No ?
CTorrent ? ? ? ? ? ? ? No ?
Deluge No No Yes Yes Yes Yes Yes Yes ?
FlashGet ? ? ? ? ? Yes ? Yes ?
FoxTorrent No No Yes No No No No No ?
Free Download Manager ? ? ? ? ? Yes ? ? ?
freeloader ? No ? ? ? ? ? No ?
G3 Torrent No No No ? No No ? No ?
Gnome BitTorrent ? No No ? ? No No No ?
Halite No No No No No Yes No Yes ?
KTorrent No No Yes Yes No Yes Yes Yes Yes
LimeWire No No Yes No No Yes No No ?
Localhost Yes Yes Yes ? Yes Yes [18] ? No ?
MLDonkey No Yes No ? No No ? No ?
MonoTorrent (library) No Yes Yes Yes No No No Yes ?
MooPolice No No Yes Yes No Yes Yes[19] Yes ?
Opera 9.0 No Yes[20] ? ? ? ? No ? ?
Opera 9.5 No Yes ? ? ? ? Yes[21] ? ?
QTorrent No No No ? No No No No ?
Qbittorrent No No Yes ? No Yes Yes Yes ?
rTorrent Yes No No No No Yes Yes Yes ?
Rufus No No ? ? No No ? No ?
Shareaza No No Yes ? No Yes[22] ? No ?
sharktorrent No No Yes ? No Yes ? No ?
Snark ? Yes ? ? ? ? ? ? ?
SymTorrent No No ? ? ? No No No ?
Tomato Torrent No Yes ? ? ? Yes ? No ?
Torrent Swapper Yes Yes[15] Yes ? No No Yes No ?
TorrentFlux Yes No Yes ? No No No No ?
TorrentRelay No No Yes ? No No Yes Yes ?
TorrentVolve [8] No [8] [8] [8] [8] [8] [8] ?
Transmission No No Yes Yes Yes No Yes[23] Yes ?
Tribler ? ? Yes Yes ? Yes Yes Yes ?
Turbo Torrent Yes Yes Yes ? No No ? No ?
TorrentSpy Rufus No No ? ? ? No ? No ?
µTorrent Yes Yes Yes Yes No Yes[24] Yes[25] Yes ?
WizBit No No No ? No No No No ?
XTorrent No No Yes Yes No No Yes[26] No ?
ZipTorrent ? ? Yes ? No ? ? No ?
BitTorrent client Super-seeding Tracker UPnP[11] NAT Port Mapping Protocol NAT traversal DHT[12] Peer exchange Encryption UDP tracker

[edit] Features II

BitTorrent client Cache[27] Web seeding[28] Broadcatching (RSS) Prioritization Selective downloads SOCKS Remote control via web Engine Auto updates Notes
ABC ? Yes No Yes No ? Yes Separate download ? Linux version = old version
Acquisition ? No No No No No No No ? 3 torrents max, infinity when registered
Anatomic P2P ? Yes ? ? ? ? ? ? ? Tracker exists as a separate download
Arctic Torrent ? No No No No No No No ?
aria2 No No No No Yes ? No No ?
Azureus Yes Yes [29] Plugin Yes Yes Yes Plugin[30] No Yes
BitComet Yes No Beta Yes Yes Yes No Built-in Web browser Yes Tracker exists as a separate download
BitFlu Partial No No No Yes No Yes No No No built-in Cache-Disk cache but a Delayed commit
BitLet No No No No No No No No Yes
BitLord Yes No Yes Yes Yes Yes No Built-in Web browser Yes
BitPump ? ? ? ? ? ? ? ? ?
BitThief ? ? ? ? ? ? ? ? ? Designed to abuse the BitTorrent protocol. Never uploads real data, only downloads
BitTornado Yes Yes No Yes Yes No No No No
BitTorrent 5 / Mainline ? Yes No Yes Yes No No Yes Yes
BitTorrent 6 Yes Yes Yes Yes Yes Yes Yes Yes Yes
BitSpirit Yes No No Yes Yes Yes No Yes Yes
Bits on Wheels ? ? ? ? No ? No ? ?
BitTyrant Yes Yes [29] Plugin Yes Yes Yes Plugin[30] 3rd party plugins Yes
Blizzard Downloader ? No No No No ? No No ?
Blog Torrent ? No No No No ? No No ?
BTG Yes Yes No Yes Yes ? Yes No No
BTPD ? ? ? ? ? ? ? ? ?
BTSharp (library) Yes No No No No No No No No
burst! ? ? ? ? No ? ? ? ? 20 torrents max
CTorrent ? ? ? Yes No ? ? ? No
Deluge Yes Yes Yes Yes Yes Yes Yes Yes Notification only
FlashGet ? ? ? ? ? ? ? ? ?
FoxTorrent No No No No Yes No No No Yes Streaming media capacities
Free Download Manager ? ? ? ? ? ? ? ? ?
freeloader ? ? No ? ? ? No No ?
G3 Torrent ? No Yes Yes Yes No Yes No ?
Gnome BitTorrent ? No No ? No ? No No ?
Halite No No No Yes Yes No No ? No Have a stand-alone version
KTorrent Yes Yes Yes Yes Yes Yes Yes Built-in Web browser No
LimeWire Yes No No No No Yes No No Yes
Localhost Yes No Plugin Yes Yes Yes Plugin[30] Yes ? DHT are required by Localhost
MLDonkey Yes No 3rd party bash script Yes No No[31] Yes Built-into Web browser No
MonoTorrent (library) Yes No Yes Yes Yes No Yes No No
MooPolice No Yes No Yes Yes Yes No No No
Opera 9.0 ? ? Yes No No No No Built-into Web browser Notification only
Opera 9.5 ? ? Yes No No No No Built-into Web browser Notification only
QTorrent ? ? ? ? ? ? ? ? ?
Qbittorrent No Yes Yes Yes Yes ? No Yes[32] No, only search engines parser
rTorrent Partial No 3rd party utility [33] Yes Yes No Yes No No No built-in Cache-Disk cache but a Delayed sync
Rufus ? No Yes Yes Yes ? Yes No ?
Shareaza Yes Yes[10] No Yes No No Yes Yes Yes 10[34]
sharktorrent No No No No No No No No ?
Snark ? ? ? ? ? ? ? ? ?
SymTorrent ? ? ? ? ? ? ? ? ?
Tomato Torrent ? ? ? ? ? ? ? ? ?
Torrent Swapper Yes Yes Yes Yes Yes No Yes Built-in Web browser Yes
TorrentFlux Yes Yes Yes Yes Yes No Yes Yes ?
TorrentRelay Yes No No Yes Yes Yes Yes Yes ? Requires no client-side software. Entirely WEB BASED.
TorrentVolve [8] No No Yes Yes No Yes No [8]
Transmission No No No Yes Yes No Via external app No Yes
Tribler ? ? Yes Yes ? No ? No No
Turbo Torrent ? No No Yes Yes ? Yes Built-in Web browser ?
TorrentSpy Rufus ? No Yes Yes Yes ? ? ? ?
µTorrent Yes Yes Yes Yes Yes Yes Yes Yes Yes
WizBit No No No No ? No No Yes ?
XTorrent ? ? Yes No Yes Yes No Yes Yes
ZipTorrent ? ? Yes ? ? ? ? ? ?
BitTorrent client Cache[27] Web seeding[28] Broadcatching (RSS) Prioritization Selective downloads SOCKS Remote control via web Engine Auto updates Notes

[edit] Notes

  1. ^ a b Clients that have been seen in the real world to actually work with IPv6, see IPv6 BitTorrent Clients
  2. ^ a b c Announcements to the tracker are made via IPv6 if possible, but the client doesn't listen on the respective port.
  3. ^ a b Linux version works, Windows version has not been working with IPv6 due to Java Bug 6230761
  4. ^ The official BitComet website claims that "BitComet does not contain any adware or spyware". However, versions 0.85 to 0.97 contained advertising. The current versions no longer contain advertising, except in the web-based search window.
  5. ^ Through wwwBTG, a web front-end
  6. ^ Available via MacPorts
  7. ^ Claims to be open-source but is based on a binary-only component (Red Swoosh), which is installed automatically.
  8. ^ a b c d e f g h i j When Azureus module is used
  9. ^ Unofficial version of Rufus created by TorrentSpy with WhenU SaveNow adware bundled in it; reportedly possible to opt-out during installation.
  10. ^ a b c The official FAQ and manual claim that µTorrent works under Linux, BSD, and Mac OS X using Wine 0.9.16+ with only minor interface issues.
  11. ^ a b Automatically configure port forwarding (requires Router with UPnP support)
  12. ^ a b 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.
  13. ^ Since version 2.5.0.2. It's UDP based, an experimental feature and only supported by other Azureus clients
  14. ^ a b Has its own DHT, a mainline-DHT compatible implementation is available as plugin
  15. ^ a b c Tracker included with Linux binaries and with source, but not with Windows binary
  16. ^ Exchanging with BT 6 and µTorrent clients (and now MooPolice)
  17. ^ It's UDP based, an experimental feature and only supported by other Azureus based clients
  18. ^ Localhost uses a DHT protocol called Kademlia to connect to peers that are running Localhost. Each peer has an index of directories and files that it shares with peers that it is connected to. No one peer is responsible for storing the entire directory structure, it is distributed among everyone. It is collaboratively maintained, edited and built upon by all users in a popularity based system.
  19. ^ Exchanging with µTorrent
  20. ^ Weekly - Desktop Team - by Opera Desktop Team
  21. ^ Opera 9.5 Beta 1 for Windows Changelog
  22. ^ It's not a DHT network, but Shareaza uses gnutella2 to find other Shareaza clients.
  23. ^ Exchanges with µTorrent and Azureus peers.
  24. ^ µTorrent's [1] DHT implementation is the same as Mainline and BitComet's, but unfortunately this is incompatible with Azureus's implementation.
  25. ^ Exchanging with BT 6 and µTorrent clients (and now MooPolice)
  26. ^ Exchanges with µTorrent and Azureus peers.
  27. ^ a b 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.
  28. ^ a b Recently implemented (unofficial) web seeding feature, see HTTP-Based Seeding Specification
  29. ^ a b Supports the Getright Webseeding spec in addition to the Bittornado spec[2]
  30. ^ a b c Provides a Java-based and a simple Web-based user interface.
  31. ^ See task #4401 Socks Proxy; however, http proxy is supported.
  32. ^ Integrated
  33. ^ 3rd party utility RSSDler
  34. ^ Max active torrents number depends of configured connection speed

[edit] See also

[edit] External links