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

锐捷VSU技术理论与实验

目录

VSU涉及的相关基础概念

VSU的2种工作模式

VSU的3种设备角色

VSU的4种设备状态

VSU的分裂与合并

VSU建立过程

双主检测

VSU报文转发原理

VSU命令配置

配置VSU

配置双主检测


VSU涉及的相关基础概念

域编号(Domain ID)

Domain ID是VSU的标识符,用来区分不同的VSU

两台交换机的Domain ID相同,才可以组成VSU

范围为1~255,缺省100

一个网络可以有多个域

设备编号(Switch ID)

Switch ID是交换机在VSU的成员编号

在单机模式中,接口的编号采用二维格式,”槽位号/接口编号”(例如GigabitEthernet 1/3)

在VSU模式中,接口的编号采用三维模式,”成员编号/槽位号/接口编号”(例如例如GigabitEthernet 1/1/3);因此我们需要保证在一个VSU域中成员编号唯一

范围为1~8,缺省1

设备优先级

设备优先级用于选举主备角色

设备优先级越高,选为主设备的可能性越大(但不一定会选举为主设备)

范围为1~255,缺省是100

设备优先级分类

设备优先级分为配置优先级和运行优先级;

       配置优先级:在VSU运行过程中配置的优先级

       运行优先级:启动时配置文件中保存的配置优先级(在VSU的运行过程中不会变化,只有修改了配置优先级,并保存之后重启VSU设备才会更改)

VSL(虚拟交换链路)

VSL是VSU系统的设备间传输控制信息和数据流信息的特殊聚合链路

VSL端口以聚合端口组的形式存在,是一个逻辑口

将物理端口加入到VSL端口,这些物理端口就称为VSL成员端口

VSL的成员端口可以是堆叠口、以太网接口或光口,具体哪些端口可以作为VSL成员端口与设备的型号有关

不同成员端口使用的连接介质不一样

堆叠口为成员端口:需要使用专门的堆叠线缆来连接

以太网接口为成员端口:使用交叉网线连接VSL端口即可

光口作为成员端口:通过光模块+光纤连接的方式进行连接

VSU通用限制

1、40G一分四口不支持做VSL链路

2、高端机框设备禁止使用铜缆组VSU

3、VSL 口不支持端口的速率自适应,只支持端口的最大能力速率生效,如万兆口只能采用万兆光模块组网,而不能采用千兆光模块自适应成千兆组建VSL链路

4、VSL链路两端的接口速率需一致

VSU的2种工作模式

单机模式(standalone)

即设备没有开启VSU(缺省是此模式)

VSU模式

要想组建VSU,就必须将设备的工作模式切换为VSU模式

对于支持使用堆叠口作为VSL成员端口的VSU系统而言,如果系统在启动阶段识别到了堆叠口,则会自动激活到VSU模式

VSU的3种设备角色

VSU中每台设备都成为成员设备,成员设备按照功能不同分为三种角色:

Active主设备

进行数据转发,并负责管理整个VSU系统

Standby 从设备

作为Active的备用设备运行,只进行数据转发(当Active故障时,Standby会自动升级为Active接替原Active的工作)

Candidate候选设备

作为Standby的备用设备运行,只进行数据转发(当Standby故障时,系统会自动从Candidate中选举一个新的Standby接替原Standby工作;当Active故障时,在Standby自动升级为Active接替原Active工作的同时,系统也会自动从Candidate中选举一个新的Standby接替原Standby工作)

VSU的4种设备状态

Ok状态

设备VSU运行正常,处于最终的稳定状态

Recovery康复状态

在VSU系统分裂,且配置有BFD或链路聚合检测时,备设备会处于该状态

当两个分裂的VSU系统合并时,选举失败的一方也会短暂性的处于该状态

该状态下,系统会关闭VSL端口和管理员指定的例外端口以外的所有物理端口

Leave离开状态

只有在设备重启过程中会存在此状态

Isolate孤立状态

当VSU成员的成员编号一致时,优先级较低的那台VSU状态将为Isolate状态

此时VSL链路为Down

VSU的分裂与合并

VSU分裂

VSU达到OK状态后,由于VSL链路故障,导致成员设备之间不通

一个VSU变为两个VSU

VSU合并

对于两个各自稳定的VSU,如果它们的Domain ID相同,则可以通过在两个VSU之间增加VSL连接来使其合并为一个VSU,这个过程称为VSU合并

VSU建立过程

VSL检测

成员设备启机之后,根据配置的VSL信息将物理端口识别为VSL口,并开始VSL检测

