web-dev-qa-db-fra.com

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 le but 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 congestion s'appuie également sur des messages d'accusé de réception. J'aimerais savoir quelle est la différence entre ces deux objectifs et comment ils fonctionnent.

71
GM Lucid

Quant à la partie 1, super aperçu général:

Le contrôle de flux est contrôlé par le côté récepteur. Cela garantit que l'expéditeur envoie uniquement ce que le destinataire peut gérer. Pensez à une situation dans laquelle une personne disposant d'une connexion fibre rapide pourrait l'envoyer à quelqu'un par ligne commutée ou quelque chose de similaire. L'expéditeur aurait la possibilité d'envoyer des paquets très rapidement, mais cela ne servirait à rien au destinataire lors de l'accès commuté, il aurait donc besoin d'un moyen de limiter les envois de son côté. Le contrôle de flux traite des mécanismes disponibles pour assurer le bon déroulement de la communication.

Le contrôle de la congestion est une méthode permettant d’assurer à tout le monde sur un réseau un accès "équitable" aux ressources du réseau, à tout moment. Dans un environnement de réseau mixte, tout le monde doit pouvoir assumer le même niveau général de performance. Un scénario courant permettant de comprendre ceci est un réseau local de bureau. Vous avez plusieurs segments de réseau local dans un bureau qui font tous leur travail dans le réseau local, mais ils devront peut-être tous passer par une liaison WAN plus lente que les segments de réseau local constitutifs. Imaginez que le réseau local dispose de connexions de 100 Mo qui passent par une liaison de 5 Mo WAN. Une sorte de contrôle de la congestion devrait être mis en place dans cette zone pour éviter tout problème sur l'ensemble du réseau.

Quant à la partie 2:

Comme il s’agit d’une question préparatoire à l’entrevue, comme vous l’avez dit plus haut, j’envisagerais de prendre un peu de temps pour en savoir plus sur TCP/IP en général. N'utilisez pas Wikipedia. RTFM! Cela vaut TRES beaucoup votre temps. On pourrait dire que c'est le protocole le plus important qui bloque la plupart des connexions Internet modernes.

Pour en savoir plus sur le contrôle de flux: arrêter et attendre, fenêtre glissante, cadres PAUSE.

Pour en savoir plus sur le contrôle de la congestion: qualité de service (QoS), règles de retransmission, règles de fenêtrage.

Au-delà, vous pouvez rechercher des implémentations de fournisseurs particuliers (Cisco, etc.).

110
JP Doherty

Contrôle de flux: l'expéditeur enverra suffisamment de données pouvant être hébergées chez le destinataire.

Contrôle d'encombrement: l'expéditeur réduira le nombre de paquets envoyés pour éviter de saturer la mémoire tampon du routeur (file d'attente).

21
Faizan

Contrôle de flux:

  • Il s'assure que l'expéditeur ne surcharge pas le destinataire.
  • C'est un phénomène local, contrairement au contrôle de congestion.
  • C'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 de paquets.
  • C'est un phénomène mondial qui affecte tous les hôtes connectés à ce réseau.
  • C'est initié par le routeur.
18
आनंद

Le contrôle de flux est principalement effectué du côté du récepteur , pour ajuster la quantité de données que l'expéditeur injecte dans le réseau; Le contrôle de congestion est principalement effectué du côté de l'expéditeur , en essayant de détecter une congestion sur le réseau par la synchronisation des paquets ACK, afin d'ajuster le volume de données envoyées à la situation correspondante.

3
Robert Mutua

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

Le contrôle de flux, qui s’étend d’un point à l’autre, ne concerne que l’émetteur et le destinataire.

3
sathosh

Le contrôle de flux est effectué côté récepteur. Si l'expéditeur envoie des paquets supérieurs à la taille de la mémoire tampon du destinataire, un dépassement de capacité se produit au niveau de la mémoire tampon du destinataire. Pour éviter ce débordement du côté du récepteur, une technique de fenêtrage est utilisée du côté de l'expéditeur… .. Le contrôle de la congestion est effectué du côté de l'expéditeur. C'est un phénomène mondial. Cela se passe au routeur. La mémoire tampon du routeur déborde lorsque de nombreux expéditeurs tentent de transmettre davantage de paquets via le même lien.

2
Nitss

Contrôle de la congestion : En plus d'empêcher le tampon du routeur de déborder, il traite également de deux autres facteurs importants

  • Équité : La famine ne devrait pas se produire pour les hôtes connectés au réseau.Bien que la terminologie soit beaucoup plus complexe.
  • Efficacité : Les liens doivent être utilisés au maximum de leur capacité de manière à ne pas causer de congestion.
2
Kabir Sahni

Contrôle de flux:  

  1. Lorsque la mémoire tampon de l'expéditeur est saturée, nous empêchons la source d'envoyer les données afin qu'elles ne soient pas supprimées.
  2. La mémoire tampon du récepteur est pleine dans ce cas.
  3. Cela peut être réalisé facilement en glissant le protocole de fenêtre.

Contrôle de la congestion

  1. Lorsque nous commençons à transmettre les données à partir de la source, elles atteignent la destination à l'aide du réseau. Le contrôle de congestion empêche la source de sorte que les données ne doivent pas être abandonnées par le routeur du réseau.

  2. Ce problème est lié à la file d'attente du routeur.

  3. Il est plus compliqué à réaliser car le routeur reçoit différents paquets de la source différente connectée à son réseau.

0
imsaiful