堆叠分裂
如图所示:
堆叠建立后,主交换机和备交换机之间定时发送心跳报文来维护堆叠系统的状态。堆叠线缆、主控板发生故障时或者其中一台交换机下电、重启都将导致两台交换机之间失去通信,导致堆叠系统分裂为两台独立的交换机 而堆叠分裂后,若两台交换机都在正常运行,则其全局配置完全相同,会以相同的 IP 地址和 MAC 地址(堆叠系统 MAC)与网络中的其他设备交互,这样就导致 IP 地址和 MAC 地址冲突,引起整个网络故障,此时可以依靠堆叠的双主检测来避免堆叠分裂后出现双主。
双主检测
双主检测 DAD(Dual-Active Detect)是一种检测和处理堆叠分裂的协议,可以实现堆叠分裂的检测、冲突处理和故障恢复,降低堆叠分裂对业务的影响。
DAD 检测方式有以下几种:
1、 业务口直连检测方式:
业务口直连检测方式是指堆叠成员交换机间通过业务口连接的专用链路进行双主检测,如图所示。
业务口直连方式双主检测示意图
业务口直连检测方式中 DAD 报文采用的是 BPDU 报文,因此直连检测链路还可以通过中间设备连接,如下图所示。此时,在中间设备上需要配置透传 BPDU 报文功能。
通过中间设备的业务口直连检测示意图
2、Eth-Trunk 口代理检测方式:
Eth-Trunk 口代理检测方式是指通过堆叠与代理设备相连的跨设备 Eth-Trunk 链路进行双主检测,如下图 所示。在这种检测方式中,代理设备需要启动 DAD 代理功能。与业务口直连检测方式相比,Eth-Trunk 口代理检测方式无需占用额外的接口,Eth-Trunk 接口可以同时运行 DAD 代理检测和其它业务。为了使DAD 报文能在 Eth-Trunk 成员链路间相互转发,代理设备必须为支持 DAD 代理功能的交换机。
Eth-Trunk 口代理方式双主检测示意图
代理设备可以是一台独立运行的交换机,也可以是一个堆叠系统,即两个堆叠系统之间互为 Relay 代理,如下图 所示。
堆叠之间互为代理示意图
为防止检测干扰,两个堆叠系统必须配置不同的 Domain ID。用于检测的端口和用于代理的端口也应该使用不同的 Eth-Trunk