Controle de congestion

Ce matériel couvre les principes fondamentaux du contrôle de congestion dans les réseaux informatiques, en particulier le rôle des routeurs et le fonctionnement du protocole TCP. Il s'adresse aux étudiants en informatique ou en réseaux souhaitant comprendre comment les paquets sont gérés pour éviter la saturation du réseau.

D'après le document Controle de congestion

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Controle de congestion

Document source

Controle de congestion

Networking, TCP, Congestion Control · PDF · 2 pages

Afficher l'aperçu du document

Consulter le document original →

Ce matériel couvre les principes fondamentaux du contrôle de congestion dans les réseaux informatiques, en particulier le rôle des routeurs et le fonctionnement du protocole TCP. Il s'adresse aux étudiants en informatique ou en réseaux souhaitant comprendre comment les paquets sont gérés pour éviter la saturation du réseau.

Routeur et congestion

Un routeur peut être modélisé comme un processeur accompagné de plusieurs buffers d’entrée et de sortie. Lorsqu’un paquet IP arrive par un lien, il est placé dans un buffer d’entrée en attendant d’être traité. Le processeur du routeur examine l’en-tête IP pour déterminer vers quel buffer de sortie diriger le paquet.

Remplissage des buffers :

  • Les buffers d’entrée se remplissent si le débit du lien entrant est supérieur à la vitesse de traitement des paquets par le routeur.
  • Les buffers de sortie se remplissent si le débit du lien sortant est trop faible pour transmettre les paquets aussi rapidement qu’ils arrivent.

Congestion : Lorsque les buffers sont pleins, le routeur jette les paquets sans avertir l’émetteur. Cette situation est appelée congestion. Bien que prévenir l’émetteur pourrait sembler utile, cela demanderait un traitement supplémentaire au routeur déjà saturé, ce qui aggraverait la congestion. Cependant, ne pas prévenir l’émetteur signifie que celui-ci continue d’envoyer des paquets au même rythme, prolongeant ainsi le problème.

Le protocole TCP et le contrôle de congestion

Du point de vue de l’émetteur, il est crucial d’utiliser au maximum la capacité du réseau sans provoquer de congestion. Une connaissance parfaite des caractéristiques du chemin (débit maximal des liens, vitesse des routeurs) ne suffit pas, car le lien est partagé avec d’autres trafics.

Principe de TCP :

  • Lorsqu’une connexion TCP est établie, l’émetteur initialise une fenêtre de congestion à 1 paquet et fixe un seuil (threshold) à 64 Ko.
  • Pour chaque paquet reçu, le destinataire envoie un accusé de réception (ACK).
  • La fenêtre de congestion représente le nombre de paquets pouvant être en transit simultanément dans le réseau.
  • La réception d’un ACK indique à l’émetteur qu’il n’y a pas de problème sur le réseau.

Évolution de la fenêtre de congestion :

  • Phase Slow Start : Si la fenêtre de congestion est inférieure au threshold, elle augmente de 1 paquet à chaque ACK reçu.
  • Phase Congestion Avoidance : Si la fenêtre est supérieure au threshold, elle augmente de 1/n à chaque ACK, où n est la taille actuelle de la fenêtre.
  • En cas de perte d’un paquet, la fenêtre est remise à 1 et le threshold est divisé par 2.

Détection de la perte de paquet

TCP détecte une perte de paquet soit par l’absence d’ACK, soit par la réception d’un ACK pour un paquet hors séquence (par exemple, recevoir ACK3 alors que ACK1 a été reçu).

Exemples d’évolution de la fenêtre de congestion

Phase Slow Start (croissance exponentielle) :

La fenêtre commence à 1 paquet. Après réception de l’ACK, elle passe à 2. Quand ces 2 paquets sont acquittés, la fenêtre passe à 4, puis 8, et ainsi de suite.

Phase Congestion Avoidance (croissance linéaire) :

Si la fenêtre a une taille n, elle augmente de 1/n à chaque ACK, ce qui correspond à une augmentation d’un paquet complet par cycle complet d’acquittement de la fenêtre.

Exemple numérique

Considérons des paquets de taille 1 Ko. Le threshold initial fixé à 64 Ko correspond donc à :

threshold = 64 Ko / 1 Ko = 64 paquets

Ce seuil détermine la transition entre la phase Slow Start et la phase Congestion Avoidance.

Diagramme de la fenêtre de congestion

Au début de la mesure, la fenêtre de congestion est à 1 paquet et le threshold à 64 paquets. Supposons qu’au temps 13 un paquet est perdu :

  • La fenêtre est alors remise à 1 paquet.
  • Le threshold est divisé par 2, passant de 64 à 32 paquets.
  • De temps 13 à 24, la fenêtre augmente selon les règles de TCP, d’abord en Slow Start jusqu’à atteindre le nouveau threshold, puis en Congestion Avoidance.

Glossaire des termes clés

  • Buffer : Mémoire temporaire utilisée pour stocker les paquets en attente de traitement ou de transmission.
  • Congestion : Situation où les buffers d’un routeur sont pleins, entraînant la perte de paquets.
  • Fenêtre de congestion : Nombre maximal de paquets qu’un émetteur TCP peut envoyer sans recevoir d’ACK.
  • Threshold : Seuil qui détermine la transition entre les phases Slow Start et Congestion Avoidance dans TCP.
  • Slow Start : Phase initiale où la fenêtre de congestion augmente de façon exponentielle.
  • Congestion Avoidance : Phase où la fenêtre de congestion augmente de façon linéaire pour éviter la saturation du réseau.
  • ACK (Accusé de réception) : Message envoyé par le destinataire pour confirmer la réception d’un paquet.
  • Perte de paquet : Situation où un paquet n’est pas reçu ou son ACK n’est pas reçu, indiquant un problème de transmission.

Points clés à retenir

  • Les buffers des routeurs peuvent se remplir en cas de déséquilibre entre débit entrant, vitesse de traitement et débit sortant.
  • La congestion se manifeste par la perte de paquets lorsque les buffers sont pleins.
  • TCP utilise une fenêtre de congestion pour contrôler le nombre de paquets en transit et éviter la congestion.
  • La fenêtre de congestion augmente exponentiellement en phase Slow Start et linéairement en phase Congestion Avoidance.
  • La détection de perte de paquets repose sur l’absence d’ACK ou la réception d’ACK hors séquence.
  • En cas de perte, TCP réduit la fenêtre à 1 et divise le threshold par 2 pour limiter la charge sur le réseau.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions