BitTorrent (software)

From Wikipedia, the free encyclopedia
BitTorrent
Original author(s)Bram Cohen
Developer(s)Rainberry, Inc.
Initial releaseJuly 2, 2001; 22 years ago (2001-07-02)[1]
Stable release(s)
Windows7.11.0.46555[2] Edit this on Wikidata / 22 November 2022; 16 months ago (22 November 2022)
macOS7.4.3.45549[3] Edit this on Wikidata / 20 May 2020; 3 years ago (20 May 2020)
Android8.2.1[4] Edit this on Wikidata / 20 March 2024; 4 days ago (20 March 2024)
Operating systemWindows, macOS, Android
PlatformIA-32, x64, ARM
Size
  • Windows: 3.16 MB
  • macOS: 2.74 MB
  • Android: 16.03 ~ 19.84 MB
Available in66 languages
TypeBitTorrent client
LicenseAdware
Websitewww.bittorrent.com

BitTorrent is a proprietary adware[5] BitTorrent client developed by Bram Cohen and Rainberry, Inc. used for uploading and downloading files via the BitTorrent protocol. BitTorrent was the first client written for the protocol. It is often nicknamed Mainline by developers denoting its official origins. Since version 6.0 the BitTorrent client has been a rebranded version of μTorrent. As a result, it is no longer open source. It is currently available for Microsoft Windows, Mac, Linux, iOS and Android. There are currently two versions of the software, "BitTorrent Classic" which inherits the historical version numbering, and "BitTorrent Web", which uses its own version numbering.

History[edit]

Programmer Bram Cohen designed the protocol in April 2001 and released a first implementation of the BitTorrent client on 2 July 2001.[1][6] It is now maintained by Cohen's company BitTorrent, Inc.

Prior to version 6.0, BitTorrent was written in Python, and was free software. Very early versions released prior to December 30, 2001, were released into the public domain without a license. Versions up to and including 3.4.2 were distributed under the MIT license. The source code for versions 4.x and 5.x was released under the BitTorrent Open Source License, a modified version of the Jabber Open Source License. Versions 4.0 and 5.3 were relicensed under the GPL.

Version 4.20 of the client was dubbed Allegro by BitTorrent Inc., in reference to protocol extensions developed by the company to accelerate download performance and ISP manageability.[7]

Version 5.30 of the client which is snapshotted at Internet Archive[8] is the latest open source version.

Since version 6.0, which was released on September 18, 2007, the BitTorrent client has been a rebranded version of μTorrent. It is no longer open source.

Features[edit]

The BitTorrent client enables a user to search for and download torrent files using a built-in search box ("Search for torrents") in the main window, which opens the BitTorrent torrent search engine page with the search results in the user's default web browser.

The current client includes a range of features, including multiple parallel downloads. BitTorrent has several statistical, tabular and graphical views that allow a user to see what events are happening in the background. A host of views offer information on the peers and seeds to which the user is connected, including how much data is being downloaded from each and to how much data is being uploaded by each. It has an automatic recovery system that checks all data that has been handled after an improper shutdown. It also intermediates peering between itself, source file servers ("trackers") and other clients, thereby yielding distribution efficiencies. The client also enables users to create and share torrent files.

Release history[edit]

Legend: Old version, not maintained Older version, still maintained Current stable version Latest preview version Future release
Versions released into the public domain or under MIT License
Version Release date Changes
Old version, no longer maintained: 1.0.0 2001 July 2
  • Initial release
Old version, no longer maintained: 1.0.5 2001 July 20
  • Several stability and performance improvements.
Old version, no longer maintained: 1.0.6 2001 July 24
  • The C code has been modified to use an altogether more reasonable library which doesn't abuse the C preprocessor. It should now work under Windows and Mac OS X.
Old version, no longer maintained: 2.0.2 2001 August 10
  • The UI has been rewritten to be very simple and easier to use.
Old version, no longer maintained: 2.1 2001 August 23
  • A fix for a serious problem which was keeping it from using a whole net connection, a complete rewrite of Downloader.py, and other minor tweaks.
Old version, no longer maintained: 2.2 2001 September 2
  • Several major changes were made to the protocol, which is now frozen.
Old version, no longer maintained: 2.3.1 2001 September 12
  • This release has extensive user feedback and download resuming.
