当前位置: 首页 > news >正文

华为配置Smart Link主备备份示例

定义

Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个接口作为另一个的备份。Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。

Monitor Link是一种接口联动方案,它通过监控设备的上行接口,根据其Up/Down状态的变化来触发下行接口Up/Down状态的变化,从而触发下游设备上的拓扑协议进行链路的切换。

目的

下游设备连接到上游设备,当使用单上行方式时,若出现单点故障,会造成业务中断。若采用双上行方式,将一台下游设备同时连接到两台上游设备,可降低单点故障对网络的影响,提高了可靠性。

如图1所示SwitchA采用双上行方式分别连接到SwitchB和SwitchC,这样SwitchA到达SwitchD的链路就可以有两条(SwitchA->SwitchB->SwitchD和SwitchA->SwitchC->SwitchD),但是网络中的环路会产生网络风暴。在SwitchA上配置Smart Link,正常情况下,可实现Interface2所在链路作为Interface1所在链路的备份。若Interface1所在的链路发生故障,Smart Link会自动将数据流量切换到Interface2所在链路,保证业务不中断。

在此类组网中采用Smart Link技术有以下优点:

  • 能够实现在双上行组网的两条链路正常情况下,一条链路处于转发状态,而另一条处于阻塞待命状态,从而可避免环路的不利影响。
  • 配置和使用更为简洁,便于用户操作。
  • 当主用链路发生故障后,流量会在毫秒级的时间内迅速切换到备用链路上,极大限度地保证了数据的正常转发。

在一些二层拓扑协议(如Smart Link)组网中,拓扑协议无法监视到上行接口的状态,从而导致拓扑协议无法进行链路切换。Monitor Link可用于扩展一些二层拓扑协议的应用范围,通过监控上行链路对下行链路进行同步设置,达到上行链路故障迅速传达给下行设备,从而触发下游设备上的拓扑协议进行链路的切换,防止长时间因上行链路故障而出现流量丢失

Smart Link基本概念

Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个Smart Link组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包括负载分担)。

Smart Link组

Smart Link组,一个组内最多可包含两个接口,其中一个为主接口,另一个为从接口。正常情况下,只有一个接口处于转发(Active)状态,另一个接口被阻塞,处于待命(Inactive)状态。

如图1所示,设备SwitchD上的接口Interface1和接口Interface2组成了一个Smart Link组。

主接口/从接口

如图1所示,Interface1被配置为Smart Link组的主接口,Interface2被配置为Smart Link组的从接口。主接口又叫Master接口,从接口又叫Slave接口。

当Smart Link组中的两个接口都处于Up状态时,主接口将优先进入转发状态,而从接口将保持待命状态。当主接口所在链路发生故障时,从接口将切换为转发状态。

Flush报文

当Smart Link组发生链路切换时,原有的转发表项将不适用于新的拓扑网络,需要整网进行MAC表项和ARP表项的更新。这时,Smart Link组通过发送Flush报文通知其他设备进行MAC和ARP表项的刷新操作。如图1所示,当链路发生切换时,SwitchD会发送组播Flush报文通知SwitchA、SwitchB和SwitchC进行MAC和ARP表项的更新。

控制VLAN(Control VLAN)
  • 发送控制VLAN

    发送控制VLAN是Smart Link组用于广播Flush报文的VLAN。如图1,如果在SwitchD上开启了Flush报文发送功能,当发生链路切换时,设备会在发送控制VLAN内广播发送Flush报文。

  • 接收控制VLAN

    接收控制VLAN是上游设备用于接收并处理Flush报文的VLAN。如图1所示,如果上游设备SwitchA、SwitchB和SwitchC能够识别Flush报文,并开启了Flush报文接收处理功能,当发生链路切换时,上游设备会处理收到的属于接收控制VLAN的Flush报文,进而刷新MAC表和ARP表。

负载分担

Smart Link支持配置多个负载分担VLAN实例。当Smart Link组的主从链路均正常时,Smart link允许两条链路可以转发不同的数据流量。负载分担情况下,两个接口均处于转发状态,从接口转发负载分担实例流量,主接口转发其它实例流量。当其中一条链路故障时,Smart Link组会自动将所有的流量切换到另一条链路上。

Smart Link实例

