云计算对于数据中心网络提出了前所未有的挑战,主要体现在网络规模化、资源虚拟化和共享、分布式数据中心协同工作等几个方面。
首先看网络规模化。云计算数据中心的服务器规模通常在数千台,甚至上万台,而且随着业务的发展,网络规模也要不断扩大,随之而来的是,布线网络管理也变得更加复杂。业务流量模型也不再是传统的南北向为主、高收敛比,而是以Hadoop、Hive为代表的分布式集群应用,流量模型也以东西向为主、低收敛比(接近线速)。传统的数据中心网络架构已不能满足需求,而是需要创新的系统架构、控制平面,以及更大交换容量的核心交换设备。
其次,是虚拟化技术在数据中心的广泛应用。虚拟化不但提高了资源的利用率,而且能够根据业务需求的变化,快速、灵活地进行资源部署及调度。与之相对应,计算资源按需调度(虚拟机迁移)所要求的二层网络环境动态变化,要求大规模的二层组网环境,而传统的数据中心二层组网技术已满足不了要求。
云计算的特点要求业务开展与计算资源的物理位置无关,要求将不同数据中心间的计算资源整合成统一“资源池”。如何保证跨数据中心的计算效率,也是云计算所面临的新课题。
针对云计算环境下数据中心网络面临的这些问题与挑战,思科在几个方面进行了技术创新,以打造高性能、高吞吐量、高可扩展性的云计算数据中心网络平台。
创新的数据中心网络架构——FabricPath
FabricPath是思科在Nexus系列数据中心交换机上所实现的一项创新技术特性(Nexus7000已支持该特性,未来Nexus5000也将支持),其设计目标是在二层环境下,实现诸如EMCP(Equal-cost multi-path routing,等价多路径路由)、平滑扩展、快速收敛、防止广播风暴和环路、二层网络配置简单易管理等功能。
从协议层面,FabricPath定义了名为switch ID的全新二层地址空间,switch ID作为一台交换机的唯一标识,还提供了节点之间进行路由寻址的依据。定义了二层的TTL字段,类似IP协议中的TTL机制,以防止数据帧在FabricPath域中被无限次转发。
FabricPath引入了改进的IS-IS协议作为控制信令,不再依赖MAC地址进行寻址,而是依靠交换机的switch ID完成寻址工作,在节点之间交换IS-IS信令构建路由表。IS-IS协议还会事先计算出最优路径作为数据转发的依据。改进的IS-IS协议还实现了16条二层等价路由ECMP。这意味着在使用万兆接口的情况下,任意两点间的最高带宽可到2.56Tbps。高带宽也意味着FabricPath可应用于超大规模数据中心组网环境。
在虚拟化环境下,每个VM(虚拟机)都有一个唯一的MAC地址,导致MAC地址域变得很大,超过传统网络设备的MAC地址容量。而FabricPath采用 “基于会话的MAC地址学习”,只有那些目的地址为本地服务器的数据帧里的源地址会被放入网络设备的MAC地址表,网络设备只保存与本地有会话关系的MAC地址表项,从而大大缩小了虚拟化数据中心接入设备的MAC地址表。
FabricPath作为思科重要的二层多路径技术创新,代表着下一代数据中心网络的发展方向。目前致力于实现二层多路径的标准化组织主要有IETF,IETF的TRILL也采用IS-IS作为路由协议。思科在TRILL标准的制定过程中起着主导作用,FabricPath可以看作一个“增强版的TRILL”,是TRILL的基本功能十“基于会话的MAC地址学习”、“VPC+多重拓扑”等高级功能的合集。
目前思科的FabricPath技术已经商用,FabricPath域最大可容纳12288台万兆网卡服务器,或者10万台以上的千兆网卡服务器。
统一交换矩阵——端到端网络融合的优势
新一代思科Nexus 5500 UP交换机的所有端口都能够根据需要指定成为千兆以太网、万兆以太网、FC(2/4/8G)或FCoE接口,这一特性为数据中心带来最大的灵活性。Nexus5500交换机还支持二、三层交换、IEEE 802.1Qbh标准,硬件已支持FabricPath特性。
Nexus5500的矩阵扩展技术(FEX)能够确保用户采用统一的交换矩阵(Nexus5500的内部交换矩阵),实现从Nexus交换机到服务器物理网卡,以及虚拟机的直连,其设计的灵活性、布线的简化,以及简单的管理,可以为用户节省不少的设备和运营开销。
除了相当于远端扩展模块的FEX扩展器之外,思科还推出了Adapter-FEX,以及VM-FEX技术,将统一交换矩阵扩展到虚拟机的网络连接上。同时实现了虚拟机网络流量的硬件交换,提升了虚拟机网络I/O的性能。虚机连接变成统一交换矩阵上的一个网络接口,大大减轻了网管的复杂度。
VN-Tag——虚拟机网络接入标准
VN-Tag是由思科为虚拟机组网提出的一项标准,其核心思想是在以太网帧中增加一段专用的标记——VN-Tag,用以区分不同的虚拟机网络接口,从而识别特定虚拟机的流量。
VN-Tag中定义了新的地址类型,用以标识一个虚拟机的网络接口(VIF)。每个虚拟机的VIF是唯一的。一个以太帧的VN-Tag中包含一对这样的新地址dvif_id(目的VIF)和svif_id(源VIF),用以表示这个帧从何而来,又到何处去。当数据帧从虚拟机流出后,就被加上一个VN-Tag标签。当多个虚拟机共用一条物理链路的时候,基于VN-Tag的源地址svif_id就能区分不同的流量,形成对应的虚拟通道。这类似在一条Trunk链路中承载多条VLAN。上联交换机(例如Nexus 5500)能够识别VN-Tag,并在交换机上生成对应的虚拟接口VEth,和虚拟机的VIF一一对应,好像把虚拟机的VIF与物理交换机的VEth直接对接起来。全部交换工作都在上联交换机上进行,即使是同一个物理服务器内部的不同虚拟机之间的流量交换,也是通过上联交换机转发。这样的做法虽然增加了网卡I/O,但通过VN-Tag,将网络的工作重新交回到网络设备。
思科已经将向IEEE提出基于VN-Tag的802.1Qbh草案,将其作为下一代数据中心虚拟接入机的基础。
OTV技术——数据中心之间的二层互连技术
OTV是思科 Nexus 7000交换机上的一项创新技术,其原理就是在数据中心之间建立基于IP的隧道,将二层的以太帧封装在其中。控制平面采用MAC Routing技术,将其他数据中心的MAC地址通过控制信令学习过来,放在本地MAC地址表中。当需要访问其他数据中心的主机时,通过本地MAC地址表就可找到对方所在数据中心的对应IP地址,然后通过IP隧道直接访问,其过程如同在本地间互访一样方便。
OTV的优点在于操作简单,不需要改变网络拓扑,也不需要像VPLS/MPLS那样去专门建立一个单独的控制平面,只要在现有网络上打开OTV功能,就可以在多个数据中心之间实现二层互连,其实现方式相当透明。同时由于二层以太帧是封装在IP包里的,OTV不但可以实现二层互访的ECMP,而且也避免了二层环路及广播风暴等风险。
OTV实现了数据中心间的二层互连,有利于实现跨数据中心的协同计算及虚拟机迁移等业务。
总而言之,思科认为云计算将会成为计算和互联网演进的下一个阶段。思科的云战略就是以用户为中心,将网络作为云的运作平台,确保用户能通过该平台协同、创新和安全地开展业务,进一步加速云计算业务的不断发展。围绕这一战略,思科通过一系列的创新技术来保障数据中心网络适应云计算业务的发展要求。