Algorthime TCP

Algorithme TCP

Il existe des algorithmes de TCP différents pour répondre à l'augmentation de la bande passante des liaisons : en effet les premiers algorithmes utilisés historiquement seraient incapables de faire monter le débit suffisamment rapidement pour saturer un lien réseau à 100 Mbit/s, débit typique des réseaux locaux dans les années 2000.

Les différents algorithmes TCP sont, parmi les plus connus:

  • TCP tahoe
  • TCP Reno
  • TCP new Reno
  • TCP Vegas

Il faut comprendre que l'algorithme TCP ne connait jamais le débit optimal à utiliser pour un lien : d'ailleurs il est difficile a estimer. IP qui porte TCP ne garantit pas que le chemin sera stable dans le temps à travers le réseau, d'où une impossibilité à prédire le débit à utiliser. De plus le débit est aussi conditionné par d'autres facteurs comme l'existence de flux concurrents sur une partie du chemin (par exemple vous pouvez avoir plusieurs téléchargements simultanés sur des serveurs ayant différents niveaux de performance).

C'est ainsi que TCP va essayer de deviner le meilleur débit à utiliser en essayant de toujours augmenter le débit jusqu'à la survenue d'une perte de paquet parce que le réseau n'arrive pas à absorber tout le débit. En effet, les réseaux informatiques sont conçus pour être les plus simples possibles et c'est la seule possibilité qu'à un réseau pour avertir les utilisateurs qu'il est saturé.

On distingue les algorithmes TCP par la forme du "slow-start" (démarrage lent) et leur façon d'utiliser la bande passante disponible. On parle parfois d'agressivité du protocole.

  • augmentation linéaire/exponentielle du débit
  • diminution linéaire/exponentielle du débit après un événement (perte de paquets, dépassement d'un seuil, ..) ,
  • l'existence de seuils de débit dans l'algorithme (par exemple l'augmentation peut devenir prudente une fois qu'elle arrive au niveau de sa dernière meilleure performance).

Il n'est pas aisé de parler de meilleure version TCP : il y a des versions adaptées aux réseaux très hauts débits, il y a des versions adaptées aux petits débits, il y a des versions adaptées aux réseaux qui font beaucoup d'erreurs.

Enfin, on observe que les algorithmes TCP sont tous compatibles entre eux (puisqu'il n'y a pas de modification du segment TCP mais seulement une variation sur leur vitesse d'arrivée). Par exemple MS Vista utilise Compound TCP alors que les noyaux linux utilisent TCP CUBIC depuis les noyaux 2.6.19

  • Portail de l’informatique Portail de l’informatique
Ce document provient de « Algorithme TCP ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Algorthime TCP de Wikipédia en français (auteurs)

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”