Resumen
- OSPFv2 ordena las versiones de una misma LSA en un espacio lineal de enteros con signo, desde
0x80000001hasta0x7fffffff; un wrap directo haría que la nueva versión inicial perdiera frente a cualquier máximo aún almacenado. - El originador convierte primero la instancia máxima en una retirada MaxAge, la inunda y espera que pueda eliminarse; después publica el valor inicial como primer miembro de otra época.
Una línea sustituyó a la piruleta
El primer OSPF publicado dibujó el tiempo de sus anuncios con forma de piruleta. RFC 1131, de octubre de 1989, colocaba una fase lineal de arranque antes de un círculo. La cola debía ayudar a una encarnación nueva a superar restos anteriores; el aro permitía seguir emitiendo durante una vida prolongada.
La versión 2 deshizo ese compromiso. En julio de 1991, RFC 1247 mencionó el espacio de piruleta entre los problemas corregidos. Desde entonces, la secuencia de una LSA se compararía como entero de 32 bits con signo. 0x80000000 quedaba reservado; el primer valor útil sería 0x80000001 y el último 0x7fffffff.
La regla resultaba fácil de implementar y explicar: una secuencia mayor significa una instancia más reciente. La claridad tenía un precio. Una línea termina, y el protocolo necesitaba decidir qué significaba “nuevo” después de usar su extremo superior.
La aritmética podía rejuvenecer lo viejo
La comparación sólo vale dentro de una identidad formada por LS type, Link State ID y Advertising Router. No existe una carrera numérica entre todas las LSA. Pero dentro de una misma identidad, una copia 0x7fffffff vence necesariamente a otra 0x80000001.
Si el originador envolviera el contador al modificar el anuncio, los vecinos obedientes conservarían el contenido anterior. Una réplica máxima guardada antes del wrap parecería más reciente que el primer mensaje de la nueva vuelta. La base distribuida castigaría precisamente al emisor que intentaba corregirla.
Esperar no demuestra que el obstáculo se haya ido. Un vecino puede conservar la LSA en su base, mantenerla en una lista de retransmisión o presentarla mientras sincroniza. LS age mide envejecimiento protocolario, no un reloj común capaz de probar que cada copia desapareció.
OSPFv2 evitó una fórmula circular y exigió separar las generaciones mediante una retirada explícita.
El máximo anunció su propia salida
Según RFC 2328, cuando hace falta incrementar una LSA que ya ocupa MaxSequenceNumber, su originador pone la edad en MaxAge y vuelve a inundar la instancia. Adelantar de manera deliberada su caducidad es premature aging.
El permiso sigue a la autoría. Un router puede envejecer antes de tiempo una LSA autooriginada, no borrar a voluntad la de otro Advertising Router. La identidad, la secuencia máxima y el checksum permanecen. La edad cambia fuera del checksum porque aumenta mientras el anuncio atraviesa enlaces y permanece almacenado.
MaxAge funciona aquí como negación activa. Si secuencia y checksum son iguales, la copia MaxAge se considera más reciente que la copia aún viva. Puede reemplazarla sin aguardar la hora completa de expiración en cada nodo.
La negación se refiere a la LSA, no a todo lo que un operador pudiera asociar con ella. No prueba que un enlace físico se rompió, que el originador cayó ni que desapareció cualquier ruta al destino.
Olvidar exigía recibos
La inundación de la retirada no completa por sí sola la transición. Un router no elimina una LSA MaxAge si todavía figura en la lista de retransmisión de un vecino. También debe conservarla mientras algún vecino está en Exchange o Loading, porque el intercambio de bases podría seguir transportando el estado saliente.
En el caso de agotamiento, el originador espera el acuse de todos sus vecinos adyacentes. Sólo cuando la instancia máxima puede retirarse con seguridad nace una nueva LSA con InitialSequenceNumber.
Así, el descenso numérico deja de ser una comparación absurda. El máximo pertenecía a una época cerrada por una retirada que cruzó las adyacencias; el mínimo inaugura otra. El hueco entre ambas es información, no una pausa accidental.
RFC 1247 ajustó incluso el proceso de Database Description para impedir que un anuncio se eliminara mientras un vecino aún podía estar conociendo su versión antigua. OSPF no prometía unanimidad instantánea. Construía suficientes pruebas locales para que dos épocas no se mezclaran durante la sincronización.
Tras el reinicio, el pasado volvía por la puerta del vecino
Agotar 32 bits mediante refrescos es remoto. Perder memoria al reiniciar no lo es. Un vecino puede devolver al router una LSA que éste originó antes de caer, con una secuencia mucho mayor que la recién inicializada. Para la base vecina, la copia preservada es correctamente la más nueva.
RFC 2328 impide que el originador borre ese hecho con autoridad nominal. Si todavía debe anunciar esa LSA, genera otra un número por encima de la recibida. Si ya no debe originarla, la vuelve MaxAge y difunde su retirada. Si el vecino devuelve el máximo, se aplica la misma purga antes del reinicio.
Esta reacción suele llamarse fight-back. No demuestra por sí misma un ataque. Puede ser el encuentro normal entre una memoria volátil que se perdió y una réplica vecina que sobrevivió. Ser Advertising Router concede el derecho de autoría y retirada, pero el dominio conservado determina desde qué secuencia debe continuar el autor.
La decisión tenía tres escalones
La secuencia encabeza la comparación. Si empata, se examina el checksum y gana el valor sin signo mayor. Con secuencia y checksum iguales, MaxAge y determinadas diferencias de edad resuelven otros casos; edades suficientemente próximas representan la misma instancia.
La secuencia expresa reoriginación intencional. El checksum delata contenidos diferentes que comparten número. La edad permite que una retirada venza a su gemela viva sin convertir el retraso normal de propagación en versiones infinitas.
Ninguno de esos campos es una marca de tiempo global. Comparar números de identidades distintas sería atribuirles una autoridad que OSPF no definió.
Ahorrar refrescos no hizo irrevocable el estado
OSPFv2 refresca normalmente una LSA autooriginada cada 30 minutos para evitar que alcance MaxAge al cabo de una hora. Los circuitos bajo demanda no podían pagar siempre ese ruido. RFC 1793 introdujo DoNotAge, y RFC 4136 amplió la reducción de refresco y flooding en topologías estables.
DoNotAge elimina la obligación periódica cuando nada cambia. No elimina la reoriginación tras un cambio ni la retirada MaxAge. El ahorro de tráfico no transfiere la autoría ni concede permanencia al anuncio.
RFC 5340 mantuvo la mecánica fundamental de inundación y recencia en OSPFv3 para IPv6, aunque modificó formatos y alcances. El conflicto entre una copia máxima y un origen que ha olvidado pertenece a cualquier base distribuida de este tipo.
Había otros números con otros dueños
Los paquetes Database Description secuencian la sincronización vecinal. Los paquetes protegidos criptográficamente pueden usar secuencias contra replay. RFC 6863 analiza ese plano de seguridad por separado del contador interno de cada LSA.
La secuencia LSA pregunta qué versión de una afirmación de routing debe ganar. La secuencia de autenticación pregunta si un paquete protegido ya fue visto bajo un contexto de claves. Mezclarlas en documentación o alarmas oculta el dueño, la vida útil y el fallo real de cada estado.
El protocolo estaba en la desaparición
OSPF no amplió el contador ni confió en el silencio. Hizo de la instancia máxima el vehículo de su propio retiro, usó acuses y estado de sincronización para demostrar que la época anterior dejó de circular, y sólo entonces permitió que el número más pequeño significara otra vez “más nuevo”.
La enseñanza histórica es más amplia que el routing. En un sistema distribuido, olvidar no consiste en dejar de hablar. Es un cambio con autor, propagación y prueba de finalización. OSPF reservó un momento de ausencia entre dos secuencias y lo convirtió en parte esencial del acuerdo.
Fuentes y límites de la evidencia
- RFC 1131 — OSPF specification
- RFC 1247 — OSPF Version 2
- RFC 1793 — Extending OSPF to Support Demand Circuits
- RFC 2178 — OSPF Version 2
- RFC 2328 — OSPF Version 2
- RFC 4136 — OSPF Refresh and Flooding Reduction in Stable Topologies
- RFC 5340 — OSPF for IPv6
- RFC 6863 — Analysis of OSPF Security
Las normas prueban la máquina de estados y su evolución, no la frecuencia actual del agotamiento, el comportamiento por defecto de un fabricante ni la causa de un incidente. MaxAge retira una LSA en OSPF; no certifica una caída global. Recibir y corregir una LSA autooriginada después de un reinicio tampoco demuestra por sí solo una inyección hostil.
Informe para miembros
Contexto ampliado del perfil
Inicia sesión con el nivel de membresía adecuado para desbloquear el informe completo y las notas de las fuentes.
Solo para Strategic Circle
Strategic Circle
Abierto a todos los lectores. Desbloquea informes de perfil después de unirte e iniciar sesión.
Únete a Strategic CircleSolo para Leadership Alliance
Leadership Alliance
Para propietarios y directivos cualificados de activos de propiedad intelectual; inicia sesión para desbloquear los informes de la alianza.
Unirse a Leadership Alliance
