BitTorrent

Pour les articles homonymes, voir BitTorrent (homonymie).

BitTorrent est un protocole de transfert de données pair-à-pair (P2P) à travers un réseau informatique. Le protocole est conçu en avril 2001 et mis en place à l'été 2002 par le programmeur Bram Cohen[1], et est maintenu depuis 2004[2] par la société BitTorrent, Inc.[3].

Le protocole BitTorrent part du constat suivant quand une information se trouve sur un serveur informatique unique, « plus » elle est demandée, « moins » elle est accessible (par saturation du serveur). Cette tendance est renversée si chaque client informatique en train de télécharger l'information devient aussitôt serveur à son tour de ce qu'il a déjà téléchargé. Une façon de procéder est de découper l'information à partager en segments, et de distribuer des segments différents à des interlocuteurs différents afin qu'ils aient eux-mêmes quelque chose à échanger.

## Caractéristiques

[modifier | modifier le code]

Dans cette animation, les barres colorées sous les clients représentent des pièces ou blocs individuel du fichier distribué. Après le transfert originel depuis le « seeder », les pièces sont individuellement transférées de poste-à-poste (de client à client). Il suffit que le distributeur originel envoie une copie du fichier pour que tous les clients en reçoivent une copie.

BitTorrent est une méthode pour distribuer largement de grandes quantités de données en répartissant la charge inhérente en matière de matériel, hébergement Internet et bande passante quand, dans le modèle classique, elle incombe au seul distributeur originel. Ce dernier n'a plus à servir chaque destinataire : les clients eux-mêmes servent les données déjà reçues aux nouveaux destinataires. Le coût et la charge de la distribution des données sont donc considérablement réduits ; le protocole procure en même temps une redondance contre les problèmes matériels et réduit la dépendance à l'égard du distributeur originel.

L'apparition de BitTorrent a par exemple permis la mise à disposition de distributions GNU/Linux complètes sur DVD en lieu et place des téléchargements de simples CD.

Les techniques utilisées sont : le téléchargement poste à poste depuis différents « pairs » (peer) pour un même fichier (technique dite multisourcing) et le morcellement du fichier en blocs qui le permet. Les blocs peuvent arriver dans un ordre quelconque depuis des sources multiples, le fichier étant réputé téléchargé lorsque la totalité des blocs sera parvenue, quel que soit l'ordre d'arrivée de ceux-ci ou leurs provenances — qui n'ont de fait aucune importance[4].

La validité des données est implicitement garantie : si le fichier est corrompu, c'est qu'il l'était à l'origine, ou qu'il l'a été sur l'ordinateur le téléchargeant (mémoire vive défectueuse, par exemple, mais en aucun cas durant le transfert de données). Les blocs corrompus lors du transfert sont invariablement rejetés.

L'efficacité du réseau est maximale lorsqu'il y a beaucoup d'utilisateurs, car tous ceux qui téléchargent partagent par construction ce qu'ils téléchargent. Il n'y a pas à attendre dans une file virtuelle pour commencer : tout est immédiat dès lors qu'au moins une personne partage le fichier désiré (cela va de soi).

Par rapport à d'autres systèmes pair-à-pair, ce système a l'avantage de créer une sorte de cercle vertueux lors du partage des fichiers. En effet, dès que des parties du fichier souhaité sont téléchargées, elles sont disponibles pour les autres utilisateurs. De plus un système de « récompense » permet de recevoir plus si l'on donne plus. Celui qui donne peu ou pas du tout recevra beaucoup moins. Il tire fortement parti de l'accroissement de la bande passante montante, c'est-à-dire en envoi de données, des connexions réseau.

## Utilisation

[modifier | modifier le code]

L'utilisation de BitTorrent passe par l'utilisation d'un client BitTorrent (ex : BitTorrent ou μTorrent) et d'un lien vers un élément BitTorrent. Autrefois, ce lien était fait uniquement via un fichier dont l'extension de fichier est `.torrent`, qui contient des informations telles que l'adresse IP du serveur Tracker BitTorrent (lequel va relayer les informations de partage aux autres pairs), et une empreinte de hachage, unique à chaque `torrent`. Un lien Magnet, c'est-à-dire une URL comportant une empreinte de hachage, peut également être utilisé.

