Smart Link 和 Monitor Link应用
定义
Smart Link常用于双上行链路组网,提高接入的可靠性。 Monitor Link通过监视上行接口,使下行接口同步上行接口状态,起到传递故障信息的作用。
Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个接口作为另一个的备份。 Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。Monitor Link是一种接口联动方案,它通过监控设备的上行接口,根据其Up/Down状态的变化来触发下行接Up/Down状态的变化,从而触发下游设备上的拓扑协议进行链路的切换。
目的
下游设备连接到上游设备,当使用单上行方式时,若出现单点故障,会造成业务中断。若采用双上行方式,将一台下游设备同时连接到两台上游设备,可降低单点故障对网络的影响,提高了可性。

图1
如图1所示sw1采用双上行方式分别连接到sw2和sw3,这样sw1到达sw4的链路就可以有两条(sw1>sw2>sw4和sw1>sw3>sw4),但是网络中的环路会产生网络风暴。在sw1上配置SmartLink,正常情况下,可实现Interface2所在链路作为Interface1所在链路的备份。若Interface所在的链路发生故障, Smart Link会自动将数据流量切换到Interface2所在链路,保证业务不断。
在此类组网中采用Smart Link技术有以下优点:
1、能够实现在双上行组网的两条链路正常情况下,一条链路处于转发状态,而另一条处于阻塞待命状态,从而可避免环路的不利影响。
2、配置和使用更为简洁,便于用户操作。
3、当主用链路发生故障后,流量会在毫秒级的时间内迅速切换到备用链路上,极大限度地保证了数据的正常转发。
在一些二层拓扑协议(如Smart Link)组网中,拓扑协议无法监视到上行接口的状态,从而导致拓扑协议无法进行链路切换。 Monitor Link可用于扩展一些二层拓扑协议的应用范围,通过监控上行链路对下行链路进行同步设置,达到上行链路故障迅速传达给下行设备,从而触发下游设备上的拓扑协议进行链路的切换,防止长时间因上行链路故障而出现流量丢失。
Smart link原理
Smart link组
Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个SmartLink组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、 Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包负载分担)。
Smart Link组,一个组内最多可包含两个接口,其中一个为主接口,另一个为从接口。正常情况下,只有一个接口处于转发( Active)状态,另一个接口被阻塞,处于待命( Inactive)状态。如图1所示,设备sw1上的接口Interface1和接口Interface2组成了一个Smart Link组
Interface1被配置为Smart Link组的主接口, Interface2被配置为Smart Link组的从接口。主接口叫Master接口,从接口又叫Slave接口。当Smart Link组中的两个接口都处于Up状态时,主接口将优先进入转发状态,而从接口将保持待命状态。当主接口所在链路发生故障时,从接口将切换为转发状态。
Flush报文
当Smart Link组发生链路切换时,原有的转发表项将不适用于新的拓扑网络,需要整网进行MAC表项和ARP表项的更新。这时, Smart Link组通过发送Flush报文通知其他设备进行MAC和ARP表项的刷新操作。如图1所示,当链路发生切换时,sw1会发送组播Flush报文通知sw2、sw3和sw4进行MAC和ARP表项的更新。
控制VLAN(Control VLAN)
发送控制VLAN
发送控制VLAN是Smart Link组用于广播Flush报文的VLAN。如图1,如果在SwitchD上开启了Flush报文发送功能,当发生链路切换时,设备会在发送控制VLAN内广播发送Flush报文。
l 接收控制VLA接收控制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。
Monitor Link 原理
Monitor Link通过监控上行接口所在的链路对下行接口进行同步设置。相互配合工作的上行接口和下行接口组合成一个Monitor Link组。
Monitor Link 组
Monitor Link组也叫监控链路组,由上行接口和下行接口共同组成。组的成员可以是接口、静态聚合组、手工聚合组或Smart Link组,其中Smart Link组只能作为上行接口。下行接口的状态随上行接口的变化而变化。如图1所示,Interface3和Interface4组成了一个Monitor Link组。
上行接口
上行接口又称为Uplink接口,是Monitor Link组中受监控者,所有上行接口故障则表示该Monitor Link组故障,该组的下行接口将都会被强制设为Down状态。如图1所示,Interface3为上行接口。上行链路也可以是Smart Link组,当上行链路是Smart Link组时,只有当Smart Link组的两个接口都处于inactive状态(包括Down)时,才能认为该上行链路故障。
下行接口
下行接口又称为Downlink接口,是Monitor Link组中监控者,下行接口故障不影响上行接口,也不影响其他下行接口。如图1所示, Interface4为下行接口。配置Monitor Link组后,上行接口将被实时监控,一旦所有上行接口出现故障,包括链路故障、OAM的单通故障、OAM的连接无法建立等,其所在组的所有Up的下行接口都会被强制设为Down状态。当上行链路恢复正常时,恢复下行接口。
如图1所示,如果Interface3所在的上行链路发生故障,Monitor Link会将Interface4强制设为Down状态。从而sw1可以感知经由sw2B到达sw4的这条链路发生故障。当Interface3所在的上行链路恢复正常后,Monitor Link会取消对Interface4强制设定的Down状态,开启Interface4。
说明
当上行接口是Smart Link组时,只有当Smart Link组的两个接口都处于inactive状态(包括Down)时,才能认为该上行接口故障。
当下行接口是聚合组时,上行故障将会强制将聚合组中的所有接口设为Down状态,同样,恢复时也是对聚合组的所有接口进行操作。
附交换机配置:
sw1:
#
vlan batch 10 20
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10
stp disable
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10
stp disable
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/4
port link-type access
port default vlan 10
#
smart-link group 1
restore enable
smart-link enable
port GigabitEthernet0/0/1 master
port GigabitEthernet0/0/2 slave
timer wtr 30
flush send control-vlan 20 password simple 123
#
sw2:
#
vlan batch 10 20
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
monitor-link group 1
port GigabitEthernet0/0/2 uplink
port GigabitEthernet0/0/1 downlink 1
#
Sw3:
#
vlan batch 10 20
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
monitor-link group 1
port GigabitEthernet0/0/2 uplink
port GigabitEthernet0/0/1 downlink 1
#
Sw4:
#
vlan batch 10 20
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10
smart-link flush receive control-vlan 20 password simple 123
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 1
#
扩展部分:

在图2中,主机侧配置主备模式,当交换机上行链路发生故障时,也会存在主机侧不能感知,流量转发中断;此时可通过在交换机配置Monitor Link组,实现上行链路与下行链路联动,
实现链路切换。
相关文章:
Smart Link 和 Monitor Link应用
定义 Smart Link常用于双上行链路组网,提高接入的可靠性。 Monitor Link通过监视上行接口,使下行接口同步上行接口状态,起到传递故障信息的作用。 Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个…...
【debug】解决Kali虚拟机开机黑屏,左上角光标一直闪动无法开机问题
做网络攻防实验时,突然Kali无法打开,遇到这个问题。。。。。。 遇到的问题 突然kali虚拟机变成如下黑屏,无法开机,左上角光标闪动,重启无效。 解决办法 在上图界面,按Ctrl F3(不同电脑快捷键…...
目标检测YOLO实战应用案例100讲-基于改进YOLO算法的道路交通目标检测(续)
目录 3.3 实验结果与分析 3.3.1 实验数据集 3.3.2 算法的评价指标 3.3.3 损失函数实验结果...
爬虫怎么伪装才更安全
随着网络技术的不断发展,爬虫技术也越来越成熟,爬虫伪装技术也随之得到了广泛应用。在爬虫伪装技术中,如何伪装成正常的浏览器行为,让目标网站无法辨别出爬虫的存在,是爬虫伪装技术的核心。下面,我将从以下…...
openssl+sha256开发实例(C++)
文章目录 一、 sha256介绍二、sha256原理三、openssl sha256实现 一、 sha256介绍 SHA-256(Secure Hash Algorithm 256-bit)是一种哈希算法,属于 SHA-2(Secure Hash Algorithm 2)家族的一员。SHA-256 产生的哈希值是一…...
【Bug】当用opencv库的imread()函数读取图像,用matplotlib库的plt.imshow()函数显示图像时,图像色彩出现偏差问题的解决方法
一,问题描述 我们在利用opencv的imread读取本地图像,进行一系列处理,但是发现用matplotlib库的imshow()函数显示的时候出现色彩改变,比如图像偏黄,偏红,偏蓝等等,但是对…...
通过顶顶通呼叫中心中间件玩转FreeSWITCH媒体流
怎么获取FreeSWITCH的媒体流是一个老生常谈的问题了,最常见的方法media_bug,我在2019年就做的FreeSWITCH对接ASR开源的例子https://gitcode.net/iyaosan/FreeSWITCH-ASR用的就是media_bug,对接ASR常见的方法还有通过mod_mrcp模块对接mrcp的asrserver。 …...
Maven内网开发使用离线仓库
Maven内网开发使用离线仓库 离线或者内网环境开发与外网不通,中央仓库连不上,使用 Maven 管理项目会遇到很多问题。 比如:依赖包缺失,内网的Nexus私服的包老旧,很久没有维护,项目无法运行打包,…...
CSS特效007:绘制3D文字,类似PS效果
css实战中,怎么绘制3D文字呢? 实际上理论很简单,使用text-shadow,根据需要调整阴影的颜色、大小、偏移量等参数,以达到你想要的立体效果。下面是一个简单的示例。关键点就是知道如何设置text-shadow。 效果图 源代码 …...
LLM 面试总结
溜一遍 MLStack.Cafe - Kill Your Next Machine Learning & Data Science Interview https://www.llmforce.com/llm-interview-questions MLStack.Cafe - Kill Your Next Machine Learning & Data Science Interview An interview with a language model, ChatGPT - W…...
acwing算法基础之数学知识--求小于等于n的所有质数
目录 1 基础知识2 模板3 工程化 1 基础知识 核心思想:把2~n中的非质数打上标记(也即,筛掉),剩余的就是质数。 一般做法: int primes[N]; //存储所有的质数 int st[N]; //存储是否被排除 int cnt; int n;…...
安装和使用 nn-Meter
安装和使用 nn-Meter nn-Meter: Towards Accurate Latency Prediction of Deep-Learning Model Inference on Diverse Edge Devices nn-Meter:精准预测深度学习模型在边缘设备上的推理延迟 Li Lyna Zhang, Shihao Han, Jianyu Wei, Ningxin Zheng, Ting Cao, Yuqin…...
PHP原生类总结利用
再SPL介绍 SPL就是Standard PHP Library的缩写。据手册显示,SPL是用于解决典型问题(standard problems)的一组接口与类的集合。打开手册,正如上面的定义一样,有许多封装好的类。因为是要解决典型问题,免不了有一些处理文…...
C/C++满足条件的数累加 2021年9月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析
目录 C/C满足条件的数累加 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 C/C满足条件的数累加 2021年9月 C/C编程等级考试一级编程题 一、题目要求 1、编程实现 现有n个整数,将其中个位数…...
zookeeper:服务器有几种状态?
四种: looking(选举中)、leading(leader)、following( follower)、 observer(观察者角色)...
大数据-之LibrA数据库系统告警处理(ALM-12040 系统熵值不足)
告警解释 每天零点系统检查熵值,每次检查都连续检查五次,首先检查是否启用并正确配置了rng-tools工具或者haveged工具,如果没有配置,则继续检查当前熵值,如果五次均小于500,则上报故障告警。 当检查到真随…...
HTML页面模拟了一个类似Excel的表格在线diy修改表格内容
html实现在线表格编辑,可以修改每个表格内容,并且可以添加行和列 这个HTML页面模拟了一个类似Excel的表格,可以添加和删除行和列,并且可以编辑每个表格的内容。通过点击按钮可以添加新的行和列,通过按钮可以删除最后一…...
Unity如何保存场景,如何导出工程文件/如何查看保存位置?【各版本通用】
如何保存场景? 在unity中CtrlS 或者File—>Save 输入你要保存的场景名【建议保存在Scenes文件夹下】 下图,保存场景不在Scenes文件夹下: 下图,保存在Scenes文件夹下: 下图,保存完成 如何导出工程文…...
2023年第十六届山东省职业院校技能大赛中职组“网络安全”赛项规程
第十六届山东省职业院校技能大赛 中职组“网络安全”赛项规程 一、赛项名称 赛项名称:网络安全 英文名称:Cyber Security 赛项组别:中职组 专业大类:电子与信息大类 二、竞赛目的 网络空间已经成为陆、海、空、天之后的第…...
html菜单的基本制作
前面写过一点网页菜单的博文;下面再复习一些技术要点; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...
从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案
在大数据时代,海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构,在处理大规模数据抓取任务时展现出强大的能力。然而,随着业务规模的不断扩大和数据抓取需求的日益复杂,传统…...
Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...