VSL检测主要是检测直连设备的VSL连接关系,当VSL状态变为Up之后,设备就可以开始拓扑发现

拓扑发现

VSU中的每台设备都是通过和拓扑中的其它成员设备之间交互VSU Hello报文来收集整个VSU的拓扑关系。

VSU Hello报文会携带拓扑信息,包括本机的成员编号、设备优先级、MAC信息、VSU端口连接关系等内容。

每个成员会在状态为UP的VSL口上向拓扑洪泛Hello报文,其他成员收到Hello报文后,会将报文从非入口的状态为UP的VSL口转发出去,通过Hello报文的洪泛,每个成员设备可以学到整个拓扑信息。

当设备收集完拓扑信息后,开始进行角色选举

VSU角色选举

Active角色的选举规则如下:

最先完成启动的主机优先

设备优先级大的优先

MAC地址小的优先

Standby角色的选举规则如下:

第二完成启动的主机优先

设备优先级大的优先

MAC地址小的优先

注意事项

1、成员设备的启机顺序可能会影响主机的选举;即使热加入设备的优先级比当前运行的VSU系统主机和从机优先级高,系统也不会进行主、从角色切换(因此VSU支持热加入)

2、部分成员设备可能由于启机慢(目前VSU系统中,在5分钟内没有发现邻居就直接收敛),而没有及时加入VSU系统;在这种情况下,该成员设备将做热加入处理,即使优先级比当前运行的VSU系统主机高,系统也不会发生角色切换

双主检测

目前支持用BFD和聚合口进行双主检测

需要在两台交换机之间建立一条双主机检测链路,当VSL断开时,两台交换机开始通过双主机检测链路发送检测报文,收到对端发来的双主机检测报文,就说明对端仍在正常运行,存在两台主机

在三层,两个VSU的任何一个虚拟接口(Vlan接口和环路接口等)的配置相同,都会使得网络中出现IP地址冲突

基于BFD检测

BFD检测采用扩展BFD,不能通过现有BFD的配置与显示命令配置双机检测

BFD的双主检测端口必须是三层路由口(二层口、三层AP口-链路聚合口、三层SVI口-Vlanif口都不能作为BFD检测端口)

当用户将双主检测的端口从三层路由口转换为其他类型的端口模式时,BFD的双主检测配置将自动清除

当两台以上的设备建立VSU时,如果要完全防止双主机的产生,就需要交换机之间两两互联来做BFD检测

基于聚合口检测

基于聚合口的检测需要配置在跨设备业务聚合端口上,而且需要周边设备可以转发私有检测报文

当两台以上设备建立VSU时,建议使用此模式进行双主检测;(必须保证下联的接入交换机是锐捷设备)


VSU报文转发原理

VSU设备每个成员设备都有完整的二层/三层转发能力

对于三层报文来说,不管它在VSU系统内部穿过了多少成员设备,在跳数上只增加1

VSU优先本地转发(同华为本地转发)

如果成员交换机收到已知单播帧,需要向聚合端口转发,会优先选择该聚合端口在本设备上的成员端口,这种做法可以减少流经VSL的流量

VSL主要用来传输控制报文,如果过多的数据报文占用VSL的带宽,造成VSL堵塞,会影响控制报文的传输

如果该聚合端口在本设备的所有成员端口的链路状态都是DOWN,那么只能把已知单播帧通过VSL转发给另一台机箱,然后转发出去

对于未知单播帧、组播帧、广播帧,无法实现优先本地转发,只能在堆叠的所有成员端口之间负载均衡

软件版本为11X的设备上,默认使用的是本地优先转发模式;

通过no switch virtual aggregateport-lff enable命令可以将AP口的本地优先转发特性转换为跨设备流量均衡

通过 no switch virtual ecmp-lff enable命令可以将ECMP的流量模式从本地优先转发转变成跨设备流量均衡。


VSU命令配置

配置VSU

配置VSU的Domain ID(同一VSU的Domain ID必须一致)

switch virtual domain 1

 switch 1            #配置成员编号(不同设备的成员编号必须不一致)

 switch 1 priority 200  #配置设备优先级

配置VSL虚拟链路(vsl的组号只能为1或2)

vsl-aggregateport 1 (有些软件版本的命令为 vsl-port,不需要配置VSL组号)

 port-member interface 端口1   #将端口1配置为VSL成员端口

 port-member interface 端口2   #将端口2配置为VSL成员端口

配置设备的工作模式为VSU模式

switch convert mode virtual

当VSL链路up之后再更改设备的工作模式;此时设备会重启,大概VSU建立需要等待10分钟左右

检查VSU的主备是否和我们想的一致

