Linux Magazine néerlandais : téléversements avec reprise via tus

Nous sommes ravis d’annoncer que tus, notre standard ouvert pour la reprise des téléversements de fichiers, figure dans l’édition de ce mois du Linux Magazine néerlandais. L’article original est en néerlandais ; vous en trouverez une traduction ci-dessous.
tus - un nouveau protocole Internet ouvert
Cela vous est probablement déjà arrivé : vous essayez de téléverser un fichier assez volumineux, mais votre connexion coupe soudain et le téléversement est interrompu. Une fois la connexion rétablie, vous devez tout recommencer depuis le début. Vraiment agaçant. Dans de nombreuses régions du monde, la situation est si grave que la connexion coupe toutes les cinq minutes. Peu importe le nombre de tentatives, le destinataire ne reçoit à chaque fois que la première partie.
En 2009, j’ai lancé Transloadit avec deux gars de Berlin. C’est un service en ligne de téléversement et d’encodage de fichiers. Nous avons constaté une hausse des plaintes concernant des téléversements qui échouaient, alors que notre propre plateforme était stable. Cela venait de fichiers vidéo de plus en plus volumineux, tandis que la qualité des connexions réseau ne suivait pas. Au fond, nous essayons de franchir les mêmes ponts, mais avec dix fois plus de bagages. Tunnels, sous-sols, bars, zones peu peuplées, opérateurs télécoms avides et interférences Wi-Fi : les obstacles ne manquaient pas.
L’idée
Comme nous ne pouvions pas faire grand-chose contre les causes de ce problème, nous avons cherché une solution plus à même d’y résister : « tus ». Grâce à elle, nous pouvions reprendre un téléversement là où il avait été interrompu, dès le rétablissement de la connexion. Si nous faisions vingt tentatives, mais réussissions à chaque fois à envoyer les 5 % suivants, le fichier entier serait transféré. L’utilisateur n’aurait même pas à remarquer les interruptions, car il s’agissait de téléversements « avec reprise ».
Avec reprise
Les téléchargements peuvent déjà être repris depuis la version 1.1 de HTTP. Pour les téléversements, en revanche, il n’existait aucun standard ouvert. Plusieurs projets ont vu le jour, mais il leur manquait un langage commun. Ils poursuivaient souvent un objectif commercial ou se concentraient sur leur propre situation. C’est comme s’il n’y avait pas de NFL et que chaque équipe de football américain jouait selon ses propres règles.
Nous ne sommes qu’une petite entreprise. En rendant le protocole open source, nous avons obtenu la collaboration de développeurs de Google, Node.js, HTTP/1.1 et ZeroMQ, entre autres. Nous sommes aussi très fiers que Vimeo ait prévu d’utiliser « tus ». Non seulement pour les téléversements vers sa plateforme, mais aussi pour le transfert de fichiers entre ses serveurs, grâce au gain de vitesse qu’offre « tus ». Vimeo a également mis à notre disposition un développeur pour nous aider à créer des implémentations de « tus » dans davantage de langages. Ce haut degré de collaboration a rendu « tus » plus solide. Il est important pour le protocole que beaucoup de gens l’implémentent, y compris nos concurrents.
Nous pensons que cela rendra Internet meilleur pour tout le monde. Nous espérons qu’il restera suffisamment d’entreprises préférant externaliser un traitement de qualité de leurs téléversements, et qu’elles choisiront alors la source : Transloadit. Et dans le cas contraire, nos clients actuels disposent au moins de la meilleure solution.
(S)FTP et BitTorrent
« tus » recoupe en partie d’autres protocoles. Mais « tus » repose sur HTTP et est donc compatible avec les navigateurs et serveurs existants, sans nécessiter de grosses bibliothèques ni d’autorisations supplémentaires dans le pare-feu. De ce fait, il se combine aussi facilement avec SSL, les répartiteurs de charge et les proxys. « tus » est un document qui définit des règles sur le fonctionnement des téléversements avec reprise. Il n’a de valeur que si les développeurs respectent ces règles dans leurs logiciels. Ce n’est qu’alors qu’émergera une « langue » communément parlée par les machines, et chacun disposera de téléversements fiables. Nous y contribuons un peu en proposant gratuitement des implémentations dans tous les principaux langages de programmation. « tus » est par ailleurs léger dans son noyau et propose des extensions facultatives, comme « concat » qui, à la manière de BitTorrent, peut découper les fichiers en morceaux plus petits puis les envoyer simultanément. Ainsi, la connexion est pleinement exploitée, les téléversements se terminent plus vite et nous pouvons contourner les limites de taille maximale de téléversement imposées par certains systèmes.
Conclusion
« tus » est prêt pour la production. Jetez un œil à https://tus.io : nous avons probablement déjà une implémentation disponible pour votre plateforme préférée. Et si ce n’est pas le cas, nous aurions bien besoin de votre aide ! N’hésitez pas à nous contacter si vous souhaitez contribuer à « tus ».
Les lecteurs néerlandophones peuvent dès aujourd’hui se procurer le magazine en kiosque pour tout découvrir sur tus dans leur langue maternelle en page 25, ainsi que d’autres nouvelles passionnantes de la communauté open source.
