前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >BGP, EVPN, VXLAN,还是 SRv6?

BGP, EVPN, VXLAN,还是 SRv6?

作者头像
ICT百科
发布2025-01-20 20:33:57
发布2025-01-20 20:33:57
1160
举报
文章被收录于专栏:6G6G

本文编译自ipspace的博客.

如果仅需实现第3层功能,我很好奇EVPN究竟能提供什么。例如,如果你不需要VRF,或者仅需少量VRF,那么可以直接运行纯L3 BGP架构。但如果需要大量VRF,那么可以选择MPLS/VPN、SR-MPLS或SRv6。

在之前的咨询工作中,我也多次遇到类似的问题。这通常是由于厂家在PPT中堆砌大量缩写词,却没有解释基本原理。

下面让我们来解决这个问题。

IP 网络采用逐跳目标转发,仅使用单个转发表。如果这就是你的需求,那么请远离那些缩写词;你只需要决定使用哪种路由协议即可。我们过去已经无数次讨论过这个问题,唯一的合理建议是:“这通常并不重要;用你熟悉的东西就好。”

流量改道

接下来,你可能希望将某些流量(仍处于单个路由域内)转移到可能被视为次优的路径上。你可能希望在所有相关人员意识到网络拓扑发生变化之前,进行一些流量工程操作,或者将流量绕过故障点(更多细节稍后介绍)。

在这种情况下,你需要将流量隐藏在中间节点的隧道或虚拟电路中——你需要一种数据平面数据包隐藏技术。MPLS(数据平面封装)是最常用的一种;试图推销新 ASIC 的供应商正在大力宣传 SRv6 的优势,但我还没见过 VXLAN 被用于这种场景(主要是因为它不允许进行松散源路由)。

显然,你还需要一个控制平面来支持这种流量隐藏操作。十年前,我们用 RSVP 构建 MPLS-TE 隧道。如今,我建议使用支持 SR 的 IGP,我相信有人可以让它与 BGP-LU 配合使用。

从复杂到简单:为什么我们需要SRv6?

多个转发域

现在是有趣的部分:你希望在共享基础设施上运行多个独立的转发域。营销术语称之为虚拟专用网络(VPN),它们可以根据 MAC 地址(L2VPN)或 IP 地址(L3VPN)进行转发决策。

你可以让所有网络设备参与这些转发决策:

  • 入口设备会为数据包标记 VPN 标识符。
  • 中间设备会查看 VPN 标识符并选择所需的转发表。
  • 出口设备会从数据包中移除 VPN 标识符,并将数据包转发到最终目的地。

你是否注意到,这其实就是 VLAN 和基于 VLAN 的 VRF-lite?很多时候,它们就是你完成工作的全部所需。

好的,现在假设你已经经历过和我一样多的基于 VLAN 的架构崩溃,并且希望有更好的解决方案。同样,我们需要两个组件:

  • 一个数据平面组件,用于在中间节点隐藏 VPN 流量。常见的候选方案包括 MPLS、VXLAN、GRE、SRv6,甚至 PBB(802.1ah)或 LISP(数据平面封装)。
  • 一个控制平面组件,用于将 VPN 端点信息从出口分发到入口节点。如果你想要标准解决方案,可以选择 L3VPN(RFC 4364,也称为 MPLS/VPN)、EVPN、LISP 或 SPB(802.1aq)。

你不能随意将数据平面封装与控制平面协议组合在一起:

  • L3VPN 通常使用 MPLS 封装。有些供应商会根据需要自动添加 GRE 隧道。
  • SPB(802.1aq)与 PBB(802.1ah)封装配合使用。同样,也有涉及 GRE 隧道的专有实现。
  • SRv6 仅是一种数据平面封装,需要一个控制平面。RFC 9252 定义了两种你可以使用的控制平面:EVPN 是常见的选择,但你也可以使用 L3VPN(RFC 4364)。
  • EVPN 是明显的赢家。EVPN 实现可以使用 MPLS、VXLAN、PBB 或 SRv6 数据平面封装。

我相信还有其他 RFC 描述了其他组合。请在评论中留下指针。

仅需 L3 VPN

经过长时间的讨论,我们终于回到了最初的问题:如果只需要 L3 VPN,你可以用什么?

L3VPN(RFC 4364)是显而易见的答案,但通常需要 MPLS 封装(除非你的供应商使用 SRv6 实现了第 3 层 VPN,并采用 RFC 4364 控制平面)。这并不是什么大问题;大多数现代 ASIC 都支持 MPLS,而 SR-MPLS 让 MPLS 交换矩阵尽可能简单。

基于 SRv6 的 L3VPN

真正的问题是,L3VPN 对供应商营销部门来说还不够“酷”(毕竟,每个人已经做了 25 年了)。他们可能会用它来支持他们的 SRv6 实现,但随后可能会保持沉默,假装 SRv6 的“魔法”可以完成一切。

EVPN 是另一个(更流行)的答案,但有一个小问题:它被设计为第 2 层 VPN 解决方案。将其变成第 3 层 VPN 是可能的,但需要大幅偏离供应商的默认设置(调整技术参数)。

EVPN 的美妙之处在于,你可以将其与供应商推动的任何东西一起使用:它既能与 MPLS 配合,也能与 VXLAN 完美契合,而且大多数宣扬 SRv6 优势的供应商都可以将其用作控制平面。


注释:

  • 公平地说,向客户解释基本原理以使其能够做出明智决策并非他们的职责。他们的工作是推销产品,而困惑的客户往往更容易成为他们的目标客户。
  • 如果你的网络规模庞大到需要做出这样的决策,而你仍然无法确定使用什么,那就不要再阅读这篇文章了,赶紧聘请一位专业人士。
  • 你也可以引用 RFC 1925 的第 6 条,将问题交给 SDN 控制器来解决。
  • 除非你相信 SDN 控制器的神奇功能。
  • 谁能想到,如此古老的技术竟然可以用来控制这些崭新的事物?
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-01-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 通信百科 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 流量改道
  • 多个转发域
  • 仅需 L3 VPN
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档