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

真机二阶段之堆叠技术

堆叠技术 --- 可以将多台真实的物理设备逻辑上抽象成一台

思科 -- VPC
华为 -- iStack和CSS
华三 -- IRF
锐捷 -- VSU

iStack和CSS的区别:
CSS --- 集群 --- 它仅支持将两台支持集群的交换机逻辑上整合成一台设备。
iStack --- 堆叠 --- 可以将多台支持堆叠的交换机逻辑上整合成一台。
集群和堆叠的主要区别 --- 1.数量  2.设备

1.堆叠的优势
       1.提高可靠性
          961a26c74e574d3f8ee3f4b07b8e2063.png
          堆叠实际上实现的是一个1:N的备份,任意一台设备出现故障,堆叠系统中剩余的N台设备都相当于是备份。
       2.简化组网
          14948bb180a44a72b5c7dc0ce6576371.png
          因为多台设备逻辑上被抽象成为了一台设备,且可以实现跨设备的链路聚合,极大的简化了组网。
       3.简化管理
          因为堆叠了之后,多台交换机相当于变成了一台交换机,所以,我们可以通过任意一台交换机登录到堆叠系统中,并对整个堆叠系统进行统一的管理。
       4.强大的网络拓展能力
          89d135f206174500a1f1f457fd0a3d7a.png
          堆叠系统可以通过增加堆叠系统中的成员设备,从而达到增加端口数量,提高带宽,提升整个堆叠系统的处理能力。

2.堆叠的方式
       参与堆叠的设备首先需要保证直连。
       根据中间链接介质不同,可以将堆叠方式分为两种:
              堆叠卡堆叠
              b9f032604378471cac32b77a3195f01a.png
              0bf5367c5ef346cb8a277b1d5f910ad8.png
              注意:堆叠卡中有两个堆叠口,一个1口,应该2口。在链接成为堆叠系统时,一定注意,需要使用本端设备的1口去链接对端设备的2口,实现交叉互联。
              业务口堆叠
                     逻辑堆叠端口 --- Stack-port --- 一种虚拟接口 --- 最多也只能创建两个。也需要遵循交叉互联的原则。
                     物理成员端口 --- 逻辑口只是定义了功能,真实的数据传递还是需要通过物理接口实现。所以,我们需要将物理成员接口划入到逻辑端口中。不同设备型号和接口类型可以划入的接口数量可能不同,需要结合具体的产品文档来判断。
                     f3d001a2025048abad27f68a000cc1f3.png
       优点:
               堆叠卡堆叠 --- 配置简单,不用占用业务口。
               业务口堆叠 --- 无额外成本。
       缺点:
               堆叠卡堆叠 --- 需要购买专用的堆叠卡,成本上升。
               业务口堆叠 --- 需要占用业务口,配置麻烦。
