Una variante abierta basada en UDP del protocolo de intercambio de archivos punto a punto BitTorrent
El Protocolo de Micro Transporte ( μTP , a veces uTP ) es una variante abierta basada en el Protocolo de Datagramas de Usuario (UDP) del protocolo de intercambio de archivos punto a punto BitTorrent, cuyo objetivo es mitigar la mala latencia y otros problemas de control de congestión que se encuentran en el BitTorrent convencional sobre el Protocolo de Control de Transmisión (TCP), al tiempo que proporciona una entrega ordenada y confiable.
Fue diseñado para reducir automáticamente [1] la velocidad a la que se transmiten los paquetes de datos entre usuarios de torrents de intercambio de archivos peer-to-peer cuando interfiere con otras aplicaciones. Por ejemplo, el protocolo debería permitir automáticamente compartir una línea DSL entre una aplicación BitTorrent y un navegador web.
Desarrollo
μTP surgió de la investigación en Internet2 sobre QoS y transporte masivo de alto rendimiento , fue adaptado para su uso como protocolo de transporte en segundo plano por Plicto, fundada por Stanislav Shalunov y Ben Teitelbaum [2] y luego adquirida por BitTorrent, Inc. en 2006, y desarrollada aún más dentro de su nuevo propietario. [3] Se introdujo por primera vez en las ramas beta de μTorrent 1.8.x y se publicó en las versiones alfa de μTorrent 1.9. [4] [5]
La implementación de μTP utilizada en μTorrent se separó posteriormente en la biblioteca "libutp" y se publicó bajo la licencia MIT . [6] [7]
El primer cliente de software libre que implementó μTP fue KTorrent 4.0. [8] [9] libtorrent implementa μTP desde la versión 0.16.0 [10] y se utiliza en qBittorrent desde la versión 2.8.0. [11] Tixati implementa μTP desde la versión 1.72. [12] Vuze (anteriormente Azureus) implementa μTP desde la versión 4.6.0.0. [13] Transmission implementa μTP desde la versión 2.30. [14]
Control de congestión de μTP
El algoritmo de control de congestión utilizado por μTP, conocido como Low Extra Delay Background Transport ( LEDBAT ), tiene como objetivo disminuir la latencia causada por las aplicaciones que utilizan el protocolo mientras maximiza el ancho de banda cuando la latencia no es excesiva. [15] [16] Además, la información del controlador de congestión μTP se puede utilizar para elegir la tasa de transferencia de las conexiones TCP. [17]
LEDBAT se describe en RFC 6817. A partir de 2009, los detalles de la implementación de μTP eran diferentes de los del borrador de Internet vigente en ese momento. [18]
μTP también agrega soporte para la travesía NAT usando perforación de agujeros UDP entre dos pares con puertos restringidos donde un tercer par sin restricciones actúa como un servidor STUN . [19] [20]
Véase también
Referencias
- ^ "Forum.bittorrent.org / Algunos comentarios sobre µTP (BEP-29)". Archivado desde el original el 1 de marzo de 2010. Consultado el 15 de noviembre de 2009 .
- ^ Así es como se mueven tan rápido tus descargas de BitTorrent, Fastcolabs, 29 de julio de 2013, consultado el 6 de noviembre de 2013
- ^ http://www.slideshare.net/eCommConf/eric-klinker-presentation-at-emerging-communication-conference-awards-2010-america/11 Cronología de uTP, diapositiva 11, "Esta revolución verde: mejorar el rendimiento de su inversión en red", Conferencia eComm America, San Francisco, CA, abril de 2010.
- ^ Beijnum, Iljitsch van (2008-12-02). "El cambio de Torrent a UDP y por qué el cielo no se cae". Ars Technica . Consultado el 11 de mayo de 2021 .
- ^ "uTorrent cambia a UDP para que funcione mejor". www.thinkbroadband.com . Consultado el 11 de mayo de 2021 .
- ^ "Libutp, una implementación de código abierto de µTP, ya ha sido lanzada (Página 1) / Anuncios / Foros de la comunidad de µTorrent". Archivado desde el original el 23 de enero de 2011. Consultado el 15 de enero de 2011 .
- ^ bittorrent/libutp, BitTorrent Inc., 8 de mayo de 2021 , consultado el 11 de mayo de 2021
- ^ "KTorrent es el primer cliente BitTorrent que adopta uTP de código abierto * TorrentFreak" . Consultado el 11 de mayo de 2021 .
- ^ "KTorrent 4.0 ya está disponible". 24 de mayo de 2010. Archivado desde el original el 2 de abril de 2015.
- ^ "Archivo de código de Google: almacenamiento a largo plazo para el alojamiento de proyectos de código de Google". code.google.com . Consultado el 11 de mayo de 2021 .
- ^ "Sitio web oficial de qBittorrent". www.qbittorrent.org . Consultado el 11 de mayo de 2021 .
- ^ "Tixati.com - Noticias". www.tixati.com . Consultado el 11 de mayo de 2021 .
- ^ "Registro de cambios de la versión 4400 4702 - VuzeWiki". wiki.vuze.com . Consultado el 11 de mayo de 2021 .
- ^ "Cambios – Transmisión". Archivado desde el original el 24 de mayo de 2015. Consultado el 12 de julio de 2012 .
- ^ "Información técnica sobre UDP". Archivado desde el original el 12 de mayo de 2009. Consultado el 23 de diciembre de 2008 .
- ^ "Forum.bittorrent.org / Algunos comentarios sobre µTP (BEP-29)". Archivado desde el original el 1 de marzo de 2010. Consultado el 15 de noviembre de 2009 .
- ^ "Mensaje del desarrollador "Greg Hazel" en el hilo "μTorrent 1.9 alpha"". 26 de noviembre de 2008. Archivado desde el original el 8 de febrero de 2009. Consultado el 8 de marzo de 2009 .
- ^ "Forum.bittorrent.org / Algunos comentarios sobre µTP (BEP-29)". Archivado desde el original el 25 de julio de 2011. Consultado el 15 de noviembre de 2009 .[ Se necesita cita completa ]
- ^ "ΜTorrent 1.9 alpha 15380 (Página 1) / Anuncios / Foros de la comunidad µTorrent". Archivado desde el original el 25 de marzo de 2013 . Consultado el 23 de diciembre de 2012 .
- ^ "Perforación de agujeros UDP distribuida para el protocolo BitTorrent (página 1) / Discusión sobre diseño de protocolos / Foros de la comunidad µTorrent". Archivado desde el original el 19 de junio de 2013 . Consultado el 23 de diciembre de 2012 .
Enlaces externos
- Propuesta de mejora de BitTorrent n.° 29: protocolo de transporte μTorrent
- TCP-LP
- swift - el protocolo de transporte multipartito