Skip to main content

1. Introduction (简介)

BGP颜色感知路由(BGP Color-Aware Routing, CAR)是一种基于BGP的路由解决方案,用于在多域服务提供商传输网络中建立端到端的意图感知路径。BGP CAR为不同的意图或颜色分发到目标网络端点(例如提供商边缘(PE)路由器)的不同路由。颜色是一个非零的32位整数值,与网络意图(如低成本、低延迟、避免某些资源、5G网络切片等)关联,如[RFC9256]第2.1节中定义。

BGP CAR满足了[INTENT-AWARE]中描述的传输和VPN问题陈述以及需求。

为此,本文档规定了两个新的BGP SAFI,称为BGP CAR SAFI(83)和VPN CAR SAFI(84),用于承载基础设施路由以建立传输路径。CAR SAFI和VPN CAR SAFI均适用于IPv4单播和IPv6单播AFI(AFI 1和AFI 2)。将这些SAFI与其他AFI一起使用超出了本文档的范围。

BGP CAR SAFI可以在提供商网络(底层)的传输设备上启用,以在提供商网络之间建立颜色感知的传输/基础设施路径。多域传输网络可能包括多个BGP自治系统(AS)以及单个BGP AS内的多个IGP域。BGP CAR SAFI还可以在PE路由器上的VPN路由和转发(VRF)中针对对等的客户边缘(CE)路由器启用,以及在客户网络内的设备上启用。VPN CAR SAFI用于分发从不同客户在PE路由器上接收的意图感知路由,跨提供商网络,同时保持可能重叠的客户地址空间的分离。因此,BGP CAR解决方案使意图感知传输路径能够在跨越客户和提供商网络域的多域网络中建立。

本文档还为此目的定义了两种BGP CAR路由类型。

BGP CAR Type-1 NLRI(E, C)支持为不同颜色生成和分发到同一目标IP前缀的多个颜色感知路由。这种情况出现在传输节点(如PE)具有用于多个意图通告的公共IP地址(如环回地址)的情况下。运营商打算将该公共IP地址同时用作服务路由的BGP下一跳和数据平面路径的传输端点。需要为该相同地址或前缀设置多个路由,以便为每个意图建立唯一路径。一个例子是为MPLS或MPLS上的段路由(SR-MPLS)设置到出口PE的多个标签交换路径(LSP),每个意图一个。

BGP CAR Type-2 NLRI(IP前缀或E)支持在运营商为给定意图指定唯一网络IP地址块且传输节点为每个意图分配唯一IP前缀或地址的情况下,向传输节点分发多个颜色感知路由。一个用例示例是IPv6上的段路由(SRv6)的每意图定位器。

这些BGP CAR意图感知路径随后由入口节点(如PE)用于引导需要特定意图的服务路由的流量。引导可能是针对目的地的全部或特定流量。

BGP CAR遵循BGP用于IP路由(BGP-IP)[RFC4271]或BGP标记单播(BGP-LU)([RFC8277]中的SAFI 4)的扁平路由模型,并将其扩展以支持意图感知,从而提供与这些广泛部署的传输路由技术一致的操作体验。

1.1. Terminology (术语)

Intent (in routing) (路由中的意图):
影响路由或路径选择的任何行为,包括以下行为的任意组合:

a. 拓扑路径选择(例如,最小化度量或避免资源)
b. 网络功能虚拟化(NFV)服务插入(例如,服务链引导)
c. 逐跳行为(例如,5G切片)

这是一个在路由方面超越尽力而为的更具体的概念,与[RFC9315]中作为声明性抽象的意图相比。

Color (颜色):
与意图相关联的非零32位整数值(例如,低成本、低延迟或避免某些资源),如[RFC9256]第2.1节中定义。颜色分配由运营商管理。

Colored service route (着色服务路由):
出口PE(例如,E2)为其BGP服务(例如,VPN)路由(例如,V/v)着色,以指示它为绑定到V/v的流量请求的意图。颜色被编码为BGP颜色扩展社区[RFC9012],按[RFC9256]使用,或由SRv6服务SID [RFC9252]的定位器部分表示。