3.堆叠的原理
       1.角色
       只要加入到堆叠系统中的设备,都被称为成员交换机。

       Master --- 主交换机 --- 一个堆叠系统中,有且仅有一个主交换机。
       Standby --- 备交换机 --- 如果主交换机出现故障,则由备交换机承担主交换机的职责,一个堆叠系统中,只有一个备交换机。
       slave --- 从交换机 --- 一个堆叠系统中,除了主和备交换机外,剩余所有成员交换机都是从交换机。
 
       2.单机堆叠
             仅由一台交换机组建的堆叠系统
             注意:华为设备默认使能了堆叠

       3.堆叠ID
             用来区分和标定堆叠系统中不同的交换机。堆叠ID在一个堆叠系统中是唯一的。堆叠ID的取值范围0-8。

             G 0/0/0 --- 槽位号/子卡号/端口号 --- 槽位号一般默认为0,但是如果设备定义了堆叠ID,则槽位号会变成对应的堆叠ID。

             注意:堆叠ID的唯一性可以由网络管理员手工配置保证,但是,如果配置存在冲突或者多台设备没有配置,堆叠系统中的主交换机会对多有成员交换机的堆叠ID进行管理,会对ID冲突设备从最小的ID进行遍历,找到第一个空闲的ID分配给该设备。

             一台设备如果从一个堆叠系统中退出,他将继承堆叠系统中的堆叠ID,除非手工更改,或者他加入到其他堆叠系统中,存在冲突备主交换机修改。
 
       4.堆叠的优先级
             附加在每一个成员交换机上,用来进行角色选举的属性。提供手工干涉选举的一个参数。优先级越大,成为主交换机的几率越大,其取值1-255。其默认初始值为100。

             堆叠角色的选举是非抢占模式的。抢占时间20S。

       堆叠的建立过程:
       1.物理连接
             首先,需要根据网络需求,选择适当的连接方式和连接拓扑,来组建堆叠网络。
             ace30c7a487346068a7e8e57e0a2c455.png
             链形连接 --- 1.其首尾不用相连,更适合远距离堆叠。
                                  2.图形结构简单,容错较低,任何一条链路断开都将引起堆叠分裂。
             环形连接 --- 1.可靠性更高,对堆叠分裂具有一定的容错。
                                  2,因为首尾需要相连,所以,不太适合远距离的堆叠。
     
             总结:近距离堆叠,推荐使用环形拓扑,其稳定性更好;远距离堆叠,推荐使用链形拓扑,部署成本更低。
       
       2.主交换机的选举
             1.堆叠成员的加入 --- 因为堆叠系统时非抢占模式的,所以,如果一个完成的堆叠系统中需要加入一台成员设备,该设备将直接以从交换机的身份加入,不影响原系统的角色。
             2.堆叠合并 --- 两个堆叠系统中的主交换机进行竞选。竞选成功的主设备所在的堆叠系统其角色不会发生变化,竞选失败的主所对应的堆叠系统,所有设备将重新启动,以从交换机的身份加入到胜利堆叠系统中,并同步主交换机的配置。

             因为华为交换机默认使能了堆叠,而且超时时间只有20S。所以,想要区分这两种场景,只能通过控制设备的启停进行区分,如果交换机关机再加入,则为堆叠成员加入场景;若开机加入,则为堆叠合并场景。

             竞选规则(逐条比较)
             1.设备的运行状态比较,已经运行的交换机比处于启动状态的交换机优先竞选为主交换机。如果是堆叠合并时两个系统的主进行竞争,则需要比较设备的运行时间,,运行时间长的为主。
             2.如果第一条相同时,则比较设备堆叠的优先级,优先级高的为主。
             3.若优先级相同,则比较设备的MAC地址,优选MAC地址小的作为主交换机。
                
       3.堆叠ID的分配和备交换机的选举
             主交换机竞选完成后,主设备会收集所有成员交换机的拓扑信息;之后将拓扑信息同步给所有成员交换机,并分配堆叠ID。之后进行备交换机的选举。
          
             备交换机的选举规则
             1.所有设备除了主交换机外最先完成启动的设备作为备交换机。
             2.若启动时间相同,则比较优先级,除主交换机外最高的为备交换机。
             3.若优先级相同,则比较MAC地址,除主交换机外MAC地址最小的为备交换机。

       4.软件版本和配置文件的同步
             因为堆叠系统要作为一个整体,所以,若备或从交换机和主交换机的软件版本不一样,则将自动同步主系统的软件版本,并且,为了保证整体功能一致,也需要同步主的配置信息。
       
       堆叠MAC地址问题
             因为整个堆叠系统需要被看作是一个整体,所以需要一个统一的MAC地址。堆叠系统的MAC地址默认使用主交换机的MAC地址。这个MAC地址一旦发生变化,可能会导致流量的中断。如果主交换机发生故障,理论上需要切换成新主的MAC地址。但是为了防止MAC地址变换引起的震荡,华为设定,主退出10分钟(默认值,可以改)内依然使用其MAC地址,如果超时未归,则使用新主的MAC地址。

       堆叠分裂
             堆叠分裂:指因为堆叠线缆故障导致原来一个堆叠系统分裂成为多个堆叠系统。
             堆叠一旦分裂,意味着多个堆叠系统将具有完全相同的配置,IP地址,包括10分钟内MAC地址也完全相同,相当于整个网络中出现了两台完全相同的设备,就可能会造成冲突,导致流量中断。
             
             1.原系统中的主和备分裂到了一个堆叠系统中
             381a17c87eab4e61b49fbc0c9e2c54b1.png

 

             2.原堆叠系统中的主和备分裂到不同的系统中
             628dec0ca2aa43e2916da8fc6bbf1c86.png
             MAD --- 多主检测
             1.直连检测
             048cb4794c784158b8482d6e768fd495.png
             工作逻辑 --- 在堆叠发生之前,检测线缆不传递报文。堆叠分裂一旦发生,分裂的两台设备自身可以检测到,则将通过MAD检测链路默认为1S为周期发送MAD报文,通知分裂的发生,并采取后续处理。

             两种直连方式,相对而言,全连的方式可靠性更高,但是需要占用更多的接口。而且,如果设备相距较远,全连成本较高。
             
             2.代理检测
             99831a139b274217a746e379ceaf055e.png
             代理检测,必须通过聚合链路来实现检测,不过,聚合链路可以是业务通道,不用占用额外的接口。
             工作逻辑:成员交换机默认会以30S为周期沿着聚合链路发生检测报文,正常情况下,收到检测报文,不需要做任何处理;如果分裂发生,则和直连检测相同,分裂设备会以1S为周期发送检测报文,通知分裂的产生并实施冲突处理。

       冲突处理
             其逻辑就是需要将分裂出来的系统进行一次竞选,规则和之前相同,竞选成功的系统将保留配置;竞选失败,则被置为Recovery状态 --- 除了配置保留的接口外,所有接口将被关闭。

