WebTorrent, el cliente de torrent en tu navegador
Durante mucho tiempo el uso de Torrents fue bastante popular hasta la llegada de las descargas directas y posterior a ello a las demás soluciones que nacieron ante la demanda de poder compartir información, ademas de que parte de la popularidad de torrent fue debido a que se compartía demasiada piratería por este medio.
Posterior a ello y hasta la fecha, torrent no ha dejado de ser utilizado, aunque en menor medida, aun cuenta con una gran cantidad de usuarios que prefieren este medio para poder compartir y obtener archivos, desde distribuciones de Linux, libros, información, imágenes, entre otros.
Los diferentes clientes de torrent que existen ofrecen diversas características aunque una que siempre ha sido bastante demandada, es el poder utilizar un navegador web como cliente y con ello facilitar bastantes cosas.
Ante esto nace WebTorrent, escrito completamente en JavaScript, utiliza WebRTC para el transporte entre pares. No se requieren complementos de navegador, extensiones o instalación. Usando estándar web abiertos, WebTorrent conecta a los usuarios del sitio web para formar una red distribuida y descentralizada. A diferencia de PeerCDN, WebTorrent es un software gratuito.
El protocolo WebTorrent funciona exactamente como el protocolo BitTorrent, excepto que utiliza WebRTC en lugar de TCP/uTP como protocolo de transporte. La comunicación entre navegadores elimina a los intermediarios y permite a los usuarios comunicarse en sus propios términos. No más cliente/servidor, solo una red de pares, todos iguales. “WebTorrent es el primer paso en un proceso de recentralización de la web”, escribe WebTorrent.
Para admitir el modelo de conexión de WebRTC, el equipo de WebTorrent realizó algunos cambios en el protocolo de seguimiento. Por lo tanto, un cliente WebTorrent basado en navegador o «interlocutor web» solo puede conectarse a otros clientes que admitan WebTorrent/WebRTC.
Una vez que los pares están conectados, el protocolo por cable utilizado para comunicarse es exactamente el mismo que en BitTorrent normal. Esto debería facilitar la adición de compatibilidad con WebTorrent a los clientes de torrent populares existentes, como Transmission y uTorrent.
“La forma en que codificamos la web determinará cómo vivimos en línea. Entonces necesitamos integrar nuestros valores en nuestro código. La libertad de expresión debe estar integrada en nuestro código. La privacidad debe estar integrada en nuestro código. Acceso universal a todos los conocimientos. Pero en este momento esos valores no están integrados en la web”, dice Brewster Kahle, fundador de Internet Archive.
Uno de los usos más interesantes de WebTorrent es la transmisión asistida por pares. Los proyectos sin fines de lucro como Wikipedia e Internet Archive podrían reducir el ancho de banda y los costos de hospedaje al permitir que los visitantes participen. El contenido popular se transmite de navegador a navegador. El contenido al que se accede con poca frecuencia se sirve de manera confiable a través de HTTP desde el servidor de origen.
También hay algunos casos de uso comercial interesantes, desde CDN hasta la entrega de aplicaciones.
“WebTorrent tiene un importante potencial comercial para cambiar radicalmente la noción tradicional de cliente-servidor, con aplicaciones para infraestructura interna y comunicaciones cerradas de usuarios externos. WebTorrent ha pasado de ser una idea a un experimento científico y ahora está a punto de ser viable. Es realmente genial”, dice Chris Kranky.
Cabe mencionar que en el navegador, WebTorrent solo puede descargar torrents servidos por un cliente de torrents compatible con WebRTC. A continuación se muestran los clientes de torrent compatibles con WebRTC:
- WebTorrent Desktop: cliente de transmisión de torrents de código abierto. Para Mac, Windows y Linux;
- Vuze: potente y completo cliente de torrents;
- Reproducción: reproductor de video JavaScript de código abierto;
- [* ]webtorrent-hybrid: paquete Node.js (línea de comando y API);
- Instant.io: Cliente WebTorrent simple en un sitio web;
- βTorrent – Cliente: WebTorrent completo para navegador;
- TorrentMedia : Client WebTorrent de bureau.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
Obtener WebTorrent
Para los interesados en obtener WebTorrent, deben saber que en node.js, webtorrent-hybrid puede descargar torrents de pares WebRTC o pares TCP. Para instalar webtorrent-hybrid, basta con ejecutar el siguiente comando en una terminal.
npm install webtorrent-hybrid –g