93 votes

Quelle est la différence entre le contrôle de flux et le contrôle de congestion dans TCP ?

Quelle est la différence entre le contrôle de flux et le contrôle de congestion dans TCP ?

Cette question peut être décomposée en deux parties :

  1. Quel est l'objectif général du contrôle de flux et de congestion ?
  2. Comment la tâche est-elle accomplie ?

Selon Wikipedia Le contrôle de flux TCP repose sur la taille de la fenêtre indiquée dans un message ACK. Le contrôle de la congestion repose également sur les messages d'accusé de réception. J'aimerais savoir quelle est la différence entre ces deux objectifs, et comment ils fonctionnent.

135voto

JP Doherty Points 1481

En ce qui concerne la partie 1, super aperçu général :

Le contrôle de flux est contrôlé par le côté réception. Il garantit que l'expéditeur n'envoie que ce que le récepteur peut traiter. Pensez à une situation où une personne disposant d'une connexion rapide en fibre optique enverrait un message à une personne disposant d'un accès commuté ou quelque chose de similaire. L'expéditeur aurait la possibilité d'envoyer des paquets très rapidement, mais cela ne servirait à rien pour le récepteur en ligne commutée, qui aurait donc besoin d'un moyen de limiter ce que l'expéditeur peut envoyer. Le contrôle de flux concerne les mécanismes disponibles pour garantir le bon déroulement de cette communication.

Le contrôle de l'encombrement est une méthode qui permet de s'assurer que tous les utilisateurs d'un réseau ont un accès "équitable" aux ressources du réseau, à tout moment. Dans un environnement de réseau mixte, chacun doit pouvoir bénéficier du même niveau général de performance. Un scénario commun pour aider à comprendre ceci est un LAN de bureau. Vous avez un certain nombre de segments de réseau local dans un bureau, qui font tous leur travail à l'intérieur du réseau local, mais ils peuvent ensuite avoir besoin de sortir sur un lien WAN qui est plus lent que les segments de réseau local constituants. Imaginez des connexions de 100 mégaoctets au sein du réseau local qui, en fin de compte, sortent par une liaison WAN de 5 mégaoctets. Il faudrait mettre en place une sorte de contrôle de la congestion pour s'assurer qu'il n'y a pas de problèmes sur le réseau étendu.

Quant à la partie 2 :

S'il s'agit d'une question de préparation à l'entretien, comme vous l'avez dit plus haut, j'envisagerais de prendre le temps de me documenter sur TCP/IP en général. N'utilisez pas Wikipedia. RTFM ! Cela vaut vraiment la peine d'y consacrer du temps. On pourrait dire que c'est le protocole le plus important qui sous-tend la majeure partie de l'Internet moderne.

Les éléments à lire pour le contrôle de flux : arrêt et attente, fenêtre coulissante, trames PAUSE.

Des informations à lire pour le contrôle de la congestion : QoS (Quality-of-Service), politiques de retransmission, politiques de fenêtrage.

En outre, vous pouvez rechercher les implémentations d'un fournisseur particulier (Cisco, etc.).

29voto

Faizan Points 306

Contrôle du débit : L'expéditeur envoie suffisamment de données pour qu'elles puissent être reçues par le récepteur.

Contrôle de la congestion : L'expéditeur réduit la quantité de paquets envoyés pour éviter de déborder de la mémoire tampon (file d'attente) du routeur.

22voto

आनंद Points 678

Contrôle du débit :

  • Il veille à ce que l'expéditeur ne surcharge pas le récepteur.
  • Il s'agit d'un phénomène local, contrairement au contrôle de la congestion.
  • Il est généralement initié par l'expéditeur.

Contrôle de la congestion :

  • Il s'assure que le réseau est capable de gérer la charge des paquets.
  • C'est un phénomène mondial qui affecte chaque hôte connecté à ce réseau.
  • Il est initié par le routeur.

5voto

sathosh Points 51

Le contrôle de la congestion est un problème global - il concerne chaque routeur et hôte du sous-réseau.

Le contrôle de flux, qui s'effectue d'un point à un autre, ne concerne que l'émetteur et le récepteur.

4voto

Robert Mutua Points 47

Contrôle du débit se fait principalement sur le côté récepteur pour ajuster la quantité de données que le expéditeur est injecté dans le réseau ; contrôle de congestion se fait principalement sur le côté émetteur en essayant de détecter l'encombrement du réseau par la synchronisation des paquets ACK, afin d'ajuster le volume des données envoyées à la situation correspondante.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X