Articles

Compartir P2P: Cómo funciona y el futuro

Cómo funciona el intercambio P2P y qué ofrece para el futuro de Internet

BitTorrent es uno de los protocolos de red P2P más populares en uso. Gnutella es uno de esos protocolos que existía antes de BitTorrent. Hablando de P2P, tiene más del 40% del tráfico total de Internet (fuente). Aunque el software «BitTorrent» viene a la mente, la idea de Torrenting es mucho más amplia y compleja que la propia herramienta. Además, BitTorrent es el nombre del protocolo que se utiliza para la transmisión de archivos P2P.

Foto de Alina Grubnyak en Unsplash

En un escenario típico de transmisión de archivos que ocurre en Internet, estás subiendo un archivo o descargando un archivo de un servidor de acceso público. Sin embargo, en el envío/recepción de archivos P2P esto sucede entre dos o más partes que no son estrictamente públicas en Internet. De ahí que se llame P2P o peer to peer. La característica interesante de este enfoque es que no se requiere ningún servidor.

Si alguna vez te has topado con BitTorrent, uTorrent, Vuze o Limewire probablemente hayas utilizado el intercambio de archivos P2P. Aunque directamente no es relevante, WebRTC es otra tecnología de comunicación P2P. Se utiliza principalmente para la transmisión de contenidos en casos como las videollamadas, etc.

¿Por qué?

El intercambio P2P es siempre descentralizado. Lo cual es bastante barato a gran escala. Además, se pueden practicar diferentes tipos de capas de encriptación para un mejor anonimato. Esto viene con el inevitable lado negativo de las violaciones de los derechos de autor y los contenidos ilegales que se comparten. Desde el punto de vista técnico, la tecnología es fascinante de estudiar.

Basado en servidor vs P2P (fuente)

El P2P es barato y autosuficientesuficiente por la comunidad de usuarios

Cómo funciona Limewire/Gnutella

El hecho fascinante de lime wire es que los usuarios pueden buscar archivos en los ordenadores de otros y descargarlos fácilmente. Busquemos la distribución de Ubuntu en Limewire. Ten en cuenta que la última versión de Limewire se llama uWire.

Captura de pantalla: por el autor

Se nos ofrecen 3 resultados de búsqueda. Para cada resultado, se muestra el número de archivos. Para cada archivo, podemos ver el número de fuentes de descarga directa. Este es el número de usuarios que tienen este archivo.

La búsqueda en Limewire (que utiliza Gnutella) ocurre de la siguiente manera, en pasos muy simples, por supuesto.

  1. En el momento en que un usuario inicia el software, debe hacer una conexión con al menos otro nodo. Dichos nodos se incluyen en el software o se encuentran a través de otros canales. Es muy parecido a cómo se descubren los trackers en BitTorrent. En versiones posteriores, esto se hace a través de un servidor de arranque que ayuda a la conexión inicial. Se evitan posibles obligaciones legales simplemente limitando el uso para el descubrimiento de nodos en lugar del descubrimiento de archivos (Un gran problema a principios de 2000 que acabó con muchos sistemas de intercambio de archivos).
  2. El cliente conecta un nodo de este tipo desde el paso anterior, seguido de una conexión a varios otros nodos.
  3. Cuando se inicia una consulta de búsqueda, el cliente la enviará a los nodos conectados. A continuación, los nodos conectados la enviarán a sus nodos conectados.
  4. El número de saltos está limitado a 4 (origen). Esto ayuda a evitar demasiada congestión.

La red está formada por Ultrapeers, que tienen conexiones mejores y consistentes. Dichos nodos mantienen conexiones con otros pocos Ultrapeers también. En el pasado, los resultados de las consultas de búsqueda se enviaban a través de la misma ruta. Sin embargo, ahora las respuestas se envían directamente a través de los Ultrapeers sobre UDP. La arquitectura clásica de la búsqueda en Gnutella se representa a continuación.

Ejecución de la consulta Gnutella (fuente)

El futuro de la compartición de archivos P2P

La compartición de archivos a través de P2P ha decaído un poco con las implicaciones legales y la falta de IPs públicas. Sin embargo, esto podría cambiar con la llegada de IPV6 y tantos wearables.

Sin embargo, el P2P es más popular que nunca dada la cantidad de videoconferencias que hacemos. El intercambio de archivos P2P es ahora muy común con la llegada de los dispositivos de la nube personal. Uno de los principales cuellos de botella que existían para utilizar la comunicación P2P para compartir archivos personales era el limitado ancho de banda. En ese caso, era posible una descarga paralela de trozos desde múltiples pares. Sin embargo, ahora se puede hacer lo mismo en una única conexión de gran ancho de banda. Esta es una captura de pantalla de la página de configuración de mi dispositivo personal en la nube.

Captura de pantalla: por el autor

En este caso, estoy conectado desde mi oficina a casa a través de una conexión directa. Sólo que la diferencia es que no somos literalmente compañeros. Pero la tecnología es muy similar a la utilizada en BitTorrent. El mecanismo de reenvío de puertos se inicia a través de los servidores de Western Digital de forma bastante similar a la de un Torrent Tracker o en Gnutella un servidor de arranque. Un tracker que rastrea los dispositivos en la nube que están conectados.

Captura de pantalla: por el autor de WD

La mayor ventaja aquí es que, mientras mi conexión doméstica sea buena, tengo acceso instantáneo a mis datos sin tener que subirlos a un servicio como Google. Más o menos lo mismo que hace Torrent. Compartir tu archivo sin una nube.

Sin embargo, en el caso de mi dispositivo de la nube, tienen varias soluciones de copia de seguridad para tener una mejor fiabilidad. A veces, las conexiones directas no se pueden iniciar a través de firewalls(raramente) y algunos NATs antiguos(mayor culpable).

El intercambio de archivos P2P o Limewire no está muerto!

Ninguno de los protocolos era ilegal. Sólo lo eran los usos de los mismos!. En la actualidad, se les da un mejor uso personal dadas las mejoras de los anchos de banda de la red. La computación P2P también se utiliza en las CDNs (Content Delivery Networks) para la sincronización de contenidos. A veces, se utiliza en la computación en la nube para diferentes casos como el intercambio de datos y la realización de copias de seguridad.

La computación P2P es el sucesor para el intercambio P2P, donde se comparte la potencia de cálculo. El análisis de datos por parte de la multitud, como la investigación del cáncer, es un ejemplo de ello. Los dispositivos móviles inactivos participan en enormes tareas de computación distribuida compartiendo datos entre ellos para un mejor futuro de la humanidad.

Una lectura interesante aquí;

Espero que hayas disfrutado leyendo este artículo. ¡Que tengáis un buen día! Saludos!

Dejar una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *