BFD(双向转发检测)理论知识详解

简介: BFD(双向转发检测)理论知识详解

640.jpg

 一、BFD双向转发检测  :


 (一)BFD:Bidirectional Forwarding Detection


1.BFD目的:双向转发检测机制是一套全网统一的检测机制,用于快速检测,监控网络中链路或者IP路由的转发连通状况。2.BFD作用: 改善网络性能,是相邻系统之间快速检测到通信故障,更快的建立起备用通道恢复通信。

                 

    (二)BFD工作原理


1. 建立会话:


两端建立BFD的检测会话,互相发送类似“hello”包的BFD检测包 ,通过BFD控制报文中的本地标识符合远端标识符来区分不同的BFD会话。                            (1)静态会话:手动配置BFD会话参数(手动指定标识符和远端标识符 1-8191,0保留作为动态BFD协商时使用),手动下发BFD会话建立请求。

  • 开启BFD会话
  • 创建BFD会话名称  
  • 指定检测源检测端地址  
  • 指定本地和远端的BFD会话标识符
  • 激活/下发BFD会话                            

(2)动态会话:

动态BFD联动由各种路由协议(如RIP,OSPF)触发,在建立BFD会话时系统对本地标识符合远端标识符分别采用如下处理

  • 动态分配本地标识符;
  • 动态学习远端标识符。

       1-----开启BFD会话

        2-----开启与应用协议的BFD联动(自动创建BFD会话,BFD会话源目的,动态下发本地标识符,动态学习对端标识符)      

                  640.jpg              

2. 检验方式:


(1)异步模式:系统之间互相周期性的发送BFD控制包,如果在某个系统检测时间内没有收到对端的BFD控制包,就判断会话down,告知联动应用执行相应策略动作。(2)查询模式:每个系统都有一个独立的方法用来确认它所连接的系统,一旦一个会话建立后,系统停止发送控制报文,只有在需要显示地验证连接性,发送一个短系列的控制包,再检测时间内没有收到返回的报文就宣布会话为down。(3)回声模式:本地发送一系列回声报文,远端系统正常情况下会将这些控制报文环回回来。如果联系几个回合或者时间内都没有收到回声报文,判断检测端故障,告知本端联动应用执行相应策略动作。


3.会话状态:


Down,Init;Up;AdminDown

  • Down:启动本地BFD会话,初始状态为Down;发送状态为Down的BFD报文
  • Init    :收到邻居端状态为Down的BFD报文后对邻居状态为Init;发送状态为Init的BFD报文
  • Up     :收到邻居端状态为Init的BFD报文后对邻居状态为Up;本端对邻居的会话建立完毕。
  • AdminDown:

1)故障发生被检测到后,最先感知到故障端会发送状态为AdminDown的BFD报文;2)对端收到这个报文后会发状态为Down的BFD报文,同时关闭自己的的BFD会话,告知联动的上层应用执行动作               3)源端收到对端状态为Down的BFD报文后,关闭本端的BFD会话告知联动的上层应用执行动作  。

 

(三)BFD特点:


  • BFD能够在系统之间的任何类型通道上进行故障检测,这些通道包括(直连物理链路;虚电路;隧道;MPLS LSP ;多跳路由通道)
  • BFD通过在双向链路两端同时发送检测报文,检测两个方向上的链路状态,实现毫秒级别的链路故障检测。
  • BFD可以实现单跳(直连两路IP连通性)或者多跳(非直连,在IP需要跨多跳)检测。


(四)BFD与应用联动


  • 支持所有路由协议的动态BFD联动(RIP;OSPF;IS-IS;BGP;)实现链路故障时路由的快速收敛,
  • 支持静态路由;MPLS LDP;组播等协议于BFD的联动
  • 支持与VRRP;接口状态的BFD联动。


(五)静态BFD会话的特殊形式----单臂回声BFD


1.单臂回声BFD简介:


单臂回声功能是指通过BFD报文的环回操作来检测转发链路的联通性,主要针对对端系统不支持BFD会话的情景。

2.单臂回声特殊性:单臂回声功能只适用于BFD单跳检测,且不支持二层设备间的链路检测;即只能做直节连接链路的检测。


3.单臂回声BFD原理:


源端发起的BFD控制报文目的端收到后直接将网络层的报文环回

                             

640.jpg


二、BFD配置


(一)静态BFD单跳检测配置

[AR-1]
[AR-1]bfd
  --开启BFD会话
[AR-1-bfd]default-ip-address 224.0.0.184
  --指定本BFD报文发往目的的组播地址(默认为224.0.0.184,范围为224.0.0.107--225.0.0.250;BFD会话两端必须一致) 
[AR-1-bfd]quit 
[AR-1]bfd AAA bind 
   bind  ldp-lsp------针对动态下发LSP的协议的ldp的BFD检测
   bind mpls-te------针对MPL转发链路的BFD
   bind peer-ip-----指定BFD会话绑定的对端为IP地址
[AR-1]bfd AAA bind   
[AR-1]bfd AAA bind peer-ip 12.1.1.2 ?
   12.1.1.2 interface-----检测对端地址12.1.1.2时使用指定本端源接口
   12.1.1.2 source-ip-----检测对端地址1 2.1.1.2是指定本端的源IP地址
   12.1.1.2 vpn-instance-----检测对端地址12.1.1.2时指定BFD绑定的VPN实例
