Categories R&S

OSPF – Optimize convergence and scalability – Fast hello

There is a way to get a faster convergence by using hello packets with an interval of less than 1 second. This feature is called “fast hello”.

 

 

Theory:

OSPF fast hello packets refer to hello packets being sent at intervals of less than 1 second.

OSPF network will experience faster convergence by detecting the loss of a neighbor within 1 second.

 

Requirements:

Routers in area 0 should be able to declare a neighbor dead in less than a second.

 

Diagram:

OSPF LSA filtering

Configuration and verification:

 

First, we check how long it takes for a neighbor to be declared dead when using the default timers:

R3(config)#int Ethernet0/0
R3(config-if)#shut
*14:50:16.719: %OSPF-5-ADJCHG: Process 10, Nbr 11.11.11.11 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached
*14:50:16.719: %OSPF-5-ADJCHG: Process 10, Nbr 22.22.22.22 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached

R1#*14:50:54.639: %OSPF-5-ADJCHG: Process 10, Nbr 33.33.33.33 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired
R2#*14:50:54.636: %OSPF-5-ADJCHG: Process 10, Nbr 33.33.33.33 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired

 

Now we configure fast hellos on the three devices, hellos will be sent every 200ms:

R1(config)#int Ethernet0/0
R1(config-if)#ip ospf dead-interval minimal hello-multiplier ?
    Number of Hellos sent within 1 second
R1(config-if)#ip ospf dead-interval minimal hello-multiplier 5

R2(config)#int Ethernet0/0
R2(config-if)#ip ospf dead-interval minimal hello-multiplier 5

R3(config)#int Ethernet0/0
R3(config-if)#ip ospf dead-interval minimal hello-multiplier 5

 

Let’s verify what we get in the interface details:

R1#sh ip ospf int Ethernet0/0
Ethernet0/0 is up, line protocol is up
  Internet Address 10.10.1.1/24, Area 0, Attached via Interface Enable
  Process ID 10, Router ID 11.11.11.11, Network Type BROADCAST, Cost: 1
  SNIP
  Timer intervals configured, Hello 200 msec, Dead 1, Wait 1, Retransmit 5

 

We can now test again and see how this is going:

R3(config)#int Ethernet0/0
R3(config-if)#shut
*14:56:17.195: %OSPF-5-ADJCHG: Process 10, Nbr 11.11.11.11 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached
*14:56:17.195: %OSPF-5-ADJCHG: Process 10, Nbr 22.22.22.22 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached

R1#*14:56:18.098: %OSPF-5-ADJCHG: Process 10, Nbr 33.33.33.33 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired

R2#*14:56:18.102: %OSPF-5-ADJCHG: Process 10, Nbr 33.33.33.33 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired

 

So less than 1 second to declare the neighbor down which is much better than the default timer.

 

Fast hellos can help to improve convergence however this can lead to OSPF neighbor flapping especially if you use that in WAN environment.

On my side I will keep that for LAN segment.

 

 

Thank you for reading.

 

OSPF – Optimize convergence and scalability – Fast hello