OSPF uses hello packets and two timers to check if a neighbor is still alive or not:
- Hello interval: this defines how often we send the hello packet.
- Dead interval: this defines how long we should wait for hello packets before we declare the neighbor dead.
The hello and dead interval values can be different depending on the OSPF network type. On Ethernet interfaces you will see a 10 second hello interval and a 40 second dead interval.
Let’s take a look at an example so we can see this in action. Here’s the topology I will use:
We’ll use two routers with a switch in between.
Let’s enable OSPF:
R1 & R2# (config)#router ospf 1 (config-router)#network 192.168.12.0 0.0.0.255 area 0
Let’s take a look at the default hello and dead interval:
R1#show ip ospf interface FastEthernet 0/0 | include intervals Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
The hello and dead interval can be different for each interface. Above you can see that the hello interval is 10 seconds and the dead interval is 40 seconds. Let’s try if this is true:
R1(config)#interface FastEthernet 0/0 R1(config-if)#shutdown
After shutting the interface on R1 you will see the following message:
R1# Aug 30 17:57:05.519: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.12.2 on FastEthernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached
R1 will know that R2 is unreachable since its interface went down. Now take a look at R2:
R2# Aug 30 17:57:40.863: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.12.1 on FastEthernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired
R2 is telling us that the dead timer has expired. This took a bit longer. The interface on R1 went down at 17:57:05 and R2’s dead timer expired at 17:57:40…that’s close to 40 seconds.
Let’s activate the interface again:
R1(config)#interface FastEthernet 0/0 R1(config-if)#no shutdown
40 seconds is a long time…R2 will keep sending traffic to R1 while the dead interval is expiring. To speed up this process we can play with the timers. Here’s an example:
R1 & R2 (config)#interface FastEthernet 0/0 (config-if)#ip ospf hello-interval 1 (config-if)#ip ospf dead-interval 3
You can use these two commands to change the hello and dead interval. We’ll send a hello packet every second and the dead interval is 3 seconds. Let’s verify this:
R1#show ip ospf interface FastEthernet 0/0 | include intervals Timer intervals configured, Hello 1, Dead 3, Wait 3, Retransmit 5
Reducing the dead interval from 40 to 3 seconds is a big improvement but we can do even better: