华为配置BFD状态与接口状态联动实验

news2024/11/26 4:31:57

组网图形

图1 配置BFD状态与接口状态联动组网图

  • BFD简介
  • 配置注意事项
  • 组网需求
  • 配置思路
  • 操作步骤
  • 配置文件

BFD简介

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

BFD协议就是在这种背景下产生的,BFD提供了一个通用的标准化的介质无关和协议无关的快速故障检测机制。BFD所具备的毫秒级的链路感知与切换的特性,使其特别适用于一些对丢包、延迟比较敏感的环境。

配置注意事项
  • BFD会话的本地标识符和远端标识符分别对应,即本端的本地标识符与对端的远端标识符相同。如果BFD会话的本地标识符和远端标识符不对应,则会话无法Up。并且,本地标识符和远端标识符配置成功后不可修改。

  • 对于使用缺省组播IP地址的BFD会话,本地标识符和远端标识符不能相同。

  • 如果使用BFD等待恢复时间WTR,用户需要手工在两端配置相同的WTR。否则,当一端会话状态变化时,两端应用程序感知到的BFD会话状态将不一致。

  • 本举例适用的产品包括:
    • S3700-EI、S3700-HI
    • S5720-SI、S5720S-SI、S5720I-SI、S5700-EI、S5700-HI、S5710-EI、S5720-EI、S5710-HI、S5720-HI、S5730-HI、S5730-SI、S5730S-EI、S5731-H、S5731-H-K、S5731-S、S5731S-S、S5731S-H、S5732-H、S5732-H-K、S5735-S-I、S5735-S、S5735S-S、S5735S-H、S5736-S
    • S6720-SI、S6720S-SI、S6700-EI、S6720-EI、S6720S-EI、S6720-HI、S6730-H、S6730-H-K、S6730S-H、S6730-S、S6730S-S
    • S7703、S7706、S7712、S7710、S7703 PoE、S7706 PoE、S7905、S7908
    • S9703、S9706、S9712
  • 本举例中产品的默认适用版本请参见“案例适用的产品和版本说明”中的表1。

    如需了解交换机软件配套详细信息,请点击Info-Finder,在选择产品系列或产品型号后,在“硬件中心”进行查询。

    S5731-L和S5731S-L属于远端模块,不支持Web管理、YANG和命令行,仅支持通过中心交换机对其下发配置,相关操作请参见《S300, S500, S2700, S5700, S6700 V200R022C00 配置指南-设备管理》中的“智能极简园区网络配置(小行星方案)”。

组网需求

如图1所示,SwitchA和SwitchB网络层直连,链路中间存在二层传输设备SwitchC和SwitchD。用户希望两端设备能够快速感知到链路故障,触发路由快速收敛。

配置思路

采用如下思路配置BFD与接口状态联动:

  1. 在SwitchA和SwitchB上分别配置BFD会话,实现SwitchA和SwitchB间链路的检测。

  2. BFD会话状态Up以后分别在SwitchA和SwitchB上配置BFD状态与接口状态联动。

操作步骤
  1. 配置SwitchA和SwitchB的直连接口IP地址

    # 配置SwitchA的接口IP地址。
    
    <HUAWEI> system-view
    [HUAWEI] sysname SwitchA
    [SwitchA] vlan 10
    [SwitchA-vlan10] quit
    [SwitchA] interface gigabitethernet 1/0/1
    [SwitchA-GigabitEthernet1/0/1] port link-type hybrid   //其中V200R005C00及之后版本,默认接口类型不是hybrid,需要手动配置
    [SwitchA-GigabitEthernet1/0/1] port hybrid pvid vlan 10
    [SwitchA-GigabitEthernet1/0/1] port hybrid untagged vlan 10
    [SwitchA-GigabitEthernet1/0/1] quit
    [SwitchA] interface vlanif 10
    [SwitchA-Vlanif10] ip address 10.1.1.1 24
    [SwitchA-Vlanif10] quit
    # 配置SwitchB的接口IP地址。
    
    <HUAWEI> system-view
    [HUAWEI] sysname SwitchB
    [SwitchB] vlan 10
    [SwitchB-vlan10] quit
    [SwitchB] interface gigabitethernet 1/0/1
    [SwitchA-GigabitEthernet1/0/1] port link-type hybrid   //其中V200R005C00及之后版本,默认接口类型不是hybrid,需要手动配置
    [SwitchB-GigabitEthernet1/0/1] port hybrid pvid vlan 10
    [SwitchB-GigabitEthernet1/0/1] port hybrid untagged vlan 10
    [SwitchB-GigabitEthernet1/0/1] quit
    [SwitchB] interface vlanif 10
    [SwitchB-Vlanif10] ip address 10.1.1.2 24
    [SwitchB-Vlanif10] quit

  2. 配置BFD单跳检测

    # 在SwitchA上使能BFD,配置与SwitchB之间的BFD会话atob。
    
    [SwitchA] bfd   //全局使能BFD
    [SwitchA-bfd] quit
    [SwitchA] bfd atob bind peer-ip default-ip interface gigabitethernet 1/0/1   //配置BFD会话atob
    [SwitchA-bfd-session-atob] discriminator local 10   //配置BFD会话的本地标识符,SwitchA上的本地标识符需要与SwitchB上的远端标识符一致
    [SwitchA-bfd-session-atob] discriminator remote 20   //配置BFD会话的远端标识符,SwitchA上的远端标识符需要与SwitchB上的本地标识符一致
    [SwitchA-bfd-session-atob] commit   //提交BFD会话配置,使配置生效
    [SwitchA-bfd-session-atob] quit
    # 在SwitchB上使能BFD,并配置与SwitchA之间的BFD会话btoa。
    
    [SwitchB] bfd
    [SwitchB-bfd] quit
    [SwitchB] bfd btoa bind peer-ip default-ip interface gigabitethernet 1/0/1   //配置BFD会话btoa
    [SwitchB-bfd-session-btoa] discriminator local 20
    [SwitchB-bfd-session-btoa] discriminator remote 10
    [SwitchB-bfd-session-btoa] commit
    [SwitchB-bfd-session-btoa] quit
    # 配置完成后,在SwitchA和SwitchB上执行display bfd session all verbose命令,可以看到建立了一个单跳(one hop)的BFD Session,状态为Up。以SwitchA为例:
    
    [SwitchA] display bfd session all verbose
    --------------------------------------------------------------------------------
    Session MIndex : 16384     (One Hop) State : Up        Name : atob
    --------------------------------------------------------------------------------
      Local Discriminator    : 10               Remote Discriminator   : 20
      Session Detect Mode    : Asynchronous Mode Without Echo Function
      BFD Bind Type          : Interface(GigabitEthernet1/0/1)
      Bind Session Type      : Static
      Bind Peer Ip Address   : 224.0.0.184
      NextHop Ip Address     : 224.0.0.184
      Bind Interface         : GigabitEthernet1/0/1
      FSM Board Id           : 3                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                    : 255
      Proc interface status  : Disable          Process PST            : Disable
      WTR Interval (ms)      : -                 
      Active Multi           : 3
      Last Local Diagnostic  : No Diagnostic
      Bind Application       : No Application Bind
      Session TX TmrID       : -                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 : 1/0

  3. 配置BFD状态与接口状态联动

    # 在SwitchA上配置BFD状态与接口状态联动。
    
    [SwitchA] bfd atob 
    [SwitchA-bfd-session-atob] process-interface-status
    [SwitchA-bfd-session-atob] quit
    # 在SwitchB上配置BFD状态与接口状态联动。
    
    [SwitchB] bfd btoa
    [SwitchB-bfd-session-btoa] process-interface-status
    [SwitchB-bfd-session-btoa] quit

  4. 验证配置结果

    配置完成后,在SwitchA和SwitchB上执行display bfd session all verbose命令,看到“Proc interface status”字段显示为“Enable”。
    
    以SwitchA上的显示为例。
    
    [SwitchA] display bfd session all verbose
    --------------------------------------------------------------------------------
    Session MIndex : 16384     (One Hop) State : Up        Name : atob
    --------------------------------------------------------------------------------
      Local Discriminator    : 10               Remote Discriminator   : 20
      Session Detect Mode    : Asynchronous Mode Without Echo Function
      BFD Bind Type          : Interface(GigabitEthernet1/0/1)
      Bind Session Type      : Static
      Bind Peer Ip Address   : 224.0.0.184
      NextHop Ip Address     : 224.0.0.184
      Bind Interface         : GigabitEthernet1/0/1
      FSM Board Id           : 3                TOS-EXP                : 7
      Min Tx Interval (ms)   : 1000             Min Rx Interval (ms)   : 1000
      Actual Tx Interval (ms): 13000            Actual Rx Interval (ms): 13000
      Local Detect Multi     : 3                Detect Interval (ms)   : 30
      Echo Passive           : Disable          Acl Number             : - 
      Destination Port       : 3784             TTL                    : 255
      Proc interface status  : Enable           Process PST            : Disable
      WTR Interval (ms)      : -                 
      Active Multi           : 3
      Last Local Diagnostic  : No Diagnostic
      Bind Application       : IFNET
      Session TX TmrID       : -                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 : 1/0
    对SwitchB的GE1/0/1接口执行shutdown操作,让BFD状态Down。
    
    [SwitchB] interface gigabitethernet 1/0/1
    [SwitchB-GigabitEthernet1/0/1] shutdown
    [SwitchB-GigabitEthernet1/0/1] quit
    在SwitchA上执行display bfd session all verbose命令和display interface gigabitethernet 1/0/1命令,可以看到BFD Session状态为Down,GE1/0/1接口的状态为UP(BFD status down)。
    
    [SwitchA] display bfd session all verbose
    --------------------------------------------------------------------------------
    Session MIndex : 16384     (One Hop) State : Down      Name : atob
    --------------------------------------------------------------------------------
      Local Discriminator    : 10               Remote Discriminator   : 20
      Session Detect Mode    : Asynchronous Mode Without Echo Function
      BFD Bind Type          : Interface(GigabitEthernet1/0/1)
      Bind Session Type      : Static
      Bind Peer Ip Address   : 224.0.0.184
      NextHop Ip Address     : 224.0.0.184
      Bind Interface         : GigabitEthernet1/0/1
      FSM Board Id           : 3                TOS-EXP                : 7
      Min Tx Interval (ms)   : 1000             Min Rx Interval (ms)   : 10
      Actual Tx Interval (ms): 13000            Actual Rx Interval (ms): 13000
      Local Detect Multi     : 3                Detect Interval (ms)   : 30
      Echo Passive           : Disable          Acl Number             : - 
      Destination Port       : 3784             TTL                    : 255
      Proc interface status  : Enable          Process PST            : Disable
      WTR Interval (ms)      : -                  
      Active Multi           : 3
      Last Local Diagnostic  : Control Detection Time Expired
      Bind Application       : IFNET
      Session TX TmrID       : -                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] display interface gigabitethernet 1/0/1
    GigabitEthernet1/0/1 current state : UP                                         
    Line protocol current state : UP(BFD status down)
    ...
    此处只列了display interface gigabitethernet 1/0/1命令需要关注的显式信息,“...”表示省略。

