什么是 VXLAN?

什么是 VXLAN?

VXLAN 是一种通过隧道提供数据中心连接的封装协议,能够在基础第 3 层网络上扩展第 2 层连接。

在数据中心中,VXLAN 是在物理网络上创建叠加网络的最常用协议,可以实现虚拟网络的使用。VXLAN 协议支持数据中心网络虚拟化,并通过大规模提供必要分段来应对多租户数据中心的需求。

VXLAN 可以解决什么问题?

过去十年,随着数据中心的服务器虚拟化程度快速提高,其敏捷性和灵活性也得以显著提高。网络虚拟化和从物理网络分离出虚拟网络使得管理、自动化和编排变得更简单。

VXLAN 是一种可以将网络分段的技术(就像 VLAN 一样),但其解决了 VLAN 的扩展限制,并且提供 VLAN无法提供的优势。VXLAN 带来的部分重要优势包括:

  • 理论上,您可以在管理域中创建多达 1600 万个 VXLAN(而非 4094 个 VLAN)。
  • VXLAN 能够以云构建商要求的规模提供网络分段,从而支持大量租户。
  • 使用传统的第 2 层网络,您会受到第 2 层边界的约束,并被迫创建大型或地理上延伸的第 2 层域。借助 VXLAN 提供的功能,您可以在数据中心内或数据中心之间动态分配资源,并且能够在第 3 层网络上以隧道方式传输流量,进而在单独的第 2 层域中的服务器之间迁移虚拟机。

VXLAN 的工作原理是什么?

VXLAN 隧道协议将第 2 层以太网帧封装到第 3 层 UDP 数据包中,以便创建虚拟化第 2 层子网或横跨物理第 3 层网络的分段。每个第 2 层子网都由可对流量进行分段的 VXLAN 网络标识符 (VNI) 进行唯一标识。

执行数据包封装和解封装的实体被称为 VXLAN 隧道端点 (VTEP)。为了支持自身无法当作 VTEP 的设备,如裸机服务器,瞻博网络设备可以封装并解封装数据包。这种类型的 VTEP 被称为硬件 VTEP。VTEP 也可驻留在虚拟机管理程序主机中,例如基于内核的虚拟机 (KVM) 主机中,以直接支持虚拟化工作负载。这种类型的 VTEP 被称为软件 VTEP。

硬件和软件 VTEP 如下所示。

硬件和软件 VTEP 如上所示。

 

在上图中,当 VTEP1 接收来自对虚拟机 3 (VM3) 寻址的虚拟机 1 (VM1) 的以太网帧时,其使用 VNI 和目标 MAC 在其转发表中查找将数据包发送到的 VTEP。VTEP1 将包含 VNI 的 VXLAN 表头添加到以太网帧中,将此帧封装在第 3 层 UDP 数据包中,然后通过第 3 层网络将数据包发送至 VTEP2。VTEP2 解封装原始以太网帧并将其转发至 VM3。VM1 和 VM3 完全不知道其间存在 VXLAN 隧道及第 3 层网络。

瞻博网络 VXLAN 解决方案

瞻博网络的 MX 系列路由器QFX 系列交换机EX 系列交换机支持 EVPN-VXLAN,并可作为 VTEP 网关对 VXLAN 数据包进行封装/解封装,并在不同 VXLAN 之间进行路由。