Color-aware path to (E2, C) (到(E2, C)的颜色感知路径):
向E2转发数据包的路径,满足与颜色C关联的意图。多种技术可以提供到(E2, C)的颜色感知路径,例如SR策略[RFC9256]、IGP灵活算法[RFC9350]和BGP CAR(如本文档中规定)。

Color-aware route (E2, C) (颜色感知路由(E2, C)):
为颜色C构建到E2的颜色感知路径的分布式或信令路由。

Service route automated steering on color-aware path (颜色感知路径上的服务路由自动引导):
入口PE(或ASBR)E1自动将来自E2的C着色服务路由V/v的流量引导到(E2, C)颜色感知路径上。如果存在多个这样的路径,则使用优先方案选择最佳路径(例如,IGP灵活算法优先于SR策略,SR策略优先于BGP CAR)。

Color domain (颜色域):
共享相同颜色到意图映射的一组节点,通常在单一管理下。该集合可以组织成一个或多个网络域(单个BGP AS内的IGP区域/实例,或多个BGP AS)。节点上的颜色到意图映射通过配置设置。颜色重映射和过滤可能发生在颜色域边界。参考[INTENT-AWARE]。

Resolution of a BGP CAR route (E, C) (BGP CAR路由(E, C)的解析):
通过N的域间BGP CAR路由(E, C)在域内颜色感知路径(N, C)上解析,其中N是BGP CAR路由的下一跳。

Resolution versus steering (解析与引导):
与SR策略文档([RFC9256]第8节)中使用的术语一致,在本文档中,(服务路由)引导用于描述服务路由的流量到BGP CAR路径的映射。相反,术语解析保留用于域间BGP CAR路由到域内颜色感知路径的映射。

Service steering (服务引导):
服务路由将流量映射到BGP CAR路径(或其他颜色感知路径,例如SR策略)。如果颜色感知路径不可用,本地策略可能映射到颜色不感知的路由/TE路径(例如,BGP-LU、RSVP-TE、IGP/LDP)。服务引导概念与使用的传输技术无关。第3节描述了用于MPLS、SR-MPLS和SRv6的特定服务引导机制。

Intra-domain resolution (域内解析):
BGP CAR路由映射到域内颜色感知路径(例如,SR策略、IGP灵活算法、BGP CAR)或颜色不感知的路由/TE路径(例如,RSVP-TE、IGP/LDP、BGP-LU)。

Transport network (传输网络):
由一个或多个运营商管理的多个协作域组成的网络,使用路由技术(如IP、MPLS和SR)转发数据包以提供连接和其他服务。在SR部署中,传输网络在[RFC8402]所定义的可信域内。

Transport layer (传输层):
指被叠加层或服务层(例如,MPLS VPN)使用的底层网络层(例如,PE之间的MPLS LSP)。

Transport RR (传输RR):
用于在域内或跨域分发传输/底层路由的BGP路由反射器(RR)。

Service RR (服务RR):
用于在域内或跨域分发服务/叠加路由的BGP路由反射器(RR)。

Abbreviations (缩写):

  • ABR: Area Border Router (区域边界路由器)
  • AFI: Address Family Identifier (地址族标识符)
  • AIGP: Accumulated IGP Metric Attribute [RFC7311] (累积IGP度量属性)
  • ASBR: Autonomous System Border Router (自治系统边界路由器)
  • BGP-LU: BGP Labeled Unicast SAFI (根据[RFC8277]的SAFI值4)
  • BGP-IP: BGP IPv4/IPv6 Unicast SAFI (根据[RFC4760]和[RFC4271]的SAFI值1)
  • BR: Border Router (边界路由器,用于IGP区域(ABR)或BGP自治系统(ASBR))
  • Color-EC: BGP Color Extended Community [RFC9012] (BGP颜色扩展社区)
  • E: 传输端点的通用表示,例如PE、ABR或ASBR
  • LCM-EC: BGP Local Color Mapping Extended Community (BGP本地颜色映射扩展社区)
  • NLRI: Network Layer Reachability Information [RFC4271] (网络层可达性信息)
  • P node: 域内传输路由器
  • RD: Route Distinguisher (路由区分符)
  • RR: Route Reflector (路由反射器)
  • T-RR: Transport Route Reflector (传输路由反射器)
  • S-RR: Service Route Reflector (服务路由反射器)
  • SAFI: Subsequent Address Family Identifier (后续地址族标识符)
  • TEA: Tunnel Encapsulation Attribute [RFC9012] (隧道封装属性)
  • V/v, W/w: 服务路由的通用表示(指示前缀/掩码长度),无论AFI/SAFI或实际NLRI编码如何

