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

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

Cette question peut être divisée en deux parties:

  1. Quel est le but général du contrôle des stream et de la congestion?
  2. Comment la tâche est-elle accomplie?

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

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

Le contrôle de stream 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 où une personne disposant d’une connexion rapide par fibre optique pourrait envoyer à quelqu’un par numérotation ou quelque chose de similaire. L’expéditeur aurait la possibilité d’envoyer des paquets très rapidement, mais cela serait inutile pour le destinataire en numérotation, de sorte qu’ils auraient besoin d’un moyen d’accélérer ce que l’envoi peut envoyer. Le contrôle de stream traite des mécanismes disponibles pour assurer le bon déroulement de cette communication.

Le contrôle de la congestion est une méthode permettant de garantir à tous les utilisateurs d’un réseau un access «é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 commun pour aider à comprendre ceci est un réseau local de bureau. Vous avez un certain nombre de segments LAN dans un bureau qui font tous leur travail dans le réseau local, mais ils peuvent tous devoir passer par une liaison WAN plus lente que les segments LAN constitutifs. Image ayant 100mb de connexions au sein du LAN qui finissent par passer par une liaison WAN de 5 Mo. Une sorte de contrôle de la congestion devrait être mise en place pour éviter tout problème sur l’ensemble du réseau.

En ce qui concerne la partie 2:

S’il s’agit d’une question de préparation à l’entretien, comme vous l’avez dit plus haut, je prendrais le temps de lire le protocole TCP / IP en général. Ne pas utiliser Wikipedia. RTFM! C’est TRES bien vaut votre temps. Vous pourriez faire valoir que c’est le protocole le plus important qui supporte la plupart des sites Internet modernes.

Choses à lire pour le contrôle de stream: arrêter et attendre, glissant la fenêtre, frameworks de PAUSE.

Choses à lire sur le contrôle de congestion: QoS (qualité de service), politiques de retransmission, politiques de fenêtrage.

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

Contrôle de stream: l’expéditeur enverra suffisamment de données pouvant être hébergées au niveau du destinataire.

Contrôle de la congestion: l’expéditeur réduira la quantité de paquets envoyés pour éviter de déborder de la mémoire tampon du routeur (queue).

Contrôle de stream:

  • Il s’assure que l’expéditeur ne surcharge pas le récepteur.
  • C’est un phénomène local, contrairement au contrôle de la 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 le chargement des 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.

Le contrôle de stream se fait principalement du côté du récepteur , afin d’ajuster la quantité de données que l’ expéditeur injecte dans le réseau; Le contrôle d’encombrement se fait principalement du côté de l’ expéditeur , en essayant de détecter l’encombrement sur le réseau en chronométrant les paquets ACK, afin d’ajuster le volume de données envoyé à la situation correspondante.

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

Le contrôle de stream, qui est défini d’un point à un autre, implique uniquement l’expéditeur et le destinataire.

Contrôle de la congestion : en plus d’empêcher le tampon du routeur de déborder, il gère également deux autres facteurs importants

  • Équité : la famine ne devrait survenir pour aucun hôte connecté au réseau. Bien que la terminologie soit beaucoup plus complexe.
  • Efficacité : les liaisons doivent être utilisées à leur capacité maximale de manière à ne pas provoquer de congestion.

Le contrôle de stream se fait du côté du récepteur. Si l’expéditeur envoie des paquets supérieurs à la taille de la mémoire tampon du récepteur, le débordement se produit dans 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 se fait du côté de l’expéditeur. C’est un phénomène mondial. Cela se produit 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.

Contrôle de stream:

  1. Lorsque le tampon de l’expéditeur est plein, nous empêchons la source d’envoyer les données afin que les données ne soient pas supprimées.
  2. Le tampon du récepteur est plein dans ce cas.
  3. Cela peut être réalisé facilement par protocole de fenêtre glissante.

Contrôle de la congestion

  1. Lorsque nous commençons à transmettre les données depuis la source, elles atteignent la destination à l’aide du réseau. Contrôle de la congestion empêchant la source afin que les données ne soient pas supprimées par le routeur du réseau.

  2. Ce problème est lié à la queue du routeur

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

Contrôle de stream: indique combien de réseau est capable d’absorber, fenêtre d’encombrement; Contrôle de la congestion: indique combien de récepteur est capable d’absorber, fenêtre annoncée; Max_window de l’expéditeur = min (fenêtre annoncée, fenêtre d’encombrement);