小结:BFD

*BFD(双向转发检测,Bidirectional Forwarding Detection)是一种快速、轻量级的故障检测机制,用于检测网络中两点之间的连通性。它广泛应用于各种场景

1. 检测 IP 链路

应用场景

  • BFD 用于检测两台设备之间的 IP 层连通性,快速发现链路故障(如物理链路中断或设备故障)。
  • 常用于直连或非直连的 IP 网络,提供毫秒级的故障检测能力。

实现方式

  • 在两台设备上配置 BFD 会话,指定源和目的 IP 地址。
  • BFD 通过周期性发送检测报文,检测对端是否可达。

示例配置(以华为设备为例):

bash重击

bfd
bfd session1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2min-tx-interval 50min-rx-interval 50commit
BFD 系列
bfd session1  绑定对等体

优势

  • 检测速度快(毫秒级),相比传统协议(如 OSPF、BGP)的 Hello 机制更高效。
  • 适用于高可靠性要求的网络。

2. BFD 单臂回声功能

应用场景

  • 单臂回声功能适用于单向检测场景,例如一端设备不支持 BFD 或无法建立双向 BFD 会话。
  • 常用于检测客户端到服务器的单向链路(如通过中间设备转发)。

实现方式

  • 一端设备发送 BFD 回声报文,对端设备只需回环报文,无需运行 BFD 协议。
  • 配置 BFD 单臂回声会话,指定对端 IP 地址。

示例配置

bash重击

bfd
bfd echo1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1 echodiscriminator local 1min-tx-interval 50commit

注意事项

  • 对端设备必须支持报文回环(如普通 IP 转发设备)。
  • 仅检测单向路径,适合简单场景。

3. 与接口状态联动

应用场景

  • 将 BFD 的检测结果与物理或逻辑接口状态绑定,当 BFD 检测到链路故障时,触发接口状态变为 Down。
  • 常用于触发上层协议快速切换(如静态路由、VRRP)。

实现方式

  • 配置 BFD 会话并绑定到接口,设置接口状态联动。
  • 当 BFD 检测到故障,接口被置为 Down,影响依赖该接口的协议。

示例配置

salt

interface GigabitEthernet0/0/1ip address 192.168.1.1 255.255.255.0bfd session1 bind peer-ip 192.168.1.2link-state down

优势

  • 快速触发接口相关协议收敛,减少故障恢复时间。
  • 适用于需要接口状态驱动的场景。

4. 与静态路由联动

应用场景

  • BFD 检测静态路由的下一跳连通性,当下一跳不可达时,快速移除无效静态路由,切换到备用路由。
  • 提高静态路由的可靠性,适用于企业网络或简单拓扑。

实现方式

  • 配置 BFD 会话监控静态路由的下一跳。
  • 将静态路由与 BFD 会话关联,当 BFD 检测到故障,静态路由失效。

示例配置

bash重击

bfd
bfd static1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
ip route-static 10.0.0.0 255.255.255.0 192.168.1.2 track bfd static1

优势

  • 避免静态路由因下一跳故障导致的黑洞。
  • 快速切换到备用路由,提升网络可用性。

5. 与 RIP 联动

应用场景

  • BFD 检测 RIP 邻居之间的链路状态,加速 RIP 路由收敛。
  • 当 BFD 检测到邻居不可达时,RIP 快速移除失效路由。

实现方式

  • 配置 BFD 会话并与 RIP 进程关联。
  • RIP 进程监控 BFD 状态,调整路由表。

示例配置

bash重击

bfd
bfd rip1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
rip 1bfd all-interfaces  # 启用 RIP 接口的 BFD 检测

优势

  • 缩短 RIP 路由收敛时间(RIP 默认定时器较长)。
  • 提高 RIP 网络的故障恢复速度。

6. 与 OSPF 联动

应用场景

  • BFD 检测 OSPF 邻居之间的链路状态,加速 OSPF 邻居关系中断和路由收敛。
  • 常用于 OSPF 网络的高可用性场景。

实现方式

  • 在 OSPF 接口或进程中启用 BFD,BFD 检测邻居连通性。
  • 当 BFD 检测到故障,OSPF 快速更新邻居状态和 LSDB。

示例配置

bash重击

bfd
bfd ospf1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
interface GigabitEthernet0/0/1ospf bfd enable  # 启用接口的 OSPF BFD 检测

优势

  • 缩短 OSPF 邻居 Down 的检测时间(从秒级到毫秒级)。
  • 提高 OSPF 网络的稳定性。

7. 与 IS-IS 联动

应用场景

  • BFD 检测 IS-IS 邻居之间的链路状态,加速 IS-IS 路由收敛。
  • 适用于骨干网或大型 IS-IS 网络。

实现方式

  • 在 IS-IS 进程或接口中启用 BFD,检测邻居连通性。
  • BFD 故障触发 IS-IS 快速更新邻居状态。

示例配置

bash重击

bfd
bfd isis1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
isis 1bfd all-interfaces  # 启用 IS-IS 接口的 BFD 检测

优势

  • 提高 IS-IS 网络的故障检测速度。
  • 减少因链路故障导致的流量中断时间。

8. 与 BGP 联动

应用场景

  • BFD 检测 BGP 邻居之间的连通性,加速 BGP 会话中断和路由收 Cepstral。
  • 常用于跨域或广域网的 BGP 场景。

实现方式

  • 配置 BFD 会话并与 BGP 邻居关联。
  • 当 BFD 检测到故障,BGP 快速断开邻居关系,更新路由表。

示例配置

bash重击

bfd
bfd bgp1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
bgp 100peer 192.168.1.2 bfd  # 启用 BGP 邻居的 BFD 检测

优势

  • 缩短 BGP 会话中断检测时间(BGP 默认 Keepalive 较慢)。
  • 提高 BGP 网络的稳定性,适合大规模网络。

9. 与 MPLS 联动

应用场景

  • BFD 检测 MPLS 网络中的 LSP(标签交换路径)或 PW(伪线)连通性。
  • 常用于 MPLS VPN 或 L2VPN/L3VPN 场景,快速切换故障路径。

实现方式

  • 配置 BFD 检测 MPLS LSP 或 PW 的端到端连通性。
  • 当 BFD 检测到故障,触发 MPLS 快速重路由(FRR)或保护切换。

示例配置(检测 MPLS LSP):

bash重击

bfd
bfd mpls1 bind peer-ip 192.168.1.2 lspdiscriminator local 1 remote 2commit
mplslsp bfd enable  # 启用 MPLS LSP 的 BFD 检测

优势

  • 提供 MPLS 网络的快速故障检测。
  • 提高 MPLS VPN 的服务可靠性。

10. 与 IPv6 联动

应用场景

  • BFD 检测 IPv6 网络中的链路或邻居连通性。
  • 适用于 IPv6 静态路由、OSPFv3、BGP4+ 等协议的快速故障检测。

实现方式

  • 配置 BFD 会话,指定 IPv6 地址作为源和目的地址。
  • 与 IPv6 协议(如 OSPFv3)关联,检测链路状态。

示例配置

bash重击

bfd
bfd ipv6 bind peer-ipv6 2001:db8::2 source-ipv6 2001:db8::1discriminator local 1 remote 2commit
interface GigabitEthernet0/0/1ospfv3 bfd enable  # 启用 OSPFv3 的 BFD 检测

优势

  • 支持 IPv6 网络的高效故障检测。
  • 与 IPv6 协议无缝集成,提升网络可靠性。

11. 与 Smart Link 联动

应用场景

  • BFD 检测 Smart Link(华为专有链路冗余技术)的主备链路状态,加速主备链路切换。
  • 适用于需要快速链路切换的二层网络。

实现方式

  • 配置 BFD 会话检测 Smart Link 的主备链路。
  • 当 BFD 检测到主链路故障,触发 Smart Link 切换到备链路。

示例配置

bash重击

bfd
bfd smart1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
smart-link group 1protect-vlan allflush enabletrack bfd smart1  # 关联 BFD 会话

优势

  • 提供毫秒级链路切换,减少二层网络中断。
  • 提高 Smart Link 的故障响应速度。

12. 与 VRRP 联动

应用场景

  • BFD 检测 VRRP 主备设备之间的链路状态,加速 VRRP 主备切换。
  • 当 BFD 检测到主设备链路故障,备设备快速接管虚拟 IP。

