Réseaux & Télécoms PDF Gratuit

Cours Couche transport TCP/UDP en PDF (Intermédiaire)

La couche transport : les protocoles TCP et UDP. La couche transport assure le transfert de données de processus à processus en ajoutant des numéros de port, des en‑têtes de segment/datagramme et, pour TCP, des mécanismes de contrôle d'état et de fiabilité. Dans les architectures TCP/IP elle relie les applications (sockets, services) à la couche réseau.

Note : Ce PDF de 34 pages est optimisé pour une lecture hors‑ligne, idéal pour réviser les mécanismes de segmentation et les en‑têtes TCP/UDP avant un examen ou un TP.

🎯 Ce que vous allez apprendre

  • Le modèle client/serveur et les sockets — définition précise du modèle applicatif et rôle des sockets comme interface locale entre processus et pile TCP/IP. Vous comprendrez pourquoi un socket s'identifie par la quadruplet (@IP_src,port_src,@IP_dest,port_dest) et saurez configurer et diagnostiquer des connexions simples côté client et serveur.
  • Numéros de port et correspondance services/protocoles — organisation et usage des ports (ports réservés <1024 pour services bien connus) et leur rôle lors de la désencapsulation. À l'issue, vous pourrez repérer un service par son port et interpréter des captures de paquets pour associer flux et applications.
  • UDP : datagramme, en‑tête et mode non connecté — lecture de l'en‑tête UDP de 8 octets (ports source/destination, longueur, checksum) et implications du mode best‑effort décrit par la RFC 768. Vous serez en mesure de justifier le choix d'UDP pour des applications sensibles au débit (streaming, VoIP, DNS) et d'implémenter une logique applicative simple de reprise sur perte.
  • TCP : connectivité et mécanismes de fiabilité — concepts de segment, état connecté, ACKs et retransmissions, logique de contrôle (fenêtre, timers) et stratégie d'adaptation au réseau. Vous saurez analyser le handshake et mesurer pourquoi TCP impose un débit adaptatif en présence de congestion.
  • Encapsulation et désencapsulation entre Ethernet, IP et transport — parcours du paquet depuis l'application jusqu'au lien (trame Ethernet, en‑tête IP, segment/datagramme) et identification des champs (EtherType, numéro de protocole IP, port TCP/UDP). Vous pourrez lire une pile protocolaire dans une trame capturée et localiser où agir pour diagnostiquer un problème de bout en bout.

Positionnement dans le modèle OSI

La couche transport correspond à la couche 4 du modèle OSI. Elle reçoit des données des processus applicatifs et les segmente avant de confier ces segments à la couche réseau (couche 3). Le rôle principal est d'assurer la livraison processus‑à‑processus : multiplexage/démultiplexage via les numéros de port, contrôle de flux et, selon le protocole, fourniture de mécanismes de fiabilité. Comprendre ce positionnement facilite l'analyse des captures réseau et la localisation des problèmes entre application, transport et réseau.

Architecture et encapsulation dans le modèle OSI

  • L'application fournit des données à la couche transport ; la couche transport ajoute un en‑tête (ports, flags, numéros de séquence, checksum) pour former la PDU de couche 4.
  • La couche réseau encapsule le segment dans un paquet IP en ajoutant les adresses source/destination et le numéro de protocole (6 pour TCP, 17 pour UDP).
  • La couche lien place le paquet IP dans une trame (EtherType, adresses MAC) pour transmission sur le support physique.
  • La remontée à la réception opère l'inverse : décapsulation lien → réseau → transport, vérification des checksums et acheminement vers le socket approprié via le multiplexage des ports.
  • Les mécanismes de fragmentation, le routage et les contraintes de MTU interviennent principalement au niveau réseau et lien ; le document propose des diagrammes et captures annotées pour repérer chaque en‑tête et points d'action lors d'un diagnostic.

Concepts clés de la couche transport

Les concepts fondamentaux incluent la segmentation des données, le multiplexage/démultiplexage, les numéros de port et les PDU. Le multiplexage autorise plusieurs flux applicatifs à partager une même interface réseau via l'adressage portuaire, et ces mécanismes facilitent l'identification des flux dans une capture pour appliquer des politiques de contrôle de flux et de congestion adaptées.

Segmentation et réassemblage : la couche transport découpe le flux applicatif en unités adaptées aux limites du réseau et des buffers récepteurs puis réassemble ces unités à la réception. Dans un tutoriel TCP UDP, la compréhension de la segmentation réseau est essentielle pour diagnostiquer des fragments perdus, estimer la charge de traitement et concevoir un protocole de communication applicatif tolérant aux pertes.

Définition des PDU en couche 4

Au niveau transport, on parle de PDU (Protocol Data Unit) pour désigner l'unité traitée : datagramme pour UDP, segment pour TCP. La PDU contient les informations de multiplexage (ports), de contrôle (séquence, ACK) et d'intégrité (checksum), éléments essentiels pour diagnostiquer une transmission full‑duplex ou une perte de segments.

Comparatif : Quand choisir TCP plutôt qu'UDP ?

Le choix entre TCP et UDP dépend des exigences de l'application : besoin de fiabilité, tolérance à la latence, overhead accepté et simplicité de mise en œuvre. TCP convient aux transferts nécessitant garantie d'arrivée et ordre (ex. HTTP, FTP), tandis qu'UDP est adapté aux flux temps réel où la latence prime sur la fiabilité (ex. VoIP, streaming).

Critère TCP UDP
Fiabilité Fiable (ACKs, retransmissions) Best‑effort (pas de retransmission automatique)
Vitesse / Latence Plus de latence due aux contrôles Faible latence, adapté au temps réel
Mode Connecté (état par connexion) Non connecté (datagramme)
Overhead Plus élevé (séquences, fenêtres, timers) Faible (entête de 8 octets)

Le rôle de la RFC 793

La RFC 793 définit les spécifications originales du protocole TCP : format des segments, mécanismes d'établissement et de terminaison des connexions, gestion des séquences et des accusés, ainsi que comportements attendus en cas d'erreurs. En complément de la RFC 768 pour UDP, la RFC 793 reste la référence normative pour l'implémentation et l'interprétation des comportements TCP observés sur le terrain.

Three‑way handshake

Le three‑way handshake établit une connexion TCP en trois échanges : le client envoie un segment SYN, le serveur répond par SYN‑ACK, puis le client confirme par un ACK final. Ce processus initialise les numéros de séquence et établit l'état connecté sur les deux hôtes. TCP fournit un canal bidirectionnel en mode full‑duplex : chaque extrémité peut transmettre et recevoir simultanément, grâce à des espaces de séquence séparés pour chaque direction, ce qui permet des flux indépendants et une communication efficace lors de l'analyse de captures réseau.

Contrôle de flux et contrôle de congestion

TCP gère le contrôle de flux (pour éviter de submerger le récepteur) et le contrôle de congestion (pour s'adapter à l'état du réseau). Le contrôle de flux utilise une fenêtre glissante annoncée par le destinataire. Le contrôle de congestion met en œuvre des algorithmes tels que Slow Start et Congestion Avoidance : Slow Start augmente le débit de manière exponentielle pour découvrir la capacité disponible, puis Congestion Avoidance adapte la croissance de la fenêtre pour limiter les pertes. Ces mécanismes expliquent le comportement adaptatif observé lors d'échanges à travers des liens partagés ou dégradés.

Pourquoi ce tutoriel PDF est une référence

Rédigé par Olivier Glück (Université Lyon 1), ce tutoriel TCP UDP propose une approche pédagogique adaptée au niveau intermédiaire : explications techniques, schémas d'encapsulation, captures annotées et exercices de diagnostic. La synthèse met l'accent sur la segmentation réseau, la lecture des PDU couche transport et les choix d'architecture entre fiabilité et latence. Ce document sert de support de révision avant TP ou examen et facilite la mise en pratique des concepts tels que le full‑duplex et la gestion des ports.

👤 À qui s'adresse ce cours ?

  • Public cible : étudiants en Licence 1 informatique ou math‑info, techniciens réseau en formation et développeurs souhaitant comprendre les fondements transport pour diagnostiquer ou concevoir des applications réseau.
  • Prérequis : notions d'adressage IP et du modèle OSI/TCP‑IP, compréhension basique des processus et familiarité minimale avec la ligne de commande ou un langage permettant d'ouvrir des sockets.

❓ Foire Aux Questions (FAQ)

En quoi le checksum UDP protège‑t‑il les datagrammes ?

Le checksum UDP couvre l'en‑tête et les données pour détecter les corruptions de bits pendant le transport. Dans IPv4 il peut être laissé à zéro (non calculé), mais son usage est recommandé car il permet de détecter des altérations sans fournir de mécanisme de retransmission automatique. Toute correction doit être gérée au niveau applicatif si nécessaire.

Quels mécanismes TCP assurent la fiabilité de bout en bout ?

TCP combine l'établissement de connexion (three‑way handshake), des ACKs, des timers et des retransmissions pour corriger les pertes, la fenêtre glissante pour le contrôle de flux et des stratégies de contrôle de congestion (Slow Start, Congestion Avoidance) pour adapter le débit en cas de perte ou de délai élevé sur le réseau.

Cas d'usage réels : TCP vs UDP

  • Streaming vidéo (UDP) — les applications de streaming en temps réel privilégient UDP pour réduire la latence et éviter le retard induit par les retransmissions. Le traitement applicatif doit tolérer la perte de paquets et compenser par des techniques de buffering.
  • Transfert de fichiers (TCP) — les transferts qui exigent intégrité et ordre (par ex. FTP, sauvegardes) utilisent TCP pour garantir la complétude via ACKs et retransmissions, au prix d'un overhead supplémentaire.
  • VoIP et visioconférence (UDP) — la voix sur IP préfère la faible latence d'UDP ; la correction d'erreurs est généralement gérée côté application par des codecs et des stratégies de concealment.
  • Services d'infrastructure (DNS) — DNS utilise majoritairement UDP pour requêtes rapides, mais bascule sur TCP pour les transferts de zone ou les réponses volumineuses, illustrant le choix pragmatique entre latence et fiabilité.