Introduction aux diverses solutions de téléchargement de fichiers

Carte européenne des téléchargements en 2008 (cliquez pour voir l'image originale)

Carte européenne des téléchargements en 2008 (cliquez pour voir l'image originale)

Il existe diverses manières de télécharger un fichier, et elles sont loin d’être toutes équivalentes. Cependant,  il n’y a pas de solution miracle, tout dépendra du contexte, et de ce qu’autorise le serveur à partir duquel vous souhaitez télécharger un fichier.

Avant d’aller plus loin, rappelons quelques notions élémentaires sur le fonctionnement d’internet. En très simplifié: Vous disposez d’un ordinateur et d’une connexion. Cette connexion passe dans un fil électrique ou une fibre optique, qui vous relie aux ordinateurs de votre opérateur. Ceux-ci sont bien plus gros et puissants qu’un ordinateur comme le votre, mais le principe reste le même. Lorsque vous demandez une page internet, votre ordinateur commence par rechercher sur quel ordinateur du réseau mondial celle ci est stockée. Ensuite de quoi il se connecte à celui-ci et télécharge la page demandée. Et maintenant un peu de vocabulaire:

  • Un serveur est un ordinateur sur lequel on peut se connecter via internet pour y télécharger des données. Votre ordinateur peut très bien fonctionner en mode serveur si vous autorisez d’autre gens à y accéder.
  • Un protocole est un mode opératoire. Pour l’échange de données via une connexion internet, il faut bien que les deux ordinateurs concernés se mettent d’accord sur ce qu’ils envoient, et comment ils l’envoient. Il n’y a pas de protocole unique, car il est possible d’optimiser le protocole en fonction de l’usage qu’on veut en faire.
  • La bande passante correspond à un débit volumétrique de données. Par exemple un serveur qui permet de télécharger à la vitesse de 2 Mb par seconde offre donc une bande passante de 2Mb.

Voyons maintenant les diverses solutions qui s’offrent à vous pour télécharger des fichiers:

1) Le téléchargement par HTTP.

C’est de loin le plus courant (et le moins performant). HTTP signifie Hyper Text Tansfert Protocol. Autrement dit, il s’agit d’un protocole qui a été optimisé pour le transfert de texte, comme des pages internet par exemple, et non pas pour des fichiers volumineux. Bien sûr, il est possible de l’utiliser dans ce but, et c’est ce qui se fait courrament sur internet, car c’est de loin la solution la plus facile à mettre en place, et la plus universelle, car n’importe quel internaute peut procéder au téléchargement à partir de son navigateur.

2) Le téléchargement par FTP.

C’est à la base la solution théoriquement la mieux adaptée. FTP signifie File Tansfert Protocol. Autrement dit, il s’agit d’un protocole qui a été optimisé pour le transfert de fichiers. D’expérience, je peux vous assurer que le téléchargement d’un même fichier est à peu près deux fois plus rapide par FTP que par HTTP. L’ennui, c’est qu’il est nettement plus complexe d’insérer des pages internet contenant des liens de téléchargement par ftp, vu qu’il faut coupler les deux techniques, et paramétrer convenablement son serveur ftp. Ça c’est du point de vue de celui qui héberge les fichiers sur son serveur. Et du point de vue de l’utilisateur, il faut disposer d’un navigateur internet supportant le ftp. C’est maintenant le cas sur la plupart des navigateurs internet, mais ça n’a pas toujours été le cas. Il était alors nécssaire pour l’utilisateur d’installer un client de téléchargement ftp externe, comme Filezilla, par exemple.

3) Utilisation d’un accélérateur de téléchargement.

Un accélérateur de téléchargement est un logiciel qui va exploiter au mieux les possibilités offertes par le serveur pour accélérer votre téléchargement. Le principe est simple: Vous disposez d’une connexion internet qui vous permet par exemple de télécharger à 2Mb par seconde. En face le serveur alloue par défaut une bande passante de 500 Kb par seconde à tout ordinateur qui s’y connecte. Le serveur est obligé de procéder ainsi, car lui aussi a des limites dans les débits de téléchargement qu’il peut offrir, et le nombre de gens qui peuvent s’y connecter à la fois dépend directement du débit alloué à chacun.

Dans cet exemple, vous n’exploitez pas à fond les capacités de votre connexion, puisque vous pourriez télécharger davantage, mais c’est le serveur qui vous limite. Ce que va faire l’accélérateur de téléchargement, c’est regarder si le site d’où vous téléchargez authorise:

  • Plusieurs connexions simultanées de la même personne,
  • Et le téléchargement d’un fichier non pas depuis le début du fichier, mais à partir du quart, de la moitié, ou d’une autre fraction. Cette dernière fonction a été implémentée à la base pour permettre aux gens dont la connexion avait sauté au milieu d’un téléchargement, de le reprendre là où il en était, au lieu de devoir tout recommencer depuis le début.

Si ces deux conditions sont réunies, l’accélérateur de téléchargement va effectuer plusieurs requêtes simultannées sur le serveur pour télécharger en parallèle plusieurs morceaux du fichier. Ce qui va vous permettre de doubler ou de tripler la vitesse du téléchargement.

Par exemple, dans mon article sur l’extension Firefox DownThemAll: Pour télécharger plus rapidement et efficacement, j’avais  procédé à titre d’exemple au téléchargement de Netbeans à l’aide de cet accélérateur. Mais je n’avais pas précisé comment il s’y prenait pour accélérer le téléchargement. Ça peut facilement se voir en sélectionnant le fichier, et en laissant la souris quelques secondes dessus: Une fenêtre apparait alors qui donne des détails sur le téléchargement, comme l’illustre l’image suivante:

dta_netbeans_encours_600

Comme vous pouvez le voir, DownThemAll a procédé au téléchargement séparé des quatres quarts du fichier :).

4) Utilisation d’un torrent.

Les torrents sont ce qu’utilisent les logiciels de peer to peer. Ils sont donc souvent associés au piratage, et c’est dommage, car c’est un peu trop réducteur pour ce protocole génial. En effet les torrents sont de loin ce qui permet le débit de téléchargement le plus élevé. Et le principe de téléchargement est totalement différent des principes évoqués précédemment. Car cette fois ci, le téléchargement ne se fait plus entre un client et un serveur, mais entre un client et de nombreux serveurs qui sont des ordinateurs possédés par des particuliers.

Explication: La plupart des gens disposent d’une connexion ADSL. Le A signifie Asymétrique. En effet, les fournisseurs d’accès internet partent du principe que les gens téléchargent beaucoup plus de données qu’ils n’en mettent en ligne. Par conséquent le débit d’upload (c’est à dire de mise en ligne) est beaucoup plus réduit que le débit de download (téléchargement). Et de fait la plupart des gens n’utilisent pas ou peu ces capacités d’upload qui sont tout simplement perdues.

Le principe du peer to peer consiste à utiliser ces capacités inutilement perdues pour les autres. Vous mettez à dispositions des autres ceux des fichiers présents sur votre disque dur que vous voulez, et les autres font de même. Ensuite, quand vous aurez besoin de télécharger un fichier donné,votre logiciel va rechercher tous les ordinateurs sur lesquels ce fichier a été mis à disposition, et commencer le téléchargement d’un fragment à partir de chacun. Du coup si le fichier en question est populaire, votre vitesse de téléchargement atteindra des sommets de rapidités inégalés par rapport aux protocoles classiques. Par contre, bien sûr, si jamais il n’y a qu’une seule personne au monde qui possède ce que vous recherchez, vous mettrez peut être des mois en fonction de vous horaires de connexions respectifs, pour télécharger la totalité.

Et dernière bonne nouvelle, DownThemAll permet de télécharger certains liens vers des torents. Elle est décidément précieuse, cette extension :).

/!\ Mise en garde importante:
Par contre, je me dois de vous rappeler que le peer to peer est certes génial, mais l’utiliser pour le piratage, c’est mal. De plus, contrairement aux serveurs de téléchargements classiques qui sont généralement sécurisés par des professionnels, les ordinateurs à partir desquels vous téléchargez sont susceptibles de contenir des virus. La prudence élémentaire pour ceux qui utilisent Windows, impliquera d’attendre 15 jours après le téléchargement sans ouvrir le fichier (le temps que les antivirus répertorient les dernières nouveautés), puis de tout scanner systématiquement à l’antivirus. Les utilisateurs de Linux peuvent dormir tranquilles tant qu’ils ne lancent aucun logiciel en mode sudo.

Ce qui est génial avec un torrent, c’est que parfois vous n’avez même pas fini de télécharger quelque chose, qu’il y a déjà des gens qui sont en train de le télécharger de chez vous. Par contre attention à votre comportement. Quelqu’un qui ne met rien en partage et se contente d’exploiter le réseau sera mal noté, et pourra se voir interdire certaines fonctionnalités.

Conclusion:

Comme le montre ce billet, il existe donc plusieurs façons de procéder au téléchargement de fichiers. Chacune a ses avantages et ses inconvénients, c’est pour ça qu’il faut savoir s’adapter en fonction de la situation. Le téléchargement par HTTP est la solution la plus simple, mais également la moins efficace. L’utilisation d’un accélérateur de téléchargement permet de la rendre plus efficace, mais au prix d’un gaspillage des ressources du serveur. Le téléchargement par ftp est la solution la plus efficace, mais est difficile à mettre en œuvre, et pas aussi rapide qu’une connexion HTTP qui a été accélérée, enfin le téléchargement par torrents permet dans certains cas d’atteindre des vitesses de téléchargement bien meilleures que les autres solutions, mais au prix de risques en matière de sécurité. En outre, tous les serveurs n’offrent pas les mêmes possibilités de téléchargement.

Pour ceux qui désireraient aller plus loin, voici quelques liens Wikipedia:

Publicités

3 réflexions au sujet de « Introduction aux diverses solutions de téléchargement de fichiers »

  1. Ping : DownThemAll: Pour télécharger plus rapidement et efficacement. « Aldian’s Blog

  2. Olivier

    Je viens de tomber par hasard sur votre blog très instructif, et je cherche en vain depuis des semaines la raison pour laquelle Downthemall ne télécharge pas en plusieurs segments chez moi. A noter que j’ai essayé avec plusieurs sites différents.
    Y a-t-il qqch que je doive vérifier ? Si oui, quoi ?
    J’ai cherché partout, à croire que personne n’a nom problème…-_-

  3. aldiansblog Auteur de l’article

    Dans les préférences de l’extension, dans l’onglet network, une option permet de règler le nombre de téléchargement par serveur (normalement 4). Mais votre problème peut venir d’ailleurs.

    Les sites de partage de fichier par exemple bloquent ce genre d’accélérateurs aux non abonnés, et les serveurs ftp ne permettent que rarement de débuter un téléchargement au milieu

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s