Intercambio entre pares

Protocolo de comunicaciones BitTorrent

El intercambio entre pares o PEX es un protocolo de comunicaciones que complementa el protocolo de intercambio de archivos de BitTorrent . Permite que un grupo de usuarios (o pares ) que colaboran para compartir un archivo determinado lo hagan de forma más rápida y eficiente.

En el diseño original del protocolo de intercambio de archivos BitTorrent, los usuarios de un grupo de intercambio de archivos (conocido como "enjambre") dependían de un servidor informático central llamado rastreador para encontrarse entre sí y mantener el enjambre. PEX reduce en gran medida la dependencia de los usuarios de un rastreador al permitir que cada usuario actualice directamente a los demás usuarios del enjambre sobre qué usuarios están actualmente en el enjambre. Al reducir la dependencia de un rastreador centralizado, PEX aumenta la velocidad, la eficiencia y la solidez del protocolo BitTorrent.

Descripción

Los usuarios que desean obtener una copia de un archivo normalmente descargan primero un archivo torrent que describe el archivo o los archivos que se van a compartir, así como las URL de una o más computadoras centrales llamadas rastreadores que mantienen una lista de pares que actualmente comparten el archivo o los archivos descritos en el archivo .torrent. En el diseño original de BitTorrent, los pares dependían de este rastreador central para encontrarse entre sí y mantener el enjambre. El desarrollo posterior de las tablas hash distribuidas (DHT) significó que otras computadoras en el enjambre podían mantener listas parciales de pares y se podía reducir la carga en la computadora rastreadora central. PEX permite que los pares en un enjambre intercambien información sobre el enjambre directamente sin preguntar ( sondear ) a una computadora rastreadora o una DHT. Al hacerlo, PEX aprovecha el conocimiento de los pares a los que está conectado un usuario al solicitarles las direcciones de los pares a los que está conectado. Esto es más rápido y más eficiente que confiar únicamente en un rastreador y reduce la carga de procesamiento en el rastreador. También mantiene unidos a los enjambres cuando el rastreador no funciona. [1]

El intercambio entre pares no se puede utilizar por sí solo para introducir un nuevo par en un enjambre. Para establecer un contacto inicial con un enjambre, cada par debe conectarse a un rastreador mediante un archivo ".torrent" o utilizar un enrutador llamado nodo de arranque para encontrar una tabla hash distribuida (DHT) que describe la lista de pares de un enjambre. Para la mayoría de los usuarios de BitTorrent, DHT y PEX comenzarán a funcionar automáticamente después de que el usuario inicie un cliente BitTorrent y abra un archivo .torrent. Una excepción notable son los "torrents privados", que no están disponibles de forma gratuita; estos, por lo general, deshabilitarán la DHT.

Convenciones de intercambio entre pares

Las extensiones de BitTorrent como PEX se implementan normalmente utilizando uno de los dos protocolos de extensión comunes, AZMP [2] o LTEP. [3] Ambos tipos de intercambio de pares envían mensajes que contienen un grupo de pares que se agregarán al enjambre y un grupo de pares que se eliminarán.

Los desarrolladores de Azureus y μTorrent acordaron que cualquier cliente que implemente cualquiera de los mecanismos anteriores intente obedecer los siguientes límites al enviar mensajes PEX: [4]

  • No debe haber más de 50 pares agregados y 50 pares eliminados enviados en cualquier mensaje PEX.
  • Un mensaje de intercambio entre pares no debe enviarse con una frecuencia mayor a una vez por minuto.

Algunos clientes pueden optar por aplicar estos límites y cancelar las conexiones de los clientes que los ignoren. [4]

DHT

Para crear un protocolo PEX que proporcione una selección de pares uniformemente distribuida, se podría formar una pequeña tabla hash distribuida (DHT) local para un torrent. Para cada nuevo par deseado, se buscaría una clave (uniformemente) aleatoria y se usaría el nodo responsable de la clave como un nuevo par. Esto es conceptualmente simple, pero requeriría bastante trabajo adicional. [ cita requerida ]

En el caso de los torrents "sin rastreador", no está claro si PEX aporta algún valor [ cita requerida ], ya que el DHT principal puede distribuir la carga según sea necesario. Cada nodo DHT que actúa como rastreador puede almacenar solo un subconjunto de los pares, pero estos son subconjuntos máximos limitados solo por la carga del nodo DHT en lugar de por la vista de un solo par. Los torrents privados suelen desactivar el DHT y, para este caso, PEX puede ser útil siempre que el par obtenga suficientes pares del rastreador.

Versiones

Hay tres implementaciones PEX incompatibles (que crean "redes" distintas en el enjambre) [ cita requerida ]

  • Vuze – introducido en Azureus
  • BitComet – propietario – introducido en BitComet, desde la versión 1.19 soporta BEP11, [5] compatible con MainLine [6]
  • MainLine : introducido en μTorrent


Clientes que apoyan el intercambio entre pares

La mayoría de los clientes de BitTorrent utilizan PEX para reunir pares, además de rastreadores y DHT. Con la versión 3.0.5.0 de Vuze, todos los principales clientes de BitTorrent ahora tienen un intercambio de pares compatible.

Cada uno de estos clientes implementa alguna versión de intercambio entre pares:

  • aria2, compatibilidad con μTorrent PEX [7]
  • Vuze , anteriormente Azureus, y clientes basados ​​en él (Vuze PEX solo es compatible con el cliente Transmission. PEX con otros clientes se ha implementado en Vuze y en Azureus desde la versión 3.0.4.3 en adelante) [8]
  • BitComet admite PEX mediante un protocolo propietario en sus versiones anteriores. [9] A partir de la versión 1.19, también agregó soporte para la implementación de PEX de μTorrent/Mainline, basada en el Protocolo de extensión. [10]
  • Flu de bits [11]
  • BitTorrent [12]
  • KTorrent ha implementado soporte completo para μTorrent PEX a partir de la versión 2.1 RC1 [13]
  • libtorrent y clientes basados ​​en él ( Deluge , [14] qBittorrent , [15] MooPolice [16] ) compatibles con μTorrent
  • Tixati
  • μTorrent [17]
  • Opera 9.5, compatibilidad con μTorrent PEX [18]
  • Compatibilidad con qBittorrent y μTorrent PEX [19]
  • rTorrent [20]
  • Transmisión (compatible con las implementaciones de μTorrent y Vuze) [21]
  • XTorrent, al estar basado en el código fuente de Transmission, es totalmente compatible con las implementaciones de Vuze y μTorrent a partir de la versión 1.0 (v40) [22]

Referencias

  1. ^ "Intercambio de pares - VuzeWiki".
  2. ^ "Protocolo de mensajería de Azureus - VuzeWiki". wiki.vuze.com . Consultado el 20 de noviembre de 2019 .
  3. ^ "extension_protocol.rst". www.rasterbar.com . Consultado el 20 de noviembre de 2019 .
  4. ^ ab "Convenciones de intercambio de pares de bits de BitTorrent - Wiki de Theory.org". wiki.theory.org . Consultado el 20 de noviembre de 2019 .
  5. ^ <[email protected]>, The 8472. "bep_0011.rst_post". www.bittorrent.org . Consultado el 23 de mayo de 2021 .{{cite web}}: CS1 maint: nombres numéricos: lista de autores ( enlace )
  6. ^ "Bitcomet - Registro de cambios".
  7. ^ "Página de manual de Ubuntu: Aria2c: la utilidad de descarga ultrarrápida". Archivado desde el original el 2 de abril de 2015. Consultado el 29 de marzo de 2015 .
  8. ^ "utorrent PEX en Vuze". Sitio web de Vuze Wiki . Consultado el 15 de agosto de 2010 .
  9. ^ "PEX en BitComet". Sitio web Wiki de BitComet . Consultado el 23 de febrero de 2010 .
  10. ^ "Notas de la versión de BitComet". Sitio web oficial de BitComet . Consultado el 23 de febrero de 2010 .
  11. ^ "Ejemplo de configuración de Bitflu" . Consultado el 30 de marzo de 2007 .
  12. ^ Manual del usuario de BitTorrent - Apéndice A: La interfaz de BitTorrent - Varios - Propiedades del torrent - General - Otras configuraciones - Intercambio entre pares Archivado el 6 de julio de 2014 en Wayback Machine
  13. ^ "¿Qué novedades trae la versión 2.1?". Sitio web oficial de KTorrent. Archivado desde el original el 2006-04-02 . Consultado el 2007-03-30 .
  14. ^ "Cambios en Deluge 0.5.1 Beta 1". Archivado desde el original el 25 de diciembre de 2008. Consultado el 11 de septiembre de 2007 .
  15. ^ "Sitio web oficial de qBittorrent" . Consultado el 14 de mayo de 2007 .
  16. ^ "Sitio web oficial de MooPolice" . Consultado el 30 de marzo de 2007 .
  17. ^ "Cambios en las versiones beta 1.4.1 y 1.4.2 de μTorrent". Archivado desde el original el 25 de noviembre de 2006. Consultado el 11 de septiembre de 2007 .
  18. ^ "Compatibilidad con BitTorrent de Opera 9.5" . Consultado el 4 de septiembre de 2007 .
  19. ^ "Detalles del paquete qBittorrent". Paquetes Debian . Consultado el 15 de abril de 2011 . μTorrent-compatible Peer eXchange (PeX)
  20. ^ "Registro de cambios de libTorrent 0.11.8 y rTorrent 0.7.8". Archivado desde el original el 2007-11-03 . Consultado el 2007-09-11 .
  21. ^ "NOTICIAS (rev 1579)". Transmisión SVN. Archivado desde el original el 2007-08-24 . Consultado el 2007-03-30 .
  22. ^ Xtorrent P2P (para Mac OS X)
Obtenido de "https://es.wikipedia.org/w/index.php?title=Intercambio_entre_par&oldid=1177435885"