配置文件
SwitchA的配置文件

#
sysname SwitchA
#
vlan batch 10
#
 bfd
#
interface Vlanif10
 ip address 10.1.1.1 255.255.255.0
#
interface GigabitEthernet1/0/1
 port hybrid pvid vlan 10
 port hybrid untagged vlan 10
#
bfd atob bind peer-ip default-ip interface GigabitEthernet1/0/1
 discriminator local 10
 discriminator remote 20
 process-interface-status
 commit
#
return
SwitchB的配置文件

#
sysname SwitchB
#
vlan batch 10
#
 bfd
#
interface Vlanif10
 ip address 10.1.1.2 255.255.255.0
#
interface GigabitEthernet1/0/1
 port hybrid pvid vlan 10
 port hybrid untagged vlan10
#
bfd btoa bind peer-ip default-ip interface GigabitEthernet1/0/1
 discriminator local 20
 discriminator remote 10
 process-interface-status
 commit
#
return

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

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

相关文章

机器学习中的图像处理与计算机视觉

引言 在现代计算机科学中&#xff0c;图像处理和计算机视觉已成为最活跃的研究领域之一&#xff0c;这得益于机器学习和深度学习的发展。本文将深入探讨图像处理与计算机视觉的基础概念、常见应用、关键技术、常用工具&#xff0c;以及在这些领域中的代码示例。通过本篇文章&a…

