Micro Transport Protocol or μTP (sometimes also uTP) is an
open
Open or OPEN may refer to:
Music
* Open (band), Australian pop/rock band
* The Open (band), English indie rock band
* ''Open'' (Blues Image album), 1969
* ''Open'' (Gotthard album), 1999
* ''Open'' (Cowboy Junkies album), 2001
* ''Open'' ( ...
UDP-based variant of the
BitTorrent peer-to-peer file sharing
Peer-to-peer file sharing is the distribution and sharing of digital media using peer-to-peer (P2P) networking technology. P2P file sharing allows users to access media files such as books, music, movies, and games using a P2P software program th ...
protocol
Protocol may refer to:
Sociology and politics
* Protocol (politics), a formal agreement between nation states
* Protocol (diplomacy), the etiquette of diplomacy and affairs of state
* Etiquette, a code of personal behavior
Science and technolog ...
intended to mitigate poor latency and other
congestion control
Network congestion in data networking and queueing theory is the reduced quality of service that occurs when a network node or link is carrying more data than it can handle. Typical effects include queueing delay, packet loss or the blocking of ...
problems 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
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
file sharing
torrent
Torrent or torrents may refer to:
* A fast flowing stream
Animals
* Torrent duck, a species of the family Anatidae
* Torrent fish
* Torrent frog, various unrelated frogs
* Torrent robin, a bird species
* Torrent salamander, a family of s ...
s when it interferes with other applications. For example, the protocol should automatically allow the sharing of an
DSL line between a BitTorrent application and a web browser.
Development
μTP emerged from research at
Internet2
Internet2 is a not-for-profit United States computer networking consortium led by members from the research and education communities, industry, and government. The Internet2 consortium administrative headquarters are located in Ann Arbor, Mi ...
on
QoS and high-performance
bulk transport
Bulk cargo is commodity cargo that is transported unpackaged in large quantities.
Description
Bulk cargo refers to material in either liquid or granular, particulate form, as a mass of relatively small solids, such as petroleum/ crude oi ...
, was adapted for use as a background transport protocol by Plicto, founded by
Stanislav Shalunov
Open Garden, Inc. is an American Mobile virtual network operator, mobile virtual network operator (MVNO) based in Miami, Florida, that sells eSIM-based prepaid mobile data subscriptions.
History
Open Garden, Inc. was co-founded in 2011 by ent ...
and Ben Teitelbaum and later acquired by
BitTorrent, Inc.
Rainberry, Inc., formerly known as BitTorrent, Inc., is an American company that is responsible for the ongoing development of the BitTorrent peer-to-peer protocol, as well as the ongoing development of μTorrent and BitTorrent Mainline, two c ...
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
μTorrent, or uTorrent (see pronunciation) is a proprietary adware BitTorrent client owned and developed by Rainberry, Inc. with over 150 million users. It is the most widely used BitTorrent client outside China; globally only behind Xunlei. ...
1.9.
The implementation of μTP used in μTorrent was later separated into the "libutp" library and published under the
MIT license
The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts only very limited restriction on reuse and has, therefore, high license comp ...
.
The first
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
client to implement μTP was
KTorrent
KTorrent is a BitTorrent client that is part of the KDE Gear.
Features
KTorrent is often received as a client intended to be feature rich. Features include:
*Upload and download speed capping / throttling & scheduling
*Internet searching with ...
4.0.
libtorrent
libtorrent is an open-source implementation of the BitTorrent protocol. It is written in and has its main library interface in C++. Its most notable features are support for Mainline DHT, IPv6, HTTP seeds and μTorrent's peer exchange. libtor ...
implements μTP since version 0.16.0 and it is used in
qBittorrent
qBittorrent is a cross-platform free and open-source BitTorrent client written in native C++. It relies on Boost, Qt 6 toolkit and the libtorrent-rasterbar library (for the torrent back-end), with an optional search engine written in Python. ...
since 2.8.0.
Tixati
Tixati is a proprietary Linux and Windows BitTorrent client written in C++. It has standalone and portable versions with each new client version.
Features
In addition to standard BitTorrent client-sharing functions, Tixati provides integral ...
implements μTP since version 1.72.
Vuze
Vuze (previously Azureus) is a BitTorrent client used to transfer files via the BitTorrent protocol. Vuze is written in Java, and uses the Azureus Engine. In addition to downloading data linked to .torrent files, Azureus allows users to view, p ...
(formerly Azureus) implements μTP since version 4.6.0.0.
Transmission implements μTP since version 2.30.
μ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.
LEDBAT is described in . As of 2009, the details of the μTP implementation were different from those of the then-current Internet Draft.
μTP also adds support for
NAT traversal
Network address translation traversal is a computer networking technique of establishing and maintaining Internet protocol connections across gateways that implement network address translation (NAT).
NAT traversal techniques are required for m ...
using
UDP hole punching between two port-restricted peers where a third unrestricted peer acts as a
STUN server.
See also
*
TCP congestion control
Transmission Control Protocol (TCP) uses a network congestion-avoidance algorithm that includes various aspects of an additive increase/multiplicative decrease (AIMD) scheme, along with other schemes including slow start and congestion windo ...
*
Multipurpose Transaction Protocol (MTP)
*
QUIC
QUIC (pronounced "quick") is a general-purpose transport layer network protocol initially designed by Jim Roskind at Google, implemented, and deployed in 2012, announced publicly in 2013 as experimentation broadened, and described at an IETF meet ...
(Quick UDP Internet Connections)
*
Real-Time Media Flow Protocol (RTMFP)
*
Stream Control Transmission Protocol (SCTP UDP Encapsulation; )
*
UDP-based Data Transfer Protocol (UDT)
References
External links
BitTorrent Enhancement Proposal 29- μTorrent transport protocol
TCP-LPswift - the multiparty transport protocol
{{File sharing protocols
BitTorrent
Internet protocols