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'' (Y ...
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 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 o ...
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
torrents 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, M ...
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 oil ...
, 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 (MVNO) based in Miami, Florida, that sells eSIM-based prepaid mobile data subscriptions.
History
Open Garden, Inc. was co-founded in 2011 by businessman Micha Benoliel, Inter ...
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 ...
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 co ...
.
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, ...
client to implement μTP was
KTorrent 4.0.
libtorrent
libtorrent is an open-source software, 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 ...
implements μTP since version 0.16.0 and it is used in
qBittorrent since 2.8.0.
Tixati
Tixati is a Proprietary Software, proprietary Linux and Microsoft Windows, Windows BitTorrent client written in C++. It has Standalone program, standalone and portable software, portable versions with each new client version.
Features
In add ...
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
Transmission may refer to:
Medicine, science and technology
* Power transmission
** Electric power transmission
** Propulsion transmission, technology allowing controlled application of power
*** Automatic transmission
*** Manual 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
UDP hole punching is a commonly used technique employed in network address translation (NAT) applications for maintaining User Datagram Protocol (UDP) packet streams that traverse the NAT. NAT traversal techniques are typically required for cli ...
between two port-restricted peers where a third unrestricted peer acts as a
STUN
STUN (Session Traversal Utilities for NAT; originally Simple Traversal of User Datagram Protocol (UDP) through Network Address Translators) is a standardized set of methods, including a network protocol, for traversal of network address transl ...
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 wind ...
*
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
The Stream Control Transmission Protocol (SCTP) is a computer networking communications protocol in the transport layer of the Internet protocol suite. Originally intended for Signaling System 7 (SS7) message transport in telecommunication, the p ...
(SCTP UDP Encapsulation; )
*
UDP-based Data Transfer Protocol
UDP-based Data Transfer Protocol (UDT), is a high-performance data transfer protocol designed for transferring large volumetric datasets over high-speed wide area networks. Such settings are typically disadvantageous for the more common TCP proto ...
(UDT)
References
External links
BitTorrent Enhancement Proposal 29- μTorrent transport protocol
TCP-LPswift - the multiparty transport protocol
{{File sharing protocols
BitTorrent
Internet protocols