pytorch 交叉熵损失函数 BCELoss

BCE Loss 交叉熵损失函数计算公式&#xff1a; BCE Loss - 1/n*(y_actual * log(y_pred) (1 - y_actual) * log(1 - y_pred)) t[i]为标签值&#xff1a;0或者1 o[i]是经过sigmoid后的概率值 BCEWithLogitsLoss 这个损失将Sigmoid层和BCELoss合并在一个类中。 BCEWithLog…

OSPF特殊区域及其他特性

不用的链路这状态信息没必要一直保存&#xff0c;要不路由器承受不了。用OSPF 特殊区域解决 1. Stub区域和Totally Stub区域 R1作为ASBR引入多个外部网段&#xff0c;如果Area 2是普通区域&#xff0c;则R3将向该区域注入5类和4类LSA。 当把Area 2配置为Stub区域后&#xff1a…

Qt项目实战:汉中转拼音(大写字母,首字母)

目录 一.汉字转换 1.加载拼音数据 2.初始化简拼数组 3.汉字转换拼音 4.汉字转简拼 5.首字母 二.效果 1.汉字转拼音 2.汉字转简拼 3.首字母 三.代码 1.h 2.cpp 汉字转拼音的小程序不仅在教育和日常生活中发挥着重要作用&#xff0c;还促进了跨文化交流与信息传播。…

【ubuntu18.04】ubuntu18.04安装vmware-tools之后立即适应窗口为灰色,窗口不会自适应

问题描述 ubuntu18.04安装vmware-tools 点击查看&#xff0c;看到立即适应窗口为灰色 解决方案 关闭虚拟机 编辑此虚拟机 设置 注意 取消勾选拉伸模式 查看可以看到所有选项可选择 注意&#xff1a; 不要全屏的时候查看&#xff0c;全屏看到的立即适应窗口就会显示…

Web,RESTful API 在微服务中的作用是什么?

大家好&#xff0c;我是锋哥。今天分享关于【Web&#xff0c;RESTful API 在微服务中的作用是什么&#xff1f;】面试题&#xff1f;希望对大家有帮助&#xff1b; Web&#xff0c;RESTful API 在微服务中的作用是什么&#xff1f; 在微服务架构中&#xff0c;Web 和 RESTful …

秦时明月2搭建笔记

1.具体配置 数据库不修改&#xff0c;如果修改了&#xff0c;gm那边也要 2.数据库 3.上传配置文件出现问题 参考&#xff1a;对于测试时&#xff0c;错误信息 Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large-CSDN博客 4.启动tomcat&#x…

技术成神之路:设计模式(二十三)解释器模式

相关文章&#xff1a;技术成神之路&#xff1a;二十三种设计模式(导航页) 介绍 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为设计模式&#xff0c;用于定义一种语言的文法表示&#xff0c;并提供一个解释器来处理这种文法。它用于处理具有特定语法或表达…

【资深码农】环境搭建篇

导航 MockingBird仿生环境搭建seleniumchrome爬虫环境搭建1.1 安装selenium1.2 安装chrome driver1.3 测试1.4 常见问题驱动不一致原因解决办法最新版本获取 自动下载驱动 NLTK环境搭建opencv环境搭建pytorch环境搭建pyspark环境搭建1 安装环境1.1 jdk下载安装1.2 Scala下载安装…

零售行业 Web EDI 解决方案——知行之云LIP系统操作详解

通过浏览器&#xff0c;用户可以轻松访问知行之云LIP系统&#xff0c;便捷管理订单、发货等操作。如何低成本、高效地实现与主流电商平台的EDI对接&#xff1f;用户对接不同的交易伙伴&#xff0c;可能会遇到不同的EDI需求&#xff0c;这时就需要做个性化定制。本文将以零售行业…