Old version, no longer maintained: 2.5 2001 October 23
  • UI was rewritten. It is now completely graphical and works in mozilla/netscape under UNIX. Monothreading was added which gave vast performance increases. The publisher now stores metadata in files, so it doesn't have to re-scan files every time it restarts, and the tracker now stores publisher and downloader information persistently, so downloads start working again as soon as it restarts. A clean shutdown, small improvements, and bugfixes added.
Old version, no longer maintained: 2.6.1 2002 January 6
  • For this release, the upload/download logic was thoroughly rewritten to use a tit-for-tat bandwidth trading strategy. Usage of TCP buffering was also greatly improved. Unix installation was simplified, and many small improvements were added.
Old version, no longer maintained: 2.6.2 2002 March 18
  • The UI is much nicer, and now looks like a real GUI. There are a huge number of small stability and performance enhancements, none of them directly impacting the interface.
Old version, no longer maintained: 2.7 2002 April 29
  • Major performance enhancements, including peers reciprocating uploads more responsively. Significant UI enhancements were made, including progress meters on file allocation and resuming. Much better error-handling and multi-file support were added, so multiple files can be downloaded with a single click. The protocol has been reworked to be much more secure, and now uses a fixed port. This should be the last backwards-incompatible release. Several major bugs were also fixed.
Old version, no longer maintained: 2.7.1 2002 April 30
  • A massive bug in the last release has been fixed. That one barely worked at all; this one is much better.
Old version, no longer maintained: 2.7.2 2002 May 6
  • In this release, the tracker has been rewritten to use asynchronous I/O, so it no longer has the hanging problems which plagued it before.
Old version, no longer maintained: 2.8.0 2002 May 31
  • Huge internal performance improvements, changes to the protocol to substantially reduce overhead, and Tracker now keeps track of which peers are still up, greatly improving scaling.
Old version, no longer maintained: 2.8.1 2002 June 5
  • A crippling bug in the download logic has been fixed. It should scale comfortably to thousands of simultaneous downloaders now.
Old version, no longer maintained: 2.9 2002 July 2
  • This release contains major performance enhancements and bugfixes. The publication process has been greatly cleaned up and simplified. Deployments which have too many downloaders behind NAT can now keep them out with the tracker option, --nonat 1. This will hopefully be the last release with a version check on startup - if there are no big snags in the next deployment, the version check will be removed in the next release.
Old version, no longer maintained: 2.9.1 2002 July 4
  • Reporting of disk full and rejected by tracker has been fixed. Bitfields have been made big-endian for consistency.
Old version, no longer maintained: 2.9.6 2002 July 18
  • Fixed for all the tweaks and minor issues which showed up in the last trial run, and new support for building .debs.
Old version, no longer maintained: 3.0.1 2002 October 2
  • Minor cleanups, finalizing the protocol, and removal of version checking (which happened in release 3.0).
Old version, no longer maintained: 3.0.2 2002 November 5
  • A polished UI, improved upload and download rate estimation, a new GUI for making metainfo files, and some bugfixes.
Old version, no longer maintained: 3.1 2003 January 2
  • Massive performance improvements and some bugfixes were made. Some utilities were added. Upload rate capping was added.
Old version, no longer maintained: 3.2 2003 March 28
  • This release features massive performance improvements, and now supports read-only files. The Windows build now takes command-line parameters. There were also several bugfixes.
Old version, no longer maintained: 3.2.1b 2003 June 5
  • This version is enhanced with new features to make BitTorrent even more robust and easier to use.
Old version, no longer maintained: 3.3 2003 September 24
  • Files now only get allocated as they're downloaded, and don't fragment the hard drive. Large torrents no longer hose the CPU. Better network utilization and more consistent download rates have been achieved. Poorly seeded torrents now get out faster. Several important bugs were fixed.
Old version, no longer maintained: 3.4 2004 March 6
  • This version fixes bugs. The client no longer complains about tracker connection problems when transfers are still going. The bandwidth usage was reduced.
Old version, no longer maintained: 3.4.1 2004 March 11
  • This version fixes many bugs, adds more bandwidth savings, and improves support for peers behind dynamic IPs.
Old version, no longer maintained: 3.4.1a 2004 March 12
  • The tracker works under Python 2.2 and supports 3.3 clients properly. The client is unchanged.
Old version, no longer maintained: 3.4.2 2004 May 15
  • This release fixes some bugs (including an important tracker bug and a problem where some users got 'could not find file' messages) and adds warning message support, so trackers can send non-fatal human-readable messages to clients.