实现方式

  • 配置 BFD 会话检测 VRRP 组的链路。
  • 将 BFD 与 VRRP 关联,故障时降低主设备优先级或触发切换。

示例配置(主设备):

bash重击

bfd
bfd vrrp1 bind peer-ip 192.168.1.2 source-ip 192.168.1.1discriminator local 1 remote 2commit
interface GigabitEthernet0/0/1ip address 192.168.1.1 255.255.255.0vrrp vrid 1 virtual-ip 192.168.1.254vrrp vrid 1 priority 120vrrp vrid 1 track bfd vrrp1  # 关联 BFD 会话

备设备配置类似,优先级低于主设备。

优势

  • 缩短 VRRP 切换时间(从秒级到毫秒级)。
  • 提高网关冗余的可靠性。

总结

BFD 的核心优势是提供快速、统一的故障检测机制,适用于多种协议和场景。以下是关键点:

  • 检测速度:毫秒级检测,远快于传统协议的定时器。
  • 灵活性:支持单臂回声、双向检测,适用于直连和非直连场景。
  • 广泛应用:与静态路由、动态路由(RIP、OSPF、IS-IS、BGP)、MPLS、VRRP 等协议深度集成。
  • IPv6 支持:无缝支持 IPv6 网络。
  • 二层/三层联动:与 Smart Link、VRRP 等技术结合,提升冗余性和可靠性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/903241.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配置Spark历史服务器,轻松查看任务记录

在大数据处理中,Spark是一个强大的分布式计算框架。但当Spark服务重启后,之前的运行记录就会消失,给我们排查问题和分析任务执行情况带来不便。这时,配置Spark历史服务器就显得尤为重要,它能帮助我们保存和查看历史任务…

(六)RestAPI 毛子(外部导入打卡/游标分页/Refit/Http resilience/批量提交/Quartz后台任务/Hateoas Driven)

文章目录 项目地址一、外部导入打卡功能1.1 创建实体1. Entry实体2. EntryImport实体3. 添加数据库配置4. 创建表 1.2 创建DTOs1.3 创建GetEnties Controller 二、游标分页2.1 创建所需要的DTOs1. 创建游标分页的请求参数2. 创建CollectionResponse3. 添加游标编码和解码的DTO …

Node.js CSRF 保护指南:示例及启用方法

解释 CSRF 跨站请求伪造 (CSRF/XSRF) 是一种利用用户权限劫持会话的攻击。这种攻击策略允许攻击者通过诱骗用户以攻击者的名义提交恶意请求,从而绕过我们的安全措施。 CSRF 攻击之所以可能发生,是因为两个原因。首先,CSRF 攻击利用了用户无法辨别看似合法的 HTML 元素是否…

Flink介绍——实时计算核心论文之Dataflow论文总结

