转载源:http://www.h3c.com.cn/About_H3C/Company_Publication/IP_Lh/2013/04/Home/Catalog/201309/796466_30008_0.htm


云计算已经成为当前企业IT建设的常规形态而在云计算中大量采用和部署的虚拟化几乎成为一个基本的技术模式。

服务器虚拟化技术的广泛部署极大增加了数据中心的计算密度而且因为虚拟机本身不受物理计算环境的约束基于业务的灵活性变更要求需要在网络中无限制地迁移到目的物理位置如图1所示虚机增长的快速性以及虚机迁移成为一个常态性业务。

基于多租户的云计算Overlay网络_服务器

图1 虚拟化的快速增长及带来的密集迁移效应

1 云计算虚拟化网络的挑战与革新

在云中虚拟计算负载的高密度增长及灵活性迁移在一定程度上对网络产生了压力然而当前虚拟机的规模与可迁移性受物理网络能力约束云中的业务负载不能与物理网络脱离。

虚拟机迁移范围受到网络架构限制

由于虚拟机迁移的网络属性要求其从一个物理机上迁移到另一个物理机上要求虚拟机不间断业务则需要其IP地址、MAC地址等参数维保持不变如此则要求业务网络是一个二层网络且要求网络本身具备多路径多链路的冗余和可靠性。传统的网络生成树(STPSpaning Tree Protocol)技术不仅部署繁琐且协议复杂网络规模不宜过大限制了虚拟化的网络扩展性。基于各厂家私有的的IRF/vPC等设备级的网络N:1虚拟化技术虽然可以简化拓扑简化、具备高可靠性的能力但是对于网络有强制的拓扑形状限制在网络的规模和灵活性上有所欠缺只适合小规模网络构建且一般适用于数据中心内部网络。而为了大规模网络扩展的TRILL/SPB/FabricPath/VPLS等技术虽然解决了上述技术的不足但对网络有特殊要求即网络中的设备均要软硬件升级而支持此类新技术带来部署成本的上升。

虚拟机规模受网络规格限制

在大二层网络环境下数据流均需要通过明确的网络寻址以保证准确到达目的地因此网络设备的二层地址表项大小(即MAC地址表))成为决定了云计算环境下虚拟机的规模的上限并且因为表项并非百分之百的有效性使得可用的虚机数量进一步降低特别是对于低成本的接入设备而言因其表项一般规格较小限制了整个云计算数据中心的虚拟机数量但如果其地址表项设计为与核心或网关设备在同一档次则会提升网络建设成本。虽然核心或网关设备的MAC与ARP规格会随着虚拟机增长也面临挑战但对于此层次设备能力而言大规格是不可避免的业务支撑要求。减小接入设备规格压力的做法可以是分离网关能力如采用多个网关来分担虚机的终结和承载但如此也会带来成本的上升。

网络隔离/分离能力限制

当前的主流网络隔离技术为VLAN或×××在大规模虚拟化环境部署会有两大限制一是VLAN数量在标准定义中只有12个比特单位即可用的数量为4000个左右这样的数量级对于公有云或大型虚拟化云计算应用而言微不足道其网络隔离与分离要求轻而易举会突破4000二是VLAN技术当前为静态配置型技术只有EVB/VEPA的802.1Qbg技术可以在接入层动态部署VLAN但也主要是在交换机接主机的端口为常规部署上行口依然为所有VLAN配置通过)这样使得整个数据中心的网络几乎为所有VLAN被允许通过(核心设备更是如此)导致任何一个VLAN的未知目的广播数据会在整网泛滥无节制消耗网络交换能力与带宽。

对于小规模的云计算虚拟化环境现有的网络技术如虚拟机接入感知(VEPA/802.1Qbg)、数据中心二层网络扩展(IRF/vPC/TRILL/FabricPath)、数据中心间二层技术(OTV/EVI/TRILL)等可以很好的满足业务需求上述限制不成为瓶颈。然而完全依赖于物理网络设备本身的技术改良目前看来并不能完全解决大规模云计算环境下的问题一定程度上还需要更大范围的技术革新来消除这些限制以满足云计算虚拟化的网络能力需求。在此驱动力基础上逐步演化出Overlay的虚拟化网络技术趋势。

