Comprendre les schémas de numérotation fermés dans les télécommunications
Dans les télécommunications et les réseaux de données, un schéma de numérotation fermé est une méthode systématique d'attribution d'identifiants uniques et séquentiels aux messages, paquets ou transmissions au sein d'un système fermé. Contrairement aux plans de numérotation publics (comme E.164 pour les numéros de téléphone), la numérotation fermée opère au sein d'un réseau, protocole ou couche d'application spécifique pour garantir une communication fiable et ordonnée.
Caractéristiques fondamentales
Attribution séquentielle
Chaque message reçoit un numéro croissant monotone (1, 2, 3...). Cette séquence ne se réinitialise que sous conditions définies (ex. redémarrage de session, débordement de compteur).
Unicité dans le périmètre
Les numéros sont uniques par canal de communication, session ou circuit virtuel – pas globalement. Cela permet une mise à l'échelle massive sans coordination centrale.
Fonctions critiques
1. Détection et prévention des doublons
Le récepteur suit le numéro de séquence le plus élevé traité. Un message avec un numéro ≤ à cette valeur est un doublon et est rejeté. Vital dans des protocoles comme TCP (Transmission Control Protocol) et RTP (Real-time Transport Protocol).
2. Ordonnancement et réassemblage des messages
Les réseaux livrent souvent les paquets hors ordre. Les numéros de séquence permettent au récepteur de les réordonner correctement avant de transmettre les données à l'application. Essentiel pour le transfert de fichiers, le streaming vidéo et la VoIP.
3. Détection de perte et retransmission
Les trous dans la séquence indiquent des messages perdus. Le récepteur peut demander une retransmission (selective repeat) ou signaler la perte (acknowledgement négatif). Cela sous-tend la livraison fiable dans TCP, SCTP et QUIC.
4. Contrôle de flux et de congestion
Les mécanismes de fenêtre glissante utilisent les numéros de séquence pour gérer la quantité de données non acquittées qu'un émetteur peut avoir « en vol », prévenant les débordements de tampon et la congestion réseau.
5. Sécurité et protection contre la réattaque
Dans les protocoles sécurisés (IPsec, TLS, DTLS), les numéros de séquence (souvent implicites ou explicites) empêchent les attaques de relecture où un adversaire renvoie des paquets valides capturés.
Exemples concrets
- TCP : numéros de séquence 32 bits comptant les octets, pas les paquets, permettant un contrôle précis du flux.
- RTP : numéros de séquence 16 bits pour paquets médias ; les timestamps gèrent le timing.
- SS7/MTP : les réseaux de signalisation utilisent des numéros de séquence pour la discrimination des messages.
- Protocoles industriels (Modbus, PROFINET) : la numérotation fermée assure des boucles de contrôle déterministes.
Considérations de conception
Les ingénieurs doivent choisir la largeur du compteur (bits) pour éviter le débordement pendant la latence maximale. La gestion du débordement (ex. PAWS de TCP – Protection Against Wrapped Sequence numbers) ajoute de la complexité. La synchronisation au début de session (aléa du numéro de séquence initial) empêche d'anciens doublons d'interférer avec de nouvelles connexions.
La numérotation fermée est un concept fondamental permettant la fiabilité, l'ordre et la sécurité que nous attendons de la communication numérique moderne.
