Micro Transport Protocol
||This article contains weasel words: vague phrasing that often accompanies biased or unverifiable information. (May 2013)|
|Part of a series on|
|Development and societal aspects|
|Non-public file sharing|
|File sharing networks and services|
|By country or region|
Micro Transport Protocol or µTP (sometimes also uTP) is an open UDP-based variant of the BitTorrent peer-to-peer file sharing protocol intended to mitigate poor latency and other congestion control issues found in conventional BitTorrent over TCP, while providing reliable, ordered delivery.
It was devised to automatically slow down the rate at which packets of data are transmitted between users of peer-to-peer file sharing torrents when it interferes with other applications. For example, the protocol should automatically allow the sharing of an ADSL line between a BitTorrent application and a web browser.
µTP emerged from research at Internet2 on QoS and high-performance bulk transport, was adapted for use as a background transport protocol by Plicto, which was acquired by BitTorrent, Inc. in 2006, and further developed within its new owner. It was first introduced in the µTorrent 1.8.x beta branches, and publicized in the alpha builds of µTorrent 1.9.
The first free software client to implement µTP was KTorrent 4.0. libtorrent implements µTP since version 0.16.0 and it's used in qBittorrent since 2.8.0. Tixati implements µTP since version 1.72. Vuze (formerly Azureus) implements µTP since version 184.108.40.206. Transmission implements µTP since version 2.30.
µTP consists of two parts: a framing scheme and a congestion control algorithm that is less aggressive than TCP's.
µTP framing 
µTP stores data within UDP datagrams using its own framing scheme. µTP's framing scheme has functionality roughly equivalent to TCP's (with timestamps and SACK), but it is realised in a completely incompatible manner.
The µTP framing scheme is believed by some to be far from optimal.
µTP congestion control 
The congestion control algorithm used by µTP, known as Low Extra Delay Background Transport (LEDBAT), aims to decrease the latency caused by applications using the protocol while maximizing bandwidth when latency is not excessive. Additionally, information from the µTP congestion controller can be used to choose the transfer rate of TCP connections.
See also 
- TCP congestion avoidance algorithm
- swift - the multiparty transport protocol
- http://www.slideshare.net/eCommConf/eric-klinker-presentation-at-emerging-communication-conference-awards-2010-america/11 uTP timeline, slide 11, "This Green Revolution-improving the yield of your network investment", eComm America Conference, San Francisco, CA, April 2010.
- µTorrent's switch to UDP and why the sky isn't falling
- uTorrent shifts towards UDP to make it work better
- Technical information about UDP
- "Post by developer "Greg Hazel" in thread "µTorrent 1.9 alpha"". 2008-11-26. Retrieved 2009-03-08.
- "Low Extra Delay Background Transport (LEDBAT)". 2010-03-22. Retrieved 2010-05-30.