ScholarGate
Assistant

Couche de transport et contrôle de congestion

La couche de transport étend la livraison d'hôte à hôte à la communication de processus à processus, offrant aux applications soit des flux d'octets fiables, ordonnés et contrôlés par la congestion (TCP), soit des datagrammes légers sans connexion (UDP), tandis que le contrôle de congestion régule les débits d'envoi afin que le réseau partagé ne s'effondre pas.

Trouver un sujet avec PaperMindBientôtFind papers & topics
Tools & resources
Télécharger les diapositives
Learn & explore
VidéoBientôt

Definition

La couche de transport est la couche protocolaire qui assure la communication logique entre les processus applicatifs s'exécutant sur différents hôtes, ajoutant des services tels que le multiplexage, la livraison fiable, le contrôle de flux et le contrôle de congestion, en plus de la livraison d'hôte à hôte de la couche réseau.

Scope

Ce domaine couvre les services de transport de bout en bout : le multiplexage et le démultiplexage des données vers les processus applicatifs, les principes du transfert de données fiable sur un réseau non fiable (accusés de réception, retransmission, numéros de séquence, fenêtres glissantes), le protocole de contrôle de transmission orienté connexion et le protocole de datagramme utilisateur sans connexion, ainsi que la théorie et la pratique du contrôle de congestion. Il exclut le routage des paquets à travers le réseau (couche réseau) et les protocoles applicatifs qui utilisent les services de transport (couche application).

Sub-topics

Core questions

  • Comment la couche de transport livre-t-elle les données au processus applicatif correct via le multiplexage et le démultiplexage ?
  • Comment une livraison fiable et ordonnée peut-elle être construite sur un réseau non fiable et sujet aux pertes ?
  • Comment fonctionnent les mécanismes d'établissement de connexion, de contrôle de flux et de fiabilité de TCP ?
  • Quand une application devrait-elle utiliser UDP plutôt que TCP ?
  • Comment le contrôle de congestion détecte-t-il et répond-il à la surcharge du réseau tout en restant équitable ?

Key concepts

  • multiplexage et démultiplexage
  • ports et sockets
  • transfert de données fiable
  • fenêtre glissante, go-back-N, répétition sélective
  • poignée de main à trois voies TCP
  • contrôle de flux
  • contrôle de congestion
  • augmentation additive/diminution multiplicative (AIMD)
  • démarrage lent et évitement de congestion
  • Protocole de datagramme utilisateur (UDP)

Key theories

Transfert de données fiable sur un canal non fiable
La fiabilité est construite à partir d'accusés de réception, de temporisateurs de retransmission, de numéros de séquence et de protocoles à fenêtre glissante (go-back-N et répétition sélective) qui détectent et récupèrent les pertes, les duplications et les réordonnancements malgré un réseau sous-jacent non fiable.
Contrôle de congestion TCP
TCP déduit la congestion de la perte de paquets et ajuste sa fenêtre d'envoi avec des dynamiques d'augmentation additive/diminution multiplicative — démarrage lent, évitement de congestion et récupération rapide — pour sonder la bande passante disponible tout en se retirant brusquement en cas de perte.
Transport sans connexion versus orienté connexion
UDP offre un service léger et sans connexion, sans établissement, fiabilité ou contrôle de congestion, minimisant le délai et la surcharge, tandis que TCP offre un flux d'octets orienté connexion, fiable et contrôlé par la congestion ; le choix échange la latence et le contrôle contre des garanties.

Clinical relevance

Le comportement de la couche de transport façonne la performance de presque toutes les applications en réseau : TCP assure de manière fiable les transferts web, de courrier électronique et de fichiers, tandis que UDP est à la base des utilisations à faible latence telles que DNS, la voix et la vidéo en temps réel, et de nombreux jeux. Le contrôle de congestion est ce qui a empêché l'Internet de s'effondrer sous la charge depuis la fin des années 1980, et les travaux en cours sur des algorithmes tels que CUBIC et BBR et des protocoles tels que QUIC continuent d'ajuster l'équilibre latence-débit-équité.

History

TCP et IP étaient à l'origine un seul protocole dans la conception de Cerf-Kahn de 1974 et ont été séparés par la suite, avec l'ajout d'UDP (RFC 768, 1980) pour les applications nécessitant uniquement un service de datagramme de base. Après une série d'effondrements de congestion sur l'Internet primitif, les travaux de Van Jacobson en 1988 ont introduit les algorithmes de démarrage lent (slow-start) et d'évitement de congestion (congestion-avoidance) qui restent le fondement du contrôle de congestion TCP, affinés au fil des décennies en des variantes telles que Reno, CUBIC et BBR.

Debates

Contrôle de congestion basé sur la perte versus basé sur le délai et basé sur un modèle
Le TCP classique déduit la congestion de la perte de paquets, ce qui peut sous-utiliser les liaisons à haute bande passante et à haute latence et réagir tardivement, incitant à des algorithmes basés sur le délai et sur un modèle tels que BBR ; le débat se poursuit sur l'équité et la déployabilité lorsque de tels algorithmes coexistent avec ceux basés sur la perte.

Key figures

  • Van Jacobson
  • Jon Postel
  • Vinton Cerf
  • Sally Floyd

Related topics

Seminal works

  • kurose2021
  • jacobson1988
  • rfc9293

Frequently asked questions

Quand devrais-je utiliser UDP plutôt que TCP ?
Utilisez UDP lorsque la faible latence est plus importante que la livraison garantie et que vous pouvez tolérer ou gérer vous-même les pertes — par exemple pour la voix/vidéo en temps réel, les requêtes DNS ou les jeux. Utilisez TCP lorsque vous avez besoin d'une livraison fiable et ordonnée et d'un contrôle de congestion intégré, comme pour les pages web, les transferts de fichiers et le courrier électronique.
Que fait réellement le contrôle de congestion ?
Le contrôle de congestion ajuste la vitesse à laquelle un expéditeur injecte des données dans le réseau en fonction des signaux de congestion, généralement la perte de paquets ou le délai. En se retirant lorsque le réseau est surchargé et en sondant la capacité disponible autrement, il maintient le trafic agrégé près de la capacité du réseau et partage la bande passante de manière approximativement équitable entre les flux.

Methods for this concept

Related concepts