堆叠 stack

article/2025/10/16 0:30:15

堆叠

   堆叠是指将多台支持堆叠特性的交换机通过堆叠线缆连接在一起,从逻辑上变成一台交换设备,作为一个整体参与数据转发


  • 主交换机(Master)
    主交换机负责管理整个堆叠。堆叠系统中只有一台主交换机。
  • 备交换机(Standby)
    备交换机是主交换机的备份交换机。堆叠系统中只有一台备交换机。当主交换机故障时,备交换机会接替原主交换机的所有业务。
  • 从交换机(Slave)
    从交换机用于业务转发,堆叠系统中可以有多台从交换机。从交换机数量越多,堆叠系统的转发带宽越大。
    除主交换机和备交换机外,堆叠中其他所有的成员交换机都是从交换机。当备交换机不可用时,从交换机承担备交换机的角色。

单机堆叠

   单机堆叠就是一台交换机使能了堆叠功能,整个堆叠系统中只有一台主交换机。只有使能了堆叠功能的交换机才可以加入堆叠系统或与其他使能了堆叠功能的交换机组建堆叠。

堆叠ID

    堆叠ID用来标识堆叠成员交换机,是成员交换机的槽位号,取值范围是0~8,默认是0。每个堆叠成员交换机在堆叠系统中具有唯一的堆叠ID。

   未加入堆叠系统并且未修改堆叠ID时,交换机堆叠ID缺省为0。堆叠时由堆叠主交换机对成员交换机的堆叠ID进行管理,当堆叠系统有新成员加入时,如果新成员与已有成员堆叠ID冲突,则堆叠主交换机从0~最大的堆叠ID进行遍历,找到第一个空闲的ID分配给该新成员。新建堆叠或堆叠成员变化时,如果不在堆叠前手动指定各交换机的堆叠ID,则由于启动顺序等原因,最终堆叠系统中各成员的堆叠ID是随机的。
   因此,在建立堆叠时,需提前规划好交换机的堆叠ID,或通过特定的操作顺序,使交换机启动后的堆叠ID与规划的堆叠ID一致。

堆叠优先级

   堆叠优先级主要用于角色选举过程中确定成员交换机的角色,优先级值越大表示优先级越高,优先级越高当选为主交换机的可能性越大。

   堆叠主交换机的选举过程是:先比较交换机启动时间,再比较堆叠优先级。当两台交换机启动时间相差20秒以内时,则认为交换机启动时间相同,此时堆叠优先级大的交换机将被选举为主交换机。

堆叠建立的过程:

   物理连接:根据网络需求,选择适当的连接方式和连接拓扑,组建堆叠网络。

   主交换机选举:成员交换机之间相互发送堆叠竞争报文,并根据选举原则,选出堆叠系统主交换机。

   堆叠ID分配和备交换机选举:主交换机收集所有成员交换机的拓扑信息,向所有成员交换机分配堆叠ID,之后选出堆叠系统备交换机。

   软件版本和配置文件同步:主交换机将整个堆叠系统的拓扑信息同步给所有成员交换机,成员交换机同步主交换机的系统软件和配置文件,之后进入稳定运行状态。


   堆叠系统作为一台设备与其他网络设备进行通信时,具有唯一的IP地址和MAC地址。

   堆叠的IP地址是全局的,任意成员交换机从堆叠系统中移除,都不会改变堆叠系统的IP地址。

   堆叠系统的IP地址为任意堆叠成员交换机管理网口或三层端口的IP地址。堆叠管理网口编号为MEth0/0/1

   一般情况下,堆叠系统的MAC地址是主交换机的MAC地址。当堆叠系统的主交换机离开时,如果主交换机在10分钟内重新加入堆叠系统,则堆叠系统将继续使用该交换机的MAC地址。新加入堆叠系统后,如果原主交换机变为了从交换机,则堆叠系统的MAC地址就是从交换机的MAC地址。

   如果主交换机没有在10分钟内重新加入堆叠系统,则堆叠系统的MAC地址将切换为新主交换机的MAC地址。

   交换机没有运行堆叠时,某个接口的编号为GigabitEthernet0/0/1;当该交换机加入堆叠后,如果堆叠ID为2,则该接口的编号将变为GigabitEthernet2/0/1

堆叠成员加入过程:

   1.新加入的交换机连线上电启动后,进行角色选举,新加入的交换机会选举为从交换机,堆叠系统中原有主备从角色不变

   2.角色选举结束后,主交换机更新堆叠拓扑信息,同步到其他成员交换机上,并向新加入的交换机分配堆叠ID(新加入的交换机没有配置堆叠ID或配置的堆叠ID与原堆叠系统的冲突时)

   3.新加入的交换机更新堆叠ID,并同步主交换机的配置文件和系统软件,之后进入稳定运行状态

多主检测

   由于堆叠系统中所有成员交换机都使用同一个IP地址和MAC地址(堆叠系统MAC),一个堆叠分裂后,可能产生多个具有相同IP地址和MAC地址的堆叠系统。为防止堆叠分裂后,产生多个具有相同IP地址和MAC地址的堆叠系统,引起网络故障,必须进行IP地址和MAC地址的冲突检查。

   多主检测MAD(Multi-Active Detection),是一种检测和处理堆叠分裂的协议。链路故障导致堆叠系统分裂后,MAD可以实现堆叠分裂的检测、冲突处理和故障恢复,降低堆叠分裂对业务的影响。

MAD检测方式

   MAD检测方式有两种:直连检测方式和代理检测方式。在同一个堆叠系统中,两种检测方式互斥,不可以同时配置。

直连检测方式

   直连检测方式是指堆叠成员交换机间通过普通线缆直连的专用链路进行多主检测。在直连检测方式中,堆叠系统正常运行时,不发送MAD报文;堆叠系统分裂后,分裂后的两台交换机以1s为周期通过检测链路发送MAD报文进行多主冲突处理。

   直连检测的连接方式包括通过中间设备直连和堆叠成员交换机Full-mesh方式直连:
通过中间设备直连,堆叠系统的所有成员交换机之间至少有一条检测链路与中间设备相连。

   通过中间设备直连可以实现通过中间设备缩短堆叠成员交换机之间的检测链路长度,适用于成员交换机相距较远的场景。

代理检测方式

   代理检测方式是在堆叠系统Eth-Trunk上启用代理检测,在代理设备上启用MAD检测功能。此种检测方式要求堆叠系统中的所有成员交换机都与代理设备连接,并将这些链路加入同一个Eth-Trunk内。与直连检测方式相比,代理检测方式无需占用额外的接口,Eth-Trunk接口可同时运行MAD代理检测和其他业务。

   在代理检测方式中,堆叠系统正常运行时,堆叠成员交换机以30s为周期通过检测链路发送MAD报文。堆叠成员交换机对在正常工作状态下收到的MAD报文不做任何处理;堆叠分裂后,分裂后的两台交换机以1s为周期通过检测链路发送MAD报文进行多主冲突处理。

在这里插入图片描述
当9台设备堆叠时,由于每个Eth-Trunk最多加入8个成员接口,导致一个Eth-Trunk不能包含所有的成员交换机。此时需要配置多个Eth-Trunk,来保证任意两台成员交换机之间都有检测链路


MAD冲突处理

   堆叠分裂后,MAD冲突处理机制会使分裂后的堆叠系统处于Detect状态或Recovery状态。Detect状态表示堆叠正常工作状态,Recovery状态表示堆叠禁用状态。

   冲突处理:MAD分裂检测机制会检测到网络中存在多个处于Detect状态的堆叠系统,这些堆叠系统之间相互竞争,竞争成功的堆叠系统保持Detect状态,竞争失败的堆叠系统会转入Recovery状态;并且在Recovery状态堆叠系统的所有成员交换机上,关闭除保留端口以外的其它所有物理端口,以保证该堆叠系统不再转发业务报文。

MAD竞争原则:

   先比较启动时间,启动完成时间早的堆叠系统成为Detect状态。启动完成时间差在20秒内则认为堆叠的启动完成时间相同。
启动完成时间相同时,比较堆叠中主交换机的优先级,优先级高的堆叠系统成为Detect状态。
   优先级相同时,比较堆叠系统的MAC,MAC小的堆叠系统成为Detect状态。
MAD故障恢复

   通过修复故障链路,分裂后的堆叠系统重新合并为一个堆叠系统。重新合并的方式有以下两种:
   堆叠链路修复后,处于Recovery状态的堆叠系统重新启动,与Detect状态的堆叠系统合并,同时将被关闭的业务端口恢复Up,整个堆叠系统恢复。

   如果故障链路修复前,承载业务的Detect状态的堆叠系统也出现了故障。此时,可以先将Detect状态的堆叠系统从网络中移除,再通过命令行启用Recovery状态的堆叠系统,接替原来的业务,然后再修复原Detect状态堆叠系统的故障及链路故障。故障修复后,重新合并堆叠系统。

跨设备链路聚合

   堆叠支持跨设备链路聚合技术,通过配置跨设备Eth-Trunk接口实现。用户可以将不同成员交换机上的物理以太网端口配置成一个聚合端口连接到上游或下游设备上,实现多台设备之间的链路聚合。当其中一条聚合链路故障或堆叠中某台成员交换机故障时,Eth-Trunk接口通过堆叠线缆将流量重新分布到其他聚合链路上,实现了链路间和设备间的备份,保证了数据流量的可靠传输。

在这里插入图片描述

通过业务口普通线缆

<HUAWEI> system-view
[HUAWEI] sysname SwitchA
[SwitchA] interface stack-port 0/1
[SwitchA-stack-port0/1] port interface gigabitethernet 0/0/27 enable
[SwitchA-stack-port0/1] quit
[SwitchA] interface stack-port 0/2
[SwitchA-stack-port0/2] port interface gigabitethernet 0/0/28 enable
[SwitchA-stack-port0/2] quit
# 配置SwitchB的业务口GigabitEthernet0/0/27、GigabitEthernet0/0/28为物理成员端口,并加入到相应的逻辑堆叠端口。<HUAWEI> system-view
[HUAWEI] sysname SwitchB
[SwitchB] interface stack-port 0/1
[SwitchB-stack-port0/1] port interface gigabitethernet 0/0/27 enable
[SwitchB-stack-port0/1] quit
[SwitchB] interface stack-port 0/2
[SwitchB-stack-port0/2] port interface gigabitethernet 0/0/28 enable 
[SwitchB-stack-port0/2] quit
#堆叠使用1口时 则需要使用2口与之相对# 配置SwitchA的堆叠优先级为200
[SwitchA] stack slot 0 priority 200# 配置SwitchB的堆叠ID为1[SwitchB] stack slot 0 renumber 1# 配置SwitchC的堆叠ID为2[SwitchC] stack slot 0 renumber 2

配置直连或代理方式的多主检测

配置直连方式多主检测
system-view
interface interface-type interface-number。
mad detect mode direct配置代理方式多主检测代理设备为一台交换机
在堆叠系统上
system-view
interface eth-trunk trunk-id
mad detect mode relay  
#配置Eth-Trunk接口的代理方式多主检测功能在指定的代理设备上
system-view
interface eth-trunk trunk-id 
mad relay
#在Eth-Trunk接口上启用代理功能。两个堆叠系统互为代理
在每个堆叠系统上分别配置system-view
mad domain domain-id,
#配置堆叠系统MAD域值,缺省情况下,堆叠系统MAD域值为0。设备支持两套堆叠系统互为代理进行多主检测,此时必须通过配置保证两套堆叠系统的MAD域值不同。interface eth-trunk trunk-id
mad relay
#在Eth-Trunk接口上启用代理功能
mad detect mode relay
#配置Eth-Trunk接口的代理方式多主检测功能。#mad exclude interface { interface-type interface-number1 [ to interface-type interface-number2 ] } &<1-10>,配置堆叠系统内指定端口为保留端口。多主检测发现堆叠分裂,分裂后的多个堆叠系统之间会进行相互竞争,为防止相同的MAC地址、IP地址引起网络振荡,竞争失败的堆叠系统内成员交换机的所有业务端口会被关闭。可以通过命令将这些端口配置为保留端口。堆叠分裂后,多主检测功能不会关闭保留端口的业务。缺省情况下,堆叠物理成员端口为保留端口,其它所有业务口均为非保留端口。堆叠分裂后,用于双主检测的端口也会被关闭。#mad restore,使处于关闭状态的端口重新恢复正常。

