Cierran una calle y nadie llama
Una empresa de autobuses tiene una cochera en cada barrio. Cuando cierran una calle, el jefe no llama a todas las cocheras.
Cada cochera avisa a las vecinas de lo que cambió en sus calles. En un minuto todas tienen el mismo plano.
OSPF permite que los routers hagan exactamente eso.
Al final de esta lección
Nota
Puedo explicar cómo aprenden la red los routers con OSPF.
Palabras clave
| Palabra | Qué significa | Ejemplo |
|---|---|---|
| Vecino | un router del mismo enlace que también usa OSPF | |
| Paquete hello | un mensaje corto para encontrar y mantener vecinos | |
| Base de estados de enlace | el plano de routers y enlaces que guarda cada router | |
| Coste | un número que dice cuánto cuesta usar un enlace: cuanto menor, mejor | |
| Área | un grupo de routers que comparten un plano | area 0 |
| Camino más corto | la ruta con el menor coste total |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Las rutas estáticas no escalan
Una ruta estática se escribe una vez y no cambia. Si un enlace falla, la ruta sigue ahí y los paquetes se pierden.
En una red de cincuenta routers nadie quiere escribir esas líneas. Un protocolo de enrutamiento deja que los routers compartan lo que saben.
OSPF es uno de ellos: con él, cada router construye el plano completo.
Mira qué programas corre cada router
netlab statusSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Los routers se conocen con paquetes hello
Un router envía paquetes hello por cada interfaz que usa OSPF. Si otro router del mismo enlace los oye, responde.
Dos routers que se oyen son vecinos. Se intercambian sus planos. Cuando los dos tienen el mismo, el estado es Full.
OSPF va directamente sobre IP, como protocolo número 89.
Ejemplo resuelto: estados de un vecino
| Estado | Qué significa |
|---|---|
| Down | No se ha oído ningún hello |
| Init | Se oyó un hello, pero aún no nos nombra |
| 2-Way | Los dos lados se oyen |
| ExStart | Los dos acuerdan quién dirige el intercambio |
| Exchange | Los dos se pasan un resumen de sus planos |
| Loading | Los dos piden las partes que les faltan |
| Full | Los planos coinciden: el vecino está listo |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Pide a r2 sus vecinos OSPF
sudo vtysh -N r2 -c "show ip ospf neighbor"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Lee la tabla de r2 sin OSPF
sudo vtysh -N r2 -c "show ip route"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Qué dicen las dos respuestas
El primer Run imprime % OSPF is not enabled in vrf default. El programa está en marcha, pero nadie le ha dicho qué interfaces usar.
El segundo Run lista solo líneas conectadas, C, y las direcciones propias del router, L. Ninguna empieza por O, el código de una ruta aprendida con OSPF.
Todos los routers construyen el mismo plano
Cada router describe sus propios enlaces en un mensaje llamado anuncio de estado de enlace. Lo envía a sus vecinos y ellos lo pasan.
Pronto todos guardan la misma base de estados de enlace: un plano de cada router y cada enlace del área.
Después, cada router calcula sus rutas a partir de ese plano.
El coste decide el mejor camino
Cada enlace tiene un coste. Por defecto sale de la velocidad: 100 Mbit/s divididos entre la velocidad del enlace, y nunca menos de 1. Así un enlace más rápido cuesta menos. También se puede fijar a mano.
El coste de un camino es la suma de los costes de sus enlaces. OSPF elige el camino más corto, es decir, el de menor coste total, no el de menos routers.
Lee una interfaz que el router puede usar
sudo vtysh -N r2 -c "show interface to-r1"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Un error frecuente
Advertencia
Mucha gente cree que OSPF elige el camino con menos routers. En realidad suma el coste de cada enlace. Un camino de tres enlaces baratos puede ganar a otro de un solo enlace caro.
Cada router calcula el camino más corto
Un router empieza en sí mismo, con coste 0. Después mira el router más cercano que aún no ha fijado y suma el coste de cada enlace que sale de él.
Repite hasta fijar todos. El resultado es el coste mínimo hasta cada router y el primer salto que hay que usar.
Ejemplo resuelto: r1 fija cada router
| Paso | Fijado | Coste desde r1 | Motivo |
|---|---|---|---|
| 1 | r1 | 0 | El punto de partida |
| 2 | r4 | 3 | El enlace r1 a r4 cuesta 3 |
| 3 | r2 | 4 | El enlace r1 a r2 cuesta 4 |
| 4 | r3 | 10 | Por r2: 4 más 6 gana a 3 más 20 |
| 5 | r5 | 12 | Por r3: 10 más 2 |
| 6 | r6 | 13 | Por r5: 12 más 1 gana al enlace directo de 40 |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Para ir más lejos: un enlace más barato
Vuelve a la tabla resuelta. Cambia el coste del enlace de r4 a r3 de 20 a 5.
Fija otra vez cada router desde r1, paso a paso, con su coste y su motivo. Después di qué primer salto usa r1 para llegar a r3, a r5 y a r6. Comprueba tus números con tu función shortest_path.