Resumen

  • RFC 5925 amplía el número TCP de 32 bits con estados locales SND.SNE y RCV.SNE antes de calcular o comprobar el MAC de TCP-AO.
  • La extensión no viaja como un campo nuevo: el receptor infiere la parte alta a partir de las transiciones, el contexto de la conexión y el reordenamiento cerca del límite.

Una sesión de encaminamiento puede vivir hasta que el contador de secuencia TCP complete una vuelta. Un segmento nuevo lleva entonces el mismo número visible que otro mucho más antiguo. TCP todavía lo sitúa mediante su ventana, pero la autenticación plantea otra exigencia: el mismo valor bajo no debe convertir dos momentos distintos en una entrada criptográfica idéntica.

RFC 5925 añadió una Sequence Number Extension de 32 bits. Al comenzar la conexión, SND.SNE y RCV.SNE valen cero. Para enviar, el extremo antepone la extensión aplicable al pseudoencabezado IP y al material TCP que alimenta el MAC. Para recibir, el otro extremo reconstruye esa parte alta antes de verificarlo. La combinación emula un espacio de secuencia de 64 bits para la autenticación.

La extensión no aparece en el cable. Así se evita introducir un segundo contador transmitido que pueda apartarse del estado de TCP. El emisor puede conservar internamente 64 bits y tomar la mitad superior. El receptor solo observa los 32 bits del segmento y debe inferir RCV.SNE a partir de lo que ya ocurrió en esa conexión.

La RFC describe una implementación posible. Un salto desde la mitad alta a la baja incrementa SNE. Si después llega un número alto reordenado desde el ciclo anterior, se usa para él la extensión previa. Una bandera impide incrementar dos veces hasta cruzar la región opuesta. La RFC presenta esta lógica como ejemplo, no como algoritmo obligatorio; lo normativo es obtener el SNE correcto al construir o validar el MAC.

El número repetido queda adscrito a una época autenticada distinta. SNE no es una marca temporal ni un nombre global: existe por dirección y conexión, y depende de que el extremo conserve correctamente su historia.

Fuentes