CSS技术详解
1 CSS特性介绍
随着数据中心数据访问量的逐渐增大以及网络可靠性要求越来越高,单台交换机已经无法满足数据中心大数据量访问的要求。为了满足数据中心大数据量转发的需求和网络高可靠性需求,提出了交换机堆叠。CSS是Cluster Switch System的简称,又被称为集***换机系统(简称为CSS或堆叠)。是将几台交换机通过专用的堆叠线缆链接起来,对外呈现为一台逻辑交换机。
CSS特性给运营商带来了明显的收益:
扩容网络时,保护已有**;
扩容的同时,简化配置、管理:将多台物理设备虚拟为一台设备;
多台设备间冗余、备份,提高系统的可靠性。
2 CSS原理描述
在原来S9300交换机主控板(SRU)上插FSU卡的位置插入堆叠卡,原有主控板、接口板、机框不用更新,就可以支持CSS。下面从CSS建立、配置及转发、CSS***三个典型场景说明S9300交换机CSS的工作原理。
2.1 CSS建立
2.1.1 堆叠规则
S9300交换机每块主控板上可以插一块堆叠卡,每块堆叠卡上有4个堆叠口。两台设备都是满配置的情况下,通过专用的堆叠线缆将这8个堆叠口按照图1规则连接起来。
需要说明的是:
堆叠口连接规则是固定的,不能随意连接。上图中以两台S9306为例说明。该连接规则同样适用于两台S9312、或一台S9306和一台S9312之间的连接。
2.1.2 支持堆叠的产品形态
S9303不支持堆叠。S9306和S9306可以建立堆叠(主控板分别支持SRUA和SRUB,只要一框的两块主控板相同即可)
S9306和S9312可以建立堆叠(主控板分别支持SRUA和SRUB,只要一框的两块主控板相同即可)
S9312和S9312可以建立堆叠(主控板分别支持SRUA和SRUB,只要一框的两块主控板相同即可)
堆叠形态见下图
2.1.3 堆叠竞争规则
系统启动后,通过竞争,一台设备成为堆叠主、另一台设备成为堆叠备。竞争的规则如下:
系统运行状态:已经正常运行的设备优先级高于正在启动中的设备,成为堆叠主。堆叠优先级:状态相同,优先级高的设备成为堆叠主。
MAC地址大小:状态、优先级都相同,MAC地址小的设备成为堆叠主。
两台设备竞争出主备后,堆叠主设备的主用主控板成为CSS的系统主,堆叠备的主用主控板成为CSS的系统备。在系统主和系统备之间进行HA备份处理,堆叠主和堆叠备的备用主控板作为CSS的候选系统备。
在堆叠主或堆叠备单框内的两块主控板倒换后,该框内的备用主控板升为CSS的系统备。
堆叠主内的两块主控板发生倒换:堆叠备升为堆叠主,原来的系统备升为系统主;堆叠主降为堆叠备,原来的系统主重启、原来堆叠主框内的备用主控板升为CSS的系统备,从系统主进行HA同步。堆叠备内的两块主控板发生倒换:堆叠主和堆叠备设备的角色不会发生变化。堆叠备内的主用主控板(即原来CSS的系统备)重启,备用主控板升为系统的备,从系统主进行HA同步。通过这种处理,保证了CSS的高可靠性。
CSS中的所有单板都向系统主注册,注册后以系统主上的配置文件进行配置恢复。具体配置恢复过程与单框系统相同。
最终原来两***立的设备建立CSS,对外呈现为一台设备。
2.2 CSS环境下的配置和转发
CSS建立后,可以通过接口板上的业务端口、系统主上的串口或网管口登陆CSS系统,进行业务配置和系统管理。CSS提供四维的接口视图(框/槽/卡/端口)支持对两台设备中的所有端口进行业务相关配置、操作;以框/槽为单位对两台设备中的所有单板进行管理:查询单板信息、对单板进行复位等操作。
在CSS环境下,业务流量转发同单框环境下的区别:跨设备的转发需要经过交换网两次。对于报文内容的处理没有区别:都需要进行一次上、下行处理。对外呈现为一台设备。
2.3 CSS***后的处理
CSS建立后,系统主和系统备定时发送心跳报文来维护CSS的状态。因堆叠线缆、堆叠卡、主控板等故障可能会导致两台设备之间没有可用堆叠链路、失去通信、两台交换机之间的心跳超时,此时堆叠系统***为两***立的设备。
CSS***后,有可能两台交换机都在正常运行,而且是以完全相同的全局配置在运行,可能会以相同的IP和相同的MAC地址和网络中的其他设备交互,这样会引起整个网络故障。为了提高系统的高可用性,堆叠***后需要检测出是否存在两个以相同配置运行的交换机(即是否存在双主),并进行相应的处理使网络能正常运行。
提供两种检测手段:
用免费ARP检测堆叠双主现象用BFD协议检测堆叠双主现象
检测到双主后,原堆叠主将关闭本设备上除保留端口以外的其他所有物理端口。
故障恢复后,进行关闭所有物理端口操作的设备将重启、重新加入CSS系统。
3 应用
如上图所示,S9300-1和S9300-2组成堆叠系统;S1连接用户,通过跨框Trunk1连接堆叠系统; S2连接用户,通过物理口连接堆叠系统; 堆叠系统通过跨框Trunk2接入OSPF网络。
通过跨框Trunk,用户可以将不同成员设备上的物理以太网端口配置成一个聚合端口,这样即使某些端口所在的设备出现故障,也不会导致聚合链路完全失效,其它正常工作的成员设备会继续管理和维护剩下的聚合端口,这样即可以增大设备容量,又可以设备间的备份,增加可靠性。
如上图所示,不同设备上的物理端口绑定不同的VLAN,通过VLan
If上行;S1下行通过跨框Trunk接入,从S1下行接入的流量可以从上行VLanIf10或者VlanIf20转发出去。如果ECMP算法选择本框(S9300-1)的上行物理接口,则直接从本框就转发了;
如果ECMP算法选择非本框(即S9300-2)的上行物理接口,则要通过主控板的HiGig接口转发到S9300-2,由S9300-2从上行接口转发出去。
这样当某台设备或物理端口故障,业务可以自动却换到另外一台设备,即可以增大设备容量,又可以设备间的备份,增加可靠性。