简介
在前面的几个章节里,我们详细讨论了在构造数据中心网络时位置如何摆放、机框如何布线以及流量收敛比的计算,相信你已经对华为CE系列数据中心交换机的物理架构有了一个很好的了解。接下来将要介绍的是CE系列交换机提供的不同的逻辑体系架构,说到逻辑架构,很多人肯定觉得,逻辑层面的设计不外乎就是那些破环协议算法、IP寻址以及二三层转发机制(二层VLAN+xSTP、三层路由),都是一些老生常谈
的成熟技术了。所以在开始之前,我们首先得明确的一点就是,数据中心网络相较于园区网络有什么不同?
随着云计算的发展,在数据中心网络中服务器虚拟化技术得到广泛应用,但服务器在迁移时,为了保证迁移时业务不中断,就要求不仅虚拟机的IP地址不变,而且虚拟机的运行状态也必须保持原状(例如TCP会话状态),所以虚拟机的动态迁移只能在同一个二层域中进行,而不能跨二层域迁移,这就要我的二层网络足够大。而传统的二层技术,不论是通过缩小二层域的范围和规模来控制广播风暴的规模(VLAN, Virtual Local Area Network)亦或是阻塞掉冗余设备和链路来破环(xSTP, Spanning Tree Protocol),网络中能够容纳的主机数量、收敛性能以及网络资源的带宽利用率对于数据中心网络而言是远远不够的。
此时,轮到华为CE系列交换机大显神通了,提供了多种解决二层扩展能力技术,包括了基于设备虚拟化的堆叠以及M-LAG(Multichassis Link Aggregation Group),这些都是构造数据中心基础逻辑网络的关键,下面就让我们来讨论基于不同的场景每种技术的优缺点,哪些设计可能更适合。
堆叠组网方案
堆叠是指将多台交换机设备通过线缆连接后组合在一起,虚拟化成一台设备,作为一种横向虚拟化技术,将多台设备在逻辑上虚拟成一台设备,可以简化网络的配置和管理。同时,结合跨设备链路聚合技术,不仅可以实现设备及链路的高可靠性备份,而且可以避免二层环路。相对传统的STP破环保护,逻辑拓扑更加清晰、链路利用更加高效。
华为CE系列交换机提供的堆叠技术有CSS技术(框式堆叠)、iStack(盒式堆叠),主要典型特征有:
1、 交换机多虚一:CSS/iStack对外表现为一台逻辑交换机,控制平面合一,统一管理。
2、 转发平面合一:CSS/iStack内物理设备转发平面合一,转发信息共享并实时同步。
3、 跨设备链路聚合:跨CSS/iStack内物理设备的链路被聚合成一个Eth-Trunk端口,和下游设备实现互联。
部署方案:
● 通过堆叠(CSS/iStack)技术保证节点的可靠性:一台设备故障后,另外一台设备自动接管所有的业务。
● 通过CSS+LAG+iStack 部署端到端可靠性架构,打造无间断数据中心,保证业务持续运营。
● 多台接入层iStack堆叠,2台汇聚层CSS集群堆叠。
● 接入与汇聚间采用多条10GE或40GE链路全连接,保障链路高可靠。
● 汇聚与核心间采用高速40GE链路全连接,确保汇聚到核心无阻塞转发。
方案特色:
● 简化管理和配置
堆叠建立后,多物理设备虚拟成为一台设备,用户可以通过任何一台成员设备登录堆叠系统,对所有成员设备进行统一的配置和管理,使网络需要管理的设备节点减少一半以上。
其次,组网变得简洁,不再需要配置xSTP、VRRP等协议,简化了网络配置。
● 带宽利用率高
采用链路聚合的方式,带宽利用率可以达到100%(STP会阻塞链路),采用逐流方式负载均衡,支持多种负载分担方式。
● 快速的故障收敛
相对于STP秒级的故障收敛时间,链路聚合的故障收敛时间可控制在ms级内,大大降低了网络链路或节点故障对业务的影响。
● 扩容方便、保护投资
随着业务的增加,当用户进行网络升级时,只需要增加新设备即可,在不需要更改网络配置的情况下,平滑扩容,很好的保护了投资。
堆叠技术从低端盒式到高端框式都已经被广泛应用,具备了相当的成熟度和稳定度,估计会给部分读者造成堆叠技术简直堪称完美的错觉,但我们要知道任何技术都不是完美的,就堆叠技术而言,它的不足之处在于:
● 堆叠的虚拟化局限于单个层次
虽然横向虚拟化技术在一定程度上优化了网络结构、减少了管理节点,但是做的还不够彻底。一方面是横向虚拟化后依然没有减少网络的层级;另一方面是依然没有彻底解决管理节点较多的问题。大规模的数据中心都有高密度接入的特点,有大量的接入交换机,为了可靠性一般是多台接入交换机虚拟化(多是2台虚拟化),这样即使在做了横向虚拟化后管理节点的数量也是相当可观的。假设接入层有40台接入交换机,每两台交换机做虚拟化,那么依旧还是有多达20个管理节点。
● 堆叠虚拟化控制面多虚一
网络设备虚拟化之后,所有主控平面合一,但是这种合一只能采用主备备份的模式,即只有主设备的主控板正常工作,而其他主控板都处于备份状态。因此,整个系统的物理节点规模就受限于主控节点的处理能力,不是想做多大就做多大的。例如框式设备虚拟化一般为2台,盒式设备一般为16台。目前最大规模的虚拟化系统大概可以支持接入1~2万台主机,可以从容应付一般的中、小型数据中心,但对于一些超大型的数据中心来说,就显得力不从心了。
M-LAG 组网方案
M-LAG(Multichassis Link Aggregation Group)即跨设备链路聚合组,是一种实现跨设备链路聚合的机制,将一台设备与另外两台设备进行跨设备链路聚合,从而把链路可靠性从单板级提高到了设备级。
对二层来讲,可将M-LAG理解为一种横向虚拟化技术,将M-LAG的两台设备在逻辑上虚拟成一台设备,形成一个统一的二层逻辑节点。M-LAG提供了一个没有环路的二层拓扑同时实现冗余备份,不再需要繁琐的生成树协议配置,极大的简化了组网及配置。这种设计相对传统的xSTP破环保护,逻辑拓扑更加清晰、链路利用更加高效。
部署方案
● 组网方案一:汇聚层组建M-LAG
● 组网方案二:接入层组建M-LAG
方案特色
M-LAG技术本质上还是控制平面虚拟化技术,但是和堆叠技术不同的是,由于M-LAG的目的仅仅是在链路聚合协商时,对外表现出同样的状态,所以不需要像堆叠那样同步设备上所有的信息,只需要同步接口和表项相关的一些内容。这样,控制面耦合程度相比堆叠来说,会小很多,而且堆叠 技术的一些缺陷在M-LAG 上也会缓解很多,比如上面我们说过的堆叠 的三个主要的问题:
● 可靠性问题:M-LAG需要同步的仅仅是协议面的一些内容,并不需要同步所有的设备状态,理论可靠性相对堆叠更加好。
● 维护问题:M-LAG两台设备可以进行独立升级。仅协议面耦合,中断时间较短。
● 扩展性问题:M-LAG技术主要目的是为了解决接入侧多路径问题,在数据中心网络中一般会配合路由或者一些大二层技术来实现网络侧的多路径转发问题。