Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

MPLS 流量工程配置

MPLS 和流量工程

流量工程允许您控制数据包所遵循的路径,绕过使用路由表的标准路由模型。流量工程将流量从拥塞链路移动到自动计算的基于目标的最短路径不会选择的备用链路。借助流量工程,您可以:

  • 更有效地利用昂贵的远距离光纤。

  • 控制在发生单个或多个故障时如何重新路由流量。

  • 按路径对关键流量和常规流量进行分类。

流量工程设计的核心是基于在路由器之间构建标签交换路径 (LSP)。LSP 是面向连接的,类似于帧中继或 ATM 中的虚拟电路。LSP 并不可靠:进入 LSP 的数据包没有传递保证,但可以享受优惠待遇。LSP 也类似于单向隧道,因为进入路径的数据包被封装在一个信封中,并在整个路径上进行交换,而不会被中间节点触及。LSP 提供对数据包在网络中转发方式的精细控制。为了提供可靠性,LSP 可以使用一组主路径和辅助路径。

只能为 BGP 流量(其目标在自治系统 (AS) 之外的流量)配置 LSP。在这种情况下,AS 中的流量不受 LSP 存在的影响。也可以为 BGP 和内部网关协议 (IGP) 流量配置 LSP;因此,AS 内部和 AS 间流量都受 LSP 影响。

MPLS 流量工程和信令协议概述

流量工程有助于实现高效可靠的网络运维,同时优化网络资源和流量性能。流量工程提供了将流量从内部网关协议 (IGP) 选择的最短路径移动到网络中可能不太拥塞的物理路径的能力。为了支持流量工程,除了源路由之外,网络还必须执行以下操作:

  • 通过考虑所有约束(如带宽和管理要求)在源位置计算路径。

  • 计算路径后,在整个网络中分发有关网络拓扑和链路属性的信息。

  • 预留网络资源并修改链路属性。

当传输流量通过 IP 网络路由时,MPLS 通常用于设计其通道。尽管通过传输网络的确切路径对于流量的发送方或接收方都无关紧要,但网络管理员通常希望在某些源地址和目标地址对之间更有效地路由流量。通过向每个数据包添加带有特定路由指令的短标签,MPLS 通过网络将数据包从一个路由器切换到另一个路由器,而不是基于下一跃点查找转发数据包。生成的路由称为标签交换路径 (LSP)。LSP 控制流量通过网络的通道并加快流量转发速度。

您可以手动创建 LSP,也可以通过使用信令协议创建 LSP。信令协议在 MPLS 环境中用于为通过传输网络的流量建立 LSP。Junos OS 支持两种信令协议 - LDP 和资源预留协议 (RSVP)。

MPLS 信息流工程使用以下组件:

  • 用于数据包转发的 MPLS LSP

  • IGP 扩展,用于分发有关网络拓扑和链路属性的信息

  • 用于路径计算和路径选择的约束最短路径优先 (CSPF)

  • RSVP 扩展,用于建立沿路径的转发状态并沿路径保留资源

Junos OS 还支持跨不同 OSPF 区域的流量工程。

流量工程能力

将流量映射到现有物理拓扑的任务称为 流量工程。流量工程提供了将流量从内部网关协议 (IGP) 选择的最短路径转移到网络中可能不太拥塞的物理路径的能力。

流量工程提供执行以下操作的功能:

  • 绕过网络中已知瓶颈或拥塞点路由主路径。

  • 精确控制当主路径面临单个或多个故障时如何重新路由流量。

  • 通过确保网络的子集不会被过度利用,而沿潜在备用路径的其他网络子集未得到充分利用,从而更有效地利用可用聚合带宽和长距离光纤。

  • 最大限度提高运营效率。

  • 通过最大限度地减少数据包丢失、最大限度地减少长时间的拥塞和最大化吞吐量,增强网络面向流量的性能特征。

  • 增强支持多服务 Internet 所需的网络统计绑定性能特征(如损耗率、延迟变化和传输延迟)。

流量工程的组成部分

在 Junos® 操作系统 (OS) 中,流量工程通过 MPLS 和 RSVP 实现。流量工程由四个功能组件组成:

为 LSP 配置流量工程

配置 LSP 时,将在入口路由器中安装朝向出口路由器的主机路由(32 位掩码);主机路由的地址是 LSP 的目标地址。bgp默认情况下,层次结构级别的语句[edit protocols mpls]选项traffic engineering处于启用状态(您也可以显式配置该bgp选项),仅允许 BGP 在其路由计算中使用 LSP。其他 traffic-engineering 语句选项允许您在主路由实例中更改此行为。此功能不适用于特定路由实例。此外,一次只能启用其中一个 traffic-engineering 语句选项(bgpbgp-igpbgp-igp-both-ribsmpls-forwarding)。

注:

启用或禁用任何 traffic-engineering 语句选项会导致删除所有 MPLS 路由,然后将其重新插入路由表中。

您可以配置 OSPF 和信息流工程,以在汇总链路状态通告 (LSA) 中通告 LSP 指标,如一节 在摘要 LSA 中通告 LSP 指标中所述。

以下部分介绍如何为 LSP 配置流量工程:

使用 LSP 进行 BGP 和 IGP 流量转发

您可以通过添加 bgp-igp 语句选项 traffic-engineering ,将 BGP 和 IGP 配置为使用 LSP 转发发往出口路由器的流量。该 bgp-igp 选项会将所有 inet.3 路由移动到 inet.0 路由表。

在入口路由器上,包含 bgp-igp 语句的选项 traffic-engineering

您可以在以下层次结构级别包含此语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

    注:

    bgp-igp不能为 VPN 配置语句的选项traffic-engineering)。VPN 要求路由位于 inet.3 路由表中。

在虚拟专用网络中使用 LSP 进行转发

VPN 要求路由保留在 inet.3 路由表中才能正常运行。对于 VPN,请配置 bgp-igp-both-ribs 语句的选项 traffic-engineering 以使 BGP 和 IGP 使用 LSP 转发发往出口路由器的流量。该 bgp-igp-both-ribs 选项在 inet.0 路由表(对于 IPv4 单播路由)和 inet.3 路由表(对于 MPLS 路径信息)中安装入口路由。

在入口路由器上,包括以下 traffic-engineering bgp-igp-both-ribs 语句:

您可以在以下层次结构级别包含此语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

使用该 bgp-igp-both-ribs 语句时,来自 inet.3 表的路由将复制到 inet.0 表中。复制的路由是 LDP 信号或 RSVP 信号,并且优先级可能低于 inet.0 中的其他路由。优先级较差的路由更有可能被选为活动路由。这可能是一个问题,因为路由策略仅作用于活动路由。若要防止此问题,请改用 mpls-forwarding 该选项。

注:

选择具有数值最低偏好值的 LSP 作为首选路由。

例如:

优先级值为 1000 的 LSP 更胜一筹,因此优先于优先级值为 1001 的 LSP。

使用 RSVP 和 LDP 路由进行转发,但不进行路由选择

如果为语句配置 bgp-igptraffic-engineering or bgp-igp-both-ribs 选项,则高优先级 LSP 可以取代 inet.0 路由表中的 IGP 路由。IGP 路由可能不再重新分发,因为它们不再是活动路由。

如果为语句配置traffic-engineering选项mpls-forwarding,LSP 将用于转发,但从路由选择中排除。这些路由将同时添加到 inet.0 和 inet.3 路由表中。选择活动路由时,inet.0 路由表中的 LSP 优先级 较低 。但是,inet.3 路由表中的 LSP 具有正常的优先级,因此用于选择转发下一跃点。

激活该mpls-forwarding选项时,状态为ForwardingOnly首选的路由作为转发,即使其优先级低于当前活动路由的优先级。要检查路由的状态,请执行 show route detail 命令。

要使用 LSP 进行转发,但从路由选择中排除它们,请包含 mpls-forwarding 以下语句的选项 traffic-engineering

您可以在以下层次结构级别包含此语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

配置该 mpls-forwarding 选项时,IGP 快捷方式路由仅复制到 inet.0 路由表。

bgp-igp-both-ribs与选项不同,该mpls-forwarding选项允许您使用 LDP 信号和 RSVP 信号路由进行转发,并使 BGP 和 IGP 路由保持活动状态以进行路由,以便路由策略可以对其执行操作。

例如,假设路由器正在运行 BGP,并且它的 BGP 路由为 10.10.10.1/32,需要将其发送到另一个 BGP 扬声器。如果您使用该 bgp-igp-both-ribs 选项,并且您的路由器也有到 10.10.10.1 的标签交换路径 (LSP),则 10.10.10.1 的 MPLS 路由将在 inet.0 路由表中变为活动状态。这可以防止路由器将 10.10.10.1 路由播发到其他 BGP 路由器。另一方面,如果使用 mpls-forwarding 选项而不是 bgp-igp-both-ribs 选项,则 10.10.10.1/32 BGP 路由将播发至其他 BGP 发言人,并且 LSP 仍用于将流量转发到 10.10.10.1 目标。

在摘要 LSA 中通告 LSP 指标

您可以将 MPLS 和 OSPF 配置为将 LSP 视为链路。此配置允许网络中的其他路由器使用此 LSP。要实现此目标,您需要配置 MPLS 和 OSPF 流量工程,以便在汇总 LSA 中通告 LSP 指标。

对于 MPLS,请包含 traffic-engineering bgp-igplabel-switched-path 语句:

您可以在以下层次结构级别包含这些语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

对于 OSPF,请包含以下 lsp-metric-into-summary 语句:

您可以在以下层次结构级别包含此语句:

  • [edit protocols ospf traffic-engineering shortcuts]

  • [edit logical-systems logical-system-name protocols ospf traffic-engineering shortcuts]

有关 OSPF 信息流工程的详细信息,请参阅 适用于路由设备的 Junos OS 路由协议库

启用区域间流量工程

Junos OS 可以跨多个 OSPF 区域发出连续的流量工程 LSP 信号。LSP 信令必须使用嵌套或连续信令来完成,如 RFC 4206, 具有通用多协议标签交换 (GMPLS) 流量工程 (TE) 的标签交换路径 (LSP) 层次结构中所述。但是,连续信令支持仅限于基本信令。连续信令不支持再优化。

下面介绍了一些区域间流量工程功能:

  • 当使用 CSPF 在入口路由器上配置松散跳跃区域边界路由器 (ABR) 以在 OSPF 区域内进行显式路由对象 (ERO) 计算时,可以启用区域间流量工程。ERO 扩展在 ABR 上完成。

  • 启用 CSPF 后,可以启用区域间流量工程,但不在入口路由器上的 LSP 配置中指定 ABR(可以自动指定 ABR)。

  • 只要类类型映射跨多个区域是统一的,就支持差异服务 (DiffServ) 流量工程。

要启用区域间流量工程,请在每个 LSP 传输路由器的配置中包含以下 expand-loose-hop 语句:

您可以在以下层次结构级别包含此语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

为 LSP 启用 AS 间流量工程

通常,满足以下条件的 LSP 可以进行流量工程:

  • LSP 的两端位于同一 OSPF 区域或同一 IS-IS 级别。

  • LSP 的两端位于同一自治系统 (AS) 内的不同 OSPF 区域中。不支持以不同 IS-IS 级别结尾的 LSP。

  • 显式路径 LSP 的两端位于不同的 OSPF AS 中,自治系统边界路由器 (ASBR) 静态配置为显式路径 LSP 上支持的松散跃点。有关更多信息,请参阅 配置显式路径 LSP

如果 LSP 上没有静态定义的 ASBR,则无法在一个路由域或 AS 与另一个路由域之间进行流量工程。但是,当 AS 处于单个服务提供商的控制之下时,在某些情况量工程 LSP 可能会跨越 AS 并动态发现链接它们的 OSPF ASBR(此功能不支持 IS-IS)。

只要满足特定网络要求、不适用任何限制条件,并且 OSPF 被动模式配置了 EBGP,就可以进行 AS 间流量工程 LSP。以下各节提供了详细信息:

AS 间流量工程要求

AS 间流量工程 LSP 的正确建立和运行取决于以下网络要求,必须满足所有这些要求:

  • 所有 AS 都在单个服务提供商的控制之下。

  • OSPF 用作每个 AS 内的路由协议,EBGP 用作 AS 之间的路由协议。

  • ASBR 信息在每个 AS 中都可用。

  • EBGP 路由信息由 OSPF 分发,每个 AS 内都部署了 IBGP 全网状网络。

  • 传输 LSP 不是 在 AS 间链路上配置的 ,而是在每个 AS 上的入口点和出口点 ASBR 之间配置的。

  • 不同 AS 中的 ASBR 之间的 EBGP 链路是直接链路,必须配置为 OSPF 下的被动流量工程链路。远程链路地址本身(而非环路或任何其他链路地址)用作此被动链路的远程节点标识符。有关 OSPF 被动信息流工程模式配置的详细信息,请参见 配置 OSPF 被动 TE 模式

此外,用于 OSPF 被动流量工程链路远程节点的地址必须与用于 EBGP 链路的地址相同。有关 OSPF 和 BGP 的一般信息,请参阅 适用于路由设备的 Junos OS 路由协议库

AS 间流量工程限制

AS 间流量工程 LSP 仅支持 LSP 分层或嵌套信令。仅支持点对点 LSP(不支持点对多点)。

此外,还存在以下限制。即使满足上述要求,这些条件中的任何一个都足以使 AS 间流量工程 LSP 无法运行。

  • 不支持使用多跃点 BGP。

  • 不支持使用防止 BGP 路由在 AS 内部已知的监管器或拓扑。

  • 不支持 EBGP 对等方之间的 LAN 上有多个 ASBR。仅支持 EBGP 对等方之间的 LAN 上有一个 ASBR(LAN 上可以存在其他 ASBR,但不能播发)。

  • 不支持隐藏 ASBR 信息或阻止 ASBR 信息在 AS 内分发的路由反射器或策略。

  • 不支持双向 LSP(从流量工程的角度来看,LSP 是单向的)。

  • 不支持同时具有指向同一目标的 AS 间和 AS 内路径的拓扑。

此外,AS 间流量工程不支持所有 LSP 的常规功能:

  • 不支持管理员组链接颜色。

  • 不支持辅助备用。

  • 不支持重新优化。

  • 不支持转发路由器上的曲柄。

  • 不支持多路径计算。

  • 不支持正常重启。

这些 AS 间流量工程 LSP 的限制或不受支持的功能列表并不详尽。

配置 OSPF 被动 TE 模式

通常,内部路由协议(如 OSPF)不会在 AS 之间的链路上运行。但是,要使 AS 间流量工程正常运行,必须在 AS 内部提供有关 AS 间链路的信息,特别是远程接口上的地址。此信息通常不包含在 EBGP 可访问性消息或 OSPF 路由通告中。

要在 AS 中泛洪此链路地址信息并使其可用于流量工程计算,您必须在每个 AS 间接口上为流量工程配置 OSPF 被动模式。您还必须提供远程地址,以便 OSPF 分发并包含在信息流工程数据库中。

要在 AS 间接口上为流量工程配置 OSPF 被动模式,请在层次结构级别包含 passive 链路 [edit protocols ospf area area-id interface interface-name] 语句:

必须在路由器上正确配置 OSPF。以下示例将 AS 间链路 so-1/1/0 配置为使用 AS 内的 OSPF 分发信息流工程信息。远程 IP 地址为 192.168.207.2

数据包转发组件

Junos 信息流工程架构的数据包转发组件是 MPLS,它负责引导 IP 数据包流沿网络上的预定路径。此路径称为标签交换路径 (LSP)。LSP 是单工的;也就是说,流量沿一个方向从前端(入口)路由器流向尾端(出口)路由器。双工流量需要两个 LSP:一个 LSP 用于在每个方向上传输流量。LSP 由一个或多个标签交换跃点串联而成,允许数据包在 MPLS 域中从一个路由器转发到另一个路由器。

当入口路由器收到 IP 数据包时,它会将 MPLS 标头添加到数据包中,并将其转发到 LSP 中的下一个路由器。标记的数据包由每个路由器沿 LSP 转发,直到到达 LSP 的尾端(出口路由器)。此时,将移除 MPLS 报头,并根据 IP 目标地址等第 3 层信息转发数据包。此方案的价值在于,LSP 的物理路径不限于 IGP 选择的到达目标 IP 地址的最短路径。

基于标签交换的数据包转发

每个路由器上的数据包转发过程都基于标签交换的概念。此概念类似于永久虚拟电路 (PVC) 中每个异步传输模式 (ATM) 交换机上发生的情况。每个 MPLS 数据包都有一个 4 字节封装标头,其中包含一个 20 位固定长度的标签字段。当包含标签的数据包到达路由器时,路由器会检查标签并将其作为索引复制到其 MPLS 转发表。转发表中的每个条目都包含一个接口入站标签对,该标签对映射到一组转发信息,这些信息应用于到达具有相同入站标签的特定接口的所有数据包。

数据包如何遍历 MPLS 主干网

本节介绍 IP 数据包在遍历 MPLS 骨干网络时的处理方式。

在 MPLS 主干网的入口边缘,IP 报头由入口路由器检查。根据此分析,对数据包进行分类、分配标签、封装在 MPLS 标头中,然后转发到 LSP 中的下一跃点。MPLS 在将 IP 数据包分配给 LSP 的方式上提供了高度的灵活性。例如,在 Junos 流量工程实施中,到达入口路由器且注定要通过同一出口路由器退出 MPLS 域的所有数据包都将沿同一 LSP 转发。

数据包开始遍历 LSP 后,每个路由器都使用该标签做出转发决策。MPLS 转发决策独立于原始 IP 报头:传入接口和标签用作 MPLS 转发表中的查找密钥。旧标签将替换为新标签,数据包将转发到 LSP 上的下一跃点。在 LSP 中的每个路由器上重复此过程,直到数据包到达出口路由器。

当数据包到达出口路由器时,标签将被删除,数据包将退出 MPLS 域。然后,根据 IP 路由协议计算的传统最短路径,根据数据包原始 IP 报头中包含的目标 IP 地址转发数据包。

信息分发组件

流量工程需要详细了解网络拓扑以及有关网络负载的动态信息。为了实现信息分发组件,定义了对 IGP 的简单扩展。链路属性作为每个路由器链路状态通告的一部分包含在内。IS-IS 扩展包括新类型长度值 (TLV) 的定义,而 OSPF 扩展则使用不透明链路状态通告 (LSA) 实现。链路状态 IGP 使用的标准泛洪算法可确保将链路属性分发到路由域中的所有路由器。要添加到 IGP 链路状态通告的一些信息流工程扩展包括最大链路带宽、最大保留链路带宽、当前带宽预留和链路着色。

每个路由器都在专用流量工程数据库中维护网络链路属性和拓扑信息。信息流工程数据库专门用于计算在物理拓扑中放置 LSP 的显式路径。维护一个单独的数据库,以便后续的信息流工程计算独立于 IGP 和 IGP 的链路状态数据库。同时,IGP 无需修改即可继续运行,根据路由器链路状态数据库中包含的信息执行传统的最短路径计算。

路径选择组件

在 IGP 泛洪网络链路属性和拓扑信息并将其放置在流量工程数据库中后,每个入口路由器都使用流量工程数据库来计算其自己的一组 LSP 跨路由域的路径。每个 LSP 的路径可以由严格或松散显式路由表示。显式路由是预配置的路由器序列,应是 LSP 物理路径的一部分。如果入口路由器指定了 LSP 中的所有路由器,则称 LSP 由严格的显式路由标识。如果入口路由器仅指定 LSP 中的某些路由器,则 LSP 被描述为松散显式路由。对严格和松散显式路由的支持允许尽可能为路径选择过程提供广泛的自由度,但在必要时进行约束。

入口路由器通过将约束最短路径优先 (CSPF) 算法应用于流量工程数据库中的信息来确定每个 LSP 的物理路径。CSPF 是一种最短路径优先算法,经过修改后,可在计算网络中的最短路径时考虑特定限制。CSPF 算法的输入包括:

  • 从 IGP 获知并在信息流工程数据库中维护的拓扑链路状态信息

  • 与 IGP 扩展携带并存储在流量工程数据库中的网络资源状态(如总链路带宽、保留链路带宽、可用链路带宽和链路颜色)关联的属性

  • 支持通过用户配置获取的建议 LSP 的流量所需的管理属性(例如带宽要求、最大跃点数和管理策略要求)

当 CSPF 考虑新 LSP 的每个候选节点和链路时,它会根据资源可用性或选择组件是否违反用户策略约束来接受或拒绝特定路径组件。CSPF 计算的输出是由一系列路由器地址组成的显式路由,该地址提供通过满足约束的网络的最短路径。然后将此显式路由传递到信令组件,该组件在沿 LSP 的路由器中建立转发状态。

信令组件

在信令组件实际建立LSP之前,不知道它是否可行。负责建立 LSP 状态和分发标签的信令组件依赖于 RSVP 的许多扩展:

  • 显式路由对象允许 RSVP 路径消息遍历独立于传统最短路径 IP 路由的显式路由器序列。显式路由可以是严格路由,也可以是松散路由。

  • 标签请求对象允许 RSVP 路径消息请求中间路由器为其正在建立的 LSP 提供标签绑定。

  • Label 对象允许 RSVP 支持标签的分发,而无需更改其现有机制。由于 RSVP Resv 消息遵循与 RSVP 路径消息相反的路径,因此 Label 对象支持将标签从下游节点分发到上游节点。

离线路径规划与分析

尽管在线路径计算减少了管理工作量,但仍需要离线规划和分析工具来优化全球流量工程。在线计算考虑了资源限制,一次计算一个 LSP。这种方法的挑战在于它不是确定性的。LSP 的计算顺序在确定每个 LSP 在网络中的物理路径方面起着至关重要的作用。与在流程后期计算的 LSP 相比,在流程早期计算的 LSP 具有更多的可用资源,因为先前计算的 LSP 会消耗网络资源。如果 LSP 的计算顺序发生更改,则生成的 LSP 物理路径集也会更改。

离线规划和分析工具同时检查每个链路的资源约束和每个 LSP 的要求。尽管脱机方法可能需要几个小时才能完成,但它会执行全局计算,比较每个计算的结果,然后为整个网络选择最佳解决方案。离线计算的输出是一组 LSP,用于优化网络资源的利用率。离线计算完成后,可以按任意顺序建立 LSP,因为每个 LSP 都是根据全局优化解决方案的规则安装的。

灵活的 LSP 计算和配置

流量工程涉及将流量映射到物理拓扑。您可以使用基于约束的路由在线确定路径。无论物理路径是如何计算的,转发状态都是通过 RSVP 安装在网络上的。

Junos OS 支持以下方式路由和配置 LSP:

  • 您可以计算 LSP 脱机的完整路径,并使用必要的静态转发状态单独配置 LSP 中的每个路由器。这类似于某些互联网服务提供商 (ISP) 配置其 IP over ATM 核心的方式。

  • 您可以计算 LSP 脱机的完整路径,并使用完整路径静态配置入口路由器。然后,入口路由器使用 RSVP 作为动态信令协议,在沿 LSP 的每个路由器中安装转发状态。

  • 您可以依靠基于约束的路由来执行动态在线 LSP 计算。您可以为每个 LSP 配置约束;然后,网络本身确定最能满足这些约束的路径。具体来说,入口路由器根据约束计算整个 LSP,然后通过网络启动信令。

  • 您可以计算 LSP 脱机的部分路径,并使用路径中的路由器子集静态配置入口路由器;然后,您可以允许在线计算以确定完整路径。

    例如,考虑一个包含横跨美国的两条东西向路径的拓扑:一个在北部通过芝加哥,一个在南部通过达拉斯。如果要在纽约的路由器和旧金山的路由器之间建立 LSP,可以将 LSP 的部分路径配置为包含达拉斯路由器的单个松散路由跃点。结果是沿南部路径路由的 LSP。入口路由器使用 CSPF 计算完整路径,使用 RSVP 沿 LSP 安装转发状态。

  • 您可以不受任何限制地配置入口路由器。在这种情况下,将使用正常的 IGP 最短路径路由来确定 LSP 的路径。此配置在流量工程方面不提供任何价值。但是,这很容易,并且在需要虚拟专用网络 (VPN) 等服务的情况下可能很有用。

在所有这些情况下,您可以指定任意数量的 LSP 作为主 LSP 的备份,从而允许您组合多种配置方法。例如,您可以显式脱机计算主路径,将辅助路径设置为基于约束,并使第三路径不受约束。如果路由主 LSP 的电路发生故障,入口路由器会注意到从下游路由器收到的错误通知或 RSVP 软状态信息过期的中断。然后,路由器将流量动态转发到热备用 LSP 或调用 RSVP 为新的备份 LSP 创建转发状态。

BGP 级传输平面概述

BGP 级传输平面的优势

  • 网络切片 – 服务和传输层相互分离,通过跨多个域的端到端切片为网络切片和虚拟化奠定了基础,从而显著降低了资本支出。

  • 域间互操作性 – 跨合作域扩展传输类部署,以便每个域中的不同传输信令协议互操作。协调每个域中可能正在使用的扩展社区命名空间之间的任何差异。
  • 带回退的彩色分辨率 – 支持通过彩色隧道(RSVP、IS-IS 灵活算法)进行解析,并通过尽力而为隧道或任何其他彩色隧道提供灵活的回退选项。

  • 服务质量 – 定制和优化网络以实现端到端 SLA 要求。
  • 利用现有部署 – 支持部署良好的隧道协议(如 RSVP)以及新协议(如 IS-IS 灵活算法),从而保持投资回报率并降低运维支出。

BGP 级传输平面术语

本节概述了用于了解 BGP 级传输平面的常用术语。

  • 服务节点 – 发送和接收服务路由(互联网和第 3 层 VPN)的入口提供商边缘 (PE) 设备。

  • 边界节点 - 位于不同域(IGP 区域或 AS)连接点的设备。

  • 传输节点 – 发送和接收 BGP 标记的单播 (LU) 路由的设备。

  • BGP-VPN–使用RFC4364机制构建的VPN。

  • 路由目标 (RT) – 用于定义 VPN 成员资格的扩展社区类型。

  • 路由识别符 (RD) – 用于区分路由所属的 VPN 或虚拟专用 LAN 服务 (VPLS) 的标识符。每个路由实例都必须具有与之关联的唯一路由识别符。

  • 解析方案 – 用于解析提供回退的解析 RIB 中的协议下一跳地址 (PNH)。

    他们根据映射社区将路由映射到系统中的不同传输 RIB。

  • 服务族 – BGP 地址族,用于通告数据流量的路由,而不是隧道。

  • 传输族 – 用于通告隧道的 BGP 地址族,而服务路由又使用这些隧道进行解析。

  • 传输隧道 – 服务可以通过其放置流量的隧道,例如 GRE、UDP、LDP、RSVP、SR-TE、BGP-LU。

  • 隧道域 – 一种网络域,其中包含服务节点和边界节点,置于单个管理控制之下,它们之间有隧道。通过使用标签将节点拼接在一起,可以创建跨越多个相邻隧道域的端到端隧道。

  • 传输类 – 一组提供相同类型服务的传输隧道。

  • 传输类 RT – 路由目标的新格式,用于标识特定的传输类。

    路由目标的新格式,用于标识特定传输类。
  • 传输 RIB – 在服务节点和边界节点上,传输类具有用于保存其隧道路由的关联传输 RIB。

  • 传输 RTI – 路由实例;传输 RIB 的容器,以及关联的传输类路由目标和路由识别符。

  • 传输平面 - 导入相同传输类 RT 的传输 RTI 集。它们又被拼接在一起,使用类似于 AS 间选项 b 的机制跨越隧道域边界,以在边界节点 (nexthop-self) 交换标签,形成端到端传输平面。

  • 映射社区 – 服务路由上的社区,通过传输类映射解析。

了解 BGP 级传输平面

您可以使用 BGP 级传输平面配置传输类,以便根据流量工程特征对 AS 内部网络中的一组传输隧道进行分类,并使用这些传输隧道将服务路由映射到所需的 SLA 和预期的回退。

BGP 级传输平面可以将这些隧道扩展到跨多个域(AS 或 IGP 区域)的域间网络,同时保留传输类。为此,您必须在边界节点和服务节点之间配置 BGP 级传输层 BGP 系列。

在 AS 间和 AS 内部实现中,都可以从服务和边界节点创建许多传输隧道(MPLS LSP、IS-IS 灵活算法、SR-TE)。LSP 可以在不同域中使用不同的信令协议进行信令,并且可以配置不同的流量工程特征(类或颜色)。传输隧道端点还充当服务端点,可以存在于与服务入口节点相同的隧道域中,也可以存在于相邻或不相邻的域中。您可以使用 BGP 级传输平面在单个域或跨多个域内通过具有特定流量工程特性的 LSP 重新分配服务。

BGP 级传输平面重用 BGP-VPN 技术,使隧道域保持松散耦合和协调。

  • 网络层可达性信息 (NLRI) 是用于路径隐藏的 RD:TunnelEndpoint
  • 路由目标指示 LSP 的传输等级,并将路由泄漏到目标设备上的相应传输 RIB。
  • 每个传输隧道协议都会在 transport-class.inet.3 路由表中安装一个入口路由,将该隧道传输类建模为 VPN 路由目标,并在 transport-class.inet.3 transport-rib 路由表中收集相同传输类的 LSP。
  • 此路由实例中的路由按照类似于 RFC-4364 的过程在 BGP 级传输平面(inet 传输)AFI-SAFI 中播发。

  • 跨越 AS 间链路边界时,必须按照选项 b 过程拼接这些相邻域中的传输隧道。

    同样,在跨 AS 内部区域时,必须按照 Option-b 过程拼接不同 TE 域中的传输隧道。

  • 您可以定义解析方案,以在回退顺序中指定对各种传输类的意图。

  • 您可以通过在这些传输类上承载映射社区来解析这些传输类上的服务路由和 BGP 类传输路由。

BGP 类传输家族与 BGP-LU 传输层家族一起运行。在运行 BGP-LU 的无缝 MPLS 网络中,满足 5G 严格的 SLA 要求是一项挑战,因为隧道的流量工程特性并不可知或跨域边界保留。BGP 级传输平面提供了操作简单且可扩展的方法,可以在无缝 MPLS 架构中通告远程环路的多条路径以及传输类信息。在 BGP 类转运家族路由中,不同的 SLA 路径使用传输路由目标扩展社区表示,该扩展社区带有传输类颜色。接收 BGP 路由器使用此传输路由目标将 BGP 类传输路由与相应的传输类相关联。重新播发 BGP 级传输路由时,MPLS 交换路由,互连相同传输类的 AS 内部隧道,从而形成保留传输类的端到端隧道。

BGP 类传输平面的 AS 内部实现

图 4 展示了一个网络拓扑,其中包含在 AS 内部域中实施 BGP 级传输平面的前后场景。设备 PE11 和 PE12 使用 RSVP LSP 作为传输隧道,所有传输隧道路由都安装在 inet.3 RIB 中。实施 BGP 级传输平面可使 RSVP 传输隧道具有类似于分段路由隧道的颜色感知能力。

图 4: AS 内域:BGP 级传输平面实施的前后方案AS 内域:BGP 级传输平面实施的前后方案AS 内域:BGP 级传输平面实施的前后方案

要在 AS 内部设置中将传输隧道分类为 BGP 传输类,请执行以下操作:

  1. 在服务节点(入口 PE 设备)上定义传输类,例如金色和青铜色,并将颜色社区值分配给定义的传输类。

    示例配置:

  2. 将传输隧道关联到隧道入口节点上的特定传输类。

    示例配置:

AS 内部 BGP 类传输平面功能:

  • BGP 级传输为每个命名传输类(金色和青铜)创建预定义的传输 RIB,并从其颜色值(100 和 200)自动派生映射社区。
  • 当 AS 内部传输路由与传输类关联时,由隧道协议填充在传输 RIB 中。

    在此示例中,与传输类金牌(颜色 100)和传输类铜牌(颜色 200)关联的 RSVP LSP 路由分别安装在传输 RIB junos-rti-tc-<100>.inet.3junos-rti-tc-<200>.inet.3 中。

  • 服务节点(入口 PE)在预定义的分辨率 RIB 中将服务路由的扩展颜色社区(颜色:0:100 和颜色:0:200)与映射社区进行匹配,并在相应的传输 RIB(junos-rti-tc-<100>.inet.3 或 junos-rti-tc-<200>.inet.3)中解析协议下一跃点 (PNH)。
  • BGP 路由通过承载 assiocaited 映射社区绑定到解析方案。
  • 每个传输类会自动创建两个预定义的解析方案,并自动派生映射社区。

    一种解析方案用于解析使用 Color:0:<val> 作为映射社区的服务路由。

    另一种解析方案用于解析使用 Transport-Target:0:<val> 作为映射社区的传输路由。

  • 如果使用预定义解析方案中列出的 RIB 无法解析服务路由 PNH,则可以回退到 inet.3 路由表。
  • 您还可以在配置层次结构下 [edit routing-options resolution scheme] 使用用户定义的解析方案,配置不同颜色传输 RIB 之间的回退。

BGP 类传输平面的 AS 间实现

在 AS 间网络中,在所有服务节点或 PE 设备和边界节点(ABR 和 ASBR)上配置至少两个传输等级(金级和铜级)后,BGP-LU 将转换为 BGP 级传输网络。

要将传输隧道转换为 BGP 级传输:

  1. 在服务节点(入口 PE 设备)和边界节点(ABR 和 ASBR)定义传输类,例如,金色和溴化。

    示例配置:

  2. 将传输隧道关联到隧道入口节点(入口 PE、ABR 和 ASBR)上的特定传输类。

    示例配置:

    适用于回复 LSP

    对于 IS-IS 可不稳定算法

  3. 为网络中的 BGP 类传输(inet 传输)和 BGP-LU(inet 标记-单播)启用新系列。

    示例配置:

  4. 使用适当的扩展颜色社区通告来自出口 PE 设备的服务路由。

    示例配置:

AS 间 BGP 级传输平面功能:

  1. BGP 级传输平面为每个命名传输类(金色和青铜)创建预定义的传输 RIB,并从其颜色值自动派生映射社区。
  2. 当与传输类关联时,AS 内部传输路由通过隧道协议填充在传输 RIB 中。

    例如,与传输类金和铜相关的传输隧道路由分别安装在传输 RIB junos-rti-tc-<100>.inet.3junos-rti-tc-<200>.inet.3 中。

  3. BGP 类传输平面在将传输隧道路由从每个传输 RIB 复制到 bgp.transport.3 路由表时,使用唯一的路由识别器和路由目标。
  4. 如果在 BGP 会话中协商了家族 inet 传输,则边界节点会将路由从 bgp.transport.3 路由表通告到其他域中的对等方。
  5. 接收边界节点将这些 bgp-ct 路由安装在 bgp.transport.3 路由表中,并根据传输路由目标将这些路由复制到相应的传输 RIB。
  6. 服务节点将服务路由中的颜色社区与解析方案中的映射社区进行匹配,并在相应的传输 RIB (junos-rti-tc-<100>.inet.3junos-rti-tc-<200>.inet.3)中解析 PNH。
  7. 边界节点使用预定义的解析方案进行传输路由 PNH 解析。
  8. 预定义或用户定义的两种解析方案都支持服务路由 PNH 解析。预定义使用 inet.3 作为回退,用户定义的解析方案允许在解析 PNH 时按指定的顺序使用传输 RIB 列表。
  9. 如果使用用户定义解析方案中列出的 RIB 无法解析服务路由 PNH,则会丢弃路由。

具有底层彩色 SR-TE 隧道的 BGP 级传输 (BGP-CT) 概述

BGP-CT 与底层彩色 SR-TE 隧道的优势

  • 解决未来随着网络的增长而可能出现的规模问题。
  • 为使用不同技术的域提供互连。
  • 将服务和传输层分离,从而形成完全分布式的网络。
  • 通过适用于 SR-TE 的域内流量工程控制器提供独立的带宽管理。

不断发展的大型网络需要无缝的分段路由架构。从 Junos OS 21.2 R1 版开始,我们支持 BGP-CT,底层传输为彩色 SR-TE 隧道。BGP-CT 可以使用传输 RIB 解析服务路由并计算下一跃点。目前通过 BGP-CT 支持的服务也可以使用底层 SR-TE 彩色隧道进行路由解析。这些服务现在可以使用底层 SR-TE 彩色隧道,例如静态彩色隧道、BGP SR-TE、可编程 rpd 和 PCEP 彩色隧道。BGP-CT 使用下一跃点可访问性来解析所需传输类上的服务路由。

要在底层 SR-TE 彩色隧道上启用 BGP-CT 服务路由解析,请在层次结构级别包含 use-transport-class 该语句 [edit protocols source-packet-routing]

注:
  1. use-transport-class启用语句

    [edit protocols source-packet-routing] 层次结构级别。

    以及 auto-create 层次结构级别的语句 [edit routing-options transport-class]
  2. 对于具有此功能的彩色 SR-TE 隧道和仅 use-transport-class 彩色 SR-TE 隧道,我们不支持 RIB 组。

通过 RSVP PathErr 消息提高流量工程数据库的准确性

