5. Modifications par rapport à la RFC 793 (Changes from RFC 793)
Cette section résume les principales modifications apportées dans ce document par rapport à la RFC 793 et ses mises à jour ultérieures.
5.1. Modifications de la spécification du protocole
Mises à jour du format d'en-tête :
- Mise à jour des bits de contrôle de l'en-tête TCP selon la RFC 3168, ajoutant les drapeaux CWR (Congestion Window Reduced, fenêtre de congestion réduite) et ECE (ECN-Echo, écho ECN)
- Clarification des exigences de traitement pour les bits réservés
Traitement des numéros de séquence :
- Clarification du mécanisme de sélection du numéro de séquence initial (Initial Sequence Number, ISN)
- Mise à jour de la comparaison des numéros de séquence et du traitement du bouclage
Gestion des connexions :
- Ajout d'une clarification pour le traitement des réinitialisations (Reset) dans l'état SYN-RECEIVED (met à jour la RFC 5961)
- Clarification du traitement de l'ouverture simultanée (Simultaneous Open)
- Mise à jour de la durée et du traitement de l'état TIME-WAIT
Traitement des options :
- Clarification de l'ensemble des options obligatoires : End of Option List, No-Operation, Maximum Segment Size
- Mise à jour des exigences de traitement pour les options inconnues
- Ajout de références aux options expérimentales
5.2. Contenu obsolète
Ce document rend obsolètes les RFC suivantes :
- RFC 793 - Spécification TCP originale (1981)
- RFC 879 - Taille maximale de segment TCP et sujets connexes
- RFC 2873 - Traitement TCP du champ de précédence IPv4
- RFC 6093 - Sur l'implémentation du mécanisme urgent TCP
- RFC 6429 - Clarification de l'expéditeur TCP pour la condition de persistance
- RFC 6528 - Défense contre les attaques par numéro de séquence
- RFC 6691 - Options TCP et taille maximale de segment (MSS)
5.3. Contenu mis à jour
Ce document met à jour les RFC suivantes :
- RFC 1011 - Protocoles Internet officiels (section TCP)
- RFC 1122 - Exigences pour les hôtes Internet -- Couches de communication (section TCP)
- RFC 5961 - Amélioration de la robustesse de TCP aux attaques aveugles dans la fenêtre (traitement de l'état SYN-RECEIVED)
5.4. Améliorations de sécurité
- Ajout de mécanismes de protection contre les attaques aveugles
- Mise à jour des défenses contre les attaques par numéro de séquence
- Clarification des meilleures pratiques d'implémentation de sécurité
- Ajout de considérations pour les attaques SYN flood
5.5. Améliorations des performances
- Référence aux algorithmes de contrôle de congestion modernes
- Mise à jour du calcul du délai de retransmission (Retransmission Timeout, RTO)
- Ajout de références aux extensions haute performance (mise à l'échelle de fenêtre, horodatages, SACK)
- Clarification des exigences d'implémentation de l'algorithme de Nagle
5.6. Clarifications d'interopérabilité
- Clarification du traitement des segments mal formés
- Mise à jour du traitement des conditions d'erreur
- Clarification du comportement des cas limites
- Unification de la terminologie et des définitions
5.7. Modifications éditoriales
- Modernisation du langage et de la terminologie
- Réorganisation du contenu pour améliorer la lisibilité
- Ajout de conseils d'implémentation
- Mise à jour des références
- Standardisation de l'utilisation des mots-clés RFC 2119
5.8. Contenu non inclus
Le contenu suivant, bien que constituant des parties importantes des implémentations TCP modernes, est spécifié dans des documents séparés :
- Algorithmes de contrôle de congestion détaillés (RFC 5681, etc.)
- Extensions haute performance (RFC 7323 - mise à l'échelle de fenêtre, horodatages)
- Acquittement sélectif SACK (RFC 2018, RFC 2883)
- TCP Fast Open (RFC 7413)
- TCP multichemin (RFC 8684)
Il s'agit d'un choix de conception délibéré pour maintenir la clarté de la spécification de base tout en permettant à ces extensions d'évoluer indépendamment.
Note : Pour une liste complète des modifications et corrections d'errata, voir la section 5 du document officiel RFC 9293.