前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >BFD(双向转发检测)理论知识详解

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

作者头像
释然
发布2022-10-27 17:39:33
1.6K0
发布2022-10-27 17:39:33
举报
文章被收录于专栏:释然IT杂谈释然IT杂谈

一、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会话源目的,动态下发本地标识符,动态学习对端标识符)

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控制报文目的端收到后直接将网络层的报文环回

二、BFD配置

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

代码语言:javascript
复制
[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多跳检测配置

代码语言:javascript
复制
[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]

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

代码语言:javascript
复制
[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会话统计信息
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 释然IT杂谈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
VPN 连接
VPN 连接(VPN Connections)是一种基于网络隧道技术,实现本地数据中心与腾讯云上资源连通的传输服务,它能帮您在 Internet 上快速构建一条安全、可靠的加密通道。VPN 连接具有配置简单,云端配置实时生效、可靠性高等特点,其网关可用性达到 99.95%,保证稳定、持续的业务连接,帮您轻松实现异地容灾、混合云部署等复杂业务场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档