4. OSPF (Open Shortest Path First)

OSPF es el protocolo de enrutamiento interno (IGP) más adoptado en redes empresariales. Forma parte de la familia de algoritmos de estado de enlace: cada router obtiene una vista completa de la topología, calcula rutas óptimas con Dijkstra y sólo envía actualizaciones cuando ocurre un cambio. El resultado es una convergencia rápida y predecible incluso en topologías complejas.

Este tema explica cómo funciona el algoritmo, por qué OSPF organiza la red en áreas jerárquicas, qué contienen los mensajes Hello y las LSAs, y cuáles son las características que le permiten escalar desde un campus hasta redes metropolitanas completas.

4.1 Protocolo interno basado en estado de enlace

La RFC 2328 define OSPFv2 para IPv4, mientras que la RFC 5340 cubre OSPFv3 para IPv6. A diferencia de los protocolos de vector distancia (como RIP), cada router OSPF descubre a todos sus vecinos, recoge información detallada sobre el estado de cada enlace y almacena esa base en una LSDB (Link-State Database). A partir de allí ejecuta un cálculo independiente que garantiza coherencia sin necesidad de intercambiar tablas completas.

Entre las características que lo convierten en un IGP versátil se encuentran:

  • Soporte para múltiples tipos de redes (broadcast, punto a punto, NBMA).
  • Capacidad de transportar etiquetas para MPLS, información de calidad de servicio y rutas externas.
  • Autenticación nativa de sus mensajes para prevenir inyecciones maliciosas.

4.2 Algoritmo de Dijkstra y cálculo SPF

OSPF utiliza el algoritmo de SPF (Shortest Path First), una implementación de Dijkstra aplicada a la LSDB. Cada enlace posee un costo, generalmente inversamente proporcional al ancho de banda. El router inicia el cálculo desde sí mismo, agrega nodos vecinos ordenados por costo acumulado y construye un árbol que refleja el mejor camino hacia cada red.

La elección del costo por defecto (referencia de 100 Mb/s) puede ajustarse para representar enlaces de 1 Gb/s o más. De esta manera, OSPF evita usar CPU de forma excesiva y permite que cada equipo ejecute SPF de manera independiente.

Enlace Ancho de banda Costo por defecto Comentario
Fast Ethernet 100 Mb/s 1 Referencia original de OSPF.
Gigabit Ethernet 1000 Mb/s 1 (si no se ajusta referencia) Conviene bajar la referencia para diferenciarlo.
Enlace WAN serial 2 Mb/s 50 Costos altos desalientan su uso salvo necesidad.

El siguiente ejemplo en Python muestra cómo un router calcula los costos mínimos a partir de una LSDB simplificada.

import heapq

def calcular_spf(lsdb, origen):
    costos = {nodo: float("inf") for nodo in lsdb}
    costos[origen] = 0
    cola = [(0, origen)]
    while cola:
        costo_actual, nodo = heapq.heappop(cola)
        if costo_actual > costos[nodo]:
            continue
        for vecino, costo_enlace in lsdb[nodo]:
            nuevo_costo = costo_actual + costo_enlace
            if nuevo_costo < costos[vecino]:
                costos[vecino] = nuevo_costo
                heapq.heappush(cola, (nuevo_costo, vecino))
    return costos

lsdb = {
    "R1": [("R2", 10), ("R3", 5)],
    "R2": [("R1", 10), ("R4", 2)],
    "R3": [("R1", 5), ("R4", 4)],
    "R4": [("R2", 2), ("R3", 4)]
}

print(calcular_spf(lsdb, "R1"))

El algoritmo convierte la información de estado de enlace en costos acumulados. Cada router ejecuta el cálculo por separado, pero todos obtienen los mismos resultados porque comparten la misma LSDB.

4.3 Organización jerárquica en áreas

Para escalar sin que la LSDB se vuelva inmanejable, OSPF divide la red en áreas. El backbone (área 0) interconecta al resto y transporta el resumen de las rutas internas. Las áreas se describen así:

Área Rol Características
Área 0 (backbone) Columna vertebral Debe existir siempre; conecta todas las áreas internas.
Áreas regulares Distribución Contienen routers internos y ABR que las enlazan al backbone.
Stub / Totally Stubby Optimización No aceptan LSAs externos; reducen el tamaño de la tabla.
NSSA (Not-So-Stubby) Intermedio Permite importar rutas externas con restricciones.

Los routers que conectan áreas se denominan ABR (Area Border Router), mientras que los que redistribuyen rutas externas reciben el nombre de ASBR. Esta jerarquía permite resumir prefijos y limitar el alcance de las LSAs, lo que a su vez reduce CPU y memoria en routers que solo necesitan conocer su zona.

4.4 Mensajes Hello y LSAs

OSPF se basa en dos tipos principales de mensajes: Hello, para descubrir y mantener vecinos, y LSAs, para describir el estado de los enlaces. Los Hello se envían cada 10 segundos (por defecto en redes broadcast) y contienen parámetros como ID del router, prioridad, máscara y temporizadores. Dos routers se consideran adyacentes cuando coinciden en todos esos valores.

Las LSAs se clasifican en varios tipos, cada uno con un objetivo específico. La siguiente tabla resume los más comunes:

Tipo LSA Nombre Contenido Se propaga en
Tipo 1 Router LSA Descripción de enlaces del router dentro del área. Área local.
Tipo 2 Network LSA Información del Designated Router (DR) para redes broadcast. Área local.
Tipo 3 Summary LSA Resumen de prefijos que un ABR anuncia a otra área. Entre áreas.
Tipo 5 External LSA Rutas externas introducidas por un ASBR. Todo el dominio OSPF.
Tipo 7 NSSA External Rutas externas dentro de un área NSSA. Área NSSA (convertidas a Tipo 5 al salir).

Para monitorear en un host Windows que las rutas OSPF llegaron correctamente, puede ejecutarse:

Get-NetRoute -AddressFamily IPv4 |
  Where-Object { $_.Protocol -eq 'OSPF' } |
  Format-Table DestinationPrefix, NextHop, RouteMetric -AutoSize

Este comando lista los prefijos instalados por OSPF en la tabla del sistema, útil para validar que los LSAs fueron procesados y convertidos en rutas activas.

4.5 Convergencia rápida y escalabilidad

OSPF ofrece convergencia rápida porque:

  • Detecta fallas con temporizadores Hello/Dead ajustables (10/40 segundos por defecto en broadcast, 1/3 en enlaces rápidos).
  • Recalcula sólo el área afectada gracias al diseño jerárquico.
  • Permite rutas múltiples de costo igual (ECMP) para balancear cargas.

Para asegurarse de que la convergencia se mantiene dentro de los valores esperados, los ingenieros miden indicadores como:

Indicador Descripción Valores recomendados
Tiempo de detección Diferencia entre la caída de un vecino y el disparo del Dead timer. < 4 s en enlaces críticos con fast-hellos.
Tiempo de SPF Duración del cálculo en CPU. Milisegundos en routers modernos; revisar si supera 1 s.
LSDB size Número de LSAs almacenadas. < 50k entradas por área para routers medianos.

Además, OSPF incluye características avanzadas como route summarization, áreas virtuales para enlaces lógicos y soporte para autenticación con claves compartidas o hash. Estas opciones mantienen la estabilidad al crecer y facilitan integrar OSPF con otros protocolos mediante redistribución controlada.

OSPF se convirtió en el estándar de facto para redes internas de gran tamaño gracias a su equilibrio entre rapidez y control granular. En el próximo tema compararemos su comportamiento con BGP, el protocolo utilizado para conectar sistemas autónomos a escala global.