Micro Transport Protocol: Difference between revisions

Content deleted Content added
AnomieBOT (talk | contribs)
m Dating maintenance tags: {{Dead link}}
Rescuing 5 sources. #IABot
Line 3:
'''Micro Transport Protocol''' or '''µTP''' (sometimes also '''uTP''') is an [[open standard|open]] [[User Datagram Protocol|UDP]]-based variant of the [[BitTorrent (protocol)|BitTorrent]] [[peer-to-peer file sharing]] [[Protocol (computing)|protocol]] intended to mitigate poor latency and other [[network congestion#Congestion control|congestion control]] issues found in conventional BitTorrent over TCP, while providing reliable, ordered delivery.
 
It was devised to automatically slow down<ref>{{cite web|url=http://forum.bittorrent.org/viewtopic.php?pid=762%3D762#p762{{dead link|datetitle=MayArchived copy |accessdate=November 15, 2009 |deadurl=yes |archiveurl=http://web.archive.org/web/20100301125306/http://forum.bittorrent.org:80/viewtopic.php?pid=762 |archivedate=March 1, 2010 2016}}</ref> the rate at which packets of data are transmitted between users of [[peer-to-peer]] file sharing [[BitTorrent (protocol)|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.
 
==Development==
Line 14:
 
==µ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.<ref>[http://searchnetworking.techtarget.com.au/articles/27957-Torrents-of-Disruption-on-the-Way- Technical information about UDP]</ref><ref>{{cite web|url=http://forum.bittorrent.org/viewtopic.php?pid=762%3D762#p762{{dead link|datetitle=MayArchived copy |accessdate=November 15, 2009 |deadurl=yes |archiveurl=http://web.archive.org/web/20100301125306/http://forum.bittorrent.org:80/viewtopic.php?pid=762 |archivedate=March 1, 2010 2016}}</ref> Additionally, information from the µTP congestion controller can be used to choose the transfer rate of TCP connections.<ref>{{cite web|url=http://forum.utorrent.com/viewtopic.php?pid=377209#p377209 |date=2008-11-26 |title=Post by developer "Greg Hazel" in thread "µTorrent 1.9 alpha" |accessdate=2009-03-08 |deadurl=yes |archiveurl=http://web.archive.org/web/20090208093326/http://forum.utorrent.com:80/viewtopic.php?pid=377209 |archivedate=February 8, 2009 }}</ref>
| url = http://forum.utorrent.com/viewtopic.php?pid=377209#p377209
| date = 2008-11-26
| title = Post by developer "Greg Hazel" in thread "µTorrent 1.9 alpha"
| accessdate = 2009-03-08
| deadurl = yes}}</ref>
 
LEDBAT has been described in an Internet-Draft,<ref>{{cite web
Line 26 ⟶ 21:
| title = Low Extra Delay Background Transport (LEDBAT)
| accessdate = 2010-05-30}}</ref>
but the details of the µTP implementation are different from those of the draft.<ref>{{cite web|url=http://forum.bittorrent.org/viewtopic.php?pid=753%3D753#p753{{dead link|datetitle=MayArchived copy |accessdate=November 15, 2009 |deadurl=yes |archiveurl=http://web.archive.org/web/20110725080523/http://forum.bittorrent.org/viewtopic.php?pid=753 |archivedate=July 25, 2011 2016}}</ref>{{Citation broken|date=December 2014}}</ref>
 
µTP also adds support for [[NAT traversal]] using [[UDP hole punching]] between two port-restricted peers where a third unrestricted peer acts as a [[STUN]] server.<ref>{{cite web|url=http://forum.utorrent.com/viewtopic.php?id%3D49813 |title=Archived copy |accessdate=December 23, 2012 |deadurl=yes |archiveurl=http://web.archive.org/web/20130325195455/http://forum.utorrent.com/viewtopic.php?id=49813{{dead link|datearchivedate=MayMarch 25, 2013 2016}}</ref><ref>{{cite web|url=http://forum.utorrent.com/viewtopic.php?pid=407732%3D407732#p407732{{dead link|datetitle=MayArchived copy |accessdate=December 23, 2012 |deadurl=yes |archiveurl=http://web.archive.org/web/20130619125216/http://forum.utorrent.com/viewtopic.php?pid=407732 |archivedate=June 19, 2013 2016}}</ref>
 
==See also==