Smart Link组的备链路通过绑定不同的实例来实现负载分担。Smart Link引用MSTP的实例,每个实例用来绑定若干VLAN,不同的实例绑定不同的VLAN

配置Smart Link主备备份示例

Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个Smart Link组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包括负载分担)。

组网需求

如图1所示,为了保证网络的可靠性,用户侧网络采用双上行方式组网。由于组网上存在多个VLAN的数据流量,为使链路得到充分利用,用户希望两条上行链路均进行数据流量的转发。组网要求业务中断时间控制在毫秒级

配置思路

采用如下的思路配置Smart Link功能:

  1. 在SwitchA上进行配置,将需要进行负载分担的VLAN 500映射到实例10。
  2. 在SwitchA上配置Smart Link组,将对应接口加入Smart Link组中。
  3. 在SwitchA上配置负载分担功能,实例10映射的VLAN数据从备份链路进行转发。
  4. 在SwitchA上使能回切功能,使得故障恢复后,流量切换到相对稳定的原主链路上。
  5. 在SwitchA上使能发送Flush报文功能。
  6. 在SwitchB、SwitchC和SwitchD三台设备对应接口上使能Flush报文接收功能。
  7. 在SwitchA上使能Smart Link组功能。

操作步骤

配置VLAN信息

# 在SwitchA上创建VLAN vlan10,20,30并配置接口允许相应VLAN通过。SwitchB、SwitchC和SwitchD的配置与SwitchA相似

