雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 262|回复: 0

[学习/资料] 【SPOTO思博网络】高可用技术《BFD》【网工零基础入门掌握】

[复制链接]
发表于 2021-11-25 10:20:35 | 显示全部楼层 |阅读模式
【SPOTO思博网络】高可用技术《BFD》【网工零基础入门掌握】
BFD 是啥?

BFD(Bidirectional Forwarding Detection,双向转发检测)是一套全网统一的检测机制,用于快速检测、监控网络中链路或者IP路由的转发连通状况。


为了提升现有网络性能,邻居之间必须能快速检测到通信故障, 从而更快的建立起备用通道恢复通信。


常用的故障检测方法

硬件检测:例如通过SDH(Synchronous Digital Hierarchy ,同步数字体系)告警检测链路故障。硬件检测的优点是可以很快发现故障,但并不是所有介质都能提供硬件检测。


慢Hello机制:通常采用路由协议中的 Hello 报文机制。这种机制检测到故障所需时间为秒级。对于高速数据传输(例如吉比特速率级)超过1秒的检测时间将导致大量数据丢失;对于时延敏感的业务(例如语音业务)超过 1 秒的延迟也是不能接受的。并且,这种机制依赖于路由协议。


其他检测机制:不同的协议有时会提供专用的检测机制,但在系统间互联互通时,这样的专用检测机制通常难以部署。



BFD 的工作机制
概述


① BFD提供了一个通用的、标准化的、介质无关、协议无关的快速故障检测机制,可以为各上层协议如路由协议、 MPLS 等统一地快速检测两台路由器间双向转发路径的故障。


② BFD 在两台路由器上建立会话,用来监测两台路由器间的双向转发路径,为上层协议服务。


③ BFD 本身并没有发现机制,而是靠被服务的上层协议通知其与谁建立会话,会话建立后如果在检测时间内没有收到对端的 BFD 控制报文则认为发生故障, 通知被服务的上层协议,上层协议进行相应的处理


BFD的工作流程

① 流程图




② BFD 的建立过程


1> 上层协议通过自己的 Hello 机制发现邻居并建立连接
2> 上层协议在建立了新的邻居关系时,将邻居的参数及检测参数都(包括目的地址和源地址等)通告给 BFD
3> BFD 根据收到的参数进行计算并建立邻居


③ 故障出现时的处理方式




1> BFD 检测到链路 /网络故障
2> 拆除 BFD 邻居会话
3> BFD 通知本地上层协议进程 BFD 邻居不可达
4> 本地上层协议中止上层协议邻居关系
5> 如果网络中存在备用路径,路由器将选择备用路径
注:BFD 草案中没有规定检测的时间精度,目前支持 BFD 的设备大多数提供的是毫秒级检测

BFD 的检测方式

① 单跳检测:BFD 单跳检测是指对两个直连系统进行 IP 连通性检测, 这里所说的“单跳”是 IP 的一跳

② 多跳检测:BFD 可以检测两个系统间的任意路径,这些路径可能跨越很多跳,也可能在某些部分发生重叠

③ 双向检测:BFD 通过在双向链路两端同时发送检测报文,检测两个方向上的链路状态,实现毫秒级的链路故障检测(BFD检测LSP是一种特殊情况,只需在一个方向发送 BFD 控制报文,对端通过其他路径报告链路状况)


BFD会话的工作方式

① 控制报文方式:链路两端会话通过控制报文交互监测链路状态

② Echo 报文方式:链路某一端通过发送 Echo 报文由另一端转发回来,实现对链路的双向监测


BFD 的运行模式

① 主动模式:在建立会话前不管是否收到对端发来的 BFD 控制报文,都会主动发送BFD 控制报文

② 被动模式:在建立会话前不会主动发送 BFD 控制报文, 直到收到对端发送来的控制报文


注:
1> 在会话初始化过程中,通信双方至少要有一个运行在主动模式才能成功建立会话
2> BFD 会话建立后有两种模式:异步模式和查询模式
3> 通信双方要求运行在相同的模式【目前仅支持异步模式】

异步模式:以异步模式运行的设备周期性地发送 BFD 控制报文,如果在检测时间内对端没有收到 BFD 控制报文,则认为会话 down

查询模式:假定有一个独立的方法,确认自己和对端系统的连通性。这样,BFD会话建立后,会停止周期发送BFD控制报文,除非需要显式地验证连接性