2 Overlay虚拟化网络的技术标准及比较

2.1 Overlay技术形态

Overlay在网络技术领域指的是一种网络架构上叠加的虚拟化技术模式其大体框架是对基础网络不进行大规模修改的条件下实现应用在网络上的承载并能与其它网络业务分离并且以基于IP的基础网络技术为主如图2所示。其实这种模式是以对传统技术的优化而形成的。早期的就有标准支持了二层Overlay技术如RFC3378(Ethernet in IP)就是早期的在IP上的二层Overlay技术。并且基于Ethernet over GRE的技术H3C与Cisco都在物理网络基础上发展了各自的私有二层Overlay技术——EVI(Ethernet Virtual Interconnection)与OTV(Overlay Transport Virtualization)。EVI与OTV都主要用于解决数据中心之间的二层互联与业务扩展问题并且对于承载网络的基本要求是IP可达部署上简单且扩展方便。

基于多租户的云计算Overlay网络_虚拟机_02

图2 Overlay网络模型

随着云计算虚拟化的驱动基于主机虚拟化的Overlay技术出现在服务器的Hypervisor内vSwitch上支持了基于IP的二层Overlay技术从更靠近应用的边缘来提供网络虚拟化服务其目的是使虚拟机的部署与业务活动脱离物理网络及其限制使得云计算的网络形态不断完善。如图3所示主机的vSwitch支持基于IP的Overlay之后虚机的二层访问直接构建在Overlay之上物理网不再感知虚机的诸多特性由此Overlay可以构建在数据中心内也可以跨越数据中心之间。

基于多租户的云计算Overlay网络_数据中心_03

图3 hypervisor支持的二层Overlay

2.2 Overlay如何解决当前的主要问题

针对前文提出的三大技术挑战Overlay在很大程度上提供了全新的解决方式。

针对虚机迁移范围受到网络架构限制的解决方式

Overlay是一种封装在IP报文之上的新的数据格式因此这种数据可以通过路由的方式在网络中分发而路由网络本身并无特殊网络结构限制具备良性大规模扩展能力并且对设备本身无特殊要求以高性能路由转发为佳且路由网络本身具备很强的的故障自愈能力、负载均衡能力。采用Overlay技术后企业部署的现有网络便可用于支撑新的云计算业务改造难度极低(除性能可能是考量因素外技术上对于承载网络并无新的要求)。

针对虚机规模受网络规格限制的解决方式

虚拟机数据封装在IP数据包中后对网络只表现为封装后的的网络参数即隧道端点的地址因此对于承载网络特别是接入交换机MAC地址规格需求极大降低最低规格也就是几十个每个端口一台物理服务器的隧道端点MAC。当然对于核心/网关处的设备表项(MAC/ARP)要求依然极高当前的解决方案仍然是采用分散方式通过多个核心/网关设备来分散表项的处理压力。(另一种更分散的方式便是虚拟网络路由服务方式详见后文描述)。

针对网络隔离/分离能力限制的解决方式

针对VLAN数量4000以内的限制在Overlay技术中引入了类似12比特VLAN ID的用户标识支持千万级以上的用户标识并且在Overlay中沿袭了云计算“租户”的概念称之为Tenant ID(租户标识)用24或64比特表示。针对VLAN技术下网络的TRUANK ALL(VLAN穿透所有设备)的问题Overlay对网络的VLAN配置无要求可以避免网络本身的无效流量带宽浪费同时Overlay的二层连通基于虚机业务需求创建在云的环境中全局可控。

2.3 Overlay主要技术标准及比较

目前IETF在Overlay技术领域有如下三大技术路线正在讨论为简单起见本文只讨论基于IPv4的Overlay相关内容如图4所示。

VXLANVXLAN是将以太网报文封装在UDP传输层上的一种隧道转发模式目的UDP端口号为4798为了使VXLAN充分利用承载网络路由的均衡性VXLAN通过将原始以太网数据头(MAC、IP、四层端口号等)的HASH值作为UDP的号采用24比特标识二层网络分段称为VNI(VXLAN Network Identifier)类似于VLAN ID作用未知目的、广播、组播等网络流量均被封装为组播转发物理网络要求支持任意源组播(ASM)。

NVGRENVGRE是将以太网报文封装在GRE内的一种隧道转发模式采用24比特标识二层网络分段称为VSI(Virtual Subnet Identifier)类似于VLAN ID作用为了使NVGRE利用承载网络路由的均衡性NVGRE在GRE扩展字段flow ID这就要求物理网络能够识别到GRE隧道的扩展信息并以flow ID进行流量分担未知目的、广播、组播等网络流量均被封装为组播转发。

STTSTT利用了TCP的数据封装形式但改造了TCP的传输机制数据传输不遵循TCP状态机而是全新定义的无状态机制将TCP各字段意义重新定义无需三次握手建立TCP连接因此称为无状态TCP以太网数据封装在无状态TCP采用64比特Context ID标识二层网络分段为了使STT充分利用承载网络路由的均衡性通过将原始以太网数据头(MAC、IP、四层端口号等)的HASH值作为无状态TCP的源端口号未知目的、广播、组播等网络流量均被封装为组播转发。


基于多租户的云计算Overlay网络_数据中心_04基于多租户的云计算Overlay网络_云计算_05基于多租户的云计算Overlay网络_云计算_06

VXLAN NVGRE SST

图4 三种数据详细封装

这三种二层Overlay技术大体思路均是将以太网报文承载到某种隧道层面差异性在于选择和构造隧道的不同而底层均是IP转发。如表1所示为这三种技术关键特性的比较VXLAN和STT对于现网设备对流量均衡要求较低即负载链路负载分担适应性好一般的网络设备都能对L2-L4的数据内容参数进行链路聚合或等价路由的流量均衡而NVGRE则需要网络设备对GRE扩展头感知并对flow ID进行HASH需要硬件升级STT对于TCP有较大修改隧道模式接近UDP性质隧道构造技术属于革新性且复杂度较高而VXLAN利用了现有通用的UDP传输成熟性极高。总体比较VLXAN技术相对具有优势。

基于多租户的云计算Overlay网络_数据中心_07

表1 IETF三种Overlay技术的总体比较

IETF讨论的Overlay技术主要聚焦在数据转发层面的实现上控制层面并无涉及因此在基本实现上依赖于不同厂家的控制层面设计IETF讨论稿《draft-pfaff-ovsdb-proto-02.pdf》则针对Open vSwitch提供了一种控制管理模型的建议如图5所示但在细节实现上仍不是很明确。

基于多租户的云计算Overlay网络_服务器_08

图5 IETF draft讨论的OVS管理方式

3 多租户的Overlay网络架构

3.1 数据中心虚拟化网络的发展阶段

随着虚拟化技术在数据中心、云计算中的不断深入应用伴随着网络技术的发展数据中心的二层组网结构出现了阶段性的架构变化如图6所示。

基于多租户的云计算Overlay网络_服务器_09

图6 阶段性网络与虚拟化的匹配

分层结构化网络

早期的数据中心网络虚拟化需求非常少并没有强烈的大二层技术要求多是面向一定的业务应用系统构建网络模块并且规模一般不大性能要求也不高。数据中心使用多层架构网关层面比较低业务的二层访问基本可以在网络模块内解决只需要通过基础的生成树技术来支撑模块内的二层网路可靠性运行即可。

扁平化网络

随着虚拟化在X86架构服务器上的流行及广泛部署模块化的数据中心网络结构已经不能满足虚拟机大范围迁移要求而生成树协议的复杂性也严重影响大规模网络的稳定运行。由此网络本身技术出现适应虚拟化的变革包含TRILL/FabricPath/VSS/vPC/IRF等新的技术出现并大量部署同时为了使得网络进一步感知虚让你因为机的业务生命周期IEEE还制订了802.1Qbg即VEPA技术与802.1BR来配合二层网络技术增强对虚拟机的感知能力。为了保证网络的高性能业务要求出现了应对高密虚拟化云计算环境的CLOS网络架构。

Overlay网络虚拟化

当进入云计算时代云的业务需求与网络之间出现了前文提到的挑战网络技术再次发生变革以Overlay的虚拟化方式来支撑云与虚拟化的建设要求并实现大规模的多租户能力网络进入Overlay虚拟化架构阶段。