Il y a des exceptions. Le navigateur web Opera 9 inclut un client BitTorrent, les fichiers `.torrent` étant traités de façon transparente. Dans le navigateur web Mozilla Firefox, certains plugins permettent d'ajouter la fonctionnalité BitTorrent au navigateur. Des logiciels de partage de fichiers en pair-à-pair (ex : Shareaza, LimeWire) supportent le protocole BitTorrent en plus de leur propre réseau.

La première configuration peut nécessiter quelques compétences de réseau informatique : adresse IP, pare-feu et notion de port logiciel. La plupart des logiciels clients récents permettent une configuration automatique (par exemple via UPnP) en fonction des caractéristiques du réseau environnant, mais certains clients requièrent une configuration spécifique.

Le protocole marque aussi récemment sa portabilité en se développant sur des supports inattendus tels que la PlayStation Portable.

## Avantages et inconvénients

[modifier | modifier le code]

### Avantages

[modifier | modifier le code]

Articles connexes : Pair-à-pair et Partage de fichiers en pair-à-pair.

Article connexe : Section « Durée de disponibilité des fichiers ».

Le principe du pair-à-pair a pour conséquence pour le diffuseur du (ou des) fichier(s) partagé(s) de réduire son coût en bande passante. BitTorrent, comme les autres logiciels partage de fichiers en pair-à-pair, a pour conséquence de permettre de réduire la quantité de données à envoyer aux pairs désirant télécharger ce fichier, parce que la charge sera répartie sur les autres pairs. Cela est particulièrement utile à des projets dotés de peu de moyens financiers (ex : des distributions GNU/Linux).

L'un des inconvénients des BitTorrent (la non-centralisation des recherches de fichiers, nécessitant l'usage de fichiers `.torrent` et donc de serveurs Trackers, au risque de leur disparition) a pour effet secondaire de diminuer le nombre de fichiers connus/partageables par les clients BitTorrent, et par conséquent de rendre leur bande passante davantage dédiée à l'envoi de fichiers récents.

### Inconvénients

[modifier | modifier le code]

Les fichiers téléchargés étant en principe mis en partage, cela peut être un problème pour ceux dont la connexion d'accès à Internet est facturée au volume de données si lesdits fichiers sont beaucoup demandés. Ceci n'est bien sur pas spécifique à BitTorrent, mais est le corollaire de tous les logiciels de partage de fichiers en pair-à-pair. Toutefois, la plupart des clients permettent un contrôle fin (par fichier) ou global de la quantité de données que l'on souhaite mettre à disposition ou du débit montant accordé.

La bande passante montante peut être saturée si le logiciel utilisé pour télécharger sur le réseau BitTorrent n'est pas configuré correctement (en fonction des capacités de la connexion à Internet de l'utilisateur) et qu'aucune qualité de service appropriée n'est appliquée à la connexion : cela entraîne un ralentissement important de toutes les connexions à Internet en cours. Par exemple les téléchargements HTTP et FTP peuvent quasiment s'arrêter et la lecture de webradios ou de télévision IP peut être saccadée voire impossible. Les logiciels de messagerie instantanée (ex : Windows Live Messenger, Pidgin, Internet Relay Chat) ne sont pas affectés en raison du faible volume de données qu'ils ont besoin de transmettre vers et depuis Internet.

Pour éviter la saturation de la bande passante ascendante, il est recommandé de configurer le logiciel client de façon qu'il n'utilise que 80 % de celle-ci. Exemples :

* 3,28 ko/s maximum pour une connexion 56k (V.90) (bande passante : 4,1 ko/s) ;
* 12 ko/s maximum pour une connexion RNIS 128 kb/s symétrique ou ADSL .../128 (bande passante 16 ko/s) ;
* 51 ko/s maximum pour une connexion ADSL ..../512 (bande passante 64 ko/s) ;
* 102 ko/s maximum pour une connexion ADSL ...../1024 (bande passante 128 ko/s).

#### Triche aux ratios d'échange

[modifier | modifier le code]

