In IS-IS, the interval for sending Hello packets is 10s, and the holddown time for keeping the neighbor relationship is three times the interval for sending Hello packets. If a router does not receive a Hello packet from its neighbor within the holddown time, the router deletes the corresponding neighbor relationship. This indicates that the router detects neighbor faults in seconds. Second-level fault detection, however, may result in heavy packet loss on high-speed networks.
Bidirectional forwarding detection (BFD) provides light-load and millisecond-level link fault detection to prevent heavy packet loss. BFD is not used to substitute the Hello mechanism of IS-IS but helps IS-IS rapidly detect the faults on neighbors or links and instructs IS-IS to recalculate routes for packet forwarding.
In Figure 1, basic IS-IS functions are configured on every router, and BFD for IS-IS is enabled on RouterA and RouterB.
When a fault occurs on the primary link, BFD fast detects the fault and reports it to IS-IS. IS-IS sets the neighbors of the interface on the faulty link to Down, which triggers topology calculation, and updates LSPs so that neighbors such as RouterC can receive the updated LSPs from RouterB. This process implements fast network convergence.
BFD for IS-IS includes static BFD for IS-IS and dynamic BFD for IS-IS.
Implementation Mode | Principles | Differences |
---|---|---|
Static BFD for IS-IS | BFD session parameters, including local and remote discriminators, are manually configured using commands, and the requests for establishing BFD sessions are manually delivered. |
|
Dynamic BFD for IS-IS | BFD sessions are dynamically created but not manually configured. When detecting faults, BFD informs IS-IS of the faults through the routing management (RM) module. IS-IS then turns the neighbors Down, rapidly advertises the changed LSPs, and performs incremental SPF. This implements fast route convergence. | Dynamic BFD is more flexible than static BFD. In dynamic BFD, routing protocols trigger the setup of BFD sessions, preventing the configuration errors caused by manual configuration. Dynamic BFD is easy to configure and applies to the scenarios where BFD needs to be configured on the entire network. |
BFD uses local and remote discriminators to differentiate multiple BFD sessions between the same pair of systems.
Because IS-IS establishes only single-hop neighbors, BFD for IS-IS detects only single-hop links between IS-IS neighbors.
The RM module provides related services for association with the BFD module for IS-IS. Through RM, IS-IS prompts BFD to set up or tear down BFD sessions by sending notification messages. In addition, BFD events are transmitted to IS-IS through RM.
Conditions for setting up a BFD sessionBasic IS-IS functions are configured on each router and IS-IS is enabled on the interfaces of the routers.
BFD is globally enabled on each router, and BFD is enabled on a specified interface or process.
BFD is enabled on interfaces or processes, and the neighbors are Up. A DIS needs to be elected on a broadcast network.
P2P network
After the conditions for setting up a BFD session are satisfied, IS-IS instructs BFD through RM to directly set up a BFD session between neighbors.
Broadcast network
After the conditions for establishing BFD sessions are met, and the DIS is elected, IS-IS instructs BFD through RM to establish a BFD session between the DIS and each router. No BFD session is established between non-DISs.
On a broadcast network, routers (including non-DIS routers) of the same level on a network segment can establish neighbor relationships. In the implementation of BFD for IS-IS, however, BFD sessions are established only between a DIS and a non-DIS. On a P2P network, BFD sessions are directly established between neighbors.
If a Level-1-2 neighbor relationship is set up between two routers on a link, IS-IS sets up two BFD sessions for the Level-1 and Level-2 neighbors on a broadcast network, but sets up only one BFD session on a P2P network.
P2P network
When a neighbor relationship that was set up on P2P interfaces by IS-IS is down (that is, the neighbor relationship is not in the Up state) or when the IP protocol type of a neighbor is deleted, IS-IS tears down the BFD session.
Broadcast network
When a neighbor relationship that was set up on P2P interfaces by IS-IS is torn down (that is, the neighbor relationship is not in the Up state), when the IP protocol type of a neighbor is deleted, or when the DIS is re-elected, IS-IS tears down the BFD session.
After dynamic BFD is globally disabled in an IS-IS process, the BFD sessions on all the interfaces in this IS-IS process are deleted.
When detecting a link failure, BFD generates a Down event, and then notifies RM of the event. RM then instructs IS-IS to delete the neighbor relationship. IS-IS recalculates routes to speed up route convergence on the entire network.
When both the local router and its neighbor are Level-1-2 routers, they establish two neighbors of different levels. Then IS-IS establishes two BFD sessions for the Level-1 neighbor and Level-2 neighbor respectively. When BFD detects a link failure, it generates a Down event and informs the RM module of the event. The RM module then instructs IS-IS to delete the neighbor relationship of a specific level.