Versions released under BitTorrent Open Source License
Version Release date Changes
Old version, no longer maintained: 4.0.1 2005 April 6
  • This release introduces an all new queue-based user interface (based on GTK+ instead of wxWidgets). It also features various interface improvements. Many options are now modifiable from the interface, including upload rate. Statistics are now visible in the GUI. Performance was improved. BitTorrent packets are now marked as bulk data to make traffic shaping easier. Various bugs were fixed. The license has changed to the "BitTorrent Open Source License".
Old version, no longer maintained: 4.1.0 2005 May 20
  • This release adds support for trackerless operation. Torrents can now be created from the UI. I18n support has been integrated. Several small fixes have been made.
Old version, no longer maintained: 4.1.1 2005 May 25
  • Many improvements to the trackerless operation have been made. GUI support for torrent comment fields has been added. Improvements to peer identification have been made. Many small bugs have been fixed.
Old version, no longer maintained: 4.0.4 2005 August 27
  • Trackerless Torrent files can now be identified. Opening an already open torrent now behaves correctly. Play/pause state is no longer saved across invocations of the GUI. Many more bugs were fixed.
Old version, no longer maintained: 4.1.4 2005 August 27
  • This release featured many improvements to trackerless operation. Support for translations was added along with a multi-rate limiter backend. URLs on the command line are now detected more effectively. Most command line scripts were renamed. Support for non-Latin/Unicode accelerator keys was added. Many further bugs were fixed.
Old version, no longer maintained: 4.1.6 2005 October 13
  • Donation nagging was removed. Global status lights were added. The installer was vastly improved. External drag and drop of files and URLs was added. The GUI and layout were improved. Startup time on trackerless torrents was greatly improved. Several bugs were fixed.
Old version, no longer maintained: 4.1.7 2005 November 3
  • The maximum upload rate slider was fixed. A language chooser UI was added. The speed of the peer list was improved and peer identification was improved. Many small bugs were fixed.
Old version, no longer maintained: 4.1.8 2005 November 18
  • Many small bugs were fixed, particularly with trackerless operation. OS X client auto-update was added. New status light icons were added.
Old version, no longer maintained: 4.2.0 2005 November 22
  • This is the first release in the stable 4.2 series, incorporating all features and improvements from the 4.1 beta series. Most notably, support for trackerless operation was added. Internationalization was added, including some translations. The command line scripts were renamed. The user interfaces were improved.
Old version, no longer maintained: 4.2.1 2005 December 5
  • Selecting the language from the settings window was made possible. Japanese and Korean language support was added. An "Invalid menu handle" bug and several other minor bugs were fixed.
Old version, no longer maintained: 4.3.0 2005 December 5
  • Massive code reorganization was done. GTK+-2.4 support was dropped (GTK+-2.6 is now the minimum requirement). A new internal state file format was introduced. Many string changes and internationalization additions were made. An obscure "--bind" command line bug was fixed.
Old version, no longer maintained: 4.3.2 2005 December 11
  • A command line option for testing auto-update was added. Correct BitTorrent icons are assured for all windows. Gzip support, which was broken by the recent "--bind" fix, was revived. Broken error handling code was removed.
Old version, no longer maintained: 4.2.2 2005 December 21
  • An "Invalid Menu Handle" error when upgrading was fixed. A bug in automatic seeding code was fixed. "launchmany-curses" was fixed for Python 2.2.
Old version, no longer maintained: 4.3.3 2005 December 21
  • Support for "--geometry" and for remembering window size and position was added. Fixes for window titles and system tray tooltips as well as for the NAT status light were made. An "Invalid Menu Handle" error when upgrading was fixed. "launchmany-curses" was fixed for Python 2.2.
Old version, no longer maintained: 4.3.5 2006 January 9
  • The status light state machine was improved and a "signal strength" indicator was added. Fastresume error messages were fixed. Several IPC bugs and other bugs were fixed.
Old version, no longer maintained: 4.3.6 2006 January 25
  • New icons were introduced. More fixes were made to Python 2.2 compatibility issues and to "Invalid Menu Handle" cases. The global upload rate calculation was fixed.
Old version, no longer maintained: 4.4.0 2006 February 1
  • All bugfixes and improvements from the Beta branch were incorporated, including the upgrade to GTK+ 2.6 API functions, massive code reorganization, internationalization improvements, new icons and status lights, remembering of window size, and more. A memory leak was fixed. Hebrew and Icelandic language support was added.
