e-works数字化企业网  »  文章频道  »  基础信息化  »  数据中心

基于VXLAN的云数据中心网络研究

2017/5/17    来源:中国通信建设集团设计院有限公司    作者:王永建  张健  张富根  董真      
关键字:数据中心  VXLAN  云计算  
云计算数据中心急需一种网络技术解决上述问题,并对原有网络架构不产生大的改动,部署便捷,成本较低。于是,产生了Overlay理念。
    引 言
 
    自从2006年Google提出了云的概念,云计算即成为近些年信息技术领域最热门的技术之一。云计算提供了新的交付模式和服务模式,如快速便捷的交付模式、动态高效的资源配置、强大可扩展的处理能力、灵活方便的订购服务等。尤其是大数据、物联网、移动互联网等技术的发展,进一步促进了云计算在数据中心建设中的作用。但是,随之而来,传统网络面临着严峻考验与挑战。
 
    (1)网络架构的局限性。传统的数据中心网络以三层为主,数据流量以南北为主。而云数据中心大规模的虚拟机迁移特点以东西流量为主,在迁移后需要其IP地址、MAC地址等参数保持不变,因而要求是一个大的二层网络。传统的STP(Spaning Tree Protocol)协议复杂、部署繁琐,不适合大规模网络。
 
    (2)网络寻址的局限性。传统交换机的二层地址(MAC)表较小,限制了虚拟机的规模,而增大接入交换机MAC表,又会大幅度提升投资成本。
 
    (3)网络隔离的局限性。云数据中心存在大量租户和云业务,需要进行隔离。在主流的二层隔离技术VLAN中,Tag为12位,VLAN数量4 096个,远远不能满足大型云数据中心隔离需要。虽然出现了IRF/vPC/TRILL/FabricPath等二层网络扩展技术,但这些方法对原有网络改动较大,原有设备需要软硬件升级才能支持,部署成本较高。
 
    综上所述,云计算数据中心急需一种网络技术解决上述问题,并对原有网络架构不产生大的改动,部署便捷,成本较低。于是,产生了Overlay理念。
 
    1: Overlay介绍
 
    1.1 Overlay基本原理
 
    Overlay是一种网络架构上叠加的虚拟化模式,即叠加在另一张网络上的网络。
   
    特点:
   
   (1)与底层网络松耦合,屏蔽了底层网络的异构性,不对底层网络结构大改动;
       
   (2)网络中的节点通过虚拟或者逻辑链路连接;
 
   (3)具有独立的控制与转发平面,控制与转发平面分离。
 
    因此,Overlay网络不必改变现有的网络结构,支持异构网络,具有传统网络不可比拟的开放性和灵活性,结构如图1所示。
 
Overlay网络结构
 
图1 Overlay网络结构
 
    1.2 Overlay主流技术
 
    关于Overlay领域,IETF提出了三种方案。
 
    1.2.1 VXLAN
 
    VXLAN是将以太网报文利用UDP封装成新的报文后进行传输。新报文和传统的以太网报文类似,有源UDP端口和目的UDP端口。源端口可按流分配;有源MAC地址和目的MAC地址;有源IP地址和目的IP地址。5元组的方式,有利于在IP网络转发过程中实现负载均衡。隔离标识位(VNI)为24 bits;未知目的地址、广播、组播等网络流量,均被封装为组播转发。
 
    1.2.2 NVGRE
 
    NVGRE采用的是RFC2784和RFC 2890所定义的GRE隧道协议。将以太网报文封装在GRE内进行隧道传输。隔离标识采用24 bits表示;与VXLAN的主要区别在于对流量的负载分担上。因为使用了GRE隧道封装,NVGRE使用了GRE扩展字段Flow ID进行流量负载分担,这就要求物理网络能够识别GRE隧道的扩展信息。
 
    1.2.3 S TT
 
    STT是无状态传输协议,通过将以太网报文封装成TCP报文进行隧道传输,隔离标识采用64 bits表示。它与VXLAN和NVGRE的主要区别在于隧道封装格式使用无状态TCP。因此,需要对传统TCP协议进行修改,以适应NVGRE的传输。
 
    上述三种方案中,VXLAN以其位置无关性、可扩展性、部署简单、适合云业务等特点最佳。本文将重点对VXLAN做探究。
 
    2: VXLAN研究
 
    2.1 VXLAN报文
 
    VXLAN报文,是当原始的二层报文来到VTEP节点后会被封装上VXLAN包头(在VXLAN网络中把可以封装和解封装VXLAN报文的设备称为VTEP,VTEP可以是虚拟switch也可以是物理switch,如图1所示);打上VXLAN包头的报文到了目标的VTEP后,会将VXLAN包头解封装,并获取原始的二层报文。
 
    Outer Mac Header以及Outer IP Header里面的元组都是VTEP的信息,和原始的二层报文没有任何关系。数据包在源VTEP节点和目的VTEP节点之间的传输和原始的二层报文毫无关系,由外层的包头完成,如图2所示。
 
VXLAN报文格式
 
图2 VXLAN报文格式
 
    (1)VXLAN Header
 
    增加VXLAN头(8 Bytes),其中包含24 bits的VNI字段,用来定义VXLAN网络中不同的租户。此外,还包含VXLAN Flags(8 bits,取值为00001000)和两个保留字段(分别为24 bits和8 bits)。
 
    (2)UDP Header
 
    VXLAN头和原始以太帧,一起作为UDP的数据。UDP头中,目的端口号(VXLAN Port)固定为4789,源端口号(UDP Src. Port)是原始以太帧通过哈希算法计算后的值。
 
    (3)Outer IP Header
 
    封装外层IP头。其中,源IP地址(Outer Src. IP)为源VM所属VTEP的IP地址;目的IP地址(Outer Dst. IP)为目的VM所属VTEP的IP地址。
 
    (4)Outer MAC Header

责任编辑:李欢
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