数据流处理的演变与 Dataflow 模型的革新 在大数据处理领域,流式数据处理系统的发展历程充满了创新与变革。从早期的 S4 到 Storm,再到 MillWheel,每一个系统都以其独特的方式推动了技术的进步。S4 以其无中心架构和 PE(Processi…

Arduino 入门学习笔记(五):KEY实验

Arduino 入门学习笔记(五):KEY实验 开发板:正点原子ESP32S3 例程源码在文章顶部可免费下载(审核中…) 1. GPIO 输入功能使用 1.1 GPIO 输入模式介绍 在上一文章中提及到 pinMode 函数, 要对…

Centos9安装docker

1. 卸载docker 查看是否安装了docker yum list | grep docker卸载老版本docker,拷贝自官网 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine卸载新版本…

Pgvector+R2R搭建RAG知识库

背景 R2R是一个采用Python编写的开源AI RAG框架项目,与PostgreSQL技术栈集成度高,运行需求资源少(主要是本人的Macbook air m1内存只有8G)的特点,对部署本地私有化化AI RAG应用友好。 Resource Recommendations Whe…

go中redis使用的简单介绍

目录 一、Redis 简介 二、Go中Redis的使用 1. 安装Go Redis包 2. 单机模式 连接示例 3. 哨兵模式 依赖 连接示例 三、Redis集群 1. 集群模式 集群部署 部署结构 使用redis-cli创建集群 连接示例 四、常用数据结构与操作 1. 字符串(String&#xff0…

北京工业大学25计专上岸经验分享

1.个人情况介绍 本科就读于河北双非,专业为计算机科学与技术,四级三次498,六级两次460,拿过几次校级奖学金,竞赛经历有蓝桥杯国三、数学竞赛省二。本科成绩排名靠前,保研保7排8,遗憾选择考研继…

在 Ubuntu 24.04 系统上安装和管理 Nginx

1、安装Nginx 在Ubuntu 24.04系统上安装Nginx,可以按照下面的步骤进行: 1.1、 更新系统软件包列表 在安装新软件之前,需要先更新系统的软件包列表,确保获取到最新的软件包信息。打开终端,执行以下命令: …

HarmonyOS4+NEXT星河版入门与项目实战(26)-----版本控制与代码托管

引言 随着移动应用开发技术的不断进步,华为推出的鸿蒙操作系统(HarmonyOS)以及其配套的集成开发环境DevEco Studio逐渐成为开发者关注的焦点。对于新手开发者来说,掌握版本控制和代码托管不仅是提高工作效率的关键,也是团队协作的重要基础。本文将介绍如何在使用DevEco S…

利用Arcgis自己绘制shp文件

1.选择自己想要创建的shp文件的位置 我是直接创建在连接文件夹中 2.右键-新建-shp 3.设置名称、要素类型、空间参考 4、点击创建要素 5、右侧选择图层、创建面 6、开始绘制,双击任意位置结束绘制 之后可以改一下shp文件的名字

【C/C++】深入理解指针(六)

文章目录 深入理解指针(六)1.sizeof和strlen的对比1.1 sizeof1.2 strlen1.3 sizeof和strlen的对⽐ 2.数组和指针笔试题解析2.1 ⼀维数组2.2 字符数组代码1:代码2:代码3:代码4:代码5:代码6: 2.3 ⼆维数组 3.…

探索大语言模型(LLM):语言模型从海量文本中无师自通

文章目录 引言:当语言模型学会“自己教自己”一、自监督学习:从“无标签”中挖掘“有监督”信号二、语言模型的自监督训练范式:两大经典路径1. 掩码语言模型(Masked Language Modeling, MLM)——以BERT为例2. 自回归语…

2025.5.4机器学习笔记:PINN文献阅读

2025.5.4周报 文献阅读题目信息摘要创新点网络架构实验结论不足以及展望 文献阅读 题目信息 题目: Physics-Informed Neural Network Approach for Solving the One-Dimensional Unsteady Shallow-Water Equations in Riverine Systems期刊: Journal o…

Unity Post Processing 小记 【使用泛光实现灯光亮度效果】

一、前言 本篇适用于Unity 2018 - 2019及以上版本,以默认渲染管线为例。文章内容源于个人研究尝试与网络资料收集,可能存在不准确之处。初衷是因新版本制作时老的Bloom插件失效,经研究后分享开启Bloom效果的方法。若在项目中使用Post Proces…

牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记3-地图基本操作与实战案例

目录 一、开发环境与框架搭建 二、地图数据加载与文档管理 1. 加载地图文档(MXD) 2. 动态添加数据源 三、地图浏览与交互操作 1. 基础导航功能 2. 书签管理 3. 量测功能 四、要素选择与属性查询 1. 属性查询 2. 空间查询 五、视图同步与鹰眼…

Qt指ModbusTcp协议的使用

Modbus 是一套通信“语言”(协议),而 RS485 / RS232 / TCP 是通信“管道”(物理接口)。 编写modubusTcp程序,避免不了调试,首先用到的两个工具助手 poll是主机,slave是从机。主机也就是发送数据…

探索大语言模型(LLM):自监督学习——从数据内在规律中解锁AI的“自学”密码

文章目录 自监督学习:从数据内在规律中解锁AI的“自学”密码一、自监督学习的技术内核:用数据“自问自答”1. 语言建模:预测下一个单词2. 掩码语言模型(MLM):填补文本空缺3. 句子顺序预测(SOP&a…

CentOS7.9安装Python 3.10.11并包含OpenSSL1.1.1t

1. 安装编译 Python 所需的依赖包 yum -y install gcc make zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel wget2. 安装 OpenSSL 1.1.1 或更新版本 (自定义路径安装的 OpenSSL 1.1.1 不会影响系统原有的…