加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • Part 01● 简介 ●
    • Part 02●  VXLAN隧道在云网关中的应用 ●
    • Part 03●  VXLAN隧道穿越NAT ●
    • Part 04● 总结 ●
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

五分钟技术趣谈 | VXLAN隧道及其在“云网关”中的应用

2023/09/04
3860
阅读需 11 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

作者:童烨彬,单位:中国移动智慧家庭运营中心

随着云计算虚拟化技术的快速发展,传统的局域网已经无法满足数据中心日渐膨胀的网络需求。VXLAN隧道作为建立在IP网络上的二层隧道技术,不仅实现了不同地市数据中心间的大二层互通,还解决了传统VLAN网络租户数量不够的痛点,可容纳用户数量实现了指数级的增长。VXLAN隧道也被应用在了中国移动自研的“云网关”架构中。

Part 01● 简介 

作为目前传统数据中心网络的面临着如下几个痛点:

交换机MAC表限制

虚拟化技术的应用,使目前数据中心的服务器上都运行着大量的虚拟机,每个虚拟机都包含至少一个MAC地址,我们知道二层转发需要交换机学习MAC地址,这会导致ToR交换机需要学习的MAC表数量指数级增长,一旦MAC表溢出,就会造成交换机泛洪,影响转发效率[1];

租户数量的限制

传统的数据中心内是通过VLAN进行租户隔离,不同的租户会被划分到不同的VLAN中,而VLAN报文中用来表示用户标识的VID的长度为12位,也就说最多可以容纳212-2=4094个租户(通常0和4095作为保留值),而对于大型的数据中心来说,这个数量的租户远远不够用,会让网络扩展受到限制;

虚拟机迁移的限制

数据中心会出现服务器的硬件扩容或者机房迁移的情况,此时虚拟机需要被迁移到其他的服务器上来避免对业务的影响,虚拟机的MAC和IP地址需要保持不变,因此迁移只能发生在二层网络内,对业务的灵活性产生了极大的限制【2】;

为了解决以上数据中心的问题,RFC 7348提出了虚拟可扩展局域网的概念,即VXLAN(Virtual eXtensible Local Area Network),将原始的二层报文通过VXLAN隧道头封装在IP报文中,使原始报文可以跨二层网络进行传输。

图1 VXLAN报文结构

上图为一个标准的VXLAN格式报文,其可以分为三个部分:

1、最外层为VXLAN隧道的底层网络封装,用来在VTEP之间传输;

2、中间为VXLAN隧道头部,基于UDP协议承载;

3、最内层为想要传输的原始报文内容,包括以太头、IP头以及报文数据,即虚拟机网卡发送出来的报文;

其中VXLAN头部长8个字节,包括以下内容:

VXLAN Flag(8位):固定取值为00001000;

VNI(24位):网络标识符,用来定义不同的租户;

保留字段:有两处,分别为24位和8位;

图2 VXLAN抓包

上图为VXLAN的抓包,其VNI值为100,基于UDP协议传输,源端口随机生成,目的端口为4789。

从以上的VXLAN报文格式中可以看出VXLAN隧道是如何解决数据中心面临的3个主要问题的:

1、VXLAN使用UDP进行封装,UDP外层的MAC为VTEP物理出口的MAC地址,通常一个物理机会对应一个VTEP被该台机器上所有的虚拟机使用, 这样对于ToR交换机来说,一台服务器只需要记录一条MAC表即可,避免了MAC表暴涨的问题[1];

2、VNI24位的长度可支持超过1600万数量的租户,网络中租户隔离的数量不会再受到限制,后续网络的拓展也变得极其灵活;

3、VXLAN采用MAC in UDP的方式来进行封装传输,对二层网络进行了延伸,不同地域间的数据中心也可通过UNDERLAY三层网络实现大二层的连接,实现了物理网络和虚拟网络的解耦。网络规划不再受物理网络的限制,可实现虚拟机无损迁移,即IP和MAC地址保持不变[2]。

Part 02●  VXLAN隧道在云网关中的应用 

图3 云网关方案架构图

目前中国移动正在大力推进云网关的研发和落地,其中一种方案为将云网关作为BRAS后一个网元部署在省侧或者地市机房。如图三所示,该网络架构使用VXLAN隧道对用户报文进行接入和终结,即每个白盒网关(ONU)会和云网关之间创建一条VXLAN隧道,分配到唯一的VNI标识,终端的报文在ONU被封装上VXLAN隧道并转发到云网关,云网关对报文解封装获取到内层原始报文,根据报文的类型进行不同的处理,该云网关架构把传统家庭网关大部分控制面的功能以及增值业务都上移到了BRAS之后的云网关系统进行统一处理。

简单来说,在云网关场景下用户上网过程为:1、白盒网关发起PPPOE拨号,从BRAS获取到可上网的IP;

2、以PPPOE拨号获取的IP作为local IP,以及预先分配好的VNI值,和云网关之间创建VXLAN隧道;

3、用户终端(如手机、PC等)发起DHCP请求,在白盒网关封装上VXLAN隧道转发到云网关,VXLAN报文在云网关被解封装并将原始报文透传到云网关控制面,DHCP服务器分配一个内网地址给终端,同时将网关、DNS信息等一并发送回终端;

4、用户发起对网关的ARP请求,报文同步骤三一样被透传到控制面,网关回应ARP REPLY;

5、终端用户正常上网(包括DNS),报文到达云网关,通过策略判断是否订购了增值业务:

(5.1)非增值业务用户,使用公网IP做NAT,进行公网卸载转发;

(5.2)增值业务用户,发送到业务服务器,根据具体订购的业务进行后续处理,对报文进行丢弃、加速或者回注等操作;

该方案使用VXLAN隧道进行用户接入,白盒网关作为VTEP,对上行的原始报文进行VXLAN隧道的封装,使其可以顺利穿越三层网络到达云网关并解掉封装进行后续处理。有如下优点:

1、VXLAN隧道天然支持租户隔离,不同宽带用户可以使用VNI进行区分,而且24位的VNI足够使用;

2、VXLAN作为二层隧道,相比于如GRE、IPIP等三层隧道,可以将原始的用户信息完整地上送到云网关,设备的源MAC信息可以用来做增值业务,如对具体的设备做管控、限速等操作。

Part 03●  VXLAN隧道穿越NAT 

VXLAN隧道不是传统C/S模型,VTEP两端都是监听UDP4789目的端口,而源端口为随机生成。图四简单说明了从用户白盒网关发出的VXLAN报文经过BRAS设备的NAT处理后的五元组变化情况,如图所示,假设家庭网关上行报文封装的VXLAN源端口为随机的1234,经过BRAS做SNAT之后变成5678,因为目的端口仍然为4789,云网关可以正常收到并处理;当报文下行时会被封装上目的4789端口,相应地BRAS需要对其做DNAT,但是BRAS上只存在1234->5678的NAT会话映射,而此时报文的目的端口为4789无法找到正确的NAT会话,因此报文会在BRAS被丢弃,无法支持穿越NAT。

图4 VXLAN报文经过NAT设备流程

云网关系统的VXLAN隧道进行了如下改造:

1)白盒网关封装VXLAN报文时源端口和目的端口均固定为4789;

2)云网关记录上行报文的VNI和源端口的映射关系,在下行报文封装VXLAN时将记录的源端口作为目的端口进行封装。

经过上述改造后,家庭网关封装VXLAN时将外层UDP的源和目的端口都填充为4789,上行经过BRAS时源端口被SNAT成Y,目的端口保持4789,报文被云网关正常接收和解封装,此时记录VNI和源端口信息;报文下行时根据VNI查询到源端口信息Y,将其封装到VXLAN隧道的外层UDP目的端口,经过BRAS时可以找到对应的4789->Y的NAT会话,目的端口被还原成4789,家庭网关可以顺利收到并解封装VXLAN报文。

Part 04● 总结 

VXLAN隧道作为一个广泛使用的大二层隧道技术,将物理网络和虚拟网络解耦,具有传统局域网络不可比的扩展性和灵活性,24位长度的VNI也能完全满足大量租户隔离的需求。目前,中国移动智慧家庭运营中心已经完成基于VXLAN隧道架构的云网关自研,并在多省完成试点部署,形成了完整的端到端解决方案。

参考文献

[1] 什么是 VxLAN,知乎,2023年3月23日,https://zhuanlan.zhihu.com/p/616501757?utm_id=0.

[2] VXLAN:云计算时代的隧道技术(一),锐捷官网,2022年4月27日,https://www.ruijie.com.cn/jszl/88850/.

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
KSZ8851SNLI 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER, PQCC32
$5.06 查看
KSZ9031RNXCA-TR 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER, QCC48

ECAD模型

下载ECAD模型
$105.81 查看
KSZ8081RNAIA-TR 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER, QCC24

ECAD模型

下载ECAD模型
$1.39 查看

相关推荐

电子产业图谱

移动Labs是中国移动的社交化新媒体平台,是面向外部行业及产业链合作伙伴的信息发布、业务发展和产业推进门户。