华为数通---BFD多跳检测示例

定义

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

目的

为了减小设备故障对业务的影响,提高网络的可靠性,网络设备需要能够尽快检测到与相邻设备间的通信故障,以便及时采取措施,保证业务继续进行。在现有网络中,有些链路通常通过硬件检测信号,如SDH告警,检测链路故障,但并不是所有的介质都能够提供硬件检测。此时,应用就要依靠上层协议自身的Hello报文机制来进行故障检测。上层协议的检测时间都在1秒以上,这样的故障检测时间对某些应用来说是不能容忍的。在三层网络中,Hello报文检测机制无法针对所有路由来检测故障,如:静态路由。这对系统间互联互通定位故障造成困难。

BFD协议就是在这种背景下产生的,BFD提供了一个通用的标准化的介质无关和协议无关的快速故障检测机制。具有以下优点:

  • 对相邻转发引擎之间的通道提供轻负荷、快速故障检测。这些故障包括接口、数据链路,甚至有可能是转发引擎本身。

  • 用单一的机制对任何介质、任何协议层进行实时检测。

组网需求

如下图所示,SwitchA和SwitchC为非直连设备,通过配置静态路由互通。用户希望可以实现对设备间链路故障的快速检测。

配置思路

采用如下思路配置BFD多跳检测:

在SwitchA和SwitchC上分别配置BFD会话,实现SwitchA到SwitchC间多跳路径的检测。

操作步骤

(1)配置设备间的网络互连

配置设备各接口的IP地址,以SwitchA为例。SwitchB和SwitchC的配置与SwitchA类似,详见配置文件。

cpp 复制代码
<Huawei>system-view 
[Huawei]sysname SwitchA	
[SwitchA]vlan batch 10
[SwitchA]interface GigabitEthernet 0/0/1
[SwitchA-GigabitEthernet0/0/1]port link-type hybrid 
[SwitchA-GigabitEthernet0/0/1]port hybrid pvid vlan 10
[SwitchA-GigabitEthernet0/0/1]port hybrid untagged vlan 10
[SwitchA-GigabitEthernet0/0/1]quit
[SwitchA]interface Vlanif 10
[SwitchA-Vlanif10]ip address 10.1.1.1 24
[SwitchA-Vlanif10]quit

(2)配置静态路由,使SwitchA、SwitchC之间有可达路由

SwitchC的配置与SwitchA类似,具体配置过程略,详见配置文件。

cpp 复制代码
[SwitchA]ip route-static 10.2.1.0 24 10.1.1.2

(3)配置多跳BFD检测

在SwitchA上配置与SwitchC之间的BFD会话。

cpp 复制代码
[SwitchA]bfd
[SwitchA-bfd]quit	
[SwitchA]bfd atoc bind peer-ip 10.2.1.2
[SwitchA-bfd-session-atoc]discriminator local 10
[SwitchA-bfd-session-atoc]discriminator remote 20	
[SwitchA-bfd-session-atoc]commit 
[SwitchA-bfd-session-atoc]quit

在SwitchC上配置与SwitchA之间的BFD会话。

cpp 复制代码
[SwitchC]bfd 
[SwitchC-bfd]quit
[SwitchC]bfd ctoa bind peer-ip 10.1.1.1
[SwitchC-bfd-session-ctoa]discriminator local 20
[SwitchC-bfd-session-ctoa]discriminator remote 10
[SwitchC-bfd-session-ctoa]commit 
[SwitchC-bfd-session-ctoa]quit

(4)验证配置结果

配置完成后,在SwitchA和SwitchC上执行display bfd session all verbose命令,可以看到建立了一个BFD会话,且状态为Up。以SwitchA上的显示为例:

cpp 复制代码
[SwitchA]display bfd session all verbose 
--------------------------------------------------------------------------------
Session MIndex : 256       (Multi Hop) State : Up        Name : atoc           
--------------------------------------------------------------------------------
  Local Discriminator    : 10               Remote Discriminator   : 20        
  Session Detect Mode    : Asynchronous Mode Without Echo Function             
  BFD Bind Type          : Peer IP Address                                     
  Bind Session Type      : Static                                              
  Bind Peer IP Address   : 10.2.1.2                                            
  Bind Interface         : -                                                   
  Track Interface        : -                                                   
  FSM Board Id           : 0                TOS-EXP                : 7         
  Min Tx Interval (ms)   : 1000             Min Rx Interval (ms)   : 1000      
  Actual Tx Interval (ms): 1000             Actual Rx Interval (ms): 1000      
  Local Detect Multi     : 3                Detect Interval (ms)   : 3000      
  Echo Passive           : Disable          Acl Number             : -         
  Destination Port       : 3784             TTL                    : 254       
  Proc Interface Status  : Disable                                             
  WTR Interval (ms)      : -                                                   
  Active Multi           : 3                                                   
  Last Local Diagnostic  : No Diagnostic                                       
  Bind Application       : No Application Bind
  Session TX TmrID       : 1039             Session Detect TmrID   : 1040      
  Session Init TmrID     : -                Session WTR TmrID      : -         
  Session Echo Tx TmrID  : -                                                   
  PDT Index              : FSM-0 | RCV-0 | IF-0 | TOKEN-0                      
  Session Description    : -                                                   
