网络技术
H3C网络技术
H3C 设备CLI(命令行)管理
H3C基础配置知识
H3C 设备型号概述
H3C网络端口基础信息与配置
H3C网络设备概述
HCL模拟器使用简介
H3C WX2540H 本地portal认证+本地用户认证实现web认证
网络的基本概念与定义
VLAN简介与配置
生成树配置
STP简介与配置
RSTP简介
MSTP基本概念
交换机FTP和TFTP操作
配置文件与升级
网络设备登录管理方式
网络设备文件系统操作
H3C MSR路由器出口双线负载均衡
策略路由配置
以太网链路聚合
DHCP中继
防火墙简单配置实验
华为_HCIP
认识设备-硬件架构与逻辑平面
路由基础-HCIP
OSPF路由基础概述
Router LSA详解
OSPF-Network LSA(二类LSA)与区域内路由计算
OSPF-区域间路由计算
计算机网络-OSPF防环机制
计算机网络-RIP动态路由协议简介
OSPF区域外部路由计算
OSPF特殊区域-Stub区域
计算机网络-NSSA区域与Totally NSSA区域
OSPF路由汇总
OSPF其它特性
IS-IS路由协议基础概念
IS-IS基础概念二
IS-IS邻接关系建立
IS-IS链路状态数据库同步
IS-IS路由计算
IPv6基础概念
IPv6缩写规范与地址分类
ICMPv6基础知识
ICMPv6之NDP协议
计算机网络-IPv6地址配置
DHCPv6基础概念
DHCPv6配置
IPv6路由配置
路由策略与路由工具
计算机网络-Filter-Policy过滤策略
Route-Policy路由策略
策略路由概念与应用
MQC策略简介与配置
流量过滤策略
BGP的背景与概述
BGP基本概念
BGP报文类型简介
BGP状态机制与对等体表项
BGP路由生成与路由表
BGP路由通告原则
BGP基础实验配置
BGP路由优选概述
BGP路由优选原则一Preferred-Value
BGP路由优选原则二-本地优先级
BGP路由优选原则三-路由类型
BGP路由优选原则四-AS_Path属性
BGP路由优选原则五-Origin属性优选
BGP路由优选原则六-优选MED属性值最小的路由
BGP路由优选原则七-EBGP优于IBGP
BGP路由优选原则八-优选IGP Cost值小的路由
BGP路由负载分担
BGP路由反射器与Cluster list选路原则
BGP路由优选原则九-优选Router ID小的设备通告的路由
计算机网络-IP组播基础
组播地址与组播网络组成
组播数据转发原理与RPF
组播分发树与组播协议
IGMP协议简介
IGMPv1工作原理
IGMPv2工作原理简介
IGMPv3的工作原理
IGMP Snooping特性
计算机网络-PIM协议基础概念
PIM-DM密集模式工作原理
基于PIM-DM+IGMP的组播实验配置
PIM-SM(ASM)基础
PIM-SM(SSM)基本原理
PIM-SM组播实验
BFD检测机制
BFD配置实验
VRRP基础概念
VRRP工作原理与选举过程
VRRP主备切换与主备回切
VRRP基础实验一
RSTP基础概念
RSTP工作原理与P/A机制
MSTP概述
MSTP基础概念
MSTP工作原理概述
MSTP基础实验一(单域多实例)
计算机网络-VPN虚拟专用网络概述
计算机网络-GRE(通用路由封装协议)简介
GRE-动态路由协议实验
IPSec VPN基本概念
IPSec VPN工作原理
IPSec VPN基础实验一(主模式)
GRE Over IPSec实验
计算机网络-L2TP VPN基础概念与原理
L2TP VPN基础实验配置
L2TP Over IPSec基础实验
SSH理论基础
VRF基本概念
MPLS基础概念
MPLS转发原理
MPLS静态标签实验
计算机网络-LDP标签分发协议
LDP工作原理-LDP会话建立
LDP标签发布与管理
VPN实例应用于交换机带外管理接口
H3C V7防火墙IPSECVPN配置(主模式配置)
网络设备拨号设置
网络地址分类与子网划分
防火墙区域以及安全策略配置(命令行版)
H3C V7 IPSEC_VPN配置(野蛮模式配置)
华为_HCIA
路由基础
以太网交换基础
VLAN的原理与配置
VLAN间通信
STP生成树简介
华为VRP系统简介
NAT网络地址转换
ACL访问控制列表
AAA的原理与配置
DHCP配置
链路聚合原理与配置
PPP与PPPoE协议
OSPF路由基础
无线通信基础原理
无线组网基本概念
无线网络配置原理与步骤
典型无线组网实验配置
网络设备防火墙是什么?
防火墙工作原理与安全策略
华为VRP系统基础命令配置
本文档使用 MrDoc 发布
-
+
首页
BFD检测机制
随着网络应用的广泛部署,网络发生故障极大可能导致业务异常。为了减小链路、设备故障对业务的影响,提高网络的可靠性,网络设备需要尽快检测到与相邻设备间的通信故障,以便及时采取措施,保证业务正常进行。 在无法通过硬件信号检测故障的系统中,应用通常采用上层协议本身的Hello报文机制检测网络故障。常用路由协议的Hello报文机制检测时间较长,检测时间超过1秒钟。当应用在网络中传输的数据超过GB/s时,秒级的检测时间将会导致应用传输的数据大量丢失。  就是在非直连的邻居无法感知到邻居状态,或者需要等待动态路由协议超时机制才会断开连接,而如果在大型网络中可能是致命的缺陷,静态路由也无法感知网关是否可用以及执行相应的线路切换,因此出现了相关的检测机制。 ## 一、BFD概念 ### 1.1 BFD基本概念 **BFD(Bidirectional Forwarding Detection,双向转发检测)**,提供了一个通用的、标准化的、介质无关和协议无关的快速故障检测机制,用于快速检测、监控网络中链路或者IP路由的转发连通状态,拥有以下两大优点: - 对相邻转发引擎之间的通道提供轻负荷、快速故障检测。 - 用单一的机制对任何介质、任何协议层进行实时检测。 BFD是一个简单的"Hello"协议。两个系统之间建立BFD会话通道,并周期性发送BFD检测报文,如果某个系统在规定的时间内没有收到对端的检测报文,则认为该通道的某个部分发生了故障。  ### 1.2 BFD报文结构 BFD检测是通过维护在两个系统之间建立的BFD会话来实现的,系统通过发送BFD报文建立会话。BFD控制报文根据场景不同封装不同,报文结构由**强制部分**和**可选的认证字段**组成。   相关字段说明: - **Sta**:BFD本地状态。 - Detect Mult:检测超时倍数,用于检测方计算检测超时时间。 - **My Discriminator**:BFD会话连接本地标识符(Local Discriminator) 。发送系统产生的一个唯一的、非0鉴别值,用来区分一个系统的多个BFD会话。 - **Your Discriminator**:BFD会话连接远端标识符(Remote Discriminator) 。从远端系统接收到的鉴别值,这个域直接返回接收到的“My Discriminator”,如果不知道这个值就返回0。 - Desired Min TX Interval:本地支持的最小BFD报文发送间隔。 - Required Min RX Interval:本地支持的最小BFD报文接收间隔。 - Required Min Echo RX Interval:本地支持的最小Echo报文接收间隔,单位为微秒(如果本地不支持Echo功能,则设置0)。 - Ver:BFD协议版本号,目前为1。 - Diag:诊断字,标明本地BFD系统最近一次会话状态发生变化的原因。 - **P**:参数发生改变时,发送方在BFD报文中置该标志,接收方必须立即响应该报文。 - **F**:响应P标志置位的回应报文中必须将F标志置位。 - C:转发/控制分离标志,一旦置位,控制平面的变化不影响BFD检测。 - A:认证标识,置1代表会话需要进行验证。 - D:查询请求,置位代表发送方期望采用查询模式对链路进行监测。 - M:为BFD将来支持点对多点扩展而设的预留位。 - Length:报文长度,单位为字节。 ### 1.3 BFD会话建立 BFD会话的建立有两种方式,即**静态建立BFD会话**和**动态建立BFD会话**。 BFD通过控制报文中的本地标识符和远端标识符区分不同的会话。静态和动态创建BFD会话的主要区别在于Local Discriminator和Remote Discriminator的配置方式不同。  静态建立BFD会话是指通过命令行手工配置BFD会话参数,包括配置本地标识符和远端标识符等,然后手工下发BFD会话建立请求。 动态建立BFD会话的本地标识符由触发创建BFD会话的系统动态分配,远端标识符从收到对端BFD消息的Local Discriminator的值学习而来。 ### 1.4 BFD会话状态 BFD会话有四种状态:**Down**、**Init**、**Up**和**AdminDown**。 会话状态变化通过BFD报文的State字段传递,系统根据自己本地的会话状态和接收到的对端BFD报文驱动状态改变,如左下图所示。BFD状态机的建立和拆除都采用**三次握手机制**,如右下图所示,以确保两端系统都能知道状态的变化。  每个系统通过报文中的sta域发送本端状态,接收报文中的sta域了解对端状态,综合起来决定状态机的跳转。 - Down状态说明会话down。一个会话会维持在down状态直到收到对端的报文并且该报文的sta字段标志着对端状态不是up。如果收到的是down包,状态机将从down状态跳转到init状态,如果收到的是init包,状态机将从down状态跳转到up状态,如果收到的是up包,状态机维持down状态。 - Init状态说明与远端正在通信,并且本地会话期望进入up状态,但是远端还没回应。一个init状态的会话会维持init状态直到收到对端的init包或者up包,就会跳转到up状态,否则等到检测时间超时以后,便会跳转到down状态,意味着与远端的通信丢失。 - Up状态说明BFD会话成功建立,并且正在确认链路的联通性,会话会一直保持在up状态直到链路故障或者管理down操作。如果收到远端的down包或者检测时间超时会话就会从up状态跳转到down状态。  大致就是A先发送Down报文,然后B回复init,然后A发送up,然后A发送一个P置位的flag报文,B回复F置位flag报文,B也发送确认报文,确保双方状态都变为up状态,然后保持在up状态,直到收到down报文,BFD会话状态还可以管理员手动关闭。 ### 1.5 BFD检测模式 BFD的检测机制:两个系统建立BFD会话,并沿它们之间的路径周期性发送BFD控制报文,如果一方在既定的时间内没有收到BFD控制报文,则认为路径上发生了故障。BFD的检测模式有**异步模式**和**查询模式**两种。 异步模式:系统之间相互周期性地发送BFD控制包,如果某个系统在检测时间内没有收到对端发来的BFD控制报文,就宣布会话为Down。  查询模式:在需要验证连接性的情况下,系统连续发送多个BFD控制包,如果在检测时间内没有收到返回的报文就宣布会话为Down。  异步模式和查询模式的本质区别:检测的位置不同,异步模式下本端按一定的发送周期发送BFD控制报文,检测位置为远端,远端检测本端是否周期性发送BFD控制报文;查询模式下本端检测自身发送的BFD控制报文是否得到了回应。 **异步模式就是一直问一直回复,查询模式就是有需要再问,等待回复,如果没有回复则会话down。** ### 1.6 BFD检测时间 BFD会话检测时长由**TX**(本地最小发送间隔),**RX**(本地最小接收间隔),**DM**(检测倍数)三个参数决定。BFD报文的实际发送时间间隔,实际接受时间间隔由BFD会话协商决定。**简单说就是按照双方最大的检测间隔来进行。** 本地BFD报文实际发送时间间隔=MAX { 本地配置的发送时间间隔,对端配置的接收时间间隔 } 本地BFD报文实际接收时间间隔=MAX { 对端配置的发送时间间隔,本地配置的接收时间间隔 } 本地BFD报文实际检测时间: - 异步模式:本地BFD报文实际检测时间=本地BFD报文实际接收时间间隔×对端配置的BFD检测倍数 - 查询模式:本地BFD报文实际检测时间 = 本地BFD报文实际接收时间间隔×本端配置的BFD检测倍数  BFD缺省时间参数 - BFD报文发送间隔默认1000毫秒,接受间隔默认1000毫秒,本地检测倍数3次。 - BFD会话等待恢复时间0秒,会话延迟Up时间0秒。 也就是说默认情况下在异步模式下每隔1秒发送一个bfd报文,每隔1秒接收一个报文,如果超过3秒没有接收到报文则状态变更。 检测超时倍数,用于检测方计算检测超时时间。 - 查询模式:采用本地检测倍数。 - 异步模式:采用对端检测倍数。  可以通过修改TX、RX和DM来修改BFD检测间隔与失效检测时间。 ### 1.7 BFD Echo功能 BFD Echo功能也称为BFD回声功能,是由本地发送BFD Echo报文,远端系统将报文环回的一种检测机制。 在两台直接相连的设备中,其中一台设备支持BFD功能(R1);另一台设备不支持BFD功能(R2),只支持基本的网络层转发。为了能够快速的检测这两台设备之间的故障,可以在支持BFD功能的设备上创建单臂回声功能的BFD会话。支持BFD功能的设备主动发起回声请求功能,不支持BFD功能的设备接收到该报文后直接将其环回,从而实现转发链路的连通性检测功能。  简单说就是在不支持BFD的设备或者不方便配置BFD的场景中可以使用。 ### 1.8 联动功能简介 联动功能由检测模块、Track和应用模块三部分组成。 1. 监测模块负责对链路状态、网络性能等进行监测,并将探测结果通知给Track模块 。 2. Track模块收到监测模块的探测结果后,及时改变Track项的状态,并通知应用模块。 3. 应用模块根据Track项的状态,进行相应的处理,从而实现联动。 简单理解就是将BFD状态与静态路由、动态路由或者其它应用功能进行关联,BFD状态down则进行路由切换或者关闭端口,BFD状态up则恢复,而且BFD检测支持毫秒级检测,比原有的路由协议超时机制更加灵活。    总结:BFD是一直简单的状态检测机制,通过互相发送BFD报文以及回复进行链路间状态确认。BFD状态有:Down、Init、Up、AdminDown,BFD可以设置本地发送与接收报文间隔以及检测超时倍数,通过调整3个参数控制报文发送间隔。BFD还支持单臂回声功能,与不支持BFD功能的设备间进行检测。通过BFD状态检测功能与路由协议等进行联动可以实现毫秒级切换。
Chuck
2024年8月16日 11:59
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码