假设部署了两个 ESG,以便在物理环境中提供具有 2 向 ECMP 上行链路的 DLR 实例。
具有 ECMP 的简要 ESG 和 DLR 数据包流 显示了在两个 ESG 和物理基础架构之间启用等价多路径 (ECMP) 路由时的 ESG 和 DLR 数据包流。
因此,与具有单个 ESG 的部署相比,虚拟机 1 可以获得 2 倍的双向吞吐量。
VM1 连接到具有 VNI 5000 的逻辑交换机。
DLR 具有两个 LIF - VNI 5000 上的内部 LIF 以及 VNI 5001 上的上行链路 LIF。
DLR 启用了 ECMP,并通过动态路由协议(BGP 或 OSPF)从一对 ESG(ESG A 和 ESG B)中接收到 VLAN 20 的 IP 子网的等价路由。
两个 ESG 连接到与 VLAN 10 关联且支持 VLAN 的 dvPortgroup,还会在其中连接提供到 VLAN 20 的连接的物理路由器。
ESG 通过动态路由协议从物理路由器中接收 VLAN 20 的外部路由。
进行交换的物理路由器从两个 ESG 中获悉与 VXLAN 5000 关联的 IP 子网,并对传输到该子网中的虚拟机的流量执行 ECMP 负载均衡。
DLR 可以接收最多 8 个等价路由并在这些路由之间均衡流量。图中的 ESG A 和 ESG B 提供了两个等价路由。
ESG 可以执行到物理网络的 ECMP 路由,假设存在多个物理路由器。为简单起见,该图显示单个物理路由器。
不需要在 ESG 上配置到 DLR 的 ECMP,因为所有 DLR LIF 位于 ESG 所在的同一主机“本地”。在 DLR 上配置多个上行链路接口并不会带来额外的好处。
在需要更多北-南带宽的情况下,可以将多个 ESG 放在不同的 ESXi 主机上以通过 8 个 ESG 纵向扩展到大约 80Gbps。
- 虚拟机 1 将数据包发送到物理服务器,数据包将发送到 ESXi 主机 A 上的虚拟机 1 IP 网关(它是 DLR LIF)。
- DLR 为物理服务器的 IP 执行路由查找,并发现它不是直接连接的,而是与从 ESG A 和 ESG B 中收到的两个 ECMP 路由相匹配。
- DLR 计算 ECMP 哈希,确定下一跃点(可能是 ESG A 或 ESG B),然后将数据包从 VXLAN 5001 LIF 中发出。
- DVS 将数据包传送到选定的 ESG。
- ESG 执行路由查找,并发现可以通过 VLAN 10 上的物理路由器 IP 地址访问物理服务器的子网,它直接连接到 ESG 的某个接口。
- 数据包是通过 DVS 发出的,在使用 VLAN ID 10 的相应 801.Q 标记标记后,DVS 将数据包传送到物理网络。
- 数据包穿过物理交换基础架构以到达物理路由器,物理路由器执行查找以发现物理服务器直接连接到 VLAN 20 上的接口。
- 物理路由器将数据包发送到物理服务器。
- 物理服务器将数据包发送到虚拟机 1,并将物理路由器作为下一跃点。
- 物理路由器为虚拟机 1 的子网执行查找,并发现到该子网的两个等价路径,下一跃点分别为 ESG A 和 ESG B 的 VLAN 10 接口。
- 物理路由器选择其中的一个路径,然后将数据包发送到相应的 ESG。
- 物理网络将数据包传送到 ESG 所在的 ESXi 主机,然后将其传送到 DVS,DVS 解封数据包并在与 VLAN 10 关联的 dvPortgroup 上将其转发到 ESG。
- ESG 执行路由查找,并发现可以通过与 VXLAN 5001 关联的接口访问虚拟机 1 的子网,下一跃点是 DLR 的上行链路接口 IP 地址。
- ESG 将数据包发送到与 ESG 相同的主机上的 DLR 实例。
- DLR 执行路由查找,并发现可以通过 VXLAN 5000 LIF 访问虚拟机 1。
- DLR 将数据包从其 VXLAN 5000 LIF 发送到 DVS,DVS 执行最终传送。