BFD 的认证方法

① Simple:简单字符认证

② MD5 :MD5 认证

③ SHA1:SHA1 认证( Secure Hash Algorithm 1 )

BFD 的报文格式

① BFD控制报文封装在UDP报文中传送,其UDP端口号为3784

② 报文格式




③ 主要字段释义

1> Vers:协议的版本号,协议版本为 1
2> Diag :本地协议最后一次从 up 状态转换到其他状态的原因
3> State(Sta):BFD会话当前状态,取值为:0代表 AdminDown,1代表 Down,2 代表 Init ,3 代表 Up
4> Demand(D):设置为1,表示发送协议希望操作在查询模式;设置为0,表示发送协议不区分操作在查询模式,或者表示发送协议不能操作在查询模式
5> Poll(P):设置为1,表示发送协议请求进行连接确认,或者发送请求参数改变的确认;设置为 0,表示发送协议不请求确认
6> Final (F):设置为 1,表示发送协议响应一个接收到 P 比特为 1的BFD控制报文;设置为0,表示发送协议不响应一个P比特为1 的 BFD 控制报文


BFD 的基本配置
常用的配置命令



BFD 的显示和维护





BFD 的应用
拓扑图


需求分析


① Router A和RouterC通过二层交换机互连,它们的接口 Ethernet1/1都运行RIP进程1。并且Router A的接口 Ethernet1/1 上还使能了 BFD 检测功能。

② Router A 通过 Router B 与 Router C 互连, Rourer A 的接口Ethernet1/2 运行RIP 进程2。Rouer C 的接口 Ethernet1/2、Rourer B 的接口 Ethernet1/1 和 Ethernet1/2 上都运行 RIP 进程 1

③ Router C 上配置静态路由, 并将静态路由引入 RIP 进程中, 使 Router C 有路由发送至 Router A 。Router A 上学习到 Router C 发送的静态路由,出接口为与二层交换机相连的接口

④ 在 Router C 和二层交换机之间的链路发生故障后,BFD 能够快速检测链路中断并通告RIP 协议。RIP 协议响应 BFD 会话 down,删除与Router C的邻居,并删除从Router C学习的路由。Router A 上学习到Router C发送的静态路由,出接口为与Router B连接的接口。

配置命令

(1) 配置 RIP 基本功能并且在接口上使能 BFD


# 配置 Router A
<RouterA> system-view
[RouterA] rip 1
[RouterA-rip-1] network 192.168.1.0
[RouterA-rip-1] quit
[RouterA] interface ethernet 1/1
[RouterA-Ethernet1/1] rip bfd enable
[RouterA-Ethernet1/1] quit
[RouterA] rip 2
[RouterA-rip-2] network 192.168.2.0
[RouterA-rip-2] quit
# 配置 Router B
<RouterB> system-view
[RouterB] rip 1
[RouterB-rip-1] network 192.168.2.0
[RouterB-rip-1] network 192.168.3.0
[RouterB-rip-1] quit
# 配置 Router C
<RouterC> system-view
[RouterC] rip 1
[RouterC-rip-1] network 192.168.1.0
[RouterC-rip-1] network 192.168.3.0
[RouterC-rip-1] import-route static
[RouterC-rip-1] quit


(2)配置接口 BFD 参数

# 配置 Router A
[RouterA] bfd session init-mode active
[RouterA] bfd echo-source-ip 11.11.11.11
[RouterA] interface ethernet 1/1
[RouterA-Ethernet1/1] bfd min-transmit-interval 500
[RouterA-Ethernet1/1] bfd min-receive-interval 500
[RouterA-Ethernet1/1] bfd detect-multiplier 7
[RouterA-Ethernet1/1] return

(3) Router C 配置静态路由

[RouterC] ip route-static 100.1.1.1 24 null 0


检测结果



调试 BFD


<RouterA> debugging rip 1 event //将与 Rc 相连的接口断开

最终结果


|| 备考不用慌,大佬带你飞 : 每三位IE,有两位来自思博
进入全国网络工程师交流群 ,请扫描下方二维码↓↓↓
群里有行业大咖、实战分享、技术交流、技术咨询、企业内推等机会
若群满,请添加老杨微信(spotoa),邀你进群







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-4-29 01:54 , Processed in 0.079239 second(s), 19 queries , Gzip On.

快速回复 返回顶部 返回列表