Une personne qui partage peu, recevra aussi beaucoup moins de données des autres utilisateurs. Il existe cependant des clients basés sur le moteur BitComet ne respectant pas totalement le protocole BitTorrent ; ces clients permettent de recevoir beaucoup de données tout en partageant peu (en faisant croire aux autres peers qu'ils ont déjà envoyé des données). Du fait de leur non-respect du protocole, ces clients ralentissent potentiellement le réseau BitTorrent.

#### Nouveaux venus

[modifier | modifier le code]

Le protocole BitTorrent exploite le principe « un prêté pour un rendu », favorisant l'échange de données entre des machines qui ont déjà coopéré dans le passé. Ceci peut entraîner un démarrage difficile (c'est-à-dire que le téléchargement tarde à commencer) d'un nouveau venu lorsque toutes les autres machines ont déjà presque la totalité du fichier.[réf. nécessaire]

#### Faible durée de disponibilité des fichiers

[modifier | modifier le code]

Le mode de fonctionnement observé de BitTorrent souffre d'un handicap majeur : au début de la mise en disponibilité d'un fichier, beaucoup de sources sont disponibles pour le télécharger, surtout s'il est populaire ou attendu depuis longtemps ; mais avec le temps, il devient de moins en moins partagé, et donc de moins en moins disponible au téléchargement, ce qui finit par aboutir à la « mort » du `torrent`, c'est-à-dire qu'il n'a plus aucune source.

Ainsi, il n'est pas rare qu'un `torrent` ne soit plus actif après quelques mois, voire quelques semaines ou même quelques jours.

Pour pallier cela, les clients BitTorrent proposent maintenant de laisser le `torrent` « ouvert », une fois téléchargé. Cela devient alors une source complète et remédie à cet inconvénient.

Une limite à ce raisonnement est la place disponible sur les disques durs et autres systèmes de stockage en ligne. En règle générale, on est « bon citoyen » (seeder) quand on laisse le fichier en partage assez longtemps pour qu'il soit lui-même au moins autant téléchargé (taux de partage de 1 ou plus) ; dans le cas contraire, on est considéré comme une sangsue (leecher).

En résumé pour que le système fonctionne bien il faut laisser son client BitTorrent envoyer au moins autant que ce que l'on a téléchargé.

#### Risques légaux

[modifier | modifier le code]

Article connexe : Section « Droit d'auteur ».

Bien que techniquement plus difficile qu'avec les logiciels de partage de fichiers en pair-à-pair de génération précédente (ex : eMule, logiciels utilisant le protocole Gnutella) il est possible à des experts de trouver des utilisateurs dont le client (re)partage des fichiers[5]. Puisque le droit d'auteur ne s'applique que dans l'espace public, le partage de fichier à titre privé, même en utilisant des moyens modernes comme le protocole BitTorrent, n'est pas punissable dans la plupart des pays.

C'est pourquoi certains députés attachés au droit d'auteur, conçoivent et fait accepter dans certains pays un arsenal législatif destiné à toucher les particuliers dans leurs partages de documents soumis au droit d'auteur. Dans cette optique, la loi Hadopi en France vise à empêcher l'utilisation du protocole BitTorrent. Il constitue néanmoins un des seuls moyens aisés et bon marché pour diffuser rapidement et en masse des projets open source par exemple, qui peuvent s'avérer lourds et très demandés lors de leurs sorties.

### Logiciels malveillants

[modifier | modifier le code]

Plusieurs études concernant BitTorrent mettent en évidence qu'une grande portion des fichiers téléchargeables via BitTorrent contiennent des logiciels malveillants. En particulier, un petit échantillonnage indique que 18 % de tous les logiciels exécutables disponibles en téléchargement contenaient des logiciels malveillants (2008)[6]. Une autre étude (2009)[7],[8] indique qu'au moins 14,5 % des téléchargements BitTorrent contient des attaques Zero-day, et BitTorrent était utilisé comme mécanisme de diffusion pour 47 % de tous les logiciels malveillants Zero-day qu'ils avaient trouvés.

## Vocabulaire

[modifier | modifier le code]