[AR-1]
[AR-1]bfd AAA bind peer-ip 12.1.1.2 interface G0/0/0 
  --创建名称为AAA的BFD检测会话,检测对端地址为12.1.1.2,使用本地接口G0/0/0作为BFD报文的源第和源地址
[AR-1-bfd-session-aaa]discriminator local 12
  --指定本BFD会话本端标识符为12(取值范围1--8191)
[AR-1-bfd-session-aaa]discriminator remote 21----指定本BFD会话对端BFD的标识符为21(取值范围1--8191)
[AR-1-bfd-session-aaa]min-rx-interval 300
  --设定本BFD会话接收BFD报文的间隔时间为300毫秒(默认1000毫秒,取值范围10---2000毫秒)
[AR-1-bfd-session-aaa]min-tx-interval 300
  --设定本BFD会话发送BFD的间隔时间为300毫秒(默认1000毫秒,取值范围10---2000毫秒)
[AR-1-bfd-session-aaa]detect-multiplier 3
  --设定本BFD会话超时次数为3次(默认3次,取值范围3--50次)
[AR-1-bfd-session-aaa]commit
  --下发/激活本BFD会话

(二)静态BFD多跳检测配置

[AR-1]bfd CCC bind peer-ip 3.3.3.3   
[AR-1-bfd-session-ccc]discriminator local 30
[AR-1-bfd-session-ccc]discriminator remote 10
[AR-1-bfd-session-ccc]min-rx-interval 300
[AR-1-bfd-session-ccc]min-tx-interval 300
[AR-1-bfd-session-ccc]detect-multiplier 3
[AR-1-bfd-session-ccc]commit 
[AR-1-bfd-session-ccc]quit 
[AR-1]

640.jpg


(三)静态BFD-----单臂回声BFD

[AR-1]
[AR-1]bfd ZZZ bind peer-ip 12.1.1.2 interface G0/0/0 one-arm-echo  
[AR-1-bfd-session-zzz]discriminator local 100 
[AR-1-bfd-session-zzz]min-echo-rx-interval 300
[AR-1-bfd-session-zzz]detect-multiplier 3
[AR-1-bfd-session-zzz]commit 
[AR-1-bfd-session-zzz]quit 
[AR-1]
[AR-1]bfd VVV bind peer-ip 12.1.1.2 interface G0/0/1 source-ip 12.1.1.1 auto
   --配置静态标识符自协商BFD
 BFD的检测时间=接收到远端的Detect Multi * MAX
                        =接收端的倍数 X 本端最短BFD报文的接收时间
[AR-1]dis bfd session all 
  --查看本设备的所有BFD会话的状态
[AR-1]dis bfd interface G0/0/0
  --查看配置了BFD会话下的接口信息
[AR-1]dis bfd statistics session
  --查看所有的BFD会话统计信息


相关文章
|
6月前
|
算法
以太网CSMA/CD协议:通信原理、碰撞检测与退避机制深度解析
以太网CSMA/CD协议:通信原理、碰撞检测与退避机制深度解析
851 1
|
7月前
|
负载均衡 算法 定位技术
【专栏】思科私有动态路由协议:EIGRP,一种由Cisco开发的混合路由协议,结合了距离矢量和链路状态协议的优点,提供无环路路由和快速收敛
【4月更文挑战第28天】EIGRP,一种由Cisco开发的混合路由协议,结合了距离矢量和链路状态协议的优点,提供无环路路由和快速收敛。它支持带宽和延迟的度量,实现多路径负载均衡。配置EIGRP涉及启动协议、声明网络和调整参数。在实际应用中,如中型企业网络,EIGRP确保数据通信顺畅,适应网络扩展和变化,展现其高效和灵活的性能。
129 1
|
7月前
|
网络协议 算法 数据库
【专栏】OSPF是广泛应用的链路状态路由协议,通过分层网络结构和SPF算法实现高效路由。强烈建议收藏!
【4月更文挑战第28天】OSPF是广泛应用的链路状态路由协议,通过分层网络结构和SPF算法实现高效路由。其关键特性包括区域划分、链路状态数据库、邻居关系和路由更新。工作过程涉及邻居发现、信息交换、数据库构建、路由计算及收敛。理解OSPF对于网络管理和规划具有重要意义。
141 1
|
7月前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(上)
【计算机网络】—— IP协议及动态路由算法(上)
|
7月前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(下)
【计算机网络】—— IP协议及动态路由算法(下)
|
网络协议 算法 数据库
三十五、OSPF协议的链路状态算法
三十五、OSPF协议的链路状态算法
三十五、OSPF协议的链路状态算法
|
网络协议
计算机网络学习16:以太网交换机自学习与帧转发流程、生成树协议STP
假设各主机已经知道网络中其他主机的MAC地址,无需进行ARP。
计算机网络学习16:以太网交换机自学习与帧转发流程、生成树协议STP
|
存储 网络协议 算法
【计算机网络】网络层 : RIP 协议 ( 路由选择协议分类 | RIP 协议简介 | 信息交换 | 距离向量算法 | 计算示例 )★
【计算机网络】网络层 : RIP 协议 ( 路由选择协议分类 | RIP 协议简介 | 信息交换 | 距离向量算法 | 计算示例 )★
469 0
【计算机网络】网络层 : RIP 协议 ( 路由选择协议分类 | RIP 协议简介 | 信息交换 | 距离向量算法 | 计算示例 )★