1. Objectif et portée (Purpose and Scope)
En 1981, la RFC 793 [16] a été publiée, documentant le protocole de contrôle de transmission (Transmission Control Protocol, TCP) et remplaçant les spécifications TCP publiées précédemment.
Depuis lors, TCP a été largement implémenté et a été utilisé comme protocole de transport pour de nombreuses applications sur Internet.
Pendant plusieurs décennies, la RFC 793 ainsi qu'un certain nombre d'autres documents ont été combinés pour servir de spécification centrale pour TCP [49]. Au fil du temps, un certain nombre d'errata ont été déposés contre la RFC 793. Des déficiences ont également été trouvées et résolues en matière de sécurité, de performance et de nombreux autres aspects. Le nombre d'améliorations a augmenté au fil du temps dans de nombreux documents séparés. Celles-ci n'ont jamais été accumulées ensemble dans une mise à jour complète de la spécification de base.
L'objectif de ce document est de rassembler toutes les modifications de la piste des normes IETF (Standards Track) et d'autres clarifications qui ont été apportées à la spécification fonctionnelle TCP de base (RFC 793) et de les unifier dans une version mise à jour de la spécification.
Certains documents compagnons sont référencés pour les algorithmes importants utilisés par TCP (par exemple, pour le contrôle de congestion) mais n'ont pas été complètement inclus dans ce document. Il s'agit d'un choix conscient, car cette spécification de base peut être utilisée avec plusieurs algorithmes supplémentaires qui sont développés et incorporés séparément. Ce document se concentre sur la base commune que toutes les implémentations TCP doivent (must) prendre en charge afin d'interopérer. Étant donné que certaines fonctionnalités TCP supplémentaires sont devenues assez compliquées elles-mêmes (par exemple, la récupération avancée des pertes et le contrôle de congestion), de futurs documents compagnons pourraient tenter de les rassembler de manière similaire.
En plus de la spécification de protocole qui décrit le format de segment TCP (Segment Format), la génération et les règles de traitement qui doivent être implémentées dans le code, la RFC 793 et d'autres mises à jour contiennent également du texte informatif et descriptif permettant aux lecteurs de comprendre les aspects de la conception et du fonctionnement du protocole. Ce document ne tente pas de modifier ou de mettre à jour ce texte informatif et se concentre uniquement sur la mise à jour de la spécification normative du protocole. Ce document préserve les références à la documentation contenant les explications et la justification importantes, le cas échéant.
Ce document est destiné à être utile à la fois pour vérifier la conformité des implémentations TCP existantes, ainsi que pour écrire de nouvelles implémentations.