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 - 如果您的环境同时包含虚拟设备和裸机设备,请使用具有 EVPN VXLAN 数据平面封装的 Contrail。

了解 EVPN

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

图 1:EVPN 概述 EVPN Overview

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 进行了集成。

图 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 或以太网帧。

图 2:EVPN-VXLAN 集成概述 EVPN-VXLAN Integration Overview

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

对于应用于 VXLAN 的每个防火墙过滤器,指定 family ethernet-switching 过滤第 2 层 (以太网) 数据包,还是 family inet 按 IRB 接口进行过滤。IRB 接口可以用作第 3 层路由接口,用于连接单层或双层 IP 交换矩阵拓扑中的 VXLAN。存在以下限制:

  • VXLAN 传输流量不支持过滤和监管。

  • 不支持出口 VTEP 设备上 VNI 上的防火墙过滤。

  • 不支持在出口 VTEP 设备上对 VNI 进行监管。

  • 不支持针对 VXLAN 标头字段的匹配条件。

注意:

在 VXLAN 标头被VXLAN 隧道端点 (VTEP) 去除后,接口上将配置 EVPN-VXLAN 防火墙过滤器。

有关配置防火墙过滤器、匹配条件和作的详细信息,请参阅:

了解 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。

注意:

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

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

EVPN-VXLAN 支持 MX 系列路由器和 EX9200 系列交换机上的 VXLAN 底层网络

MX 系列路由器和 EX92xx 系列交换机支持虚拟可扩展 LAN (VXLAN) 网关。每个 VXLAN 网关都支持以下功能:

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

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

  • 虚拟交换机

  • 具有 VRF 功能的 VXLAN

  • 可配置的负载平衡

  • 远程 VTEP 统计数据

从 Junos OS 17.3R1 版开始,MX 系列路由器对 EVPN-VXLAN 的支持已使用 IPv6 底层网络扩展到 VXLAN 网关的实施。我们支持 MX 系列路由器上带有 IPv6 底层网络的 EVPN 1 类、2 类、3 类和 4 类路由。

我们通过 IPv6 底层网络支持以下服务类型:

  • 基于 VLAN 的服务

  • VLAN 捆绑服务

  • 基于端口的服务

  • VLAN 感知服务

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

EVPN-VXLAN 对 QFX 系列交换机上 VXLAN 底层网络的支持

QFX 系列交换机支持 EVPN-VXLAN 网络中的 VXLAN 网关。所有支持 EVPN-VXLAN 的设备都可以将 IPv4 底层网络用于 VXLAN 叠加。

我们还支持在 QFX 系列交换机上的 EVPN-VXLAN 网络中为 VXLAN 叠加网络配置 IPv6 底层。您只能使用 MAC-VRF EVPN 实例配置 IPv6 底层网络。使用 IPv6 底层网络时,VXLAN 数据包中的外部 IP 报头为 IPv6 报头,您可以将 VTEP 源地址配置为 IPv6 地址。请参阅 带有 IPv6 底层网络的 EVPN-VXLAN ,详细了解 IPv6 底层网络支持以及如何将 VXLAN 网关设备配置为使用 IPv6 底层网络。

EVPN-VXLAN 支持 ACX 系列设备上的 VXLAN 底层网络

ACX7100-32C、ACX7100-48L 和 ACX7024 设备可将 IPv4 或 IPv6 底层网络用于 VXLAN 叠加。只能使用 MAC-VRF 路由实例(所有服务类型)创建 IPv6 底层网络。您必须在交换矩阵中的 EVPN 实例之间配置 IPv4 或 IPv6 底层网络;您不能在同一交换矩阵中混用 IPv4 和 IPv6 底层网络。

要创建 IPv6 底层网络,您需要在层次结构中[edit system packet-forwarding-options system-profile]启用语vxlan-extended句。

使用 IPv6 底层网络时,VXLAN 数据包中的外部 IP 报头为 IPv6 报头,您可以将 VTEP 源地址配置为 IPv6 地址。请参阅 带有 IPv6 底层网络的 EVPN-VXLAN ,详细了解 IPv6 底层网络支持以及如何将 VXLAN 网关设备配置为使用 IPv6 底层网络。

启用此配置文件后,数据包转发引擎将重新启动。如果有任何流量正在运行,流量可能会下降。

要返回到使用默认系统配置文件,请发出 delete system packet-forwarding-options system-profile vxlan-extended 命令。恢复到默认系统配置文件后,PFE 将重新启动。在此过程中,正在运行的任何流量都可能丢弃。

EVPN-VXLAN 数据包格式

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

图 3:EVPN-VXLAN 数据包格式 EVPN-VXLAN Packet Format

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。

释放
描述
22.3R1
从 Junos OS 演化版 22.3R1 开始,QFX5130-32CD 和 QFX5700 交换机可支持为 EVPN-VXLAN 网络中的 VXLAN 叠加网络配置 IPv6 底层网络。
21.4R1
从 Junos OS 21.2R2 和 21.4R1 版开始,交换机和 QFX5120 交换机的QFX10000 系列支持为 EVPN-VXLAN 网络中的 VXLAN 叠加网络配置 IPv6 底层网络。
17.3R1
从 Junos OS 17.3R1 版开始,EX9200 交换机同时支持带有 Contrail 的 EVPN-VXLAN。
17.3R1
从 Junos OS 17.3R1 版开始,MX 系列对 EVPN-VXLAN 的支持已通过 IPv6 底层网络扩展到 VXLAN 网关的实施。