Old version, no longer maintained: 4.9.2 2006 May 5
  • This release features a completely new UI, the introduction of smart download/queuing behavior (as well as smart seeding behavior), a torrent priority system, encryption support, download rate control, fast extensions, and torrent "title" support. Progress bars, transfer rate graphs, error handling, and reporting have been improved.
Versions released under a Proprietary License
Version Release date Changes
Old version, no longer maintained: 6.0.0 2007 September 18
  • BitTorrent client is now a rebranded version of μTorrent. BitTorrent DNA (BitTorrent Delivery Network Accelerator) program added. License has changed to a proprietary one.
Current stable version: 7.4.3 2019 October 16
  • BitTorrent client comes in two versions. This is a "BitTorrent Classic" version.
"Web" Versions released under a Proprietary License
Version Release date Changes
Current stable version: 1.2.8 2022 June 2
  • BitTorrent client comes in two versions. This is a "BitTorrent Web" version.
Mac OS X Version History[9]
Version Build Release date Features/Changes
Old version, no longer maintained: 7.1.0 (22093)
  • Initial release
Old version, no longer maintained: 7.1.1
  • Fixed startup crash
Old version, no longer maintained: 7.2.0
  • Feature add torrent dialog with directory settings and file selection
  • Feature growl support
  • Feature dock icon badging
  • Feature to move torrent save location
  • Added privacy settings
  • Added advanced directory settings and rules
  • Improved UTP bandwidth support
  • Fixed seeding ratio limits
  • Fixed tracker messages when torrent is complete
  • Fixed setting auto add directory
  • Improved https support
  • Fixed having to hit return to register changes in the bandwidth preferences
Old version, no longer maintained: 7.2.1
  • Added utWEB support
  • Added RSS support
  • Added scheduler
  • Updated UI
  • Fixed support for secure trackers
  • Improved rate limiting
Old version, no longer maintained: 7.2.2
  • Various bug fixes
Old version, no longer maintained: 7.3.1
  • Added option to ignore subdirectories in autoload folder
  • Added option to duplicate smart RSS feed
  • Added option to start BitTorrent automatically when Mac starts
  • Show number of completed torrents in dock icon
  • Fixed hang on exit
  • Fixed enabling/disabling DHT
  • Fixed file extension when changing download location
  • Fixed smart RSS feed to correctly display matched items
  • Added proxy support
  • Added traffic cap feature
  • Added Lion full screen mode
  • Various UI and bug fixes
Old version, no longer maintained: 7.3.2
  • Fixed opening magnet links on Leopard (broken in 7.3.1)
Old version, no longer maintained: 7.3.3
  • Fixed seeding on PPC
  • Fixed crash when handling incorrect responses from HTTP trackers
  • Fixed crash on start on OSX 10.5.4 (Intel)
  • Fixed crash when changing proxy address
  • Fixed crash when processing autoadd directory
Old version, no longer maintained: 7.3.5 (27628) 2012 July 25
Current stable version: 7.4.3 2020 May 19
  • BitTorrent client comes in two versions. This is a "BitTorrent Classic" version.
Version Build Release date Features/Changes
Mac OS X "Web" Version History[10]
Version Build Release date Features/Changes
Current stable version: N/A
  • BitTorrent client comes in two versions. This is a "BitTorrent Web" version. It does not have a publicly listed version number or release date.
Version Build Release date Features/Changes

BitTorrent DNA[edit]

BitTorrent DNA (BitTorrent Delivery Network Accelerator) is a program designed to speed up the viewing of streaming video, downloading software (with or without the BitTorrent protocol) and playing online video games. It does so by distributing the end users' downloads between each other. In this way, the developers intend that content providers should take less load on their servers so the end users can receive the content faster.[11] It runs in the background whenever the operating system is running.[12]

BitTorrent DNA is different from traditional BitTorrent in that it relies on publisher HTTP servers in order to provide publishers with guaranteed minimum data delivery rate, as well as give publishers control over content delivery (peers must connect to the origin server before they can reach other peers), and collect information about content delivery to share with the publisher. The quality of the file transfer is specified in terms of a long-term average bitrate for data and in terms of meeting deadlines when streaming. It also can give bandwidth to TCP and other traffic.

DNA is also different from traditional BitTorrent in that it is a UDP-based protocol that has replaced regular TCP-based bandwidth throttling with a much more sensitive bandwidth management technique.