Redis+Lua限流的四种算法

1. 固定窗口&#xff08;Fixed Window&#xff09; 原理&#xff1a; 固定窗口算法将时间划分为固定的时间段&#xff08;窗口&#xff09;&#xff0c;比如 1 秒、1 分钟等。在每个时间段内&#xff0c;允许最多一定数量的请求。如果请求超出配额&#xff0c;则拒绝。 优点…

解锁流量密码:TikTok常见引流方式分享

在这个TikTok这个竞争激烈但又遍布商机的平台上&#xff0c;如何有效地引流&#xff0c;尤其是对于新手来说&#xff0c;是一个重要的课题。本文将详细介绍TikTok的几种常见引流方式&#xff0c;并为新手提供切实可行的引流策略&#xff0c;以帮助他们在平台上获得更高的曝光率…

Java 字节流:高效处理二进制数据

前言 字节流是 Java I/O 系统的一部分&#xff0c;专门用于处理字节数据。由于所有数据在计算机中最终都以字节形式存在&#xff0c;这意味着字节流可以操作任何类型的数据&#xff0c;包括文本、图片、视频等。 Java 提供了多种字节流类&#xff0c;这些类继承自 InputStrea…

Python 爬虫项目实战:爬取某云热歌榜歌曲

一、网络爬虫的定义 网络爬虫&#xff08;Web Crawler&#xff09;&#xff0c;也成为网页蜘蛛或者网页机器人&#xff0c;是一种按照既定规则自动浏览网络并提取信息的程序。爬虫的主要用途包括数据采集、网络索以及内容抓取等。 二、爬虫基本原理 1、种子URL&#xff1a;爬…

使用Python循环地画一个简单的爱心 - 烂漫教程

运行软件&#xff1a;pycharm 画一个爱心的代码&#xff1a; import turtle def print_love1():# 设置画笔颜色和粗细turtle.pencolor("red")turtle.pensize(6)# 绘制爱心turtle.fillcolor("pink")turtle.begin_fill()turtle.left(45)turtle.forward(100…

新鲜出炉面试题之【说说spring spring MVC spring boot的区别】

Spring MVC 和 Spring Boot 是 Spring 框架的一部分&#xff0c;但它们的目的和用途有所不同。下面详细阐述这两者之间的区别。 1. 概念 Spring MVC&#xff1a; Spring MVC 是一种基于请求-响应模式的 Web 框架&#xff0c;属于 Spring 框架的一部分。它提供了一种分离的方式…

【Jenkins】解决在Jenkins Agent节点容器内无法访问物理机的docker和docker compose的问题

解决在Jenkins Agent节点容器内无法访问物理机的docker和docker compose的问题 1. 确定物理机docker和docker compose已经安装2. 编写Jenkins Agent结点docker-compose.yaml配置文件3. 修改docker运行时文件权限4. 启动容器并验证 最近接触到一个发布产物是一个 docker镜像的项…

ORACLE 的SCHEDULER创建JOB

JOB_NAME&#xff1a;指定任务的名称&#xff0c;必选值&#xff0c;注意要确保指定的名称唯一。 JOB_TYPE&#xff1a;任务执行的操作类型&#xff0c;必选值&#xff0c;STORED_PROCEDURE&#xff1a;表示任务执行的是 ORACLE 存储过程。 JOB_ACTION&#xff1a;任务执行的操…

Pendle protocol

道阻且长&#xff0c;行而不辍&#xff0c;未来可期 我身边多是聪明的人&我一直认为我不是那个会学习的人&#xff0c;以往看官方文档&#xff0c;总有许多理解不透的地方&#xff0c;需要靠众多博主的白话分析才能理解&#xff0c;but,在学习Pendle protocol的时候&#x…

进行FMEA时需要考虑哪些历史数据?

在进行FMEA&#xff08;Failure Modes and Effects Analysis&#xff0c;即故障模式与影响分析&#xff09;时&#xff0c;历史数据扮演着至关重要的角色。这些数据不仅为分析提供了坚实的基础&#xff0c;还帮助团队更准确地预测潜在故障模式&#xff0c;评估其影响&#xff0…