Publier des fichiers avec BitTorrent
Supposons que vous vouliez publier des fichiers volumineux à l'usage de plusieurs correspondants, par exemple un album de photos. Le protocole de distribution pair-à-pair BitTorrent est probablement la solution la plus appropriée pour cela.
La distribution de fichiers avec BitTorrent nécessite traditionnellement un traqueur, serveur indiquant aux clients les adresses d'autres utilisateurs disposant des fichiers demandés. Cela implique donc de mettre en place son propre traqueur ou de sous-traiter ce service à un prestataire tiers.
Le protocole BitTorrent a depuis été étendu pour permettre de publier des fichiers sans traqueur, en utilisant à la place les services coordonnés de l'ensemble des utilisateurs BitTorrent sous la forme d'une table de hachage distribuée : en pratique, des fichiers distribués sans traqueur sont en réalité traqués par un utilisateurs quelconque — qui n'est d'ailleurs pas forcément personnellement intéressé par ces fichiers.
La table de hachage distribuée permet donc de supprimer la dépendance à un serveur, au prix d'un contrôle inférieur et d'une sécurité moindre. Pour autant que j'ai pu l'essayer, cela fonctionne correctement.
1. Générer les méta-informations
La première étape pour distribuer des fichiers consiste à générer un fichier de méta-informations, couramment appelé torrent. Ce fichier regroupe des informations caractéristiques des fichiers à distribuer, ainsi que des informations annexes telle que l'adresse éventuelle d'un traqueur.
Vous devez donc utiliser un générateur de torrent ; n'en trouvant aucun qui prenne en charge les torrents sans traqueur, j'ai codé le mien : je ne l'ai pas encore empaqueté de façon sérieuse, mais il devrait être tout à fait utilisable.
Si vous avez plusieurs fichiers à distribuer, notez qu'il n'est pas nécessaire de les regrouper dans une archive puisque le protocole BitTorrent permet de distribuer des fichiers multiples en un seul torrent.
Pour un torrent avec traqueur, précisez l'adresse du traqueur qui servira ce torrent ; pour un torrent sans traqueur, indiquez plutôt l'adresse d'un ou plusieurs client BitTorrent fiables :
$ gentorrent --announce http://torrent.example.com:6969/announce -- \\ photos_anniversaire_2011 $ gentorrent --nodes muscadet.example.com:51413 -- \\ photos_anniversaire_2011
2. Servir les fichiers
Vous devez maintenant mettre en place le torrent et les fichiers correspondants sur au moins un client BitTorrent afin d'amorcer la distribution.
Pour cela, lancez un client BitTorrent si vous n'en avez pas déjà un qui tourne, placez les fichiers à distribuer dans son répertoire de téléchargement, puis fournissez-lui le fichier torrent : puisque les fichiers sont disponibles localement, il les vérifiera puis commencera à les servir.
3. Publier les informations de téléchargement
Il ne vous reste plus qu'à fournir à vos correspondants les informations leur permettant de télécharger les fichiers. Il s'agit traditionnellement du fichier torrent, que vous pouvez leur envoyer par courrier électronique, par messagerie instantanée ou publier sur votre site Web.
Une évolution récente du protocole BitTorrent permet même de se passer du fichier torrent : si vous avez utilisé mon générateur de torrent, vous aurez remarqué qu'il indique sur sa sortie standard un lien magnet. Ce lien seul peut remplacer le fichier torrent et suffit à démarrer le téléchargement sur n'importe quel client BitTorrent moderne : l'avantage est qu'il peut être directement collé dans un message, en revanche ce mode ajoute un temps de récupération des informations de l'ordre de quelques minutes. Notez toutefois que le fichier torrent demeure indispensable pour amorcer la distribution des fichiers sur le client BitTorrent initial.
Conclusion
BitTorrent est un protocole trop souvent associé à la distribution d'œuvres particulières telles que des systèmes d'exploitations ou des contrefaçons, et ignoré pour la distribution de documents plus personnels comme des albums photos ou des montages vidéo. Cet état est regrettable, parce qu'il s'agit d'une excellente alternative aux systèmes de distribution centralisés.
N'hésitez donc pas à utiliser ce système pour distribuer de tels fichiers. On objectera probablement que le téléchargement de photos par BitTorrent est trop compliqué pour l'utilisateur moyen puisqu'il implique d'installer un logiciel spécifique : je répondrai simplement que s'il a pu installer Adobe Reader pour lire des documents PDF, il peut bien installer Deluge pour télécharger des photos, le tout est juste de lui indiquer.