Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

RSVP 配置

最低 RSVP 配置

要在单个接口上启用 RSVP,请使用语句包括语 rsvp 句并指定接口 interface 。这是最低 RSVP 配置。所有其他 RSVP 配置语句都是可选的。

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

  • [edit protocols]

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

要在所有接口上启用 RSVP,请替换allinterface-name变量。

如果您在一组接口上配置了接口属性并希望在其中一个接口上禁用 RSVP,请包括以下 disable 语句:

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

  • [edit protocols rsvp interface interface-name ]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name ]

配置 RSVP 和 MPLS

Junos RSVP 软件的主要用途是在标签交换系列 (LSP) 内支持动态信号。在路由器上同时启用 MPLS 和 RSVP 时,MPLS 将成为 RSVP 的客户端。不需要额外的配置来绑定 MPLS 和 RSVP。

通过在[edit protocols mpls]层次结构级别使用 label-switched-path 语句,您可以配置 MPLS 以设置信号路径。每个 LSP 都转换为请求 RSVP 启动 RSVP 会话。此请求将通过标签交换和 RSVP 之间的内部接口传递。检查请求信息、检查 RSVP 状态并检查本地路由表之后,RSVP 会为每个 LSP 启动一个会话。会话来自本地路由器,并发送至 LSP 的目标。

成功创建 RSVP 会话时,将沿 RSVP 会话创建的路径设置 LSP。如果 RSVP 会话不成功,RSVP 会通知 MPLS 其状态。由 MPLS 负责启动备份路径或继续重试初始路径。

要传递标签交换信号信息,RSVP 支持另外四个对象:标签请求对象、标签对象、显式路由对象和记录路由对象。要成功设置 LSP,路径上的所有路由器都必须支持 MPLS、RSVP 和四个对象。在四个对象中,记录路由对象并非必需。

要配置 MPLS 并使其成为 RSVP 的客户端,请执行以下操作:

  • 在将参与标签交换的所有路由器上启用 MPLS(也就是说,在可能属于标签交换系列的所有路由器上)。

  • 在构成 LSP 的所有路由器接口上启用 RSVP。

  • 在 LSP 的开头配置路由器。

您可以配置 RSVP 标签交换系列 (LSP),以便使用延迟度量计算路径。要配置,请使用我们在层次结构下 [edit protocols mpls label-switched-path name] 引入的 CLI 选项。

示例:配置 RSVP 和 MPLS

以下显示 LSP 开始时的路由器的样本配置:

下列显示了构成 LSP 的所有其他路由器的样本配置:

配置 RSVP 接口

以下部分介绍如何配置 RSVP 接口:

配置 RSVP 刷新减少

您可通过在接口配置中包括以下语句,在每个接口上配置 RSVP 刷新减少:

  • aggregatereliable— 启用所有 RSVP 刷新减少功能:RSVP 消息捆绑、RSVP 消息 ID、可靠的消息交付和摘要刷新。

    为了减少刷新并提供可靠的交付,您必须包括 aggregate 这些和 reliable 语句。

  • no-aggregate—禁用 RSVP 消息捆绑和摘要刷新。

  • no-reliable—禁用 RSVP 消息 ID、可靠的消息发送和摘要刷新。

有关 RSVP 刷新减少的详细信息,请参阅 RSVP 刷新减少

如果在路由器上配置了语 no-reliable 句(可禁用可靠的消息传递),路由器将接受包含消息 ID 对象但忽略消息 ID 对象的 RSVP 消息,并继续执行标准消息处理。此情况下不会生成错误,并且 RSVP 正常运行。

但是,并非具有不同刷新减少功能的两个邻接方之间的所有组合都能正常运行。例如,路由器配置了aggregate语句和语句,或者配置了reliable语句和no-reliableno-aggregate语句。如果 RSVP 邻接方将 Summary Refresh 对象发送至此路由器,则不会生成错误,但是无法处理 Summary Refresh 对象。因此,如果邻接方仅依靠 Summary Refresh 来刷新这些 RSVP 状态,则 RSVP 状态可以在此路由器上留出时间。

除非有具体要求,否则我们建议在每个 RSVP 邻接方上以类似方式配置 RSVP 刷新减少。

要启用接口上的所有 RSVP 刷新减少功能,请包含以下 aggregate 语句:

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

  • [edit protocols rsvp interface interface-name]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name]

要禁用 RSVP 消息捆绑和摘要刷新,请包括以下 no-aggregate 语句:

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

  • [edit protocols rsvp interface interface-name]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name]

要在接口上启用 RSVP 消息 ID 和可靠消息交付,请包括以下 reliable 语句:

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

  • [edit protocols rsvp interface interface-name]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name]

要禁用 RSVP 消息 ID、可靠消息交付和摘要刷新,请包括 no-reliable 以下语句:

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

  • [edit protocols rsvp interface interface-name]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name]

确定 RSVP 邻接方的刷新减少功能

要确定 RSVP 邻接方的 RSVP 刷新减少功能,需要以下信息:

  • 邻接方通告的 RR 位

  • RSVP 刷新减少的本地配置

  • 从邻接方接收的实际 RSVP 消息

要获取这些信息,您可以发出命令 show rsvp neighbor detail 。示例输出如下:

有关 该命令的 show rsvp neighbor detail 详细信息。

配置 RSVP Hello 间隔

RSVP 监控内部网关协议 (IGP) (IS-IS 或 OSPF) 邻接方的状态,并依靠 IGP 协议在节点发生故障时进行检测。如果 IGP 协议宣布邻接方停机(因为不再接收 hello 数据包),RSVP 也会关闭该邻接方。但是,IGP 协议和 RSVP 在启动邻接方时仍独立运行。

对于瞻博网络路由器,配置更短或更长的 RSVP hello 间隔不会影响 RSVP 会话是否中断。即使不再接收 RSVP hello 数据包,RSVP 会话也会保持正常运行。RSVP 会话一直保持,直至路由器停止接收 IGP hello 数据包或 RSVP 路径和 Resv 消息的时间。但是,从 Junos OS 16.1 版开始,当 RSVP hello 消息超时时,RSVP 会话会被关闭。

当另一家供应商的设备中断 RSVP 会话时,RSVP hello 间隔也会受到影响。例如,邻接的非瞻博网络路由器可能配置为监控 RSVP hello 数据包。

要修改 RSVP 发送 hello 数据包的频率,请包括以下 hello-interval 语句:

注:

从版本 16.1 开始,Junos 在可用时通过旁路 LSP 发送 RSVP hello 消息。有关如何恢复通过 IGP 下一跳跃发送 hello 的历史行为的信息,请参阅 no-node-hello-on-bypass

有关可包含此语句的层次结构级别列表,请参阅 语句摘要部分。

配置 RSVP 身份验证

所有 RSVP 协议交换均可通过身份验证,以保证只有可信邻接方参与设置预留。默认情况下,RSVP 身份验证禁用。

RSVP 身份验证使用散列消息认证代码 (HMAC)-MD5 基于消息的摘要。此方案会根据秘密身份验证密钥和消息内容生成消息摘要。(消息内容还包括序列号。)计算摘要使用 RSVP 消息传输。配置身份验证后,所有与邻接方一起接收和传输的 RSVP 消息均将在此接口上进行身份验证。

MD5 身份验证可防止伪造和消息修改。它还可以防止重放攻击。但是,它不提供机密性,因为所有消息均以明文发送。

默认情况下,将禁用身份验证。要启用身份验证,请在每个接口上配置密钥, authentication-key 方法是包括语句:

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

  • [edit protocols rsvp interface interface-name]

  • [edit logical-systems logical-system-name protocols rsvp interface interface-name]

配置类类型的带宽订阅

默认情况下,RSVP 允许 100% 的类类型带宽用于 RSVP 预留。超额订阅多类 LSP 的类类型时,所有 RSVP 会话的总需求均可超过类类型的实际容量。

有关如何为类类型配置带宽订阅的详细说明,请参阅 为 LSP 配置带宽订阅百分比

在接口上配置 RSVP 更新阈值