Apart from being installed by third party websites and software companies, the program for end users is also installed when the official BitTorrent client is installed (starting with the rebranded version 6.0). However, it can be independently uninstalled.

The first version of the DNA made it possible to keep the DNA application installed and yet temporarily stopped until the next system restart (through the system's control panel, in Windows XP[12]). The DNA GUI was completely removed in the official BitTorrent version 6.1 and 6.1.1, but was re-introduced in version 6.1.2.

Since October, 2007 BitTorrent DNA has been offered by BitTorrent, Inc. as a commercial service that content providers can purchase (for an undisclosed price) and as a free background program for end users.[11] Company President Ashwin Navin launched the product claiming that "Implementing BitTorrent DNA on top of legacy infrastructure has the profound impact of allowing our customers to deliver a better user experience, higher quality video, faster software downloads, all with the security and reliability of a managed service."[13]

Navin in a podcast interview claimed that he attempted to sell BitTorrent DNA in January 2005. After finding that BitTorrent's brand was too polarizing for potential customers, they delayed the launch until after partnering with nearly 50 media companies in the BitTorrent Entertainment Network. That provided the company enough public validation to finally launch BitTorrent DNA two and half years later.[14]

The service's first customer was the company Brightcove, that chose to use it to distribute streaming video files.[15][16]

As of May 2009, the Asus support website is using BitTorrent DNA as an additional download method of their larger files in addition to their multiple somewhat internationally distributed HTTP servers and content delivery mirrors and other redirection facilities Asus has been known to rely in the present and past for their data delivery needs. Currently, a separate "P2P" icon is being presented for the DNA style downloads next to the "Global" and "Chinese" located servers as an example.[17]

See also[edit]

References[edit]

  1. ^ a b Cohen, Bram (July 2, 2001). "BitTorrent - a new P2P app". decentralization : Messages : 1985-3160. Self-published. Archived from the original on January 29, 2008. Retrieved April 15, 2007 – via Yahoo! Groups.
  2. ^ Error: Unable to display the reference properly. See the documentation for details.
  3. ^ Error: Unable to display the reference properly. See the documentation for details.
  4. ^ "BitTorrent- Torrent Downloads". 21 March 2024. Retrieved 21 March 2024.
  5. ^ BitTorrent Customer Support (December 25, 2013). "Removing Partner Offers". BitTorrent. Archived from the original on November 19, 2018. Retrieved July 8, 2015. We are among many products that support the production and distribution of our free software through advertising.
  6. ^ McCullagh, Declan (July 16, 2001). "Defcon Keeps Hackers Hooked". Wired.com. Archived from the original on September 12, 2001.
  7. ^ "BitTorrent 4.20 Released". slyck.com. 2006-06-22. Archived from the original on 2019-04-04. Retrieved 2008-01-29.
  8. ^ "Internet Archive". 2010-05-30. Archived from the original on March 30, 2010. Retrieved 2010-08-31.
  9. ^ "BitTorrent for Mac release notes". macupdate.utorrent.com. Archived from the original on 2016-03-04. Retrieved 2013-12-07.
  10. ^ "BitTorrent for Mac release notes". macupdate.utorrent.com. Archived from the original on 2016-03-04. Retrieved 2013-12-07.
  11. ^ a b "Official site". Archived from the original on 2008-09-13. Retrieved 2009-03-19.
  12. ^ a b "The official FAQ". Archived from the original on 2009-03-27. Retrieved 2009-03-19.
  13. ^ "BitTorrent's Delivery Network Accelerator (DNA) Service Improves the Online Experience for Streaming Video, Downloadable Software and Video Games". businesswire.com. Archived from the original on 2009-05-25. Retrieved 2010-12-15.
  14. ^ "Delivering a Digital Torrent". edcorner.stanford.edu. Archived from the original on 2008-06-11. Retrieved 2010-12-15.
  15. ^ Andy Greenberg (2007-10-09). "Brightcove Unleashes A BitTorrent Stream". Forbes. Archived from the original on October 11, 2007. Retrieved 2007-10-27.
  16. ^ Jim Finkle (2007-10-09). "BitTorrent Moves to Video Streaming". PC World. Archived from the original on 2007-10-13. Retrieved 2007-10-27.
  17. ^ "example download section for Asus M2N-LR mainboard product". Asus.[permanent dead link]

External links[edit]