注意VSU的管理必须在主设备上进行

Show switch virtual   #查看VSU的主备设备状态

Show ver slots       #检查是否已经识别到了主从机的所有线卡

配置双主检测

配置基于BFD的双主检测(都在主设备上配置,以两台做双主检测为例)

配置路由口

Interface g1/1/1  # g成员编号/槽位号/接口编号

 no switchport   #配置此接口为路由口

Interface g2/1/1  # g成员编号/槽位号/接口编号

 no switchport

打开VSU的BFD检测开关

Switch virtual domain 1

 dual-active detection bfd        #配置双主检测为BFD模式

 dual-active pair interface g1/1/1 interface g2/1/1  #将一对路由口配置为BFD检测口

 dual-active exclude interface g1/1/2  #指定例外口(一般将上行路由口配置为例外口)

 dual-active exclude interface g2/1/2

配置基于聚合口的双主检测(都在主设备上配置, 以三台做双主检测为例)

创建聚合口(将堆叠设备和接入交换机互联的端口都加入到此聚合口)

Interface aggregateport 1

Interface g1/1/1

 port-group 1 mode active

Interface g2/1/1

 port-group 1 mode active

Interface g3/1/1

 port-group 1 mode active

打开VSU的聚合口检测开关

Switch virtual domain 1

 dual-active detection aggregateport  #配置双主检测为聚合口模式

 dual-active interface aggregateport 1  #配置通过聚合口1进行双主检测

在接入交换机上开启聚合口的代理

Interface aggregateport 1

 dad relay enable

Interface g1/0

 port-group mode active

此时可以根据需要开启IGP协议的GR功能

VSU主备切换时,OSPF等动态路由协议可能会重新建立,导致网络终端或数据流路径切换

配置GR功能后,能够保证协议在重启/设备主备倒换过程中转发层面能够继续指导数据的转发,并保证控制层面的邻居建立和路由计算等不会影响转发层面的功能

GR技术与NSR技术讲解_静下心来敲木鱼的博客-CSDN博客

邻接设备配置helper(锐捷设备默认开启)

OSPF

   router ospf 1

graceful-restart

ISIS

   router isis 1

graceful-restart

BGP

   router bgp 1

bgp graceful-restart

LDP:

   mpls router ldp

graceful-restart

相关文章:

锐捷VSU技术理论与实验

目录 VSU涉及的相关基础概念 VSU的2种工作模式 VSU的3种设备角色 VSU的4种设备状态 VSU的分裂与合并 VSU建立过程 双主检测 VSU报文转发原理 VSU命令配置 配置VSU 配置双主检测 VSU涉及的相关基础概念 域编号(Domain ID) Domain ID是VSU的标…...

深入探索Linux文件链接技术:ln命令的妙用

当谈及 Linux 系统中的文件管理和链接技术,ln 命令是一个不可或缺的工具。ln 命令用于创建硬链接和软链接,它在 Linux 文件系统中发挥着重要作用,为用户提供了更大的灵活性和组织能力。在本文中,我们将深入探讨 ln 命令是什么&…...

electron项目开发环境搭建

由于最近需要做一款跨平台的桌面应用,所以选择使用electron来作为开发的框架,下面说一下如何搭建一个简单的electron项目: 一、准备工作 安装git:下载git | 官网 安装node:下载 | Node.js 中文网 安装npm/cnpm:npm …...

Spring 知识点

Spring 1.1 Spring 简介 1.1.1 Spring 概念 Spring是一个轻量级Java开发框架,最早有Rod Johnson创建为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。使现有的技术更加容易使…...

目标跟踪与检测后进行 OpenCV 人脸识别 ,马赛克

文章大纲 简介模型下载地址ONNX 静态与动态 参数OpenCV 中支持的 人脸检测、识别Face detection 人脸检测YuNetFace recognition 人脸识别sFace目标检测,跟踪 后的人脸模糊问题汇总不支持动态输入的问题参考文献与学习路径简介 OpenCV 4.5.4版本收录了一个基于深度学习神经网…...

持有PMP证书,可申请CSPM证书!

一,CSPM介绍 CSPM的全称是:项目管理专业人员能力评价,是我们国内的“PMP”,是我们中国人自己的项目管理专业人士评价指南,符合中国国情且符合中国未来发展的项目管理专业人员能力评价标准。 2022年10月12日发布实施了…...

linux自定义网络访问规则

1.更改防火墙默认区域为trusted firewall-cmd --set-default-zonetrusted 2.新建一个zone,将想要访问本机80端口的ip,如:192.168.3.99 ,添加的这个zone中,同时在这个zone中放行80端口。 firewall-cmd --permanent --ne…...