1.2. Illustration (示例)

以下是BGP CAR解决方案显著特性的简要说明。

+-------------+      +-------------+      +-------------+
| | | | | | V/v with C1
|----+ |------| |------| +----|/
| E1 | | | | | | E2 |\
|----+ | | | | +----| W/w with C2
| |------| |------| |
| Domain 1 | | Domain 2 | | Domain 3 |
+-------------+ +-------------+ +-------------+

图1: BGP CAR解决方案示例

所有节点都是单一权威下具有一致颜色到意图映射的域间网络的一部分:

  • C1映射到"低延迟"

    • Flex-Algo 1映射到"低延迟",因此映射到C1
  • C2映射到"低延迟并避免资源R"

    • Flex-Algo 2映射到"低延迟并避免资源R",因此映射到C2

E1从E2接收两个服务路由:

  • V/v带有BGP Color-EC C1
  • W/w带有BGP Color-EC C2

E1具有以下颜色感知路径:

  • (E2, C1) 由BGP CAR提供,具有以下每域支持:

    • 域1:通过IGP FA1
    • 域2:通过绑定到颜色C1的SR策略
    • 域3:通过IGP FA1
  • (E2, C2) 由SR策略提供

E1自动引导接收到的服务路由的流量如下:

  • V/v通过BGP CAR提供的(E2, C1)
  • W/w通过SR策略提供的(E2, C2)

示例属性:

  • 利用BGP Color-EC

    • 服务路由使用广泛使用的BGP颜色扩展社区[RFC9012]着色以请求意图
  • (E, C)自动引导

    • V/v和W/w自动引导到适当的颜色感知路径
  • BGP CAR和SR策略的无缝共存

    • V/v引导到BGP CAR提供的颜色感知路径
    • W/w引导到SR策略提供的颜色感知路径
  • BGP CAR和SR策略的无缝互通

    • V/v引导到BGP CAR路径,该路径本身在域2内解析到绑定到V/v颜色的SR策略

其他属性:

  • MPLS数据平面: 对于300k PE和5种颜色,BGP CAR解决方案确保没有单个节点需要支持远程PE * C量级的数据平面扩展(第5节)。否则将超过MPLS数据平面。

  • 控制平面: 如果节点不参与该颜色感知路径,则不应安装(E, C)路径。

  • 不一致的颜色意图映射: 该解决方案支持跨不同颜色域的BGP CAR路由信令(第2.8节)。

该模型的关键优势是:

  • 利用BGP Color-EC [RFC9012]对服务路由着色
  • 自动服务引导的定义:来自E2的C着色服务路由V/v引导到颜色感知路径(E2, C)
  • BGP CAR路径的数据模型定义:(E, C)
    • BGP-IP/BGP-LU数据模型(E)的自然扩展
    • 与SR策略数据模型一致
  • BGP CAR路由的递归解析定义:通过N的BGP CAR (E2, C)路由在颜色感知路径(N, C)上解析,该路径本身可能由BGP CAR或通过另一种颜色感知路由解决方案(例如,SR策略、IGP灵活算法)提供
  • 多种传输封装的显式定义(例如,MPLS、SR、SRv6、IP)

1.3. Requirements Language (需求语言)

本文档中的关键词"MUST (必须)"、"MUST NOT (禁止)"、"REQUIRED (必需)"、"SHALL (应)"、"SHALL NOT (不应)"、"SHOULD (应该)"、"SHOULD NOT (不应该)"、"RECOMMENDED (推荐)"、"NOT RECOMMENDED (不推荐)"、"MAY (可以)"和"OPTIONAL (可选)"按BCP 14 [RFC2119] [RFC8174]中的描述进行解释,当且仅当它们以全大写形式出现时,如此处所示。