* Availability / disponibilité (aussi appelé « distributed copies ») : indique la quantité de copies complètes du fichier disponibles. Un peer qui se connecte et qui possède une fraction de fichier ajoute cette fraction à la disponibilité (si aucun autre ne possède déjà cette partie du fichier). Chaque seed ajoute 1,0 à ce nombre, étant donné qu'il possède la totalité du fichier. Ainsi, un peer avec 65,3 % d'un fichier téléchargé augmente la disponibilité de 0,653. Si deux peers ont téléchargé chacun la même moitié d'un fichier et qu'ils sont rejoints par un seeder (semeur), la disponibilité s'élève à 1,5.

* Leecher : une « sangsue » (leech en anglais) est un client souhaitant télécharger le fichier, mais ne le possédant pas en totalité. Ce terme a également un sens péjoratif pour qualifier ceux qui téléchargent sans envoyer en contrepartie de fichiers sur le réseau. Lors de la première apparition d'un `torrent`, il n'y a que peu de sources (seeds) et beaucoup de sangsues (leech).

* Peers : clients pouvant transmettre une partie de l'archive (ils ne possèdent généralement pas l'intégralité de celle-ci).

* Scrape : le client BitTorrent (voir clients utilisant le réseau BitTorrent) débute par un scrape, ce qui consiste à demander au serveur tracker des informations sur le nombre total de pairs sources (seeds) et sangsues (leech). Ce nombre sera généralement affiché entre parenthèses.

* Seed : une semence (seed en anglais) est un client partageant un fichier complet.

* Share Ratio : proportion entre la quantité de données partagées (envoyées), et la quantité de données reçues (téléchargées). Dans l'idéal, chaque utilisateur devrait avoir un ratio de 1:1, ce qui indique qu'il y a eu autant de données envoyées que reçues. De cette façon les téléchargements sont rapides et efficaces pour tous, et permettent de terminer les fichiers.

* Superseed : c'est un Seed qui tente de minimiser la quantité de données qu'il envoie jusqu'à ce qu'un leecher obtienne la totalité des fichiers du `torrent` et devienne ainsi un seeder supplémentaire. Cette fonction ne devrait être utilisée que lorsqu'il n'y a qu'un seul seeder disponible (ou très peu) pour un `torrent`, et que ces seeders disposent de faibles capacités de téléversement. L'opération consiste à ne déclarer posséder aucune partie de l'archive, puis lorsque les clients se connectent le super-seeder les informe qu'il dispose d'une nouvelle partie que personne ne possède. Il transmet la partie en question et ne transmettra aucune nouvelle partie de l'archive tant qu'il n'aura pas reçu confirmation que la pièce a été transmise à nouveau à un autre seed. De cette manière, les clients en mode superseed n'envoient que les morceaux qui n'ont encore jamais été envoyés, et s'assurent de leur bonne diffusion par (et parmi) les leechers.

* Swarm (essaim) : ce terme désigne tous les peers (y compris les seeds) qui partagent un même `torrent`. Par exemple, six peers et deux seeds forment un essaim de huit unités.

* Torrent : selon le contexte, un torrent peut signifier soit un fichier de métadonnées `.torrent`, ou tout fichier décrit par lui. Le fichier `.torrent` contient des métadonnées relatives aux fichiers qu'il rend téléchargeables : leurs noms, tailles, et les sommes de contrôle de toutes les pièces du `torrent`. Il contient également l'adresse IP d'un serveur tracker, lequel coordonne la communication entre les peers du swarm (essaim).

