Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

了解使用 VXLAN 数据平面封装的 EVPN

 

通过以太网 VPN (EVPN),您可以使用第 2 层虚拟网桥连接分散的客户站点组,通过虚拟可扩展 LAN (VXLAN),您可以将第 2 层连接延伸至介于中间的第 3 层网络,同时提供 VLAN 等网络分段,但不会限制传统 VLAN 的扩展。使用 VXLAN 封装的 EVPN 以云服务器提供商所需的规模处理第 2 层连接,并替代生成树协议 (STP) 等限制协议,进而释放第 3 层网络,以使用更强大的路由协议。无论有无瞻博网络 Contrail 虚拟化软件,均可使用具有 VXLAN 数据平面封装的 EVPN—网络环境同时包含虚拟设备和裸机设备时,应在使用 Contrail 的同时使用 EVPN VXLAN 数据平面封装。

了解 EVPN

以太网 VPN (EVPN) 是一种基于标准的技术,可通过 IP 或 IP/MPLS 骨干网络在不同的第 2 层域之间提供虚拟多点桥接连接。与其他 VPN 技术(如 IP VPN 和虚拟专用 LAN 服务 (VPLS) 一样,EVPN 实例配置在提供商边缘 (PE) 路由器上,以便在客户之间保持逻辑服务的分离。PE 路由器可以连接到客户边缘 (CE) 设备,这些设备可以是路由器、交换机,也可以是主机。然后,PE 路由器可以将使用多协议 BGP (MP-BGP) 交换可访问性信息,并在 PE 路由器之间转发封装的流量。由于架构的元素与其他 VPN 技术通用,因此您可以在现有服务环境中无缝引入并集成 EVPN,如Figure 1中所示。

Figure 1: EVPN 概述
EVPN 概述

EVPN 可以用作第 2 层叠加解决方案,当终端站(如裸机服务器 (BMS))需要第 2 层连接时,可在 IP 底层连接的基础上为虚拟网络内的端点提供第 2 层连接。除此之外,还可以通过 Contrail 虚拟路由器和 MX 系列路由器之间的 VRF 表使用第 3 层路由。EVPN 技术可提供灵活的多租户服务,可按需扩展,频繁地使用不同物理数据中心的计算资源实现单个服务(第 2 层扩展)。

借助 ’EVPN MP-BGP 控制平面,您可以通过动态的方式将在线的虚拟机从一个数据中心移动至另一个数据中心,这种技术也称为虚拟机 (VM) 迁移。将虚拟机迁移至目标服务器或虚拟机管理程序之后,虚拟机将传输免费 ARP,更新目标数据中心 PE 设备的第 2 层转发表。然后,PE 设备会将 MAC 路由更新信息传输到所有远程 PE 设备,进而更新这些设备的转发表。EVPN 可以跟踪虚拟机的移动情况,其又称为 MAC 移动性。

EVPN 还具有检测和阻止 MAC 漂移的机制,这种机制可防止全活动多宿主拓扑中出现广播、未知单播和组播 (BUM) 流量环路。

EVPN 技术与第 3 层 MPLS VPN 相似,包括使用 IP/MPLS 核心进行 MAC 地址路由的概念。EVPN 可提供以下优势:

  • 具有活动多宿主边缘设备的能力

  • 混淆

  • 快速融合

  • 跨双活动链路的负载平衡

  • MAC 地址移动性

  • 多租户

此外,EVPN 还使用以下技术:

  • 当访问链路或某一 PE 路由设备发生故障时,多宿主可为其提供冗余设备。在任何一种情况下,流量都将使用剩余的活动链路从 CE 设备流向 PE 路由器。对于其他流向的流量,远程 PE 路由器可更新其转发表,将流量发送至连接到多宿主以太网段的剩余活动 PE 路由器。EVPN 可提供快速融合机制,从而缩短流量恢复时间,因此,此调整所需的时间与 PE 路由器获知的介质访问控制 (MAC) 地址数量无关。通过全活动多宿主技术,CE 设备可以连接至两个或更多 PE 路由器,以便使用设备之间的所有链路转发流量。CE 设备可以通过这种多宿主技术将流量负载均衡地转发至多个 PE 路由器。更重要的是,远程 PE 路由器可以通过多宿主技术将流量负载均衡地转发至跨核心网络的多宿主 PE 路由器。数据中心之间的这种流量负载均衡称为混叠,其将导致不同信号相互之间无法区分—这些信号将彼此混叠。混叠技术可用于数字音频和数字图像。

  • 水平分割可防止网络中产生广播、未知单播和组播 (BUM) 流量环路。水平分割的基本原理很简单:特定数据包路由的相关信息永远不会按接收方向回传。

  • 本地链路偏差通过使用本地链路来转发流出虚拟机箱或虚拟机箱交换矩阵(其具有一个由同一虚拟机箱或虚拟机箱交换矩阵中不同成员交换机上的成员链路组成的链路聚合组 (LAG) 束)的单播流量,进而起到节省带宽的效果。本地链路是流量接收成员交换机上的 LAG 束中的一个成员链路。

  • 使用 VXLAN 封装的 EVPN 可用于第 2 层域中虚拟机与架顶式 (TOR) 交换机(例如 QFX5100 交换机)之间的第 2 层连接。

您可以使用 Contrail 将 MX 系列路由器配置为第 2 层或第 3 层 VXLAN 网关。MX 系列路由器可实施 NETCONF XML 管理协议,这是一种基于 XML 的协议,客户端应用程序可利用该协议请求并更改路由、交换和安全设备上的配置信息。NETCONF XML 管理协议可对配置数据和远程过程调用使用基于 XML 的数据编码。NETCONF 协议可定义与命令行界面 (CLI) 中的配置模式命令等效的基本操作。应用程序可以使用协议操作来显示、编辑和提交配置语句,与管理员使用 CLI 配置模式命令执行相同操作的方法类似。

了解 VXLAN

虚拟可扩展 LAN (VXLAN) 引入了可以将第 2 层网络地址空间从 4000 个扩展到 1600 万个的叠加方案,很大程度上解决了基于 VLAN 的环境中出现的扩展问题。

通过对流量进行封装并通过物理网络以隧道方式对流量进行传输,即可实现网络叠加的创建。您可以在数据中心中使用多种隧道协议来创建网络叠加—最常用的协议是 VXLAN。VXLAN 隧道协议可以将第 2 层以太网帧封装到第 3 层 UDP 数据包中。您可以通过此封装创建可跨越第 3 层物理网络的第 2 层虚拟子网或分段。

在 VXLAN 叠加网络中,每个第 2 层子网或分段都有一个唯一的 VXLAN 网络标识符 (VNI)。VNI 处理流量分段的方式与 IEEE 802.1 Q VLAN ID 处理流量分段的方式相同。与使用 VLAN 的情况一样,同一 VNI 上的虚拟机可以彼此直接通信,而不同 VNI 上的虚拟机则需要路由器才能相互通信。

执行封装和解封装的实体称为 VXLAN 隧道端点 (VTEP)。在物理网络中,作为第 2 层或第 3 层 VXLAN 网关运行的瞻博网络设备可以对数据包进行封装和解封装。这种类型的 VTEP 称为硬件 VTEP。在虚拟网络中,VTEP 可驻留在基于内核的虚拟机 (KVM) 主机等虚拟机管理程序主机中。这种类型的 VTEP 称为软件 VTEP。

每个 VTEP 都有两个接口。

  • 其中一个接口是面向主机中虚拟机的交换接口,同时为本地 LAN 分段上的虚拟机提供相互通信的通道。

  • 另一个接口是面向第 3 层网络的 IP 接口。

每个 VTEP 都有一个唯一的 IP 地址,用于在 VTEP 之间发送 UDP 数据包。例如,当 VTEP1 收到从 VM1 寻址至 VM3 的以太网帧时,它就会使用 VNI 和目标 MAC 在其转发表中进行查找,以确定要将数据包转发到哪个 VTEP。之后,它会将包含 VNI 的 VXLAN 表头添加到以太网帧中,并将此帧封装在第 3 层 UDP 数据包中,然后通过第 3 层网络将数据包发送至 VTEP2。VTEP2 可解封装原始以太网帧并将其转发至 VM3。VM1 和 VM3 无法检测到它们之间存在的 VXLAN 隧道及第 3 层网络。

EVPN-VXLAN 集成概述

VXLAN 可以定义在第 3 层网络的基础上叠加第 2 层网络的隧道方案。这种隧道方案可以使用 UDP/IP 封装进行隧道操作,支持单播和组播流量的多路径处理,进而实现最佳的以太网帧转发,而且主要用于数据中心内部的站点连接。

EVPN 独有的特点是,PE 路由器之间的 MAC 地址学习发生在控制平面中。本地 PE 路由器可以检测到 CE 设备的新 MAC 地址,然后使用 MP-BGP 将地址以通告的形式下发给所有远程 PE 路由器。此方法不同于 VPLS 等现有的第 2 层 VPN 解决方案,这些方案通过在数据平面中进行未知单播泛洪的方式来学习。此控制平面 MAC 学习方法是 EVPN 提供的许多有用功能的关键条件。

由于 MAC 学习过程发生在控制平面中,因此 EVPN 具有较高的灵活性,可以在 PE 路由器之间支持不同的数据平面封装技术。这种灵活性很重要,因为并非每个骨干网络都在运行 MPLS,特别是在企业网络中。

对于通过搭建数据中心以提供云服务和虚拟化服务的网络运营商而言,EVPN 可帮助他们解决诸多难题。EVPN 主要应用于数据中心互连 (DCI),该功能可以将第 2 层连接扩展至已部署的不同数据中心之间,从而提高向最终用户提供应用程序流量和灾难恢复的性能。

尽管都可以使用各种 DCI 技术,但 EVPN 由于其独特功能(如主动/主动冗余、混叠和批量 MAC 撤销),与其他 MPLS 技术相比独具优势。因此,为了提供 DCI 解决方案,我们将 VXLAN 与 EVPN 进行了集成。

Figure 2 所示,每个 VXLAN 都与 MPLS 或 IP 核心连接,运行内部网关协议 (IGP) 控制平面的独立实例。每个 PE 路由器都参与其 VXLAN 的 IGP 控制平面实例。每个客户都是一个数据中心,因此每个客户都可以将自己的虚拟路由器用作 VXLAN 底层。

如果 VXLAN 网络标识符 (VNI) 映射到桥接域或 VLAN,每个 PE 节点都可以终止 VXLAN 数据平面封装。PE 路由器可以对从 VXLAN 接收的流量执行数据平面学习。

每个 PE 节点均可实施 EVPN,以便将通过 VXLAN 隧道学习的客户端 MAC 地址分发到 BGP 中。通过 MPLS 核心发送数据包,以及通过 VXLAN 网络发送数据包,且使用 VXLAN 隧道标头时,每个 PE 节点都可以使用 MPLS 封装 VXLAN 或以太网帧。

Figure 2: EVPN-VXLAN 集成概述
EVPN-VXLAN 集成概述

EVPN-VXLAN 支持防火墙过滤和监管

(QFX5100、QFX5100 虚拟机箱、QFX5110 交换机)从 Junos OS (18.2R1) 开始,您可以对 EVPN 拓扑中的 VXLAN 流量配置防火墙过滤器和监管器。 对于应用于 VXLAN 的每个防火墙过滤器,您可以指定 family ethernet-switching 过滤第 2 层 (以太网) 数据包,也可以指定 family inet 过滤 IRB 接口(的流量)。IRB 接口可以用作第 3 层路由接口,用于连接单层或双层 IP 交换矩阵拓扑中的 VXLAN。更多信息,请参阅Configuring Firewall Filters

(QFX10000 交换机)从 Junos OS (18.3R1) 开始,您可以对 EVPN-VXLAN 拓扑中的 IRB 接口配置防火墙过滤器。只有在 VXLAN 隧道端点 (VTEP) 去除 VXLAN 标头之后,才能在 IRB 接口上配置防火墙过滤器。 支持的匹配条件列表,请参阅Firewall Filter Match Conditions and Actions (QFX10000 Switches)

了解 Contrail 虚拟网络与 EVPN-VXLAN 的搭配使用

瞻博网络 Contrail 虚拟化软件是一款软件定义网络 (SDN) 解决方案,可实现高可扩展性虚拟网络创建的自动化及编排。您可以通过这些虚拟网络利用云技术的强大功能—提供新的服务,提高业务敏捷性,增加收入。MX 系列路由器可使用 EVPN VXLAN 为 Contrail 虚拟网络 (VN) 内的终端站提供第 2 层和第 3 层连接。

Contrail 虚拟网络软件可以提供第 2 层和第 3 层连接。使用 Contrail 时,第 3 层路由会尽可能优先于第 2 层桥接。可以使用 Contrail 虚拟路由器和物理 MX 系列路由器之间的虚拟路由和转发 (VRF) 表来实现第 3 层路由。MX 系列路由器可在虚拟网络之间提供第 3 层网关功能。

若网络中同时包含虚拟设备和裸机设备,则您可以通过 Contrail 使用 EVPN-VXLAN。

可以在虚拟网络中使用两种类型的封装方法。

  • MPLS-over-GRE(通用路由封装)用于在 Contrail 和 MX 系列路由器之间进行第 3 层路由。

  • EVPN-VXLAN 可用于在第 2 层域中的虚拟机与架顶式 (TOR) 交换机(例如 QFX5100 交换机)之间建立第 2 层连接。对于第 2 层连接,通过使用 EVPN 提供的多宿主全活动功能,可以在核心中均衡流量负载。 从 Junos OS 17.3R1 版开始,EX9200 交换机同时支持带有 Contrail 的 EVPN-VXLAN。

Note

交换机不支持 MPLS 核心—只有 MX 系列路由器支持此功能。

您不能在 QFX 系列交换机上同时混用 EVPN-VXLAN 和 Open vSwitch Database (OVSDB)-VXLAN。将交换机设置为由 OVSDB 托管后,控制器会将所有端口均视为由 OVSDB 托管。

EVPN-VXLAN 对 VXLAN 底层网络的支持

从 Junos OS 14.1 版开始,MX 系列路由器可提供对虚拟可扩展 LAN (VXLAN) 网关的支持。每个 VXLAN 网关都支持以下功能:

  • 通过传统第 2 层网络和 VPLS 网络实现的交换功能

  • 通过 IRB 实现的 VXLAN 间路由和仅涉及 VXLAN 的桥接

  • 虚拟交换机

  • 具有 VRF 功能的 VXLAN

  • 可配置的负载均衡

  • 远程 VTEP 统计数据

从 Junos OS 17.3 版开始,可使用 IPv6 底层网络对 VXLAN 网关的实施提供支持。

Note

只有 MX 系列路由器支持带有 IPv6 底层网络的 EVPN-VXLAN。

IPv6 底层网络支持以下服务类型:

  • 基于 VLAN 的服务

  • VLAN 捆绑服务

  • 基于端口的服务

  • VLAN 感知服务

IPv4 和 IPv6 EVPN-VXLAN 底层网络均支持具有 IP 地址通告功能的 2 类 MAC 地址和代理 MAC 地址。

EVPN-VXLAN 数据包格式

EVPN-VXLAN 数据包格式如 Figure 3 中所示。

Figure 3: EVPN-VXLAN 数据包格式
EVPN-VXLAN 数据包格式

Release History Table
Release
Description
(QFX10000 交换机)从 Junos OS (18.3R1) 开始,您可以对 EVPN-VXLAN 拓扑中的 IRB 接口配置防火墙过滤器。只有在 VXLAN 隧道端点 (VTEP) 去除 VXLAN 标头之后,才能在 IRB 接口上配置防火墙过滤器。
(QFX5100、QFX5100 虚拟机箱、QFX5110 交换机)从 Junos OS (18.2R1) 开始,您可以对 EVPN 拓扑中的 VXLAN 流量配置防火墙过滤器和监管器。
从 Junos OS 17.3R1 版开始,EX9200 交换机同时支持带有 Contrail 的 EVPN-VXLAN。