4.堆叠的配置

  1.创建虚拟的堆叠端口
       [Stack1]interface stack-port 0/1 --- 创建堆叠口
       [Stack1-stack-port0/1]

       2.将物理接口拉入堆叠口
       [Stack1-stack-port0/1]port interface GigabitEthernet 0/0/1 GigabitEthernet 0/0/2 enable

       3.修改堆叠优先级
       [Stack1]stack slot 0 priority 200
 
       4.修改堆叠ID
       [Stack2]stack slot 1 renumber 2

       5.MAD代理检测
             堆叠系统配置
             [Stack1]interface Eth-Trunk 0 --- 进入聚合口
             [Stack1-Eth-Trunk0]mad ?
               detect  Specify  detect action
               relay  Relay  config
             [Stack1-Eth-Trunk0]mad detect mode relay

             代理设备
             [D1]interface Eth-Trunk 0 --- 进入聚合口
             [D1-Eth-Trunk0]mad relay

堆叠小贴士
因为堆叠的配置是通过普通的重置手段是没有办法清除的,需要使用专门的命令来清除
华为设备清除堆叠配置的命令:[Huawei]reset stack configuration
执行该命令将清除堆叠的所有配置
包括:交换机槽位号,堆叠优先级,堆叠保留VLAN,系统MAC切换时间,堆叠口配置,堆叠口速率配置
例如,交换机插入专用的堆叠线缆进行堆叠时,为了根据专用线缆的连线顺序生成槽位号,需要先执行该命令清除堆叠的配置
执行该命令后会导致原有堆叠系统分

 

 

相关文章:

真机二阶段之堆叠技术

堆叠技术 --- 可以将多台真实的物理设备逻辑上抽象成一台 思科 -- VPC 华为 -- iStack和CSS 华三 -- IRF 锐捷 -- VSU iStack和CSS的区别: CSS --- 集群 --- 它仅支持将两台支持集群的交换机逻辑上整合成一台设备。 iStack --- 堆叠 --- 可以将多台支持堆叠的交换…...

简单、快速、无需注册的在线 MockJs 工具

简单、快速、无需注册的 MockJs 工具。通过参数来返回数据,传入什么参数就返回什么数据。 使用 接口只支持返回文本类数据,不支持图片、流数据等。 json 调用接口 https://mock.starxg.com/?responseBody{“say”:“hello”}&contentTypeapplic…...

