6. VXLAN Deployment Scenarios (VXLAN 部署场景)
VXLAN 通常部署在虚拟化主机上的数据中心中, 这些主机可能分布在多个机架上。各个机架可能是不同第 3 层网络的一部分, 或者它们可能位于单个第 2 层网络中。VXLAN 段/覆盖网络覆盖在这些第 2 层或第 3 层网络之上。
考虑图 3, 它描绘了连接到第 3 层基础设施的两台虚拟化服务器。这些服务器可以位于同一机架上、不同机架上, 或者可能跨越同一管理域内的数据中心。有四个 VXLAN 覆盖网络, 分别由 VNI 22、34、74 和 98 标识。考虑服务器 1 中的 VM1-1 和服务器 2 上的 VM2-4 的情况, 它们位于由 VNI 22 标识的同一 VXLAN 覆盖网络上。VM 不知道覆盖网络和传输方法, 因为封装和解封装在服务器 1 和 2 上的 VTEP 处透明地发生。其他覆盖网络和相应的 VM 是: 服务器 1 上的 VM1-2 和服务器 2 上的 VM2-1, 两者都在 VNI 34 上; 服务器 1 上的 VM1-3 和服务器 2 上的 VM2-2 在 VNI 74 上; 最后, 服务器 1 上的 VM1-4 和服务器 2 上的 VM2-3 在 VNI 98 上。
+------------+-------------+
| Server 1 |
| +----+----+ +----+----+ |
| |VM1-1 | |VM1-2 | |
| |VNI 22 | |VNI 34 | |
| | | | | |
| +---------+ +---------+ |
| |
| +----+----+ +----+----+ |
| |VM1-3 | |VM1-4 | |
| |VNI 74 | |VNI 98 | |
| | | | | |
| +---------+ +---------+ |
| Hypervisor VTEP (IP1) |
+--------------------------+
|
|
|
| +-------------+
| | Layer 3 |
|---| Network |
| |
+-------------+
|
|
+-----------+
|
|
+------------+-------------+
| Server 2 |
| +----+----+ +----+----+ |
| |VM2-1 | |VM2-2 | |
| |VNI 34 | |VNI 74 | |
| | | | | |
| +---------+ +---------+ |
| |
| +----+----+ +----+----+ |
| |VM2-3 | |VM2-4 | |
| |VNI 98 | |VNI 22 | |
| | | | | |
| +---------+ +---------+ |
| Hypervisor VTEP (IP2) |
+--------------------------+
图 3: VXLAN 部署 - 跨第 3 层网络的 VTEP
一种部署场景是隧道终端点是理解 VXLAN 的物理服务器。另一种场景是 VXLAN 覆盖网络上的节点需要与传统网络上的节点进行通信, 这些传统网络可能基于 VLAN。这些节点可能是物理节点或虚拟机。为了实现这种通信, 网络可以包括 VXLAN 网关 (参见下面的图 4, 其中交换机充当 VXLAN 网关), 它在 VXLAN 和非 VXLAN 环境之间转发流量。
考虑图 4 进行以下讨论。对于 VXLAN 连接接口上的传入帧, 网关剥离 VXLAN 头部并根据内部以太网帧的目的 MAC 地址将其转发到物理端口。带有内部 VLAN ID 的解封装帧应该 (SHOULD) 被丢弃, 除非明确配置为传递到非 VXLAN 接口。在反向方向上, 非 VXLAN 接口的传入帧根据帧中的 VLAN ID 映射到特定的 VXLAN 覆盖网络。除非明确配置为在封装的 VXLAN 帧中传递, 否则在为 VXLAN 封装帧之前应删除此 VLAN ID。
这些提供 VXLAN 隧道终止功能的网关可以是 ToR/接入交换机或数据中心网络拓扑中更高层的交换机——例如, 核心交换机甚至 WAN 边缘设备。最后一种情况 (WAN 边缘) 可能涉及在混合云环境中终止 VXLAN 隧道的提供商边缘 (Provider Edge, PE) 路由器。在所有这些实例中, 请注意网关功能可以在软件或硬件中实现。
+---+-----+---+ +---+-----+---+
| Server 1 | | Non-VXLAN |
(VXLAN enabled)<-----+ +---->| server |
+-------------+ | | +-------------+
| |
+---+-----+---+ | | +---+-----+---+
|Server 2 | | | | Non-VXLAN |
(VXLAN enabled)<-----+ +---+-----+---+ +---->| server |
+-------------+ | |Switch acting| | +-------------+
|---| as VXLAN |-----|
+---+-----+---+ | | Gateway |
| Server 3 | | +-------------+
(VXLAN enabled)<-----+
+-------------+ |
|
+---+-----+---+ |
| Server 4 | |
(VXLAN enabled)<-----+
+-------------+
图 4: VXLAN 部署 - VXLAN 网关
6.1. Inner VLAN Tag Handling (内部 VLAN 标签处理)
VTEP 和 VXLAN 网关中的内部 VLAN 标签处理应符合以下要求:
带有内部 VLAN 标签的解封装 VXLAN 帧应该 (SHOULD) 被丢弃, 除非另有配置。在封装侧, VTEP 不应该 (SHOULD NOT) 在隧道数据包上包含内部 VLAN 标签, 除非另有配置。当带 VLAN 标签的数据包是 VXLAN 隧道传输的候选时, 封装 VTEP 应该 (SHOULD) 剥离 VLAN 标签, 除非另有配置。