Résumé

  • Dans la RFC 3168 classique, le récepteur continue d’apposer ECE sur ses acquittements après une marque CE, jusqu’à la réception d’un nouveau segment de données portant CWR.
  • Plusieurs ACK avec ECE peuvent ainsi prolonger une seule observation CE ; ils ne dénombrent ni marques, ni files d’attente, ni réductions indépendantes de fenêtre.
  • Les mêmes bits servent aussi à négocier ECN au début de la connexion, tandis que tunnels et variantes expérimentales limitent encore l’attribution possible.

La répétition est une mémoire

Un tableau de bord qui additionne les paquets ECE présente un nombre exact, mais pas nécessairement le bon objet. Dans une connexion établie, un récepteur compatible ECN qui reçoit une donnée marquée Congestion Experienced active ECE dans l’acquittement. Si un ACK retardé couvre plusieurs segments et qu’au moins l’un d’eux portait CE, l’acquittement porte également ECE.

Le protocole ne s’arrête pas à ce premier retour. Le récepteur conserve ECE sur les ACK suivants, y compris lorsqu’ils acquittent des données non marquées, tant qu’un segment de données portant CWR n’est pas arrivé. Une unique marque peut donc laisser cinq, dix ou davantage de drapeaux visibles selon le trafic, le rythme des acquittements et la durée du retour.

Cette persistance répond à une panne banale : un acquittement peut se perdre. Un écho émis une seule fois rendrait la notification aussi fragile que ce paquet de retour. Le maintien du drapeau transforme l’observation en état durable. La bonne unité d’analyse n’est pas le nombre brut d’ACK, mais l’intervalle ouvert par CE et refermé par la réponse de l’émetteur.

CWR referme la boucle

Du côté émetteur, la RFC 3168 associe ECE à une réaction de congestion comparable à celle déclenchée par une perte. Mais la fenêtre de congestion ne doit pas être réduite à chaque ACK porteur d’ECE. Pour une série de pertes ou de marques CE dans une fenêtre de données, soit environ un aller-retour, une seule réduction est attendue.

Une fois cette décision prise, l’émetteur place CWR sur le premier nouveau segment de données envoyé. La recommandation exclut un segment retransmis : le signal de réponse doit voyager sur une nouvelle donnée. Quand ce segment parvient au récepteur, celui-ci cesse d’apposer ECE sur les ACK de données ultérieures non marquées. Une nouvelle marque CE peut ouvrir un nouvel intervalle.

Si le segment neuf portant CWR disparaît, l’état ECE demeure. Une notification ultérieure peut provoquer une autre réaction visible et un nouveau CWR. Cette résistance explique précisément pourquoi plusieurs ECE ne prouvent pas plusieurs marquages. Même CWR reste un reçu borné : il indique une réaction de l’émetteur après l’envoi des données concernées, sans certifier la réception d’un ACK ECE particulier ni désigner la file qui a marqué.

Au SYN, ECE dit autre chose

Avant l’échange de données, les bits ont une grammaire différente. L’initiateur demande ECN en plaçant ECE et CWR ensemble sur son SYN. Un pair capable répond par un SYN-ACK où ECE est activé et CWR éteint. Cet ECE-là annonce une capacité ; il n’échoit pas une congestion rencontrée par le SYN.

Un collecteur qui supprime la phase de connexion et ne conserve que la présence d’ECE crée donc de faux incidents au moment même où les connexions sont négociées. Il faut archiver la direction, les autres drapeaux et l’état TCP. L’accord initial ne garantit pas davantage que tous les futurs paquets émis porteront un code ECN-capable.

Les ACK purs constituent une autre asymétrie. Dans le régime classique de la RFC 3168, ils sont envoyés Not-ECT. La série d’ECE raconte l’état formé à partir de données du chemin aller ; elle ne recense pas la congestion du chemin retour selon le même mécanisme.

Le signal ne donne ni adresse ni biographie à la file

La RFC 7567 rappelle qu’une gestion active de file peut marquer plutôt que jeter lors d’une congestion légère ou modérée, et intervenir avant que la file soit pleine. Une marque CE ne démontre donc ni débordement de tampon, ni perte, ni délai précis, ni seuil d’un équipement donné.

Le tunnel ajoute une frontière. Un équipement interne peut ne voir que l’en-tête extérieur. La RFC 6040 organise la combinaison des champs ECN intérieur et extérieur aux extrémités du tunnel. ECE reçu au bout peut parfaitement transmettre une congestion réelle tout en restant muet sur l’endroit où elle est née.

Il ne faut pas non plus assimiler ECE aux acquittements dupliqués de la RFC 5681. Ceux-ci obéissent à leurs propres conditions et peuvent provenir d’une perte, d’un réordonnancement ou d’une réplication. Numéro d’ACK, espace de séquence, retransmission, ECE, CWR et temps doivent rester des éléments distincts du dossier.

Enfin, la RFC 8311 autorise des expérimentations documentées qui relâchent certaines contraintes de la RFC 3168. La mémoire décrite ici appartient au contrat TCP classique ; elle ne saurait être imposée à chaque expérience ECN ultérieure.

Sources