3.2 Overlay网络的组成模式

Overlay的本质是L2 Over IP的隧道技术在服务器的vSwitch、物理网络上技术框架已经就绪并且从当前的技术选择来看虽然有多种隧道同时实现但是以L2 over UDP模式实现的VXLAN技术具备较大优势并且在ESXi和Open vSwitch、当前网络的主流芯片已经实现预计会成为主流的Overlay技术选择因此后文的Overlay网络均参考VXLAN相关的技术组成描述其它NVGRE、STT等均类似。

Overlay网络架构有多种实现就纯大二层的实现可分为主机实现方式和网络实现方式而在最终实现Overlay与网络外部数据连通的连接方式上则更有多种实现模式并且对于关键网络部件将有不同的技术要求。

3.2.1基于主机的Overlay虚拟化网络

如图7所示目前的虚拟化主机软件在vSwitch内支持VXLAN使用VTEP(VXLAN Tunnel End Point)封装和终结VXLAN的隧道。

基于多租户的云计算Overlay网络_云计算_10

图7 基于主机的Overlay虚拟化网络

VXLAN运行在UDP上物理网络只要支持IP转发则所有IP可达的主机即可构建一个大范围二层网络。这种vSwitch的实现屏蔽了物理网络的模型与拓扑差异将物理网络的技术实现与计算虚拟化的关键要求分离开来几乎可以支持以太网在任意网络上的透传使得云的计算资源调度范围空前扩大。

特别的为了使得VXLAN Overlay网络更加简化运行管理便于云的服务提供各厂家使用集中控制的模型将分散在多个物理服务器上的vSwitch构成一个大型的、虚拟化的分布式Overlay vSwitch如图8所示只要在分布式vSwitch范围内虚拟机在不同物理服务器上的迁移便被视为在一个虚拟的设备上迁移如此大大降低了云中资源的调度难度和复杂度。

基于多租户的云计算Overlay网络_网络_11

图8 分布式Overlay vSwitch

基于主机的Overlay网络数据流量出入物理网络需要实现VXLAN的Overlay流量与传统的以太网数据流量之间的封装与解封装过程而执行这个过程操作的功能点被称为Overlay/VXLAN Gateway如图9所示。因为VXLAN网络的VTEP功能点本身就是VXLAN的封装与解封装隧道点因此VXLAN Gateway首先需要具备VTEP功能形态可以是vSwitch、物理交换机等只是对于网络中的虚机或其它设备地址表项的处理有所差异。

基于多租户的云计算Overlay网络_虚拟机_12

图9 Overlay GatewayVXLAN

VXLAN Ovelay网络与物理网络连通有以下三种组网方案如图10所示。

方案一Overlay虚拟化网络+vSwitch GW+vRouter

Overlay的vSwitch本身具备隧道的封装与解封装能力因此H3C提供一种虚拟路由器来配合这种基本方式。将在硬件路由器中运行的软件vSR基于H3C Comware平台的路由软件包)作为虚拟机运行在主机中提供Overlay网络的虚拟路由功能即vRouter能力vRouter的接口同时连接到VXLAN的网络和VLAN基本功能的物理网络。从vSwitch接收到的VXLAN数据包被解除封装后进入vRouter路由接口可以被路由到外部网络反之vRouter接收到外部网络的数据可以进入VXLAN网络。

该方案的好处是涉及Overlay的功能均在主机虚拟化环境vSwitch实现并且虚拟路由功能使得Overlay网络部署更加灵活极大降低外部物理网络要求。

方案二Overlay虚拟化网络+vSwitch GW+pRouter

本方案使用服务器中的vSwitch专门用作VXLAN的Gateway功能而数据的路由功能则由外部网络物理路由器承担。该方案除了不具备虚拟路由能力Overlay的功能也都在主机虚拟化环境vSwitch实现同时可以支持虚机与非虚拟化的物理服务器之间的二层数据通信要求。

方案三Overlay虚拟化网络+pSwitch GW+pRouter

当物理交换机支持VXLAN功能则pSwitch与vSwicth可以实现Overlay的统一虚拟化组网物理交换机执行VXLAN Gateway功能不仅可以实现Overlay网络在物理网络上的终结也可以支持虚机与非虚拟化服务器的混合组网业务因为基于物理实现物理交换机+物理路由器整体网络可以达到极高性能。