* Tracker : un traqueur est un serveur qui sait en permanence quels seeds et quels peers se trouvent dans le swarm (l'essaim). Les clients lui envoient régulièrement des informations. En échange, ils reçoivent des informations (ex : adresses IP) concernant les autres clients auxquels ils peuvent se connecter. Le traqueur n'est pas directement impliqué dans le transfert de données et ne possède pas de copie du fichier. Les quelques secondes par heure où un client se connecte au tracker sont en principe les seules où il puisse se faire identifier (mais par quelques dizaines d'autres clients seulement, ou par quelqu'un qui aurait accès au serveur tracker).

* Web Seeding : utiliser un serveur web comme seed. Par exemple à l'aide de programmes écrits en PHP. À partir d'une modification dans le fichier `torrent`, il est possible de permettre à un serveur web de seeder un `torrent`. Cette fonctionnalité est intégrée dans les clients : BitTorrent Mainline, Vuze, QBittorrent, et BitTornado.

## Droit d'auteur

[modifier | modifier le code]

Bien que le protocole BitTorrent ait été open source jusqu'à la sortie de la version 6 (2007) du client officiel BitTorrent, il subsiste des problèmes liés au copyright. Certains organismes de surveillance des droits d'auteur s'intéressent de près aux sites fournissant les trackers car ceux-ci sont souvent des moyens de distribution de fichiers sous copyright (musiques, films, etc.).

La Motion Picture Association of America (MPAA) en particulier, a intenté de multiples procès envers divers sites web référençant des fichiers `.torrent` en raison du grand nombre de fichiers illégalement distribués ainsi. Une des plus récentes affaires concerne le site The Pirate Bay, poursuivi par la police suédoise et le MPAA (début de l'affaire 31 mai 2006 ; verdict de première instance au 17 avril 2009 : administrateurs et financier du site coupables, 1 an de prison ferme et 30 millions de couronnes suédoises, soit 2,7 millions d'euros de dommages et intérêts — les condamnés font appel).

Télécharger un fichier vidéo, image ou audio sous une licence propriétaire est un délit et plus encore, le distribuer à grande échelle pourrait être passible d'amendes (voir DADVSI). Mais les fichiers `.torrent` ne sont pas à proprement parler ces fichiers sous copyright, ils ne sont qu'un moyen de les télécharger. Ainsi, en principe, les sites rassemblant des trackers ne sont pas « hors-la-loi ».

La légalité de la détention de fichiers `.torrent` permettant le téléchargement de fichiers sous copyright reste encore assez floue, le MPAA et les autres organismes de protection de droits d'auteur ayant attaqué en justice des sites aussi divers que des hébergeurs de fichiers ou des moteurs de recherches pour `torrent`s n'en hébergeant pas (TorrentSpy 27 février 2006).

La législation dépend du pays. En Suisse par exmeple, il est illégal de mettre à disposition un contenu sans l'accord de l'ayant droit, mais pas de le télécharger (un usager ne peut en effet pas savoir si un contenu est licite avant de le connaître). En France, mise à disposition et téléchargement sont illégaux sauf accord de l'ayant droit, mais la charge de la preuve est tout sauf évidente : le nom d'un fichier et sa taille ne prouvent juridiquement rien sur le contenu de celui-ci.

BitTorrent 6 (sorti en 2007) est associé à un changement majeur de licence : jusque-là, le programme et le protocole associés étaient open source. La licence d'utilisation a été modifiée[réf. nécessaire], et le protocole ne verra plus son code publié, bien qu'il soit possible d'obtenir un SDK afin de continuer le développement de logiciels tiers.

## Liste de logiciels clients

[modifier | modifier le code]

Article détaillé : Liste de clients BitTorrent.

Bram Cohen, créateur de BitTorrent

Le client dit « officiel », rapidement concurrencé par les logiciels de cette liste, porte le même nom que le protocole lui-même : BitTorrent. En début décembre 2006, BitTorrent, Inc., la société créée par Bram Cohen, l’inventeur du BitTorrent, et Ashwin Navin (en), ancien de Yahoo!, annoncent l’acquisition du logiciel propriétaire µTorrent[9].

## BitTorrent Entertainment Network

[modifier | modifier le code]

BitTorrent ouvre le 26 février 2007 une plate-forme de téléchargement payante : BitTorrent Entertainment Network[10], qu'elle ferme ensuite en 2008[11]. Le site web d'actualité spécialisé Numerama le décrit comme « entièrement gâché par les DRM » (Digital Rights Management, en français : gestion des droits numériques)[12].

## Notes et références

[modifier | modifier le code]

1. ↑ (en) « The BitTorrent Effect », Wired, janvier 2005 (lire en ligne).
2. ↑ « BitTorrent Labs : le point sur les projets de BitTorrent », Numerama, 25 janvier 2013 (lire en ligne).
3. ↑ « BitTorrent Inc lance son navigateur et veut inventer l'internet du futur », Les Inrocks, 11 décembre 2014 (lire en ligne).
4. ↑ On reconnaît au passage une similitude de philosophie avec TCP/IP.
5. ↑ « Comment BitTorrent et ses utilisateurs ont été traqués par l'INRIA », sur Numerama, 29 avril 2010.
6. ↑ (en) Andrew D. Berns et Eunjin (EJ) Jung, « Searching for Malware in Bit Torrent », 2008.
7. ↑ (en) « Fourth International Conference on Internet Monitoring and Protection » « Copie archivée » (version du 22 juillet 2018 sur Internet Archive), 2008.
8. ↑ (en) « Where Only Fools Dare to Tread: An Empirical Study on the Prevalence of Zero-Day Malware » (« Où seuls les idiots ose aller : Une étude empirique sur la fréquence des logiciels malveillants zéro day »). 2009. (ISBN 978-1-4244-3839-6).
9. ↑ « BitTorrent: le logiciel officiel n'est plus libre », sur Presence-PC, web.archive.org, 11 août 2007 (consulté le 25 mars 2025).
10. ↑ « BitTorrent marchand : nos premières impressions », sur Ratiatum, web.archive.org, 26 février 2007 (consulté le 25 mars 2025).
11. ↑ « BitTorrent licencie », sur tomsguide.fr, web.archive.org, 2008 (consulté le 25 mars 2025).
12. ↑ « BitTorrent Entertainment Network entièrement gâché par les DRM », sur Numerama, web.archive.org, 2007 (consulté le 25 mars 2025).

## Annexes

[modifier | modifier le code]

### Articles connexes

[modifier | modifier le code]

* eXeem, autre logiciel utilisant les fichiers Torrent
* metalink, standard convenant aussi à BitTorrent
* Mininova, site permettant l'échange de fichiers `torrent`s libre de tout droit.
* The Pirate Bay, site permettant l'échange de fichiers `torrent`s.

### Liens externes

[modifier | modifier le code]

* (en) Site officiel
*   * Notices dans des dictionnaires ou encyclopédies généralistes :
* Britannica
* Gran Enciclopèdia Catalana

*   * L'anonymat du réseau BitTorrent mis en cause, Le Monde, 8 mai 2010.
* Détails sur le protocole BitTorrent sur igm.univ-mlv.fr

v · m

BitTorrent

Entreprises |

* BitTorrent
* Vuze, Inc. (en)

Personnalités |

* Bram Cohen
* Ashwin Navin (en)

Technologie |

* Broadcatching (en)
* Tables de hachage distribuée
* BitTorrent DNA (en)
* BitTorrent index (en)
* Magnet
* Micro Transport Protocol (µTP)
* Peer exchange
* Protocol encryption
* Super-seeding (en)
* Tracker BitTorrent
* WebTorrent

Clients |

* BitTorrent (client original)
* ABC
* BitComet
* BitTornado
* Deluge
* FrostWire
* KTorrent
* Popcorn Time
* OneSwarm
* qBittorrent
* Shareaza
* Transmission
* Tribler
* µTorrent
* Vuze (anciennement Azureus)
* Tous les clients
* Seedbox

Bibliothèque logicielle |

* Libtorrent (Rakshasa)
* Libtorrent (Rasterbar)
* MonoTorrent (en)

Annuaire web
Moteur de recherche |

* 1337x
* BTJunkie (en)
* Demonoid
* isoHunt
* KickassTorrents
* Mininova
* YourBittorrent (en)
* PassThePopcorn
* Seedpeer
* t411
* The Pirate Bay
* Ygg

Moteurs de métarecherche |

* Torrentz (en)
* YouTorrent (en)

Sujets liés |

* AXXo
* TorrentFreak

* Portail d’Internet
* Portail des logiciels libres
* Portail de l’informatique

*[etc.]: et cetera
*[(en)]: Langue : anglais
*[v]: Voir ce modèle.
*[m]: Modifier ce modèle. Merci de prévisualiser avant de sauvegarder.