基于 RSVP 的流量工程的一个基本要素是流量工程数据库。信息流工程数据库包含参与流量工程的所有网络节点和链路的完整列表,以及每个链路可以包含的一组属性。(有关信息流工程数据库的详细信息,请参阅 受限路径 LSP 计算。最重要的链路属性之一是带宽。

随着 RSVP LSP 的建立和终止,链路上的带宽可用性会迅速变化。流量工程数据库可能会相对于实际网络产生不一致的情况。这些不一致无法通过提高 IGP 更新速率来解决。

链路可用性可以共享相同的不一致问题。不可用的链路可能会中断所有现有的 RSVP LSP。但是,网络可能不容易知道它的不可用。

配置语句 rsvp-error-hold-time 时,源节点(RSVP LSP 的入口)通过监控从下游节点传输的 PathErr 消息,从其 LSP 的故障中学习。来自 PathErr 消息的信息将合并到后续的 LSP 计算中,这可以提高 LSP 设置的准确性和速度。某些 PathErr 消息还用于更新信息流工程数据库带宽信息,从而减少信息流工程数据库与网络之间的不一致。

您可以使用语句 update-threshold 控制 IGP 更新的频率。请参阅 在接口上配置 RSVP 更新阈值

本节讨论以下主题:

路径错误消息

PathErr 消息通过不同的代码和子代码编号报告各种问题。您可以在 RFC 2205 资源预留协议 (RSVP) 版本 1 功能规范 和 RFC 3209 RSVP-TE 中找到这些 PathErr 消息的完整列表:LSP 隧道的 RSVP 扩展。

配置该 rsvp-error-hold-time 语句时,将检查两类专门表示链路故障的 PathErr 消息:

  • 此 LSP 的链路带宽较低:请求的带宽不可用 - 代码 1,子代码 2

    这种类型的 PathErr 消息表示影响传输链路的所有 LSP 的全局问题。它们表示实际链路带宽低于 LSP 要求的带宽,并且流量工程数据库中的带宽信息可能被高估了。

    收到此类错误时,本地流量工程数据库中的可用链路带宽会减少,从而影响所有未来的 LSP 计算。

  • 此 LSP 的链接不可用:

    • 准入控制失败 - 代码 1,除 2 之外的任何子代码

    • 策略控制失败 — 代码 2

    • 服务抢占 - 代码 12

    • 路由问题 - 没有通向目的地的可用路由 - 代码 24,子代码 5

    这些类型的 PathErr 消息通常与指定的 LSP 相关。此 LSP 的故障并不一定意味着其他 LSP 也可能失败。这些错误可能表示最大传输单元 (MTU) 问题、服务抢占(由操作员手动启动或由另一个具有更高优先级的 LSP 启动)、下一跃点链路已关闭、下一跃点邻接方已关闭,或者由于策略考虑而导致服务被拒绝。最好将此特定 LSP 路由到远离链路的位置。

识别问题链接

每条 PathErr 消息都包含发件人的 IP 地址。此信息将原封不动地传播到入口路由器。信息流工程数据库中的查找可以识别发起 PathErr 消息的节点。

每条 PathErr 消息都携带足够的信息来识别触发该消息的 RSVP 会话。如果这是中转路由器,则只需转发消息。如果此路由器是入口路由器(对于此 RSVP 会话),则它具有会话应遍历的所有节点和链路的完整列表。结合始发节点信息,可以唯一标识链路。

配置路由器以提高流量工程数据库的准确性

要提高信息流工程数据库的准确性,请配置语句 rsvp-error-hold-time 。配置此语句后,源节点(RSVP LSP 的入口)通过监控从下游节点传输的 PathErr 消息,从其 LSP 的故障中学习。来自 PathErr 消息的信息将合并到后续的 LSP 计算中,这可以提高 LSP 设置的准确性和速度。某些 PathErr 消息还用于更新信息流工程数据库带宽信息,从而减少信息流工程数据库与网络之间的不一致。

要配置 MPLS 应记住 RSVP PathErr 消息的时间长度并在 CSPF 计算中考虑这些消息,请包含以下 rsvp-error-hold-time 语句:

您可以在以下层次结构级别包含此语句:

  • [edit protocols mpls]

  • [edit logical-systems logical-system-name protocols mpls]

时间可以是 1 到 240 秒之间的值。默认值为 25 秒。将值配置为 0 将禁用对 PathErr 消息的监视。

变更历史表

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

版本
说明
23.1R1
从 Junos OS 版本 23.1R1 开始,启用 BGP 联合时,Junos OS 将启用 BGP 链路状态 BGP-LS NLRI 以在 TLV 512 中携带联合身份验证 ID。NLRI 携带联合体 ID 以及 RFC 9086 中定义的 TLV 517 中的成员 AS 编号。
22.1R1
从 Junos OS 22.1 R1 版开始,我们在信息流工程数据库 (TED) 和 BGP 链路状态 (LS) 中添加了 IPv6 前缀和 IPv6 邻接 SID MPLS 支持。
20.4R1
从 Junos OS 20.4R1 版开始,您可以将 IS-IS 信息流工程配置为除 IPv4 地址外,还将 IPv6 信息存储在信息流工程数据库 (TED) 中。
17.4R1
从 Junos OS 17.4R1 版开始,除了在 lsdist.0 路由表中安装 RSVP-TE 拓扑信息外,信息流工程数据库还会安装内部网关协议 (IGP) 拓扑信息
17.2R1
从 Junos OS 17.2R1 版开始,BGP 链路状态地址族得到扩展,可将源数据包路由网络 (SPRING) 拓扑信息分发到软件定义网络 (SDN) 控制器。
17.1R1
从 Junos OS 17.1R1 版开始,QFX10000 交换机都支持使用 BGP 分配链路状态。