基于多租户的云计算Overlay网络_服务器_13

图10 VXLAN Overlay网络与物理网络的连通方案


3.2.2基于物理网络的Overlay虚拟化

如图11所示该方案在网络架构上与TRILL/FabricPath等技术类似但是因为对于非VTEP要求的网络只需要IP转发它比TRILL/FabricPath构建的成本更低技术要求也更加简单同时也容易构建多个数据中心之间的网络连接。

为了解决网络对虚拟机的感知与自动化控制结合IEEE的802.1Qbg/VEPA技术可以使得网络的Overlay与计算虚拟化之间产生关联这样既可以保持服务器内部网络的简化使用基本的VEPA利用外部网络强化来保证高能力的控制要求又在物理网络Overlay的虚拟化基础上增强了虚机在云中大范围调度的灵活性。

基于多租户的云计算Overlay网络_网络_14

图11 物理网络的Overlay+VEPA

3.3 基于Overlay网络的多租户与网络服务——H3Cloud云网融合路线

对于计算资源丰富的数据中心Overlay网络使得虚拟机不再为物理网络所限制但是对于网络的L4-L7深度服务在云计算环境下需求更为强烈资源动态调度的计算环境需要动态可调度的网络服务支撑。因此将传统的L4-L7服务转换为可云化的、可动态调度的服务资源成为Overlay网络环境下的必须集成框架如图12所示。H3C基于Comware V7软件平台的L4-L7产品系列可在虚拟化网络环境下资源化以虚拟服务单元运行分别提供对应路由器、防火墙、负载均衡、深度防御的vSR/vRouter、vFW、vLB、vIPS利用数据中心计算资源与Overlay网络集成提供等同于传统的L4-L7网络服务能力。

基于多租户的云计算Overlay网络_服务器_15

图12 Overlay网络集成服务虚拟化

在Overlay环境下的虚拟化网络服务必须具备灵活的可分配性、可扩展性及可调度性因此自动化的编排组织能力显得非常重要如图13所示。除了将虚拟服务资源化还要具备业务逻辑的组合关联这些与物理网络L4-L7服务的固定配置管理不同所有的网络服务资源也是在计算池中要实现相应的业务关联和逻辑难以通过物理网络实现在Overlay网络的连通与编排下则相对易于实现。这种集成思路也将是H3C服务虚拟化的主要模式。

基于多租户的云计算Overlay网络_云计算_16

图13 基于Overlay虚拟化网络的服务编排

H3C云计算解决方案核心的架构是云网融合。在当前的特色方案系列均充分利用了云计算与物理网络融合、结合的特点如

VEPA——提供网络计算自动化的感知关联与自动化部署

FCoE——统一交换的计算、存储网络

DRX——基于H3C LB与虚拟机管理平台关联的虚机资源动态扩展

PoCPoint of Cloud——借助云端网络连通云计算中心与路由器集成X86虚拟化计算部件的统一云分支扩展

分级云——通过层级化网络构建纵向层次化云架构。

针对云计算即将进入Overlay阶段H3C的技术路线目标是在H3Cloud架构中进一步实现Overlay虚拟化网络的融合如图14所示。新一阶段的云网融合不仅包含分布式的Overlay、多租户的虚拟化网络还将不断集成逐步产品化的虚拟网络服务部件(目前已经可提供vSR/vFW的服务部件)而对于原有的VEPA/FCoE/DRX/PoC/分级云等方案将在基于Overlay的虚拟化网络架构下重新构建和集成实现技术演进和延续的完整性。

基于多租户的云计算Overlay网络_数据中心_17

图14 云网融合H3Cloud从物理网络到Overlay虚拟网络的集成

4 结束语

Overlay的网络架构是物理网络向云和虚拟化的深度延伸云的资源化能力可以脱离物理网络的多种限制但两个网络本身却是需要连通交互才能实现云的服务能力随着技术的发展主机的Overlay技术也将向硬件化发展并逐步会成为物理网络的一部分。但Overlay尚没有深度成熟还需要较长时间发展和应用其中的问题会逐步暴露和解决。