【Linux取经路】探索进程状态之僵尸进程 | 孤儿进程

文章目录 一、进程状态概述1.1 运行状态详解1.2 阻塞状态详解1.3 挂起状态详解 二、具体的Linux操作系统中的进程状态2.1 Linux内核源代码2.2 查看进程状态2.3 D磁盘休眠状态(Disk sleep)2.4 T停止状态(stopped) 三、僵尸进程3.1 僵尸进程危害总结 四、孤儿进程五、结语 一、进…...

第十二章MyBatis动态SQL

if标签与where标签 if标签 test如果为true就会拼接查询条件&#xff0c;否则不会 当没有使用Param&#xff0c;test出现arg0/param1当使用Param&#xff0c;test为Param指定的值当使用Pojo&#xff0c;test为对象的属性名 select * from car where <if test"name!n…...

redis--发布订阅

redis的发布和订阅 在Redis中&#xff0c;发布-订阅&#xff08;Publish-Subscribe&#xff0c;简称Pub/Sub&#xff09;是一种消息传递模式&#xff0c;用于在不同的客户端之间传递消息&#xff0c;允许一个消息发布者将消息发送给多个订阅者。这种模式适用于解耦消息发送者和…...

链表2-两两交换链表中的节点删除链表的倒数第N个节点链表相交环形链表II

今天记录的题目&#xff1a; ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II 两两交换链表中的节点 题目链接&#xff1a;24. 两两交换链表中的节点 这题比较简单&#xff0c;记录好两个节点&#xff0c;交换其nex…...

数据结构之并查集

并查集 1. 并查集原理2. 并查集实现3. 并查集应用3.1 省份数量3.2 等式方程的可满足性 4. 并查集的优缺点及时间复杂度 1. 并查集原理 并查表原理是一种树型的数据结构&#xff0c;用于处理一些不相交集合的合并及查询问题。并查集的思想是用一个数组表示了整片森林&#xff0…...

[element-ui] el-date-picker a-range-picker type=“daterange“ rules 校验

项目场景&#xff1a; 在项目中表单提交有时间区间校验 问题描述 想当然的就和其他单个输入框字符串校验&#xff0c;导致提交保存的时候 &#xff0c;初次日期未选择&#xff0c;规则提示。后续在同一表单上继续提交时&#xff0c;校验失效。走进了死胡同&#xff0c;一直以…...

Dockers搭建个人网盘、私有仓库,Dockerfile制作Nginx、Lamp镜像

目录 1、使用mysql:5.6和 owncloud 镜像&#xff0c;构建一个个人网盘。 &#xff08;1&#xff09;下载mysql:5.6和owncloud镜像 &#xff08;2&#xff09;创建启动mysql:5.6和owncloud容器 &#xff08;3&#xff09;在浏览器中输入网盘服务器的IP地址&#xff0c;进行账…...

2023 CCPC 华为云计算挑战赛 hdu7401 流量监控(树形dp)

题目 流量监控 - HDU 7401 - Virtual Judge 简单来说&#xff0c;T(T<20)组样例&#xff0c;sumn不超过2e4 每次给定一棵n(n<2000)个点的树&#xff0c;两问&#xff1a; ①将n个点恰拆成n/2个pair(u,v)&#xff0c;要求一个点是另一个点的祖先&#xff0c;求方案数 …...

01.Django入门

1.创建项目 1.1基于终端创建Django项目 打开终端进入文件路径&#xff08;打算将项目放在哪个目录&#xff0c;就进入哪个目录&#xff09; E:\learning\python\Django 执行命令创建项目 F:\Anaconda3\envs\pythonWeb\Scripts\django-admin.exe&#xff08;Django-admin.exe所…...

亿赛通电子文档安全管理系统任意文件上传漏洞(2023-HW)

亿赛通电子文档安全管理系统任意文件上传漏洞 一、 产品简介二、 漏洞概述三、 影响范围四、 复现环境五、 漏洞复现小龙POC检测 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果…...

docker限制容器日志大小