内部网关协议 (IGP) 维护流量工程数据库,但流量工程数据库链路上的当前可用带宽源自 RSVP。当链路的带宽发生变化时,RSVP 会通知 IGP,然后 IGP 可以更新流量工程数据库并将新带宽信息转发至所有网络节点。然后,网络节点会知道信息流工程数据库链路上有多少带宽(本地或远程),而 CSPF 可以正确计算路径。

但是,IGP 更新可能会消耗过多的系统资源。根据网络中的节点数量,对于带宽的微小更改,可能不可取地执行 IGP 更新。通过在[edit protocols rsvp]层次结构级别上配置update-threshold语句,您可以调整保留带宽更改触发 IGP 更新的阈值。

在何时触发 IGP 更新时,您可以配置 0.001% 到 20%(默认值为 10%)的值。如果保留带宽的更改大于或等于该接口上已配置的静态带宽阈值百分比,则会进行 IGP 更新。例如,如果已将语句配置 update-threshold 为 15%,并且路由器发现链路上的保留带宽已更改 10% 的链路带宽,则 RSVP 不会触发 IGP 更新。但是,如果链路上的保留带宽更改了 20% 的链路带宽,RSVP 将触发 IGP 更新。

您也可使用 threshold-value 语句下的 update-threshold 选项将阈值配置为绝对值。

如果将阈值配置为该链路上超过 20% 的带宽,则阈值上限为带宽的 20%。

例如,如果接口上的带宽为 1Gbps,配置 threshold-value 大于 200Mbps, threshold-value 则封装为 200Mbps。阈值百分比显示为 20.000%, threshold-value 显示为 200Mbps。

注:

这两种选择( 阈值百分比threshold-value是相互排斥的。您仅可在给定时间点配置一个选项,以便生成 IGP 更新以减少带宽预留。因此,配置一个选项时,在 CLI 上计算和显示另一个选项。

例如,在 1Gbps 的链路上,如果 阈值百分比 配置为 5%, threshold-value 则计算并显示为 50Mbps。同样,如果 threshold-value 配置为 50m,则 阈值百分比 计算为 5%。

要调整保留带宽更改触发 IGP 更新的阈值,请包括 更新阈值 语句。由于更新阈值,受限最短路径优先 (CSPF) 可以使用链路上过时的信息流工程数据库带宽信息计算路径。如果 RSVP 尝试通过该路径建立 LSP,可能会发现该链路上的带宽不足。发生这种情况时,RSVP 将触发 IGP 流量工程数据库更新,将更新的带宽信息泛洪到网络上。然后,CSPF 可使用更新的带宽信息重新计算路径,并尝试查找不同的路径,避免出现拥塞的链路。请注意,此功能是默认功能,不需要任何其他配置。

您可以使用 PathErr 消息提供的信息,在[edit protocols mpls]层次结构级别或[edit logical-systems logical-system-name protocols mpls]层次结构级别配置rsvp-error-hold-time语句,以提高信息流工程数据库的准确性(包括 LSP 带宽估算的准确性)。请参阅 借助 RSVP Patherr 消息提高流量工程数据库准确性

为未编号接口配置 RSVP

Junos OS 通过无编号接口支持 RSVP 流量工程。有关未编号链路的信息流工程信息在用于 OSPF 和 IS-IS 的 IGP 流量工程扩展中承载,如 RFC 4203、 支持通用多协议标签交换 (GMPLS) 的 OSPF 扩展以及 支持通用多协议标签交换 (GMPLS) 的 RFC 4205 中间系统到中间系统 (IS-IS) 扩展中所述。如 RFC 3477、 资源再认证协议 -流量工程 (RSVP-TE) 中的未编号链路中所述,MPLS 流量工程信号中也可指定未编号链路。此功能允许您避免为参与 RSVP 信号网络的每个接口配置 IP 地址。

要为未编号接口配置 RSVP,必须使用层次结构级别中指定[edit routing-options]router-id语句使用路由器 ID 配置路由器。路由器 ID 必须可用于路由(您通常可以使用环路地址)。未编号链路的 RSVP 控制消息使用路由器 ID 地址(而不是随机选择的地址)发送。

要在已启用无编号接口的路由器上配置链路保护和快速重新路由,您必须至少配置两个地址。除了配置路由器 ID 之外,我们还建议您在回传上配置辅助接口。

配置 RSVP 节点 ID Hellos

您可以配置基于节点 ID 的 RSVP hellos,以确保瞻博网络路由器可与其他供应商的设备互操作。默认情况下,Junos OS 使用基于接口的 RSVP hellos。RFC 4558 、基于节点 ID 的资源预留协议 (RSVP) 中指定基于节点 ID 的 RSVP hello:澄清声明。如果已将 BFD 配置为检测 RSVP 接口上的问题,则 RSVP 节点-ID hellos 很有用,从而允许您对这些接口禁用接口 hello。您也可使用节点 ID hello 进行平滑重新启动过程。

可以为所有 RSVP 邻接方全局启用节点 ID hellos。默认情况下,节点-ID hello 支持禁用。如果路由器上未启用 RSVP 节点 ID,则 Junos OS 不接受任何节点 ID hello 数据包。

注:

从版本 16.1 开始,Junos 在可用时通过旁路 LSP 发送 RSVP hello 消息。有关如何恢复通过 IGP 下一跳跃发送 hello 的历史行为的信息,请参阅 no-node-hello-on-bypass

要在路由器上全局启用 RSVP 节点 ID hello,请在以下层次结构级别中包含 节点-hello 语句:

  • [edit protocols rsvp]

  • [edit logical-systems logical-systems-name protocols rsvp]

您还可以在全球范围内明确禁用 RSVP 接口 hello。在瞻博网络路由器与其他供应商的设备有大量 RSVP 连接的网络中,这种配置可能是必需的。但是,如果您在全球禁用 RSVP 接口 hello,您还可以使用 hello 间隔语句在 RSVP 接口上配置 hello 间隔 。此配置禁用全局 RSVP 接口 hellos,但允许在指定接口上启用 RSVP 接口 hello(您在上配置语句的 hello-interval RSVP 接口)。这种配置在异构网络中可能是必要的,其中有些设备支持 RSVP 节点 ID hellos,其他设备则支持 RSVP 接口 hello。

要禁用路由器上的全局 RSVP 接口 hello,请在以下层次结构级别中包含 无接口-hello 语句:

  • [edit protocols rsvp]

  • [edit logical-systems logical-systems-name protocols rsvp]

示例:配置 RSVP 信号 LSP

此示例说明如何使用 RSVP 作为信号协议在 IP 网络中的路由器之间创建 LSP。

要求

开始之前,请从设备中删除安全服务。请参阅 示例:删除安全服务

概述和拓扑

使用 RSVP 作为信号协议,您可以在 IP 网络中的路由器之间创建 LSP。在此示例中,您配置了示例网络,如 中 图 1所示。

拓扑

图 1: 典型 RSVP 信号 LSP典型 RSVP 信号 LSP

要在路由器之间建立 LSP,必须单独启用 MPLS 系列并在 MPLS 网络中的每个传输接口上配置 RSVP。此示例说明如何在 ge-0/0/0 中转接口上启用 MPLS 和配置 RSVP。此外,您必须在网络中的所有 MPLS 接口上启用 MPLS 进程。

此示例说明如何使用 R7 的环路地址 (10.0.9.7) 在入口路由器 (R1) 上定义从 R1 到 R7 的 LSP。配置保留 10 Mbps 的带宽。此外,配置禁用 CSPF 算法,确保主机 C1 和 C2 使用与网络 IGP 最短路径对应的 RSVP 信号 LSP。

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,移除任何换行符,更改与网络配置匹配所需的任何详细信息,然后将命令复制粘贴到层次结构级别的 [edit] CLI 中。

逐步过程

以下示例要求您在配置层次结构中导航各个级别。有关导航 CLI 的信息,请参阅 CLI 用户指南中的配置模式下使用 CLI 编辑器

要配置 RSVP:

  1. 在 MPLS 网络中的所有传输接口上启用 MPLS 系列。

  2. 在 MPLS 网络的每个传输接口上启用 RSVP。

  3. 在 MPLS 网络的传输接口上启用 MPLS 进程。

  4. 定义入口路由器上的 LSP。

  5. 在 LSP 上保留 10 Mbps 带宽。

结果

从配置模式输入 命令以 show 确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以将其更正。

简洁性,此 show 命令输出仅包含与此示例相关的配置。系统上的任何其他配置都已替换为椭圆 (...)。

如果完成设备配置,请在配置模式下输入 commit

验证

要确认配置工作正常,请执行以下任务:

验证 RSVP 邻接方

目的

验证每个设备是否都显示了相应的 RSVP 邻接方,例如,将路由器 R3 和路由器 R2 都列为 RSVP 邻接方的 图 1 路由器 R1。

行动

从 CLI 中 show rsvp neighbor 输入 命令。

输出显示邻接路由器的 IP 地址。验证是否列出了每个相邻 RSVP 路由器环路地址。

验证 RSVP 会话

目的

验证所有 RSVP 邻接方之间是否已建立 RSVP 会话。此外,验证带宽预留值是否处于活动状态。

行动

从 CLI 中 show rsvp session detail 输入 命令。

输出显示每个既定 RSVP 会话的详细信息,包括会话 ID、带宽预留和下一跳跃地址。验证以下信息:

  • 每个 RSVP 邻接方地址都有每个邻接方的条目,按环路地址列出。

  • 每个 LSP 会话的状态为 Up

  • 对于 Tspec相应的带宽值, 10Mbps请显示。

验证 RSVP 信号 LSP 是否存在

目的

验证输入(入口)路由器的路由表是否已将 LSP 配置到其他路由器的环路地址。例如,验证 inet.3 中的 图 1 R1 输入路由器的路由表是否已将 LSP 配置到路由器 R7 的环路地址。

行动

从 CLI 中 show route table inet.3 输入 命令。

输出显示路由表中 inet.3 存在的 RSVP 路由。验证 RSVP 信号 LSP 是否与 MPLS 网络中出口(出口)路由器 R7 的环路地址相关联。

示例:配置 RSVP 自动网状

服务提供商通常使用 BGP 和 MPLS VPN 高效扩展网络,同时提供创收服务。在这些环境中,BGP 用于跨服务提供商的网络分配 VPN 路由信息,而 MPLS 用于将该 VPN 流量从一个 VPN 站点转发至另一个站点。

添加将参与 BGP 和 MPLS VPN 的新 PE 路由器时,所有先前存在的 PE 路由器都必须配置为与 BGP 和 MPLS 的新 PE 路由器对等。随着每个新的 PE 路由器被添加到服务提供商的网络中,配置负担很快就会变得难以处理。

使用路由反射器可以降低 BGP 对等对等配置要求。在 RSVP 信令 MPLS 网络中,RSVP 自动网状可最大程度地减少网络 MPLS 部分的配置负担。在所有 PE 路由器上配置 rsvp-te 后,RSVP 可在添加新 PE 路由器时自动创建所需的 LSP。

要求

此示例使用以下硬件和软件组件:

  • 运行 Junos OS 版本 10.1 或更高版本的路由器。

  • 使用 RSVP 作为 MPLS 标签交换系列 (LSP) 信令协议的 BGP 和 MPLS VPN。

概述

此示例说明如何使用 rsvp-te 配置语句在 PE 路由器上配置 RSVP 自动网状。为了让 RSVP 自动网格正常运行,全网状配置中的所有 PE 路由器都必须 rsvp-te 配置语句。这样可以确保以后添加的任何新 PE 路由器也将受益于自动网状功能,前提是这些路由器也已使用语句配置 rsvp-te

考虑到此要求,此示例仅显示新添加的 PE 路由器上的配置。假设已在现有 PE 路由器上配置了 RSVP 自动网状。

拓扑

图 2中,拓扑中有三个现有 PE 路由器(PE1、PE2 和 PE3)。已添加 PE4,并将配置 RSVP 自动网状。云表示服务提供商网络,而网络地址为 192.0.2.0/24,显示在图的中心。

图 2: 使用 PE 路由器的服务提供商网络使用 PE 路由器的服务提供商网络

配置

配置 RSVP 自动网状涉及执行以下任务:

  • 在层次结构级别启[edit routing-options dynamic-tunnels dynamic-tunnel-name]rsvp-te配置语句。

  • 配置所需的 destination-networks 元素。

    此配置元素指定了目标网络的 IPv4 前缀范围。只能创建指定前缀范围内的隧道。

  • 配置所需的 label-switched-path-template 元素。

    此配置元素将 default-template 预配置的 LSP 模板名称作为参数。这是 default-template 一个不需要用户配置的系统定义模板。

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,移除任何换行符,更改与网络配置匹配所需的任何详细信息,然后将命令复制粘贴到层次结构级别的 [edit] CLI 中。

PE4 路由器

配置 RSVP 自动网状

逐步过程

以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器

要启用 RSVP 自动网状:

  1. 在层次结构级别配置rsvp-te[edit routing-options dynamic-tunnels]

  2. 在层次结构级别配置destination-networks[edit routing-options dynamic-tunnels]

结果

show[edit routing-options dynamic-tunnels]层次结构级别发出 命令,以查看配置结果:

验证

验证路由器 PE4 上是否存在 RSVP 自动网状隧道

目的

要验证新配置的 PE4 路由器的操作,请在操作模式下 show dynamic-tunnels database 发出 命令。此命令将显示可以创建动态隧道的目标网络。

行动

验证路由器 PE4 上是否存在 MPLS LSP

目的

要验证 PE4 路由器上是否存在 MPLS LSP,请在操作模式下 show mpls lsp 发出 命令。此命令将显示 MPLS LSP 的状态。

行动

为非入侵 RSVP 邻居配置 Hello 确认信息

hello-acknowledgements 语句控制 RSVP 邻接方之间的 hello 确认行为,无论它们是否处于同一会话中。

不属于通用 RSVP 会话的 RSVP 邻接方收到的 Hello 消息将被丢弃。hello-acknowledgements如果在[edit protocols rsvp]层次结构级别配置语句,则会通过 hello 确认消息确认来自非入侵邻接方的 hello 消息。从非活动邻接方接收 hello 时,将创建 RSVP 邻接方关系,现在可从非发送邻接方接收定期 hello 消息。默认情况下,语 hello-acknowledgements 句禁用。配置此语句允许使用 hello 数据包发现具有 RSVP 功能的路由器,并验证接口是否能够在发送任何 MPLS LSP 设置消息之前接收 RSVP 数据包。

为非入侵 RSVP 邻接方启用 hello 确认信息后,路由器将继续确认来自任何非系统 RSVP 邻接方的 hello 消息,除非接口本身关闭或您更改配置。基于接口的邻接方不会自动老化。

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

  • [edit protocols rsvp]

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

将 LSP 从网络节点切换

您可以使用为接口启用的旁路 LSP 将路由器配置为将活动 LSP 从网络节点移开。当需要更换设备时,此功能可用于维护活动网络,而不会中断通过网络的流量。LSP 可以是静态的,也可以是动态的。

  1. 您首先需要为要禁用的网络设备周围传输的信息流配置链路或节点保护。要正常工作,旁路 LSP 必须使用与受保护的 LSP 不同的逻辑接口。
  2. 要准备路由器开始将流量从网络节点切换,请配置 always-mark-connection-protection-tlv 语句:

    然后,路由器将标记通过此接口的所有 OAM 流量,准备根据 OAM 功能将流量切换到替代路径。

    您可以在以下层次结构级别配置此语句:

    • [edit protocols mpls interface interface-name]

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

  3. 然后,您需要配置语 switch-away-lsps 句,将流量从受保护的 LSP 切换到旁路 LSP,从而有效绕过默认下游网络设备。实际链路本身不会因此配置而中断。

    要将路由器配置为将流量从网络节点切换开,请配置 switch-away-lsps 语句:

    您可以在以下层次结构级别配置此语句:

    • [edit protocols mpls interface interface-name]

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

注意以下与将活动 LSP 从网络节点切换相关的限制:

  • 仅在 MX 系列路由器上支持交换机关闭功能。

  • 对于从主点到多点 LSP 以绕过点对多点 LSP 的交换信息流,不支持切换交换功能。如果为点对多点 LSP 配置 switch-away-lsps 语句,则流量不会切换到旁路点对多点 LSP。

  • 如果在动态 LSP 路径上的接口上配置交换机关闭功能,则无法通过该路径建立新的动态 LSP。切换功能可防止 RSVP 信号 LSP 的“先决断”行为。“先决断”行为通常会导致路由器先尝试重新发送动态 LSP 信号,然后再拆下原始 LSP。

配置 RSVP 设置保护

您可以配置设备备份快速重新路由机制,为正在发出信号的 LSP 提供设置保护。支持点对点 LSP 和点对多点 LSP。此功能适用于以下情景:

  1. 在发出 LSP 信号之前,LSP 的严格显式路径上存在故障链路或节点。

  2. 还有一个旁路 LSP 保护链路或节点。

  3. RSVP 通过绕过 LSP 向 LSP 发出信号。LSP 显示为最初设置在其主路径上,然后由于链路或节点故障而未能通过旁路 LSP。

  4. 当链路或节点已恢复时,LSP 可自动恢复到主路径。

您应在 [edit protocols rsvp] LSP 路径上的每个路由器上配置setup-protection语句,您希望在该路径上启用 LSP 设置保护。您还应在 LSP 路径上的所有路由器上配置 IGP 流量工程。您可以发出命令 show rsvp session 来确定 LSP 是否在用作本地维修点 (PLR) 或合并点的路由器上启用了设置保护。

要启用 RSVP 设置保护,请将语句包括在内setup-protection

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

  • [edit protocols rsvp]

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

跨 RSVP LSP 配置负载平衡

默认情况下,将多个 RSVP LSP 配置为同一出口路由器时,会选择指标最低的 LSP 并承载所有流量。如果所有 LSP 都有相同的指标,则随机选择其中一个 LSP,并通过此转发所有信息流。

或者,您也可以通过实现每个数据包负载平衡来跨所有 LSP 负载平衡流量。

要在入口 LSP 上启用按数据包负载平衡,请按 policy-statement 以下内容配置语句:

然后,您需要将此语句作为导出策略应用到转发表中。

应用每个数据包负载平衡后,信息流在 LSP 之间平均分配(默认情况下)。

如果您希望启用 PFE 快速重新路由,则需要配置每个数据包的负载平衡。要启用 PFE 快速重新路由, policy-statement 请在可能进行重新路由的每个路由器的配置中包括本节中显示的每包负载平衡语句。另请参阅 配置快速重新路由

您还可以按对每个 LSP 配置的带宽量比例对 LSP 之间的流量进行负载平衡。此功能可通过跨外部链路的不对称带宽功能更好地在网络中分配流量,因为 LSP 的配置带宽通常反映了该 LSP 的流量容量。

要配置 RSVP LSP 负载平衡,请将 load-balance 语句包含在 选项中 bandwidth

您可以在以下层次结构级别配置此语句:

  • [edit protocols rsvp]

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

使用 load-balance 该语句时,请记住以下信息:

  • 如果配置语 load-balance 句,则当前运行 LSP 的行为不会更改。要强制当前运行的 LSP 使用新行为,您可以发出 clear mpls lsp 命令。

  • load-balance 语句仅适用于启用每个数据包负载平衡的入口 LSP。

  • 对于差异服务感知信息流设计的 LSP,LSP 的带宽是通过汇总所有类类型的带宽计算得出的。

配置 RSVP 自动网状

您可以配置 RSVP,以便为添加到全 LSP 网状中的任何新 PE 路由器自动建立点对点标签交换系列 (LSP)。要启用此功能,您必须在全网状的所有 PE 路由器上配置 rsvp-te 语句。

注:

您无法与 CCC 一起配置 RSVP 自动网状。CCC 不能使用动态生成的 LSP。

要配置 RSVP 自动网状,请包括语 rsvp-te 句:

您可以在以下层次结构级别上配置这些语句:

  • [edit routing-options dynamic-tunnels tunnel-name]

  • [edit logical-systems logical-system-name routing-options dynamic-tunnels tunnel-name]

您还必须配置以下语句以启用 RSVP 自动网状:

  • destination-networks—指定目标网络的 IP 版本 4 (IPv4) 前缀范围。可以在指定的 IPv4 前缀范围内启动动态隧道。

  • label-switched-path-template (Multicast)—您可以使用 default-template 选项显式配置默认模板,也可以使用 template-name 选项配置自己的 LSP 模板。LSP 模板用作动态生成的 LSP 的模型配置。

为 RSVP 刷新消息配置时间器

RSVP 使用两个相关计时参数:

  • refresh-time— 刷新时间控制连续更新消息生成之间的间隔时间。刷新时间的默认值为 45 秒。此数字来自语 refresh-time 句的默认值 30,乘以 1.5 的固定值。此计算与 RFC 2205 不同,RFC 2205 规定更新时间应乘以 0.5 到 1.5 范围内的随机值。

    刷新消息包括路径和 Resv 消息。定期发送刷新消息,以使相邻节点中的预留状态不会提前发送。每个路径和 Resv 消息都带有刷新计时器值,接收节点将从消息中提取此值。

  • keep-multiplier— 激活倍增器是从 1 到 255 的小型本地配置整数。默认值为 3。它表示在宣布特定状态过时且必须删除之前可能丢失的消息数。保留乘数直接影响 RSVP 状态的生存期。

要确定预留状态的生存期,请使用以下公式:

最坏的情况是,在删除预留状态之前,必须丢失 (keep-multiplier– 1) 连续刷新消息。

我们不建议配置一个简短的 RSVP hello 计时器。如果需要快速发现故障邻接方,请配置短 IGP(OSPF 或 IS-IS)hello 计时器。

默认情况下,刷新计时器值为 30 秒。要修改此值,请包括语 refresh-time 句:

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

  • [edit protocols rsvp]

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

保持倍增器的默认值为 3。要修改此值,请包括语 keep-multiplier 句:

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

  • [edit protocols rsvp]

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

抢占 RSVP 会话数

只要带宽不足以处理所有 RSVP 会话,您就可以控制 RSVP 会话的抢占。默认情况下,RSVP 会话仅由更高优先级的新会话抢占先机。

要在带宽不足时始终抢先参加会话,请将 preemption 语句包含在选项中 aggressive

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

  • [edit protocols rsvp]

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

要禁用 RSVP 会话抢占,请使用 preemption 以下语句 disabled 进行选项:

要返回默认值(即仅针对新的更高优先级会话抢占会话优先级),请将语句包含 preemption 在选项中 normal

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

  • [edit protocols rsvp]

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

在 RSVP 中配置 MTU 信号

要在 RSVP 中配置最大传输单元 (MTU) 信令,您需要配置 MPLS 以允许 IP 数据包在封装在 MPLS 中之前进行分段。您还需要在 RSVP 中配置 MTU 信号。出于故障排除目的,您可以单独配置 MTU 信号,而无需启用数据包分段。

要在 RSVP 中配置 MTU 信号,请包括以下 path-mtu 语句:

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

  • [edit protocols mpls]

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

以下部分介绍如何在 RSVP 中启用数据包分段和 MTU 信号:

在 RSVP 中启用 MTU 信号

要在 RSVP 中启用 MTU 信号,请包括以下 rsvp mtu-signaling 语句:

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

  • [edit protocols mpls path-mtu]

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

提交配置后,RSVP 的 MTU 信号行为更改在下次刷新路径时生效。

您可以在[edit protocols mpls path-mtu rsvp]层次结构级别自行配置mtu-signaling语句。这对于故障排除很有用。如果只配置语 mtu-signaling 句,则可以使用 show rsvp session detail 命令确定 LSP 上最小的 MTU 是什么。命令 show rsvp session detail 将显示在 Adspec 对象中接收和发送的 MTU 值。

启用数据包分片

要允许 IP 数据包在封装在 MPLS 中之前进行分段,请包括以下 allow-fragmentation 语句:

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

  • [edit protocols mpls path-mtu]

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

    注:

    不要单独配置 allow-fragmentation 语句。始终与语句一起 mtu-signaling 配置。

为 LSP 配置终极跳跃弹出

默认情况下,RSVP 信号 LSP 使用倒数第二跳弹出 (PHP)。 图 3 展示了路由器 PE1 和路由器 PE2 之间的倒数第二跳弹出 LSP。路由器 CE1 将数据包转发至其下一跳跃 (路由器 PE1),也就是 LSP 入口。路由器 PE1 将数据包上的标签 1 推送至路由器 P1。路由器 P1 完成标准 MPLS 标签交换操作,将标签 1 换为标签 2,然后将数据包转发至路由器 P2。由于路由器 P2 是 LSP 到路由器 PE2 的倒数第二跳跃路由器,因此它首先弹出标签,然后将数据包转发至路由器 PE2。路由器 PE2 接收时,数据包可以有一个服务标签、一个显式空标签,或者只是一个普通的 IP 或 VPLS 数据包。路由器 PE2 将未标记的数据包转发至路由器 CE2。

图 3: LSP 的倒数第二跳弹出LSP 的倒数第二跳弹出

您还可以为 RSVP 信号 LSP 配置终极跳跃弹出 (UHP)(如 中 图 4所示)。某些网络应用程序可能需要带有非空外部标签的数据包到达出口路由器 (路由器 PE2)。对于最终跳跃弹出 LSP,倒数第二个路由器(中的路由器 P2 图 4)执行标准 MPLS 标签交换操作(在此示例中,标签 2 表示标签 3),然后再将数据包转发至出口路由器 PE2。路由器 PE2 弹出外部标签并执行数据包地址的第二次查找以确定最终目标。然后,它会将数据包转发至相应的目标(路由器 CE2 或路由器 CE4)。

图 4: LSP 的终极跳跃弹出LSP 的终极跳跃弹出

以下网络应用程序要求您配置 UHP LSP:

  • MPLS-TP,用于性能监控和带内 OAM

  • 边缘保护虚拟电路

以下功能不支持 UHP 行为:

  • LDP 信号 LSP

  • 静态 LSP

  • 点对多点 LSP

  • CCC

  • traceroute 命令

有关 UHP 行为的详细信息,请参阅互联网草案 draft-ietf-mpls-rsvp-te-no-php-oob-mapping-01.txt、 非 PHP 行为和 RSVP-TE LSP 的带外映射

对于点对点 RSVP 信令 LSP,UHP 行为将从 LSP 入口发出信号。根据入口路由器配置,RSVP 可使用非 PHP 标志集向 UHP LSP 发出信号。RSVP PATH 消息在 LSP-ATTRIBUTES 对象中承载两个标记。当出口路由器收到 PATH 消息时,它将一个非空标签分配给 LSP。RSVP 还在 mpls.0 路由表中创建并安装两个路由。S 指的是 MPLS 标签的 S 位,表示是否已到达标签堆栈的底部。

  • Route S=0 — 表示堆栈中有更多的标签。此路由点的下一跳跃到 mpls.0 路由表,触发链接的 MPLS 标签查找以发现堆栈中剩余的 MPLS 标签。

  • 路由 S=1 — 表示不再有标签。如果平台支持链接式多系列查找,下一跳跃将指向 inet.0 路由表。或者,标签路由可以指向 VT 接口以启动 IP 转发。

如果启用 UHP LSP,MPLS 应用程序(如第 3 层 VPN、VPLS、第 2 层 VPN 和第 2 层电路)可使用 UHP LSP。下列介绍 UHP LSP 如何影响不同类型的 MPLS 应用程序:

  • 第 2 层 VPN 和第 2 层电路 — 一个带有两个标签的数据包到达 PE 路由器(UHP LSP 出口)。外部标签 (S=0) 是 UHP 标签,内部标签 (S=1) 是 VC 标签。基于传输标签的查找会导致 mpls.0 路由表的表手柄。mpls.0 路由表中还有一个对应于内部标签的路由。基于内部标签的查找将在 CE 路由器下一跳跃中进行。

  • 第 3 层 VPN — 一个数据包包含两个标签到达 PE 路由器(UHP LSP 出口)。外部标签 (S=0) 是 UHP 标签,内部标签为 VPN 标签 (S=1)。基于传输标签的查找会导致 mpls.0 路由表的表手柄中。在这种情况下,有两种情况。默认情况下,第 3 层 VPN 通告下一跳跃标签。基于内部标签的查找将在下一跃点朝向 CE 路由器。但是,如果您已为第 3 层 VPN 路由实例配置 vrf-table-label 了语句,则内部 LSI 标签点指向 VRF 路由表。VRF 路由表的 IP 查找工作也已完成。

    注:

    仅在 MX 系列 5G 通用路由平台上支持为使用 vrf-table-label 语句配置的第 3 层 VPN 的 UHP。

  • VPLS — 一个带两个标签的数据包到达 PE 路由器(UHP LSP 出口)。外部标签是传输标签 (S=0),内部标签是 VPLS 标签 (S=1)。基于传输标签的查找会导致 mpls.0 路由表的表手柄中。如果未配置隧道服务(或 VT 接口不可用),根据 mpls.0 路由表中的内部标签进行查找会导致 VPLS 路由实例的 LSI 隧道接口。MX 3D 系列路由器支持链式查找和多系列查找。

    注:

    仅在 MX 3D 系列路由器上支持使用使用 no-tunnel-service 语句配置的 VPLS 的 UHP。

  • 基于 MPLS 的 IPv4 — 一个带一个标签 (S=1) 的数据包到达 PE 路由器(UHP LSP 出口)。基于此标签的查找将返回 VT 隧道接口。另一个 IP 查找在 VT 接口上完成,以确定在何处转发数据包。如果路由平台支持多系列和链条查找(例如 MX 3D 路由器和 PTX 系列数据包传输路由器),请根据标签路由 (S=1) 点查找 inet.0 路由表。

  • 基于 MPLS 的 IPv6 — 对于通过 MPLS 的 IPv6 隧道,PE 路由器相互播发 IPv6 路由,标签值为 2。这是 IPv6 的显式空标签。因此,从远程 PE 路由器学习的 IPv6 路由的下一跳跃转发通常会推送两个标签。内部标签为 2(如果广告 PE 路由器来自另一家供应商,则可能有所不同),路由器标签为 LSP 标签。带两个标签的数据包到达 PE 路由器(UHP LSP 出口)。外部标签是传输标签 (S=0),内部标签是 IPv6 显式空标签(标签 2)。基于 mpls.0 路由表中的内部标签查找将重定向回 mpls.0 路由表。在 MX 3D 系列路由器上,将去除内部标签(标签 2),并且使用 inet6.0 路由表进行 IPv6 查找。

  • 支持 PHP 和 UHP LSP — 您可以在同一网络路径上配置 PHP 和 UHP LSP。您可以使用正则表达式和语句选择转发 LSP 下一跳跃,从而分离 PHP 和 install-nexthop UHP 流量。您还可以通过对 LSP 进行适当命名来分离流量。

以下语句支持 LSP 的最终跳跃弹出。您可以在特定 LSP 或路由器上配置的所有入口 LSP 上启用此功能。在 LSP 入口的路由器上配置这些语句。

  1. 要启用终极跳跃弹出,请包括语 ultimate-hop-popping 句:

    在层次结构级别中 [edit protocols mpls label-switched-path label-switched-path-name] 包括此语句,以在特定 LSP 上启用最终跳跃弹出。在层次结构级别中 [edit protocols mpls] 包括此语句,以在路由器上配置的所有入口 LSP 上启用最终跳跃弹出。您也可在 ultimate-hop-popping 等效 [edit logical-routers] 层次结构级别下配置语句。

    注:

    当您启用终极跳跃弹出时,RSVP 会尝试以“先合后断”的方式将现有 LSP 作为最终跳跃弹出的 LSP。如果出口路由器不支持最终跳跃弹出,则现有 LSP 被拆毁(RSVP 沿 LSP 路径发送 PathTear 消息 ,删除路径状态和相关预留状态并释放相关网络资源)。

    如果您禁用最终跳跃弹出,RSVP 将现有 LSP 作为倒数第二跳以“先合后断”的方式弹出 LSP。

  2. 如果您只想在 MX 3D 系列路由器上启用终极跳跃弹出和链式下一跳跃,则还需要 enhanced-ip 配置语句选项 network-services

    您可在 [edit chassis] 层次结构级别配置此语句。配置 network-services 语句后,您需要重新启动路由器以启用 UHP 行为。

配置 RSVP 以在终极跳跃路由器上弹出标签

您可以控制 LSP 出口路由器上通告的标签值。默认通告标签为标签 3(隐式空标签)。如果播发标签 3,则倒数第二跳路由器将移除标签并将数据包发送至出口路由器。启用终极跳跃弹出后,将播发标签 0(IP 版本 4 [IPv4] 显式空标签)。终极跳跃弹出可确保通过 MPLS 网络的任何数据包都包含一个标签。

注:

瞻博网络路由器基于传入标签的队列数据包。来自其他供应商的路由器可能会以不同的方式排队数据包。与包含来自多家供应商的路由器的网络合作时,请记住这一点。

要为 RSVP 配置终极跳跃弹出,请包括以下 explicit-null 语句:

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

  • [edit protocols mpls]

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

支持在点到多点 LSP 上实现终极跳跃弹出

默认情况下,对于点对点和点对多点 LSP,倒数第二跳弹出用于 MPLS 流量。MPLS 标签在 LSP 出口路由器之前从路由器上的数据包中移除。然后,纯 IP 数据包会转发到出口路由器。对于最终跳跃弹出,出口路由器负责卸下 MPLS 标签和处理纯 IP 数据包。

在点到多点 LSP 上实现终极跳跃弹出是有益的,特别是在传输流量经过同一个出口设备时。如果启用终极跳跃弹出,则可以通过传入链路发送一个信息流副本,从而节省大量带宽。默认情况下,最终跳跃弹出禁用。

通过配置语句,您可以为点对多点 LSP 启用 tunnel-services 终极跳跃弹出。启用终极跳跃弹出时,Junos OS 会选择一个可用的虚拟回传隧道 (VT) 接口将数据包回传至 PFE 以进行 IP 转发。默认情况下,VT 接口选择流程将自动执行。带宽许可控制用于限制可在一个 VT 接口上使用的 LSP 数量。一旦在一个接口上消耗了所有带宽,Junos OS 会选择另一个带宽足以进行许可控制的 VT 接口。

如果 LSP 需要的带宽比任何 VT 接口都多,则无法启用终极跳跃弹出,反而启用倒数第二跳跃弹出。

要在点对多点 LSP 上弹出最终跳跃以正常运行,出口路由器必须具有提供通道服务的 PIC,例如通道服务 PIC 或自适应服务 PIC。隧道服务是弹出最终 MPLS 标签和退还数据包以查找 IP 地址所需的。

您可以通过包含 devices 语句选项 tunnel-services 来显式配置哪些 VT 接口可以处理 RSVP 流量。该 devices 选项允许您指定哪些 VT 接口将由 RSVP 使用。如果不配置此选项,则可使用路由器提供的所有 VT 接口。

要为路由器上的出口点到多点 LSP 启用终极跳跃弹出,请配置 tunnel-services 语句:

您可以在以下层次结构级别配置此语句:

  • [edit protocols rsvp]

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

要为出口点对多点 LSP 启用终极跳跃弹出,您还必须使用以下选项配置 interface 语句 all

您必须在层次结构级别配置此语句 [edit protocols rsvp]

跟踪 RSVP 协议流量

要跟踪 RSVP 协议流量,请包括以下 traceoptions 语句:

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

  • [edit protocols rsvp]

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

您可在 RSVP 语句中指定以下 RSVP traceoptions 特定标记:

使用 语 file 句指定接收跟踪操作输出的文件的名称。所有文件都放在目录 /var/log中。建议将 RSVP 跟踪输出放入文件 rsvp-log中。

  • all-所有追踪操作。

  • error—所有检测到的错误情况

  • event—RSVP 相关事件(有助于追踪与 RSVP 平滑重启相关的事件)

  • lmp—RSVP 链路管理协议 (LMP) 交互

  • packets—所有 RSVP 数据包

  • path—所有路径消息

  • pathtear—PathTear 消息

  • resv—Resv 消息

  • resvtear—ResvTear 消息

  • route— 路由信息

  • state— 会话状态转换,包括 RSVP 信号 LSP 出现并下降时。

注:

all小心使用追踪标志和detail标记修改器,因为这些可能会导致 CPU 变得非常忙碌。

要查看启用 RSVP 追踪功能时生成的日志文件,请发出 show log file-name 命令,您使用traceoptions语句指定的文件在哪里file-name

有关追踪和全局追踪选项的一般信息,请参阅 Junos OS 路由设备路由协议库

例子:跟踪 RSVP 协议流量

详细追踪 RSVP 路径消息:

追踪所有 RSVP 消息:

跟踪所有 RSVP 错误情况:

跟踪 RSVP 状态转换:

RSVP 日志文件输出

下面是通过在路由器上发出 show log file-name 命令生成的示例输出,路由器上已使用配置的标记启 state 用了 RSVP 追踪选项。RSVP 信号 LSP E-D 显示在 3 月 11 日 14:04:36.707092 上被拆除。3 月 11 日 14:05:30.101492,显示会恢复。

RSVP 平滑重启

RSVP 平滑重新启动允许重新启动的路由器通知其相邻邻的邻接方其情况。重新启动的路由器向邻接方或对等方请求宽限期,然后可与重新启动的路由器配合使用。重新启动的路由器仍然可以在重新启动期间转发 MPLS 信息流;网络中的融合不会中断。其他网络无法看到重新启动,重新启动的路由器也不会从网络拓扑中移除。可在传输路由器和入口路由器上启用 RSVP 平滑重新启动。它可用于点对点 LSP 和点对多点 LSP。

以下部分介绍了 RSVP 平滑重新启动:

RSVP 平滑重启术语

重新启动时间(以毫秒为单位)

默认值为 60,000 毫秒(1 分钟)。在 hello 消息中通告重新启动时间。时间表示邻接方应等待从重新启动的路由器接收 hello 消息的时间,然后再声明路由器已死亡并清除状态。

如果本地重新启动时间超过三分之一,Junos OS 可以覆盖邻接方通告的重新启动时间。例如,如果默认重新启动时间为 60 秒,路由器将等待 20 秒或更短的时间才能从重新启动的邻接方接收 hello 消息。如果重新启动时间为零,则可立即将重新启动邻接方宣布死亡。

恢复时间(以毫秒为单位)

仅在控制通道启动时(hello 交换完成)才在重新启动时间之前应用。仅适用于节点故障。

在进行平滑重新启动时,将通告完成恢复所需的时间。在其他时候,此值为零。通告的最大恢复时间为 2 分钟(120,000 毫秒)。

在恢复期间,重新启动的节点会在邻接方的帮助下尝试恢复其丢失的状态。重新启动节点的邻接方必须在恢复时间的一半内将带有恢复标签的路径消息发送至重新启动节点。重新启动节点在播发的恢复时间后,会考虑完成平滑重新启动。

RSVP 平滑重新启动操作

要使 RSVP 平滑重新启动正常运行,必须在全局路由实例上启用此功能。RSVP 平滑重新启动可以在协议级别(仅针对 RSVP)或所有协议的全局级别禁用。

RSVP 平滑重新启动需要以下重新启动路由器和路由器的邻接方:

  • 对于重新启动路由器,RSVP 平滑重新启动尝试维护由 RSVP 和分配的标签安装的路由,以便在不中断的情况下继续转发流量。RSVP 平滑重新启动速度足以减少或消除对相邻节点的影响。

  • 相邻的路由器必须启用 RSVP 平滑重新启动帮助器模式,从而能够协助路由器尝试重新启动 RSVP。

在 RSVP hello 消息中发送的称为重启帽的对象通告节点的重新启动功能。邻接节点将恢复标签对象发送至重新启动节点以恢复其转发状态。此对象本质上是重新启动节点在节点关闭前通告的旧标签。

以下列出了 RSVP 平滑重新启动行为,具体取决于配置和启用的功能:

  • 如果禁用帮助模式,Junos OS 不会尝试帮助邻接方重新启动 RSVP。从邻接方的重新启动帽对象到达的任何信息将被忽略。

  • 在路由实例配置下启用平滑重新启动时,路由器可在其邻接方的帮助下平稳重新启动。RSVP 在 hello 消息中通告重启帽对象 (RSVP RESTART),其中指定重新启动和恢复时间(两个值均不为 0)。

  • 如果在层次结构级别下 [protocols rsvp] 显式禁用 RSVP 平滑重新启动,则将重新启动帽对象通告,恢复时间指定为 0。支持重新启动邻接路由器(除非禁用帮助模式),但路由器本身不保留 RSVP 转发状态,无法恢复其控制状态。

  • 如果重新启动 RSVP 意识到未保留任何转发状态,则将重新启动帽对象通告,且恢复时间指定为 0。

  • 如果禁用平滑重新启动和帮助模式,则完全禁用 RSVP 平滑重新启动。路由器既不识别,也不通告 RSVP 平滑重新启动对象。

您无法显式配置重新启动时间和恢复时间的值。

与其他协议不同,除了固定超时之外,RSVP 无法确定其已完成重新启动过程。所有 RSVP 平滑重新启动过程均基于定时器。命令 show rsvp version 可能表示重启仍在进行中,即使所有 RSVP 会话已备份并已恢复路由。

处理重启帽对象

基于重启帽对象对邻接方做出以下假设(假设控制通道故障可以与节点重新启动明确区分):

  • 未在其 hello 消息中通告重新启动帽对象的邻接方无法帮助路由器进行状态或标签恢复,也无法执行 RSVP 平滑重新启动。

  • 重新启动后,在播发重新启动帽对象时,其重新启动时间等于任何值且恢复时间等于 0 的邻接方未保留其转发状态。当恢复时间等于 0 时,邻接方被视为已死亡,与此邻接方相关的任何状态都将清除,而不管重新启动时间的价值如何。

  • 重新启动后,使用 0 以外的值播发其恢复时间的邻接方可以保留或保持转发状态。如果本地路由器正在帮助其邻接方重新启动或恢复过程,则向此邻接方发送恢复标签对象。

配置 RSVP 平滑重启

以下 RSVP 平滑重新启动配置是可能的:

  • 平滑重新启动和帮助模式均已启用(默认)。

  • 已启用平滑重新启动,但是禁用帮助模式。以这种方式配置的路由器可以平滑重新启动,但是无法帮助邻接方重新启动和恢复过程。

  • 禁用平滑重新启动,但已启用帮助模式。以这种方式配置的路由器无法平滑重新启动,但可帮助重新启动邻接方。

  • 均禁用平滑重新启动和帮助模式。此配置可完全禁用 RSVP 平滑重新启动(包括重新启动和恢复过程以及帮助模式)。路由器的行为与不支持 RSVP 平滑重新启动的路由器类似。

注:

要开启 RSVP 平滑重新启动,必须将全局平滑重新启动计时器设置为至少 180 秒。

以下部分介绍如何配置 RSVP 平滑重新启动:

启用所有路由协议的平滑重启

要为 RSVP 启用平滑重新启动,您需要为支持在路由器上平稳重新启动的所有协议启用平滑重新启动。有关平滑重新启动的详细信息,请参阅 用于路由设备的 Junos OS 路由协议库

要在路由器上启用平滑重新启动,请包括以下 graceful-restart 语句:

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

  • [edit routing-options]

  • [edit logical-systems logical-system-name routing-options]

禁用 RSVP 平滑重启

默认情况下,当您启用平滑重新启动时,将启用 RSVP 平滑重新启动和 RSVP 帮助模式。但是,您可以禁用其中一个或两种功能。

要禁用 RSVP 平滑重新启动和恢复,请在[edit protocols rsvp graceful-restart]层级包含disable语句:

禁用 RSVP 帮助模式

要禁用 RSVP 帮助模式,请在层次结构级别中[edit protocols rsvp graceful-restart]包含helper-disable语句:

配置最大帮助者恢复时间

要配置路由器在进行平稳重新启动时保留其 RSVP 邻接方状态的时间量,请在层次结构级别中[edit protocols rsvp graceful-restart]包含maximum-helper-recovery-time语句。此值应用于所有相邻路由器,因此应根据最慢 RSVP 邻接方恢复所需的时间。

配置最大帮助者重新启动时间

要配置路由器发现邻接路由器已关闭与宣布邻接方已关闭之间的延迟,请在层次结构级别中[edit protocols rsvp graceful-restart]包含maximum-helper-restart-time语句。此值应用于所有相邻路由器,因此应根据最慢 RSVP 邻接方重新启动所需的时间。

RSVP LSP 隧道概述

资源预留协议 (RSVP) 标签交换系列 (LSP) 隧道允许您在其他 RSVP LSP 内发送 RSVP LSP。这使得网络管理员能够从网络的一端到另一端提供流量工程。此功能的实用应用程序是使用 RSVP LSP 将客户边缘 (CE) 路由器与提供商边缘 (PE) 路由器连接,然后在第二个 RSVP LSP 内通过网络核心传入此边缘 LSP。

您应全面了解 MPLS 和标签交换概念。有关 MPLS 的详细信息,请参阅 Junos MPLS 应用程序配置指南

RSVP LSP 隧道添加了转发邻接的概念,类似于用于通用多协议标签交换 (GMPLS) 的概念。(有关 GMPLS 的详细信息,请参阅 Junos GMPLS 用户指南

转发邻接为在 RSVP LSP 网络中的对等设备之间发送数据创建通道路径。建立转发邻接 LSP (FA-LSP) 后,可使用受限最短路径优先 (CSPF)、链路管理协议 (LMP)、开放最短路径优先 (OSPF) 和 RSVP 通过 FA-LSP 发送其他 LSP。

要启用 RSVP LSP 隧道,Junos OS 使用以下机制:

  • LMP — LMP 最初专为 GMPLS 设计,在 RSVP LSP 隧道对等方之间建立转发邻接关系,并维护和分配信息流工程链路资源。

  • OSPF 扩展 — OSPF 旨在将数据包路由到与 物理接口卡 (PIC) 相关的物理和逻辑接口。此协议已扩展至将数据包路由至 LMP 配置中定义的虚拟对等接口。

  • RSVP-TE 扩展 — RSVP-TE 旨在向物理接口发出数据包 LSP 设置信号。该协议已扩展至请求数据包 LSP 的路径设置,以便传输到 LMP 配置中定义的虚拟对等接口。

    注:

    从 Junos OS 15.1 版开始,多实例支持扩展到 MPLS RSVP-TE。此支持仅适用于虚拟路由器实例类型。路由器可以创建并参与多个独立的 TE 拓扑分区,从而允许每个分区 TE 域独立扩展。多实例 RSVP-TE 提供了手动挑选需要实例感知的控制平面实体的灵活性,例如,路由器可参与多个 TE 实例,同时仍然运行单个 BGP 实例。

    通过扩展 MPLS RSVP-TE 的 Junos OS 实施,可在 Junos OS 版本 16.1 中增强 LSP 的可用性、可见性、配置和故障排除。

    这些增强功能通过以下方式简化了大规模 RSVP-TE 配置:

    • 在流量通过 LSP 与 RSVP-TE LSP 自 ping 机制遍历 LSP 之前,确保 LSP 辞职期间的 LSP 数据平面就绪。

      除非已知已在数据平面中编程,否则 LSP 不应开始承载流量。在将流量切换到 LSP 或其 MBB 实例之前,LSP 数据平面中的数据交换(如 LSP ping 请求)发生在入口路由器上。在大型网络中,此流量会压倒 LSP 出口路由器,因为出口 LSP 需要响应 LSP ping 请求。LSP 自我 ping 机制允许入口 LER 创建 LSP ping 响应消息,并将其通过 LSP 数据平面发送。在接收这些消息时,出口 LER 会将其转发至入口,表示 LSP 数据平面的活力。这可确保 LSP 在编程数据平面之前不会开始承载流量。

    • 卸下入口路由器上 64K LSP 的当前硬限制,使用 RSVP-TE 信号 LSP 扩展 LSP 总数。每个出口最多可以配置 64K LSP。之前,此限制是可在入口 LER 上配置的 LSP 的聚合数量。

    • 防止入口路由器因在中转路由器发出 LSP 信号时延迟而突然中断 LSP。

    • 实现 LSP 数据集的灵活视图,以促进 LSP 特性数据可视化。

    注:

    从 Junos OS 17.4 版开始,会引入 1800 秒的自 ping 默认计时器。

LSP 层次结构存在以下限制:

  • 不支持基于电路交叉连接 (CCC) 的 LSP。

  • 不支持平滑重新启动。

  • 对于 FA-LSP 或转发邻接的出口点,不提供链路保护。

  • 跨 FA-LSP 不支持点对多点 LSP。

示例:RSVP LSP 隧道配置

图 5: RSVP LSP 隧道拓扑图RSVP LSP 隧道拓扑图

图 5 显示了端到端 RSVP LSP,称为 e2e_lsp_r0r5 起源于路由器 0 且在路由器 5 上终止。在传输过程中,此 LSP 遍历 FA-LSP fa_lsp_r1r4。返回路径由通过 FA-LSP 传输的端到端 RSVP LSP e2e_lsp_r5r0fa_lsp_r4r1表示。

在路由器 0 上,配置前往路由器 5 的端到端 RSVP LSP。使用严格路径遍历从路由器 1 到路由器 4 的路由器 1 和 LMP 流量工程链路。

路由器 0

在路由器 1 上,配置 FA-LSP 以到达路由器 4。与路由器 4 建立 LMP 流量工程链路和 LMP 对等关系。在信息流工程链路中参考 FA-LSP,并将对等接口添加至 OSPF 和 RSVP。

当端到端 LSP 到达路由器 1 时,路由平台将执行路由查找,并可将信息流转发至路由器 0。确保在路由器 0 和 1 之间正确配置 OSPF。

路由器 1

在路由器 2 上,在跨核心网络传输 FA-LSP 的所有接口上配置 OSPF、MPLS 和 RSVP。

路由器 2

在路由器 3 上,在跨核心网络传输 FA-LSP 的所有接口上配置 OSPF、MPLS 和 RSVP。

路由器 3

在路由器 4 上,配置回路路径 FA-LSP 以到达路由器 1。与路由器 1 建立 LMP 流量工程链路和 LMP 对等关系。在信息流工程链路中参考 FA-LSP,并将对等接口添加至 OSPF 和 RSVP。

当初始端到端 LSP 到达路由器 4 时,路由平台将执行路由查找,并可将流量转发至路由器 5。确保在路由器 4 和路由器 5 之间正确配置 OSPF。

路由器 4

在路由器 5 上,配置前往路由器 0 的端到端 RSVP LSP 的回路路径。使用严格路径遍历路由器 4 和从路由器 4 到路由器 1 的 LMP 流量工程链路。

路由器 5

验证您的工作

要验证 RSVP LSP 隧道是否工作正常,请发出以下命令:

  • show ted database (extensive)

  • show rsvp session name (extensive)

  • show link-management

  • show link-management te-link name (detail)

要查看与配置示例一起使用的这些命令,请参阅以下部分:

路由器 0

在路由器 0 上,您可以验证 FA-LSP 是否显示为信息流工程数据库中的有效路径。在这种情况下,请查找引用 LMP 流量工程链路地址的172.16.30.2路由器 1 (10.255.41.216) 和路由器 4 (10.255.41.217) 的172.16.30.1路径。在通过 FA-LSP 传输到路由器 5 时,您还可以发出 show rsvp session extensive 命令查找端到端 LSP 的路径。

路由器 1

在路由器 1 上,验证您的 LMP 流量工程链路配置是否工作且端到端 LSP 是否遍历信息流工程链路,方法是发出 show link-management 一组命令。您也可发出 show rsvp session extensive 命令以确认 FA-LSP 是否正常运行。

在 OSPF 和 RSVP 中配置对等接口

建立 LMP 对等方后,必须将对等接口添加至 OSPF 和 RSVP。对等接口是一种虚拟接口,用于支持两个对等方之间的控制邻接。

对等接口名称必须与层级 LMP 中配置的[edit protocols link-management]语句匹配peer peer-name。由于实际协议数据包由对等接口发送和接收,因此对等接口可以像为 OSPF 和 RSVP 配置的任何其他物理接口一样发出信号并通告给对等方。要为 LMP 对等方配置 OSPF 路由,请在[edit protocols ospf area area-number]层级包含peer-interface语句。要为 LMP 对等方配置 RSVP 信号,请将语句包含 peer-interface [edit protocols rsvp] 层次结构级别。

为 FA-LSP 定义标签交换系列

接下来,通过在层次结构级别中[edit protocols mpls] 包括label-switched-path语句来定义您的 FA-LSP。在层次结构级别的语句中 to 包括对等方的 [edit protocols mpls label-switched-path] 路由器 ID。由于数据包 LSP 是单向的,因此您必须创建一个 FA-LSP 才能到达对等方,另一个 FA-LSP 才能从对等方返回。

建立 FA-LSP 路径信息

为 FA-LSP 配置显式 LSP 路径时,必须将流量工程链路远程地址用作下一跳跃地址。支持 CSPF 时,可使用您希望的任何路径选项。但是,如果在层级使用语句[edit protocols mpls label-switched-path lsp-name]禁用 no-cspf CSPF,则必须使用严格的路径。

注:

如果端到端 LSP 源自与 FA-LSP 相同的路由平台,则必须禁用 CSPF 并使用严格的路径。

选项:平滑拆下 RSVP LSP

您可以在平滑抽取 LSP 使用的 RSVP 会话的两步进程中卸下 RSVP LSP。对于支持平滑推倒的所有邻接方,路由平台会将拆除请求发送至 LSP 的目标端点和路径中的所有 RSVP 邻接方。请求包含在 ADMIN_STATUS RSVP 数据包的字段中。当邻接方收到请求时,他们会准备撤回 RSVP 会话。由路由平台发送第二条消息,以完成 RSVP 会话的拆除。如果邻接方不支持平滑的推倒,则该请求作为标准会话拆除处理,而不是平滑的。

要执行 RSVP 会话的平滑拆除,请发出 clear rsvp session gracefully 命令。或者,您可以指定 RSVP 会话的来源和目标地址、RSVP 发送方的 LSP 标识符以及 RSVP 会话的隧道标识符。要使用这些限定符,请在connection-source发出 clear rsvp session gracefully 命令时包括 、 connection-destinationlsp-idtunnel-id选项。

您也可配置路由平台等待邻接方接收平滑拆除请求的时间量,然后再在层次结构级别中[edit protocols rsvp]包括graceful-deletion-timeout语句来启动实际的撕毁。默认平滑删除超时值为 30 秒,最小值为 1 秒,最大值为 300 秒。要查看为平滑删除超时而配置的当前值,请发出 show rsvp version 操作模式命令。

发布历史记录表
版本
说明
19.4R1
16.1
但是,从 Junos OS 16.1 版开始,当 RSVP hello 消息超时时,RSVP 会话会被关闭。