--------------------------------------------------------------------------------

     Total UP/DOWN Session Number : 1/0

对SwitchA的GE0/0/1接口执行shutdown操作,模拟链路故障。

cpp 复制代码
[SwitchA]interface GigabitEthernet 0/0/1
[SwitchA-GigabitEthernet0/0/1]shutdown 
[SwitchA-GigabitEthernet0/0/1]quit

配置完成后,在SwitchA和SwitchC上执行display bfd session all verbose命令,可以看到建立了一个多跳检测的BFD会话,且会话状态为Down。以SwitchA上的显示为例:

cpp 复制代码
[SwitchA]display bfd session all verbose 
--------------------------------------------------------------------------------
Session MIndex : 256       (Multi Hop) State : Down      Name : atoc           
--------------------------------------------------------------------------------
  Local Discriminator    : 10               Remote Discriminator   : 20        
  Session Detect Mode    : Asynchronous Mode Without Echo Function             
  BFD Bind Type          : Peer IP Address                                     
  Bind Session Type      : Static                                              
  Bind Peer IP Address   : 10.2.1.2                                            
  Bind Interface         : -                                                   
  Track Interface        : -                                                   
  FSM Board Id           : 0                TOS-EXP                : 7         
  Min Tx Interval (ms)   : 1000             Min Rx Interval (ms)   : 1000      
  Actual Tx Interval (ms): 2200             Actual Rx Interval (ms): 2200      
  Local Detect Multi     : 3                Detect Interval (ms)   : -         
  Echo Passive           : Disable          Acl Number             : -         
  Destination Port       : 3784             TTL                    : 254       
  Proc Interface Status  : Disable                                             
  WTR Interval (ms)      : -                                                   
  Active Multi           : 3                                                   
  Last Local Diagnostic  : Control Detection Time Expired                      
  Bind Application       : No Application Bind
  Session TX TmrID       : 1039             Session Detect TmrID   : -         
  Session Init TmrID     : -                Session WTR TmrID      : -         
  Session Echo Tx TmrID  : -                                                   
  PDT Index              : FSM-0 | RCV-0 | IF-0 | TOKEN-0                      
  Session Description    : -                                                   
--------------------------------------------------------------------------------

     Total UP/DOWN Session Number : 0/1
配置文件
  • SwitchA的配置文件
cpp 复制代码
#
sysname SwitchA
#
vlan batch 10
#
bfd
#
interface Vlanif10
 ip address 10.1.1.1 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type hybrid
 port hybrid pvid vlan 10
 port hybrid untagged vlan 10
#
bfd atoc bind peer-ip 10.2.1.2
 discriminator local 10
 discriminator remote 20
 commit
#
ip route-static 10.2.1.0 255.255.255.0 10.1.1.2
#
return
  • SwitchB的配置文件
cpp 复制代码
#
sysname SwitchB
#
vlan batch 10 20
#
interface Vlanif10
 ip address 10.1.1.2 255.255.255.0
#
interface Vlanif20
 ip address 10.2.1.1 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type hybrid
 port hybrid pvid vlan 10
 port hybrid untagged vlan 10
#
interface GigabitEthernet0/0/2
 port link-type hybrid
 port hybrid pvid vlan 20
 port hybrid untagged vlan 20
#
return
  • SwitchC的配置文件
cpp 复制代码
#
sysname SwitchC
#
vlan batch 20
#
bfd
#
interface Vlanif20
 ip address 10.2.1.2 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type hybrid
 port hybrid pvid vlan 20
 port hybrid untagged vlan 20
#
bfd ctoa bind peer-ip 10.1.1.1
 discriminator local 20
 discriminator remote 10
 commit
#
ip route-static 10.1.1.0 255.255.255.0 10.2.1.1
#
return
相关推荐
watl08 分钟前
【Android】unzip aar删除冲突classes再zip
android·linux·运维
Freerain9914 分钟前
鸿蒙Next类属性观测器V2
华为·harmonyos
团儿.24 分钟前
Docker服务发现新纪元:探索Consul的无限魅力
运维·docker·云计算·服务发现·consul
网络安全(king)37 分钟前
网络安全攻防学习平台 - 基础关
网络·学习·web安全
赵大仁43 分钟前
在 CentOS 7 上安装 Node.js 20 并升级 GCC、make 和 glibc
linux·运维·服务器·ide·ubuntu·centos·计算机基础
vvw&1 小时前
Docker Build 命令详解:在 Ubuntu 上构建 Docker 镜像教程
linux·运维·服务器·ubuntu·docker·容器·开源
李白你好1 小时前
家用无线路由器的 2.4GHz 和 5GHz
运维·网络
苹果醋31 小时前
React系列(八)——React进阶知识点拓展
运维·vue.js·spring boot·nginx·课程设计
嵌入(师)1 小时前
嵌入式驱动开发详解21(网络驱动开发)
网络·驱动开发
冷冰鱼1 小时前
【问题实录】服务器ping不通win11笔记本
运维·服务器