文章目录 业务场景问题排查彻底解决 业务场景 我们公司做交通相关业务&#xff0c;我们部门主要负责信控服务&#xff0c;卖信号机的硬件产品和配套的信控平台 由于有部分小项目&#xff0c;可能只有几十个路口&#xff0c;客户预算有限&#xff0c;只给我们老旧的Windows ser…...

底层驱动实现数码管显示温湿度数值功能

开发板&#xff1a;STM32MP157A 温湿度传感器&#xff1a;si7006 显示器&#xff08;数码管&#xff09;&#xff1a;m74hc595 遇到的问题&#xff1a;循环采集温湿度传感器数值&#xff0c;并将数值发送给数码管的时候两者存在竞态关系&#xff0c;导致数码管显示亮度很暗 …...

03架构管理之测试管理

专栏说明&#xff1a;针对于企业的架构管理岗位&#xff0c;分享架构管理岗位的职责&#xff0c;工作内容&#xff0c;指导架构师如何完成架构管理工作&#xff0c;完成架构师到架构管理者的转变。计划以10篇博客阐述清楚架构管理工作&#xff0c;专栏名称&#xff1a;架构管理…...

30、devtools 依赖关于自动重启(自动加载页面)的知识

devtools 依赖关于自动重启的知识 ★ 自动重启 devtools会监控类加载路径中的文件&#xff08;尤其是*.class文件&#xff09;&#xff0c;只要这些文件发生了改变&#xff0c; devtools就会自动重启Spring Boot应用。▲ 不同工具触发自动重启的方式&#xff1a;Eclipse&…...

ES6 Promise/Async/Await使用

Promise应用 在工作中, 我们经常会遇到用异步请求数据, 查询一个结果, 然后把返回的参数放入到下一个执行的异步函数像这样: $.ajax({..., success(resp)>{$.ajax({..., resp.id, success(resp)>{$.ajax({..., resp.name success(resp)>{//多层嵌套的情况, 看着是不…...

Word中对象方法(Methods)的理解及示例(上)

【分享成果&#xff0c;随喜正能量】奋斗没有终点,任何时候都是一个起点&#xff0c;沉潜是为了蓄势待发&#xff0c;沉潜是为了等待因缘。鲸豚沉潜于大海&#xff0c;幽兰深藏于山谷&#xff0c;能够经得起沉潜的人&#xff0c;才会有更高的成就。正如一年的树木只能当柴烧&am…...

AutoDev 1.1.3 登场,个性化 AI 辅助:私有化大模型、自主设计 prompt、定义独特规则...

在过去的半个月里&#xff0c;我们为开源辅助编程工具 AutoDev 添加了更强大的自定义能力&#xff0c;现在你可以&#xff1a; 使用自己部署的开源大模型自己配置 Intellij IDEA 中的行为自定义开发过程中的规范 当然了&#xff0c;如果您自身拥有开发能力的话&#xff0c;建议…...

win11 python 调用edge调试过程

1、下载对应版本的驱动程序&#xff1a; https://developer.microsoft.com/zh-cn/microsoft-edge/tools/webdriver/ 2、和系统版本对应的exe文件(x86、x64要对应)放置的固定的目录&#xff0c;我放到了system32下了&#xff1b; 3、PATH路径添加windows/system32目录&#x…...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展&#xff0c;消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁&#xff0c;不仅优化了客户体验&#xff0c;还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用&#xff0c;并…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)

+---------------------------+ | operEntryTbl[] | ← 操作对象池 (对象数组) +---------------------------+ | 0 | 1 | 2 | ... | N-1 | +---------------------------+↓ 初始化时全部加入 +------------------------+ +-------------------------+ | …...

工厂方法模式和抽象工厂方法模式的battle

1.案例直接上手 在这个案例里面&#xff0c;我们会实现这个普通的工厂方法&#xff0c;并且对比这个普通工厂方法和我们直接创建对象的差别在哪里&#xff0c;为什么需要一个工厂&#xff1a; 下面的这个是我们的这个案例里面涉及到的接口和对应的实现类&#xff1a; 两个发…...