12、IS-IS与BFD联动

IS-IS与BFD联动

通常情况下,IS-IS设定发送Hello报文的时间间隔为10秒,一般将宣告邻居Down掉的时间(即邻居的保持时间)配置为Hello报文间隔的3倍。若在相邻路由器失效时间内没有收到邻居发来的Hello报文,将会删除邻居。由此可见路由器能感知到邻居故障的时间最小为秒级。这样可能会出现在高速的网络环境中大量报文丢失的问题。

双向转发检测BFD(Bidirectional Forwarding Detection)能够提供轻负荷、快速(毫秒级)的通道故障检测,解决了IS-IS现有检测机制的不足的问题。使用BFD并不是代替IS-IS协议本身的Hello机制,而是配合IS-IS协议更快的发现邻接方面出现的故障,并及时通知IS-IS重新计算相关路由以便正确指导报文的转发。

图1所示,各路由器上使能IS-IS基本功能。在RouterA和RouterB上使能IS-IS与BFD联动检测机制。

图1 IS-IS BFD组网示意图

当主路径上的链路出现故障时,BFD能够快速检测到故障并通告给IS-IS协议,IS-IS Down掉故障链路的接口邻居并删除邻接对应的IP协议类型,从而触发拓扑计算,同时更新LSP使得其他邻居(如RouterC)及时收到RouterB的更新LSP,实现了网络拓扑的快速收敛。

IS-IS与BFD联动的分类

IS-IS与BFD联动包括IS-IS与静态BFD联动和IS-IS与动态BFD联动。

表1 IS-IS与BFD联动的两种实现方式
IS-IS与BFD联动的实现方式工作原理区别
IS-IS与静态BFD联动 通过命令行手工配置BFD会话参数,包括了配置本地标识符和远端标识符等,然后手工下发BFD会话建立请求。
  • 静态BFD的优点是可以人为控制,部署比较灵活,为了节省内存,同时又保证关键链路的可靠性,可以在某些指定链路部署BFD,而其他链路不部署。

  • 静态BFD的缺点在于建立和删除BFD会话时都需要手工触发,配置时缺乏灵活性。而且有可能造成人为的配置错误。例如,如果配置了错误的本地标识符或者远端标识符时,BFD会话将不能正常工作。

IS-IS与动态BFD联动 通过IS-IS动态创建BFD的会话,不再依靠手工配置。当BFD检测到故障的时候,通过路由管理通知IS-IS。IS-IS进行相应邻居Down处理,快速发布变化的LSP信息和进行增量路由计算,从而实现路由的快速收敛。 动态BFD比静态BFD更具有灵活性。动态BFD由路由协议动态触发BFD会话建立,避免了人为控制可能导致的配置错误,且配置比较简单,适用在全网需要配置BFD的情况。
BFD使用本地标识符(Local Discriminator)和远端标识符(Remote Discriminator)区分同一对系统之间的多个BFD会话。

由于IS-IS只能建立单跳邻居,IS-IS与BFD联动只对IS-IS邻居间的单跳链路进行检测。

BFD会话的创建与删除

路由管理模块RM(Routing Management Module)为IS-IS提供与BFD模块交互的相关服务。IS-IS通过RM通知BFD来动态创建或删除BFD会话,同时BFD的事件消息也通过RM传递给IS-IS。

创建BFD会话的条件
  • 各路由器配置了IS-IS基本功能并且在接口下使能了IS-IS。

  • 各路由器配置了全局BFD功能并且使能了接口或者进程的BFD特性。

  • 使能了接口或者进程的BFD特性,且相邻路由器的邻居状态为Up(广播网中须等到DIS选举出来)。

创建BFD会话的过程
  • P2P网络

    满足创建BFD会话的条件后,IS-IS将通过RM模块通知BFD模块直接在邻居间创建BFD会话。

  • 广播网络

    满足创建BFD会话的条件且DIS已经选举出来后,IS-IS将通过RM模块通知BFD模块,DIS与每台路由器之间都自动创建BFD会话。都不是DIS的两台路由器之间不建立BFD会话。

    虽然广播网中IS-IS同一网段上的同一级别的路由器之间都会形成邻接关系,即包括所有的非DIS路由器之间也会形成邻接关系,但在IS-IS与BFD联动的实现上,只在DIS和非DIS之间建立BFD会话,非DIS之间不启动BFD会话,而P2P网络直接在邻居间创建会话。

    如果同一链路上的同一对路由器形成的是Level-1-2的类型的邻居,在广播网中IS-IS会针对这两个Level分别创建两个BFD会话,但在P2P网络中IS-IS只会创建一个BFD会话。

删除BFD会话的条件
  • P2P网络

    当IS-IS在P2P网络接口类型上建立的邻接关系断开(非Up状态)或者邻居对应的IP协议类型删除时,删除对应的BFD会话。

  • 广播网络

    当IS-IS在广播网络接口类型上建立的邻接关系断开(非Up状态),邻居对应的IP协议类型删除或者广播网络DIS发生变化时,删除对应的BFD会话。

在IS-IS进程下去使能全局动态BFD后,该进程下的所有接口的BFD会话都被删除。

IS-IS响应BFD会话Down事件

当BFD检测到链路发生故障并产生Down事件时,会通知RM。RM通知IS-IS删除此邻接。IS-IS响应这个事件并重新进行路由计算,实现网络迅速收敛。

当本地路由器与邻居路由器均为Level-1-2路由器时,二者之间会针对不同的Level分别创建两个邻居,此时IS-IS也会创建两个不同Level的会话。在这种情况下,当BFD检测到链路发生故障并产生Down事件时,RM会通知IS-IS分别删除相应Level的邻接关系。

posted @ 2024-04-15 16:27  博雅塔之客  阅读(15)  评论(0编辑  收藏  举报