Aller au contenu principal

1. Introduction

Dans IPv4, le champ d'identification (ID) est une valeur de 16 bits utilisée pour prendre en charge la fragmentation et le réassemblage des datagrammes. Selon la spécification actuelle, le champ ID doit être unique dans la durée de vie maximale des segments (MSL) pour les datagrammes ayant la même adresse source, adresse de destination et protocole. Cependant, les implémentations actuelles ne suivent pas strictement cette spécification et traitent le champ ID comme un identifiant unique pour chaque datagramme, qu'il soit fragmenté ou non.

Dans IPv4, les protocoles de transport et de niveau supérieur utilisent généralement des champs de 16 ou 32 bits pour détecter les datagrammes en double, tels que les numéros de séquence TCP ou les sommes de contrôle UDP. Cependant, le champ ID IPv4 n'a que 16 bits, ce qui signifie que dans des environnements réseau à haute vitesse, le champ ID peut être épuisé en peu de temps, rendant impossible l'attribution de valeurs ID uniques pour les nouveaux datagrammes.

Dans IPv6, la fragmentation n'est effectuée que par le nœud source, et l'en-tête de fragmentation contient un champ d'identification de 32 bits. La spécification IPv6 indique explicitement que ce champ d'identification ne doit être unique que lorsque le datagramme est fragmenté. En revanche, le champ ID IPv4 est présent dans tous les datagrammes, qu'ils soient fragmentés ou non.

Ce document met à jour la spécification du champ ID IPv4 dans RFC 791, RFC 1122 et RFC 2003 pour la rapprocher de la pratique actuelle et la rendre cohérente avec le traitement IPv6. En particulier, ce document clarifie les points suivants:

  1. Datagrammes atomiques: Pour les datagrammes avec le drapeau DF (Don't Fragment) défini, le champ ID peut être défini sur n'importe quelle valeur, et le récepteur doit ignorer la valeur du champ.

  2. Datagrammes non atomiques: Pour les datagrammes sans le drapeau DF défini, le champ ID doit être unique pendant la période de délai de réassemblage pour garantir un réassemblage correct des fragments.

  3. Compatibilité: Ce document discute des impacts de ces changements sur les équipements et protocoles existants et fournit des recommandations pour la période de transition.


1.1 Terminologie

Ce document utilise les termes suivants:

  • Datagramme atomique: Datagramme IPv4 avec le drapeau DF défini (DF=1)
  • Datagramme non atomique: Datagramme IPv4 sans le drapeau DF défini (DF=0)
  • Nœud source: Hôte ou dispositif qui génère des datagrammes IPv4
  • Nœud intermédiaire: Routeur ou passerelle qui transmet des datagrammes IPv4
  • Nœud de destination: Hôte ou dispositif qui reçoit des datagrammes IPv4
  • Intervalle de réutilisation d'ID: Intervalle de temps minimal entre les datagrammes avec le même tuple adresse source/adresse de destination/protocole pour réutiliser la même valeur d'ID

Navigation: