Linux Magazine neerlandesa: subidas reanudables con protocolo tus

Nos entusiasma compartir que tus, nuestro estándar abierto para las subidas de archivos reanudables, apareció en la edición de este mes de la Linux Magazine neerlandesa. El artículo original está en neerlandés; a continuación encontrarás una traducción.
tus: un nuevo protocolo abierto de internet
Seguramente te ha pasado: intentas subir un archivo bastante grande, pero de repente se cae tu conexión y la subida se interrumpe. Cuando se restablece la conexión, tienes que empezar otra vez desde el principio. Muy molesto. En muchos lugares del mundo la situación es tan grave que la conexión se cae cada cinco minutos. Por más veces que lo intentes, el receptor solo obtiene cada vez la primera parte.
En 2009 fundé Transloadit junto con dos chicos de Berlín. Es un servicio en línea para subir y codificar archivos. Notamos un aumento de las quejas por subidas fallidas, mientras que nuestra propia plataforma se mantenía estable. Era consecuencia de que los archivos de video eran cada vez más grandes y de que la calidad de las conexiones de red se quedaba atrás. En el fondo, se trata de que intentamos cruzar los mismos puentes, pero cargando diez veces más equipaje. Túneles, sótanos, bares, zonas poco pobladas, proveedores de telecomunicaciones codiciosos e interferencias de Wi-Fi: todo ello causaba muchos obstáculos.
La idea
Como no podíamos hacer mucho con las cosas que causan este problema, empezamos a buscar una solución que resistiera mejor ante ellas: «tus». Con ella pudimos reanudar una subida en el punto en el que se había interrumpido, en cuanto se restablecía la conexión. Si lo intentábamos veinte veces, pero cada vez conseguíamos enviar el siguiente 5 %, entonces se transfería el archivo completo. El usuario ni siquiera tendría que notar las interrupciones, porque eran subidas «reanudables».
Reanudables
Las descargas ya son reanudables desde la versión 1.1 de HTTP. Para las subidas, en cambio, no había ningún estándar abierto. Ha habido varios proyectos, pero les faltaba un lenguaje común. A menudo tenían un objetivo comercial o se centraban en su propia situación. Es como si no existiera la NFL y cada equipo de fútbol americano jugara con sus propias reglas.
Solo somos una empresa pequeña. Al publicar el protocolo como código abierto, recibimos la colaboración de desarrolladores de Google, Node.js, HTTP/1.1 y ZeroMQ, entre otros. También estamos muy orgullosos de que Vimeo vaya a usar «tus». No solo para las subidas a su plataforma, sino también para la transferencia de archivos entre sus servidores, por la mayor velocidad que ofrece «tus». Vimeo también nos ha proporcionado un desarrollador para ayudarnos a crear implementaciones de «tus» en más lenguajes. Este gran grado de colaboración ha hecho que «tus» sea más fuerte. Es importante para el protocolo que mucha gente lo implemente, incluso nuestros competidores.
Creemos que así internet será mejor para todos. Esperamos que sigan existiendo suficientes empresas que prefieran externalizar el procesamiento de alta calidad de sus subidas y que entonces opten por la fuente, Transloadit. Y si no, al menos nuestros clientes actuales tienen la mejor solución.
(S)FTP y BitTorrent
Hay cierta superposición entre «tus» y otros protocolos. Sin embargo, «tus» se basa en HTTP y, por lo tanto, es compatible con los navegadores y servidores existentes, sin necesidad de grandes bibliotecas ni de permisos adicionales en el firewall. Gracias a esto, también se puede combinar fácilmente con SSL, balanceadores de carga y proxies. «tus» es un documento que contiene reglas sobre cómo deben funcionar las subidas reanudables. Solo puede tener algún valor cuando los desarrolladores respetan esas reglas en su software. Solo entonces surgirá un «idioma» que las máquinas hablen de forma generalizada y todo el mundo tendrá subidas fiables. Estamos ayudando un poco a que eso ocurra al ofrecer gratis implementaciones en todos los lenguajes de programación destacados. Además, «tus» es pequeño en su núcleo y ofrece extensiones opcionales, como «concat», que, de forma similar a BitTorrent, puede dividir los archivos en piezas más pequeñas y enviarlas de manera simultánea. Así se aprovecha al máximo una conexión, las subidas terminan antes y podemos sortear los límites de tamaño máximo de subida que imponen algunos sistemas.
Conclusión
«tus» está listo para producción. Echa un vistazo a https://tus.io, es probable que ya tengamos una implementación disponible para tu plataforma favorita. Y si no es así, ¡nos vendría muy bien tu ayuda! No dudes en escribirnos si quieres contribuir a «tus».
Los lectores neerlandeses pueden conseguir la revista en los quioscos a partir de hoy para leer todo sobre el protocolo tus en su propio idioma en la página 25, además de otras noticias interesantes de la comunidad de código abierto.