http://chatgpt.dhexx.cn/article/B9WLFB33.shtml

相关文章

布局篇-StackPanel布局

StackPanel可以把内部元素在纵向或横向上紧凑排列&#xff0c;形成栈式布局 StackPanel的三个属性 属性名称数据类型可取值描述OrientationOrientation枚举 HorizontalVertical 决定内部元素是横向累积还是纵向累积HorizontalAlignmentHorizontalAlignment枚举 LeftCenterRight…

WPF 控件专题 StackPanel控件详解

1、StackPanel 介绍 将子元素排列成水平或垂直的一行&#xff0c;属于布局控件&#xff0c;通俗说叫栈式面板。可将包含的元素在水平或垂直方向排成一条线&#xff0c;当移除一个元素后&#xff0c;后面的元素会自动向前填充空缺。 StackPanel 中的子元素超出的部分&#xff0c…

StackPanel:栈式面板基础简述

StackPanel就是将控件按照行或列来顺序排列&#xff0c;但不会换行。 通过设置面板的Orientation属性设置了两种排列方式&#xff1a;横排&#xff08;Horizontal&#xff09;和竖排&#xff08;Vertical默认的&#xff09;。 水平排列时&#xff0c;每个元素都与面板一样高…

WPF教程二:布局之StackPanel面板

应用程序界面设计中,合理的元素布局至关重要,它可以方便用户使用,并将信息清晰合理地展现给用户。WPF提供了一套功能强大的工具-面板(Panel),来控制用户界面的布局。你可以使用这些面板控件来排布元素。如果内置布局控件不能满足需要的话,还可以创建自定义的布局元素。 面…

python实现图像自动Gamma校正

python实现图像自动Gamma校正 前言&#xff1a; 关于Gamma&#xff1a; Gamma校正是对动态范围内亮度的非线性存储/还原算法&#xff0c;即输入值进行的非线性操作&#xff0c;使输出值与输入值呈指数关系&#xff1b;从效果上来说Gamma校正调整图像的整体亮度&#xff0c;没…

图像处理算法之Gamma校正

文章目录 1 使用场景2 原理3 实现步骤4 实现5 效果 1 使用场景 当一张图片出现过亮或者过暗的时候导致图像对比度较差&#xff0c;可以使用Gamma校正来处理 2 原理 如上图所示&#xff0c;为函数 f ( I ) I γ f(I) I^γ f(I)Iγ的曲线表示&#xff1a; 当 γ < 1 γ&l…

Gamma 校正

问题&#xff1a;什么是Gamma曲线矫正&#xff1f;Gamma曲线矫正是什么意思&#xff1f; Gamma曲线是一种特殊的色调曲线&#xff0c;当Gamma值等于1的时候&#xff0c;曲线为与坐标轴成45的直线&#xff0c;这个时候表示输入和输出密度相同。高于1的Gamma值将会造成输出…

opengl高级光照之gamma校正

官方文章 gamma校正 gamma校正概念 一个渐变的效果 通过以下网站调整Gamma值可以观察到效果 色彩管理网 gamma校正 Gamma校正(Gamma Correction)的思路是在最终的颜色输出上应用监视器Gamma的倒数。回头看前面的Gamma曲线图&#xff0c;你会有一个短划线&#xff0c;它是监…

gama校正算法matlab,Gamma校正及其FPGA实现(一)

最近在做一个千兆以太网传输的项目&#xff0c;里面用到了Gama校正算法&#xff0c;本来想使用Altera 的IP核Gamma Corrector&#xff0c;但Quartus16.0把Gamma Corrector的IP核集成到了QSYS里面了&#xff0c;还得研究qsys怎么用&#xff0c;与自己本来的方案不符合&#xff0…

Gamma Correction/Gamma校正/灰度校正/亮度校正 - 部分 DCC 中的线性工作流配置

文章目录 也可以简单参考 SIGGRAPH 2010 的 PBS 的 Gamma-CorrectUnity 中的 gamma、linear 工作流Unity BRP 管线中的 shaderlab 提供的 gamma2linear, linear2gammaUnity中线性空间配置DCC 中的 gamma 值是怎么计算的&#xff1f;Photoshop 的线性工作流方式1方式2验证 Photo…

光栅投影中Gamma校正

学习 郑东亮 达飞鹏 《提高数字光栅投影测量系统精度的gamma校正技术》一文后&#xff0c;对其中的关键技术进行了解析。 摄像机获得的实际灰度图像&#xff1a; 其中是整个系统的gamma值&#xff0c;是预编码值&#xff08;需要根据实验进行选择&#xff09;&#xff0c;是幅…

java opencv gamma_Gamma校正及其OpenCV实现

一、什么是Gamma校正&#xff1f; Gamma校正是对输入图像灰度值进行的非线性操作&#xff0c;使输出图像灰度值与输入图像灰度值呈指数关系&#xff1a; [2] 这个指数即为Gamma. 经过Gamma校正后的输入和输出图像灰度值关系如图1所看到的&#xff1a;横坐标是输入灰度值&#x…

gamma校正 matlab,Gamma校正 ——图像灰度变化 OpenCV (十)

Gamma校正(C++、OpenCV实现) 1.作用: Gamma校正是对输入图像灰度值进行的非线性操作,使输出图像灰度值与输入图像灰度值呈指数关系: 伽玛校正由以下幂律表达式定义: 2.函数原型 void calcHist( const Mat* images, int nimages, const int* channels, InputArray mask, Out…

图像Gamma(伽玛)校正的原理及OpenCV代码实现

什么是Gamma校正&#xff1f; Gamma校正是对输入图像灰度值进行的非线性操作&#xff0c;使输出图像灰度值与输入图像灰度值呈指数关系。 Gamma校正的原理表达式如下&#xff1a; 上面中的指数γ即为Gamma。这就是Gamma校正的名称来历。 其中的取值范围是0~1&#xff0c;最重…

Gamma校正

下面是自己所整理的一些gamma校正的东西如有侵权请联系删除。 Gamma矫正&#xff1a; 伽马矫正也称幂律变换&#xff0c;一般用于平滑的扩展暗调的细节。 进行伽马矫正的原因是人类的眼睛在感知光线时&#xff0c;眼睛对亮度的感知遵循近似的幂函数&#xff08;如图&#xf…

图像Gamma校正

1. gamma校正的起因&#xff1a;人眼感知光线的特殊性 对于现实世界的光的强度来说&#xff0c;描述光的强弱&#xff0c;是根据光子在单位面积上的光子数量来描述的&#xff0c;这是物理规则&#xff0c;这是没错的&#xff0c;光的亮度&#xff08;强度&#xff09;是和光子数…

Gamma校正原理及实现

gamma校正原理&#xff1a;   假设图像中有一个像素&#xff0c;值是 200 &#xff0c;那么对这个像素进行校正必须执行如下步骤&#xff1a;   1. 归一化 &#xff1a;将像素值转换为 0 &#xff5e; 1 之间的实数。 算法如下 : ( i 0. 5)/256 这里包含 1 个除法和 1…

python手撕分水岭算法

python手撕分水岭算法 1 分水岭算法实现 主要思路就是&#xff1a; 利用一个优先队列与有序队列&#xff08;有序队列其实可以不用&#xff09;。优先队列是按像素的灰度值排列的&#xff0c;灰度值低的先被淹。通过统计像素的附近的点的标记种类个数来确认当前像素点的标记…

分水岭算法java,OpenCV 学习笔记 04 深度估计与分割——GrabCut算法与分水岭算法...

1 使用普通摄像头进行深度估计 1.1 深度估计原理 这里会用到几何学中的极几何(Epipolar Geometry)&#xff0c;它属于立体视觉(stereo vision)几何学&#xff0c;立体视觉是计算机视觉的一个分支&#xff0c;它从同一物体的两张不同图像提取三维信息。 极几何的工作原理&#x…

分水岭算法-python-opencv

分水岭算法简单原理&#xff1a; 对于一个图像的灰度值&#xff0c;将图像放平&#xff0c;可以看成是类似与山谷与山顶的图像&#xff0c;灰度值小的就是山底。先找到若干个山底&#xff0c;同时加水&#xff0c;当加到一定程度时候&#xff0c;某些山顶会被淹没&#xff0c;…