247 个经典实用有趣的 Python 实例附源码

今天给大家整理了 247 个经典实用有趣的 Python 实例,185 页代码齐全可复制 pdf,几乎涵盖了 Python 各个方面的知识点,即可以帮助小白快速全面的学习 Python,也可以让老手通过实战练习来查缺补漏。 福利:文末有chat-g…...

动手学深度学习Pytorch 4.4练习

1.这个多项式回归问题可以准确地解出吗?提⽰:使⽤线性代数。 可以,把多项式问题,用matlab的str2sym表示出来,再用solve求解。 2.考虑多项式的模型选择。 1. 绘制训练损失与模型复杂度(多项式的阶数)的关系…...

【计算机视觉 | Kaggle】飞机凝结轨迹识别 Baseline 分享和解读(含源代码)

文章目录 一、导读二、比赛背景三、比赛任务四、比赛数据五、评价指标六、Baseline6.1 Training part6.2 Submission part 一、导读 比赛名称:Google Research - Identify Contrails to Reduce Global Warming https://www.kaggle.com/competitions/google-researc…...

ThinkPHP文件上传:简便安全的解决方案

在现代Web应用程序中,文件上传是一项常见而重要的功能。ThinkPHP是一种流行的PHP开发框架,提供了便捷而安全的文件上传解决方案。本文将介绍ThinkPHP框架中的文件上传功能,并探讨如何使用它来实现安全可靠的文件上传功能。 一、ThinkPHP文件…...

torch.multiprocessing

文章目录 张量共享torch.multiprocessing.spawnmultiprocessing.Pool与torch.multiprocessing.Pool阻塞非阻塞map阻塞非阻塞 starmap torch.multiprocessing是具有额外功能的multiprocessing,其 API 与multiprocessing完全兼容,因此我们可以将其用作直接…...

解决本地代码commit后发现远程分支被更新的烦恼!

解决本地代码commit后远程分支更新的烦恼! 在进行代码开发过程中,当我们准备将本地代码推送到远程分支时,有时会遇到远程分支已经被更新的情况。这给我们的开发工作带来了一些挑战,因为我们需要确保我们的修改与远程分支的更新保持…...

最新AI创作系统ChatGPT程序源码+详细搭建部署教程+微信公众号版+H5源码/支持GPT4.0+GPT联网提问/支持ai绘画+MJ以图生图+思维导图生成!

使用Nestjs和Vue3框架技术,持续集成AI能力到系统! 新增 MJ 官方图片重新生成指令功能同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x新增GPT联网提问功能、手机号注…...

910数据结构(2014年真题)

算法设计题 问题1 已知一个带头结点的单链表head,假设结点中的元素为整数,试编写算法:按递增次序输出单链表中各个结点的数据元素,并释放结点所占的存储空间。要求:(1)用文字给出你的算法思想;(2)不允许使…...

Idea创建maven管理的web项目

如果你想在项目中添加一个传统的 src 目录来存放源代码,可以按照以下步骤操作: 1. 在项目视图中,右键单击项目名称,选择 “New” -> “Directory”。 2. 在弹出的对话框中,输入目录名称为 “src”,然后…...

Java并发编程(一)多线程基础概念

概述 多线程技术:基于软件或者硬件实现多个线程并发执行的技术 线程可以理解为轻量级进程,切换开销远远小于进程 在多核CPU的计算机下,使用多线程可以更好的利用计算机资源从而提高计算机利用率和效率来应对现如今的高并发网络环境 并发编程…...

D. Strong Vertices - 思维 + 二分

分析: 首先找到边的指向很容易,但是暴力是o(n2),超时,可以将给定的式子变形,au - av > bu - bv即au - bu > av - bv,可以将两个数组转变为一个数组中的任意两个值之间的关系,因…...

8月9日上课内容 nginx负载均衡

负载均衡工作当中用的很多的,也是面试会问的很重要的一个点 负载均衡:通过反向代理来实现(nginx只有反向代理才能做负载均衡) 正向代理的配置方法(用的较少) 反向代理的方式:四层代理与七层代…...

为何我们都应关心算法备案?

随着技术的日新月异,算法成为现代生活的核心组成部分,从社交媒体推荐、在线广告到智能交通管理,几乎无处不在。然而,如此普及的技术给我们带来了一个新的挑战:如何确保算法的透明度、公正性和道德性?答案可…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 ​ 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业,其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进,需提前预防假检、错检、漏检,推动智慧生产运维系统数据的流动和现场赋能应用。同时,…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...

基础测试工具使用经验

背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...