[zhongwaznhi]interface GigabitEthernet 0/0/1
[zhongwaznhi-GigabitEthernet0/0/1]port link-type trunk 
[zhongwaznhi-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 to 30
[zhongwaznhi-GigabitEthernet0/0/1]quit
[zhongwaznhi]interface GigabitEthernet 0/0/2
[zhongwaznhi-GigabitEthernet0/0/2]port link-type trunk 	
[zhongwaznhi-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 to 30
[zhongwaznhi-GigabitEthernet0/0/2]quit

在SwitchA上创建Smart Link备份组,并指定端口角色

# 配置SwitchA

[zhongwanzhi]interface GigabitEthernet 0/0/1
[zhongwanzhi-GigabitEthernet0/0/1]stp disable 
[zhongwanzhi-GigabitEthernet0/0/1]quit
[zhongwanzhi]interface GigabitEthernet 0/0/2
[zhongwanzhi-GigabitEthernet0/0/2]stp disable 
[zhongwanzhi-GigabitEthernet0/0/2]quit
[zhongwanzhi]smart-link group 1
[zhongwanzhi-smlk-group1]port GigabitEthernet 0/0/1 master 
[zhongwanzhi-smlk-group1]port GigabitEthernet 0/0/2 slave 

使能回切功能并设置回切时间

# 配置SwitchA

[zhongwanzhi-smlk-group1]restore enable 	
[zhongwanzhi-smlk-group1]timer wtr 30

使能发送Flush报文功能

# 配置SwitchA,并指定发送Flush报文的密码为SHA加密方式。

[zhongwanzhi-smlk-group1]flush send control-vlan 10 password simple huawei-123

使能接收Flush报文功能

# 配置SwitchB,并指定接收Flush报文的密码为SHA加密方式。

[zhongwanzhi]interface GigabitEthernet 0/0/1
[zhongwanzhi-GigabitEthernet0/0/1]smart-link flush receive control-vlan 10 passw
ord simple huawei-123
[zhongwanzhi-GigabitEthernet0/0/1]stp disable
[zhongwanzhi-GigabitEthernet0/0/1]quit
[zhongwanzhi]interface GigabitEthernet 0/0/2
[zhongwanzhi-GigabitEthernet0/0/2]smart-link flush receive control-vlan 10 passw
ord simple huawei-123
[zhongwanzhi-GigabitEthernet0/0/2]stp disable 
[zhongwanzhi-GigabitEthernet0/0/2]quit

另外SwitchC,Switch也要配置指定接收Flush报文的密码为SHA加密方式,并且配置命令一样

在SwitchA使能Smart Link组功能

[zhongwanzhi-smlk-group1]smart-link enable 
[zhongwanzhi-smlk-group1]quit
[zhongwanzhi]
  • 验证配置结果

    # 使用display smart-link group命令查看SwitchA上的Smart Link组信息。如果显示如下信息,则表示配置成功。

    • Smart Link组功能已经使能
    • 回切时间为30秒
    • 控制VLAN编号为10
    • 接口GE0/0/1为主接口且处于Active状态,接口GE0/0/2为从接口且处于Inactive,并且配置了负载分担功能
[zhongwanzhi]display smart-link group 1
Smart Link group 1 information :Smart Link group was enabledWtr-time is: 30 sec.Load-Balance Instance: 10 There is no protected-vlan reference-instanceDeviceID: 4c1f-cc46-4d92  Control-vlan ID: 10Member                  Role   State    Flush Count Last-Flush-Time----------------------------------------------------------------------GigabitEthernet0/0/1    Master Active   1           2023/12/07 16:20:34 UTC-08
:00 GigabitEthernet0/0/2    Slave  Inactive 0           0000/00/00 00:00:00 UTC+00
:00 

# 使用shutdown命令关闭接口GE0/0/1,可以看到接口GE0/0/1已经处于Inactive状态,接口GE0/0/2为Active状态

[zhongwanzhi-GigabitEthernet0/0/1]display smart-link group 1
Smart Link group 1 information :Smart Link group was enabledWtr-time is: 30 sec.Load-Balance Instance: 10 There is no protected-vlan reference-instanceDeviceID: 4c1f-cc46-4d92  Control-vlan ID: 10Member                  Role   State    Flush Count Last-Flush-Time----------------------------------------------------------------------GigabitEthernet0/0/1    Master Inactive 1           2023/12/07 16:20:34 UTC-08
:00 GigabitEthernet0/0/2    Slave  Active   0           0000/00/00 00:00:00 UTC+00
:00 

相关文章:

华为配置Smart Link主备备份示例

定义 Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个接口作为另一个的备份。Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。 Monitor Link是一种接口联动方案,它通过监控设备的上行接口…...

harmonyOS开发技巧(一)——封装hilog日志

1. 创建sharedLibrary共享hsp包commonLib:功能工具类。 import hilog from ohos.hilog;class Logger {private DOMAIN: number 0x0000;private APP_NAME: string Myapplication;public info(tag: string, ...args: string[]) {hilog.info(this.DOMAIN, [${this.A…...

npm、yarn常用命令

1、设置npm路径 #全局安装路径 npm config set prefix "D:\Program Files\nodejs\node_global" #缓存路径 npm config set cache "D:\Program Files\nodejs\node_cache"2、设置镜像 #1,淘宝镜像源 npm config set registry https://registry.npmmirror.…...

编译和使用WPS-ghrsst-to-intermediate生成SST

一、下载 V1.0 https://github.com/bbrashers/WPS-ghrsst-to-intermediate/tree/masterV1.5(使用过程报错,原因不详,能正常使用的麻烦告知一下方法) https://github.com/dmitryale/WPS-ghrsst-to-intermediate二、修改makefile…...

通过静态HTTP实现负载均衡

在当今的互联网环境中,随着用户数量的不断增加和业务需求的不断扩大,单台服务器往往无法承受所有的访问压力。为了确保网站的可用性和性能,负载均衡成为了一种常见的解决方案。本文将探讨如何通过静态HTTP实现负载均衡,以提升网站…...

Python开发运维:Python常见异常类型

目录 一、理论 1.异常 一、理论 1.异常 (1)概念 异常是程序因为某种原因无法正常工作了,比如缩进错误、缺少软件包、环境 错误、连接超时等都会引发异常。 一个健壮的程序应该把所能预知的异常都应做相应的处理,保障程序长期运…...

HarmonyOS学习 第1节 DevEco Studio配置

俗话说的好,工欲善其事,必先利其器。我们先下载官方的开发工具DevEco Studio. 下载完成后,进行安装。 双击DevEco Studio,点击Next按照指引完成安装 重新启动DevEco,点击 Agree 进入环境配置,安装Node.js和ohpm 点击Ne…...

WordPress 注册/重置密码/更改密码钩子

wordpress在提供邮件提醒的地方都留了hook,方便让开发者自定义。最新在添加第三方登录时遇到虚拟邮箱发信问题,为了防止给指定邮件地址后缀发信,可以利用如下wordpress提供的钩子来实现。 //https://www.wwttl.com/101.html //禁止用户注册时…...

LabVIEW开发远程结构健康监测系统

LabVIEW开发远程结构健康监测系统 工程师依赖于振动监测来评估建筑物、桥梁和其他大型结构的完整性。传统的振动监测工具在数据收集上存在限制,无法长时间收集高保真波形。随着内存存储、处理器速度和宽带无线通信技术的进步,出现了对能够长时间收集并实…...

多段图问题-动态规划解法

一、多段图问题 问题描述:设图G(V, E)是一个带权有向图,如果把顶点集合V划分成k个互不相交的子集Vi (2≤k≤n, 1≤i≤k),使得对于E中的任何一条边(u, v),必有u∈Vi,v∈Vim (1≤i≤k, 1<im≤k),…...

Android实验:绑定service实验

目录 实验目的实验内容实验要求项目结构代码实现代码解释结果展示 实验目的 充分理解Service的作用,与Activity之间的区别,掌握Service的生命周期以及对应函数,了解Service的主线程性质;掌握主线程的界面刷新的设计原则&#xff…...

K8S集群优化的可执行优化

目录 前期环境优化 1.永久关闭交换分区 2.#加载 ip_vs 模块 3.调整内核参数 4.#使用Systemd管理的Cgroup来进行资源控制与管理 5.开机自启kubelet 6.内核参数优化方案 7.etcd优化 默认etcd空间配额大小为 2G,超过 2G 将不再写入数据。通过给etcd配置 --quo…...

Remix IDE 快速开始Starknet

文章目录 一、Remix 项目二、基于Web的开发环境Remix 在线 IDE三、Starknet Remix 插件如何使用使用 Remix【重要】通过 Starknet by Example 学习一、Remix 项目 Remix 项目网站 在以太坊合约开发领域,Remix 项目享有很高的声誉,为各个级别的开发人员提供功能丰富的工具集…...

SQL中limit与分页的结合

select * from test limit 2,10; 这条语句的含义:从第3条语句开始查询,共显示10条语句。 select * from test limit a,b; a0,第一条记录。 a1,第二条记录。 a2,第三条记录。 这条语句的含义:从第a1条语句开始查询,共显示b条…...

KALI LINUX信息收集

预计更新 第一章 入门 1.1 什么是Kali Linux? 1.2 安装Kali Linux 1.3 Kali Linux桌面环境介绍 1.4 基本命令和工具 第二章 信息收集 1.1 网络扫描 1.2 端口扫描 1.3 漏洞扫描 1.4 社交工程学 第三章 攻击和渗透测试 1.1 密码破解 1.2 暴力破解 1.3 漏洞利用 1.4 …...

联想电脑重装系统Win10步骤和详细教程

联想电脑拥有强大的性能,很多用户办公都喜欢用联想电脑。有使用联想电脑的用户反映系统出现问题了,想重新安装一个正常的系统,但是不知道重新系统的具体步骤。接下来小编详细介绍给联想电脑重新安装Win10系统系统的方法步骤。 推荐下载 系统之…...

PET(Point-Query Quadtree for Crowd Counting, Localization, and More)

PET(Point-Query Quadtree for Crowd Counting, Localization, and More) 介绍实验记录训练阶段推断阶段 介绍 论文:Point-Query Quadtree for Crowd Counting, Localization, and More 实验记录 训练阶段 TODO 推断阶段 下面是以一张输…...

NgRx中dynamic reducer的原理和用法?

在 Angular 应用中,使用 NgRx 状态管理库时,动态 reducer 的概念通常是指在运行时动态添加或移除 reducer。这样的需求可能源于一些特殊的场景,比如按需加载模块时,你可能需要添加相应的 reducer。 以下是动态 reducer 的一般原理…...

麒麟V10服务器安装Apache+PHP

安装PHP yum install php yum install php-curl php-gd php-json php-mbstring php-exif php-mysqlnd php-pgsql php-pdo php-xml 配置文件 /etc/php.ini 修改参数 date.timezone Asia/Shanghai max_execution_time 60 memory_limit 1280M post_max_size 200M file_upload…...

DOS 批处理 (一)

DOS 批处理 1. 批处理是什么?2. DOS和MS-DOS3. 各种操作系统shell的区别Shell 介绍图形用户界面(GUI)shell命令行界面(CLI)的 shell命令区别 1. 批处理是什么? 批处理(Batch),也称为批处理脚本…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理&#xff1a…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...

Selenium常用函数介绍

目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...