Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

LDP 配置

最小 LDP 配置

要使用最小配置启用 LDP:

  1. 在族 MPLS 下启用所有相关接口。在定向 LDP 的情况下,需要使用族 MPLS 来启用回传接口。

  2. 必配置[edit protocol mpls]层次结构级别下的相关接口。

  3. 在单个接口上启用 LDP,包括ldp语句并使用interface语句指定接口。

这是最小 LDP 配置。所有其他 LDP 配置语句都是可选的。

要在所有接口上启用 LDP, allinterface-name指定 for。

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

启用和禁用 LDP

LDP 是路由实例感知。要在特定接口上启用 LDP,请包括以下语句:

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

要在所有接口上启用 LDP, allinterface-name指定 for。

如果已在一组接口上配置了接口属性,并且希望在其中一个接口上禁用 LDP,请将interface语句包含在disable以下选项中:

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

配置 Hello 消息的 LDP 计时器

LDP hello 消息使 LDP 节点可以发现一个问题,并检测邻接方的故障或指向邻域的链接。Hello 消息会定期发送到启用 LDP 的所有接口。

LDP hello 消息有两种类型:

  • 链路 hello 消息 - 通过 LDP 接口发送,作为对 LDP 发现端口寻址的 UDP 数据包。在接口上接收 LDP link hello 消息使用 LDP 对等路由器标识邻接关系。

  • 有针对性的 hello 消息 - 以 UDP 数据包寻址至特定地址的 LDP 发现端口发送。目标 hello 消息用于支持未直接连接的路由器之间的 LDP 会话。目标路由器决定是响应还是忽略目标呼叫邮件。通过定期将目标呼叫消息发送回起始路由器,选择响应的目标路由器。

默认情况下,LDP 会每隔 5 秒钟发送一次 hello 消息用于发送链路 hello 消息,而对于有针对性的 hello 消息,则每隔 15 秒钟发送一次。您可以配置 LDP 计时器,以改变两种类型的 hello 消息的频繁发送方式。但是,您不能为大于 LDP 保留时间的 LDP 计时器配置时间。有关详细信息,请参阅在 LDP 邻居被视为关闭之前配置延迟

配置 Link Hello 消息的 LDP 计时器

要修改 LDP 发送 link hello 消息的频率,请使用以下hello-interval语句为 LDP 计时器指定新的 link hello 消息间隔:

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

为目标 Hello 消息配置 LDP 计时器

要修改 LDP 发送目标呼叫消息的频率,请将hello-interval语句配置为targeted-hello语句选项,以便为 ldp 计时器指定新的定向呼叫消息间隔:

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

在 LDP 邻居被视为关闭之前配置延迟

保留时间确定 LDP 节点在将邻接方声明为 down 时应等待呼叫消息的时间长度。此值作为 hello 消息的一部分发送,因此每个 LDP 节点告诉其邻居需要多长时间才能等待。每个邻居发送的值不必匹配。

通常,保留时间至少应为呼叫间隔的三倍。链路 hello 消息的默认设置为 15 秒,对于目标 hello 消息为 45 秒。但是,可以配置接近呼叫间隔值的 LDP 保留时间。

注:

通过将 LDP 保留时间配置为接近呼叫间隔(呼叫间隔不到三倍),可以更快检测 LDP 邻居故障。但是,这也会增加路由器可能将正常运行的 LDP 邻接节点声明的可能性。有关详细信息,请参阅配置 Hello 消息的 LDP 计时器

LDP 保留时间也会在 LDP 对等方之间自动协商。当两个 LDP 对等方通告不同的 LDP 保留时间时,将使用较小的值。如果 LDP 对等路由器播发的保持时间比配置的值短,则使用对等路由器通告的保持时间。此协商也会影响 LDP 激活间隔。

如果在 LDP 对等协商期间本地 LDP 保留时间未缩短,则用户配置的激活间隔将保持不变。但是,如果在对等协商期间,本地保留时间减少,则将重新计算活间隔。如果在对等协商期间 LDP 保留时间已减少,则活间隔缩短为新保留时间值的三分之一。例如,如果新的保留时间值为45秒,则活间隔设置为15秒。

这种自动激活间隔计算可能会导致在每台对等路由器上配置不同的活间隔。这使得路由器在发送活动消息的频率上具有灵活性,因为 LDP 对等方协商可确保比 LDP 保留时间更频繁地发送它们。

重新配置保留时间间隔时,更改在会话重置后才会生效。在 LDP 对等会话启动时协商保留时间,只要会话启动,就不能重新协商(RFC 5036,LDP 规范要求)。要手动强制重置 LDP 会话,请发出clear ldp session命令。

配置链路呼叫消息的 LDP 保留时间

要修改 LDP 节点在向下声明邻居之前等待链接 hello 消息的时间长度,请使用以下hold-time语句指定新时间(以秒为单位):

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

配置目标 Hello 消息的 LDP 保留时间

要修改 LDP 节点在将邻居声明到下方之前等待目标呼叫消息的时间,请使用hold-time语句作为targeted-hello语句选项,以秒为单位指定新时间:

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

为 LDP 启用严格的目标 Hello 消息

使用严格的目标呼叫消息防止与未明确配置的远程邻居建立 LDP 会话。如果配置strict-targeted-hellos语句,LDP 对等方不会响应来自不是其配置的远程邻居之一的源的目标 hello 消息。配置的远程邻居可能包括:

  • 配置了 LDP 隧道的 RSVP 隧道的端点

  • 第 2 层电路邻路

如果未配置的邻居发送 hello 消息,LDP 对等方将忽略该消息并记录错误(带有error跟踪标记),指示源。例如,如果 LDP 对等方收到来自 Internet 地址10.0.0.1 的目标 hello,并且没有特别配置此地址的邻居,则会在 LDP 日志文件中输出以下消息:

要启用严格的目标呼叫消息,请strict-targeted-hellos包括以下语句:

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

配置 LDP 激活消息的间隔

激活间隔决定消息在会话上发送的频率,以确保不超过活超时。如果在这段时间内未在会话上发送其他 LDP 流量,则会发送激活消息。默认值为 10 秒。最小值为1秒。

如果对对等路由器上的 LDP 保留时间配置的值低于本地配置的值,则可在 LDP 会话协商期间更改为激活间隔配置的值。有关详细信息,请参阅在 LDP 邻居被视为关闭之前配置延迟

要修改激活间隔,请包括以下keepalive-interval语句:

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

配置 LDP 激活超时

建立 LDP 会话后,必须定期交换消息,以确保会话仍然有效。活超时定义邻居 LDP 节点在决定会话失败之前要等待的时间量。此值通常至少设置为激活间隔的三倍。默认值为 30 秒。

要修改激活间隔,请包括以下keepalive-timeout语句:

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

在发出keepalive-timeout命令时, show ldp session detail为该语句配置的值将显示为保留时间。

为 LDP 配置最长匹配

为了允许 LDP 学习跨 OSPF 区域或域之间的 ISIS 级别聚合或汇总的路由,Junos OS 允许您基于 RFC5283为 LDP 配置最长匹配。

在为 LDP 配置最长匹配项之前,必须执行以下操作:

  1. 配置设备接口。

  2. 配置 MPLS 协议。

  3. 配置 OSPF 协议。

要为 LDP 配置最长匹配项,必须执行以下操作:

  1. 配置 LDP 协议的最长匹配项。
  2. 在接口上配置 LDP 协议。

    例如,要配置接口:

示例:为 LDP 配置最长匹配

此示例显示了如何基于 RFC5283为 LDP 配置最长匹配。这允许 LDP 了解跨域内 OSPF 区域或 ISIS 级别的聚合或汇总的路由。。最长匹配策略提供每个前缀的粒度。

要求

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

  • 六个带 OSPF 协议的 MX 系列路由器,以及在连接接口上启用的 LDP。

  • Junos OS Release 16.1 或更高版本运行在所有设备上。

开始之前:

  • 配置设备接口。

  • 配置 OSPF。

概述

LDP 通常用于在整个网络域中使用 OSPF 或 IS-IS 等 IGP 建立 MPLS 标签交换路径(Lsp)。在此类网络中,域中的所有链路都有 IGP 邻接和 LDP 邻接。LDP 通过 IP 转发确定,在目的地的最短路径上建立 Lsp。在 Junos OS 中,LDP 实现对筋中 FEC 的 IP 地址或标签映射的 IGP 路由执行精确匹配查找。此精确映射需要在所有 LERs 中配置 MPLS 端到端 LDP 端点 IP 地址。这违背了接入设备中 IP 分层设计或默认路由的目的。通过longest-match抑制精确的匹配行为,并基于每个前缀的最长匹配路由来设置 LSP,配置有助于克服这种情况。

拓扑

在拓扑中,显示了在设备 R0 上配置 图 1 LDP 的最长匹配。

图 1: LDP 的最长匹配示例LDP 的最长匹配示例

配置

CLI 快速配置

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

R0

R1

R2

R3

R4

R5

配置设备 R0

分步过程

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

要配置设备 R0:

  1. 配置接口。

  2. 将回送地址分配给设备。

  3. 配置路由器 ID。

  4. 在接口上配置 MPLS 协议。

  5. 在接口上配置 OSPF 协议。

  6. 配置 LDP 协议的最长匹配项。

  7. 在接口上配置 LDP 协议。

成果

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

如果您完成了设备配置,请从commit配置模式进入。

针对

确认配置是否正常工作。

验证路由

用途

验证是否了解了预期的路由。

行动

在设备 R0 上,从运行模式运行show route 命令以显示路由表中的路由。

含义

输出显示设备 R0 的路由表中的所有路由。

验证 LDP 概述信息

用途

显示 LDP 概述信息。

行动

在设备 R0 上,从运行模式运行show ldp overview命令以显示 LDP 的概述。

含义

输出显示设备 R0 的 LDP 概述信息

验证内部拓扑结构表中的 LDP 条目

用途

显示标签分发协议(LDP)内部拓扑表中的路由条目。

行动

在设备 R0 上,从运行模式运行show ldp route命令以显示 LDP 的内部拓扑表。

含义

输出将显示设备 R0 的标签分发协议(LDP)内部拓扑表中的路由条目。

仅验证 LDP 路由的 FEC 信息

用途

仅显示 LDP 路由的 FEC 信息。

行动

在设备 R0 上,从运行模式运行show ldp route fec-only 命令以显示路由表中的路由。

含义

输出仅显示可用于设备 R0 的 LDP 协议的 FEC 路由。

验证 LDP 的 FEC 和影子路由

用途

显示路由表中的 FEC 和影子路由。

行动

在设备 R0 上,从运行模式运行show ldp route fec-and-route命令以显示路由表中的 FEC 和影子路由。

含义

输出显示设备 R0 的 FEC 和影子路由

配置 LDP 路由首选项

当几个协议计算到相同目标的路由时,路由首选项用于选择要安装在转发表中的路由。选择具有最低优先级值的路由。首选值可以是0到255范围内的一个数字。默认情况下,LDP 路由的首选值为9。

要修改路由首选项,请包含preference以下语句:

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

LDP 平滑重启

LDP 平滑重新启动支持重新启动其 LDP 控制平面的路由器继续转发流量,同时从邻接路由器恢复其状态。它还允许启用帮助器模式的路由器帮助正在尝试重新启动 LDP 的邻接路由器。

在会话初始化期间,路由器将公布其执行 LDP 平滑重新启动的能力,或者利用通过发送平滑重新启动 TLV 执行 LDP 平滑重新启动的邻居。此 TLV 包含与 LDP 平滑重新启动有关的两个字段:重新连接时间和恢复时间。重新连接和恢复时间的值表示路由器支持的平滑重新启动功能。

当路由器发现邻接路由器正在重新启动时,它会一直等到恢复时间结束后再尝试重新连接。恢复时间是路由器等待 LDP 正常重新启动的时间长度。恢复时间段从发送或接收初始化消息时开始。此时间段通常也是邻接路由器维护其重新启动路由器信息的时间长度,允许它继续转发信息流。

您可以在 LDP 协议的 master 实例和特定路由实例中配置 LDP 平滑重新启动。您可以在所有协议的全局级别、仅适用于 LDP 的协议级别和特定路由实例上禁用平滑重启。默认情况下,LDP 平滑重新启动被禁用,因为在全局级别,默认情况下禁用宽容重新启动。但是,默认情况下,帮助器模式(帮助邻接的路由器尝试平滑重新启动的能力)处于启用状态。

以下是与 LDP 平滑重新启动相关联的一些行为:

  • 在重新启动时不会维护传出标签。分配新的传出标签。

  • 当路由器重新启动时,不会向支持平滑重新启动的邻居发送标签映射消息,直到重新启动路由器稳定(标签映射消息立即发送至不支持平滑重新启动的邻居)。但是,所有其他消息(活、地址消息、通知和发布)都照常发送。分发这些其他消息可防止路由器分配不完整的信息。

  • 帮助器模式和平滑重新启动是独立的。您可以在配置中禁用平滑重新启动,但仍允许路由器与尝试正常重新启动的邻居合作。

配置 LDP 平滑重启

当您在 "或[edit routing-options graceful-restart][edit protocols ldp graceful-restart] " 层次结构级别上更改平滑重新启动配置时,任何正在运行的 LDP 会话都将自动重新启动以应用平滑重新启动配置。此行为会在您更改其平滑重新启动配置时反映 BGP 的行为。

默认情况下,将启用平滑重新启动帮助器模式,但会禁用平滑重新启动。因此,路由器的默认行为是帮助邻接的路由器尝试平滑重新启动,但不会尝试平稳重新启动。

要配置 LDP 平滑重新启动,请参阅以下部分:

实现平滑重启

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

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

  • [edit routing-options]

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

注:

ACX 系列路由器不支持 [edit logical-systems logical-system-name routing-options] 层次结构级别。

graceful-restart语句为在路由器上支持此功能的所有协议启用平滑重新启动。有关平稳重新启动的信息,请参阅 Junos OS设备的路由协议库 。

默认情况下,当您在 LDP 协议级别和所有路由实例上启用平滑重启时,将启用 LDP 平滑重新启动。但是,您可以禁用两个 LDP 平滑重新启动和 LDP 平滑重新启动帮助器模式。

禁用 LDP 平滑重新启动或帮助器模式

要禁用 LDP 平滑重新启动和恢复,请disable包括以下语句:

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

您只能在 LDP 协议级别禁用 helper 模式。您不能为特定路由实例禁用帮助器模式。要禁用 LDP helper 模式,请包含helper-disable以下语句:

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

以下 LDP 平滑重新启动配置可能:

  • LDP 平滑重新启动和帮助器模式均已启用。

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

  • LDP 平滑重新启动和帮助器模式均已禁用。路由器不使用在初始化消息中发送的 LDP 平滑重新启动或平滑重新启动类型、长度和值(TLV)。路由器的行为是不能支持 LDP 平滑重新启动的路由器。

如果尝试启用平滑重新启动并禁用帮助器模式,将发出配置错误。

配置重新连接时间

当邻接方之间的 LDP 连接发生故障时,邻接方会在一定的时间段内等待正常重新启动路由器以继续发送 LDP 消息。在等待时间段后,可以重新建立 LDP 会话。您可以按秒配置等待时间。此值包含在启用 LDP 温和重新启动的 LDP 初始化消息中发送的容错会话 TLV 中。

假设路由器 A 和路由器 B 是 LDP 邻居。路由器 A 是重新启动路由器。重新连接时间是路由器 B 检测到路由器 A 重新启动后,路由器 A 会告诉路由 B 等待的时间。

要配置重新连接时间,请包括reconnect-time以下语句:

您可将重新连接时间设置为一个介于30到300秒之间的值。默认情况下,为60秒。

有关可在其中配置这些语句的层次结构级别列表,请参阅这些语句的语句摘要部分。

配置恢复时间和最大恢复时间

恢复时间是路由器等待 LDP 正常重新启动的时间量。恢复时间段从发送或接收初始化消息时开始。此期间通常也是邻接路由器保持其有关重新启动路由器信息的时间量,从而允许它继续转发信息流。

要防止邻接路由器因从重新启动路由器接收到恢复时间的错误值而产生不利影响,您可以在邻接路由器上配置最大恢复时间。邻接路由器保持其状态较短两倍。例如,路由器 A 正在执行 LDP 平滑重新启动。它向邻接路由器 B 发送了 900 秒的恢复时间。但是,路由器 B 将最大恢复时间配置为 400 秒。路由器 B 将仅等待 400 秒,然后再从路由器 A 中设置 LDP 信息。

要配置恢复时间,请包括recovery-time语句和maximum-neighbor-recovery-time语句:

有关可在其中配置这些语句的层次结构级别列表,请参阅这些语句的语句摘要部分。

过滤入站 LDP 标签绑定

您可以过滤收到的 LDP 标签绑定,应用策略以接受或拒绝邻接路由器通告的绑定。要配置接收的标签过滤,请包含import以下语句:

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

命名策略(在[edit policy-options]层次结构级别上配置)应用于从所有 LDP 邻居接收的所有标签绑定。所有过滤均通过from语句完成。表 1列出仅适用from于 LDP 已接收标签筛选的唯一运算符。

表 1: 来自应用于 LDP 已接收-标签筛选的运算符

from 运营商

Description

interface

与从指定接口上邻接的相邻节点接收的绑定匹配

neighbor

与从指定 LDP 路由器 ID 接收的绑定匹配

next-hop

从通告指定接口地址的邻居中接收的绑定匹配

route-filter

与具有指定前缀的绑定匹配

如果绑定经过筛选,则它仍显示在 LDP 数据库中,但不会被视为作为标签交换路径(LSP)的一部分进行安装。

通常,应用 LDP 中的策略只能用于阻止设施的建立,而不是控制其路由。这是因为 LSP 遵循的路径由单播路由(而不是 LDP)确定。但是,如果通过不同邻接点向目标提供多个等成本路径,则可以使用 LDP 过滤来排除某些可能的下一跳跃。(否则,LDP 会随机选择一个可能的下一个跃点。)

LDP 会话未绑定到接口或接口地址。LDP 仅通告每个路由器(不是每个接口)标签;因此,如果两个路由器之间存在多个并行链路,则仅建立一个 LDP 会话,并且不会绑定到单个接口。当路由器将多个邻接关系到同一相邻节点时,请小心确保过滤器执行预期操作。(在这种next-hop情况interface下,通常使用和不适合。)

如果标签已被筛选(意味着它已被策略拒绝,不用于构建 LSP),则会在数据库中标记为已过滤:

有关如何配置 LDP 策略的信息,请参阅 路由策略、防火墙 过滤器和流量管制器用户指南

例子过滤入站 LDP 标签绑定

仅接受来自所有邻居的/32 前缀:

接受 131.108/16 路由器 ID 或延长此时间 10.10.255.2 ,并接受所有其他邻接方的所有前缀:

过滤出站 LDP 标签绑定

您可以将导出策略配置为过滤 LDP 出货标签。您可以通过应用路由策略来过滤出站标签绑定,以阻止绑定被通告到邻接路由器。要配置出站标签过滤,请export包含以下语句:

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

命名导出策略(在[edit policy-options]层次结构级别上配置)应用于所有传输到所有 LDP 邻居的标签绑定。适用于from LDP 出站标签筛选的唯一运算符是route-filter与具有指定前缀的绑定匹配。仅to适用于出站标签过滤的操作员是中表 2的操作。

表 2: 对 LDP 出站标签过滤的运算符

到操作员

Description

interface

将匹配的绑定发送至指定接口上邻接的相邻节点

neighbor

与发送到指定 LDP 路由器 ID 的绑定匹配

next-hop

发送到相邻节点的绑定匹配通告指定的接口地址

如果绑定被过滤,则绑定不会通告到邻接路由器,但可作为 LSP 的一部分安装在本地路由器上。您可以在 LDP 中应用策略,阻止建立 Lsp,但不能控制其路由。LSP 遵循的路径由单播路由(而非 LDP)确定。

LDP 会话未绑定到接口或接口地址。LDP 仅通告每个路由器(不是每个接口)标签。如果两个路由器之间存在多个并行链路,则仅建立一个 LDP 会话,并且不会绑定到单个接口。

当路由器有多next-hopinterface邻接关系到相同的相邻节点时,不要使用 and 运算符。

已过滤的标签在数据库中标记:

有关如何配置 LDP 策略的信息,请参阅 路由策略、防火墙 过滤器和流量管制器用户指南

例子过滤出站 LDP 标签绑定

阻止路由传输给任何 10.10.255.6/32 邻里网络:

只向 131.108/16 路由器 ID 发送或发送更长时间 10.10.255.2 ,并将所有前缀发送到所有其他路由器:

指定 LDP 使用的传输地址

路由器必须先建立彼此之间的 TCP 会话,然后才能建立 LDP 会话。TCP 会话允许路由器交换 LDP 会话所需的标签广告。要建立 TCP 会话,每个路由器都必须了解另一个路由器的传输地址。传输地址是用于识别 LDP 会话将运行的 TCP 会话的 IP 地址。

要配置 LDP 传输地址,请包含传输地址语句:

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

如果指定此router-id选项,路由器标识符的地址将用作传输地址(除非另有配置),否则路由器标识符通常与回传地址相同。如果指定此interface选项,接口地址将用作可通过该接口到达的邻接方的任何 LDP 会话的传输地址。请注意,默认情况下,路由器标识符用作传输地址。

如果存在多个interface到相同 LDP 邻域的并行链路,则不能指定该选项,因为 LDP 规范要求在所有接口上将相同的传输地址通告到相同的邻接方。如果 LDP 检测到相同邻接方的多个并行链路,它将逐个禁用接口,直到清除此状态,方法是断开接口上的邻居或指定router-id选项。

用于目标-LDP 会话的控制传输地址

要建立两台设备之间的 TCP 会话,每个设备必须了解另一设备的传输地址。传输地址是用于识别 LDP 会话操作的 TCP 会话的 IP 地址。之前,此传输地址只能是路由器 ID 或接口地址。借助 LDP 传输地址功能,您可以将任何 IP 地址显式配置为2层电路、MPLS 和 VPLS 邻接的目标 LDP 邻居的传输地址。这使您可以使用传输地址配置来控制目标-LDP 会话。

控制用于目标-LDP 会话的传输地址的好处

配置用于建立目标-LDP 会话的传输地址具有以下优点:

  • Flexible interface configurations— 可以灵活地为一个环路接口配置多个 IP 地址,同时不会中断目标-LDP 邻居之间的 LDP 会话创建。

  • Ease of operation—接口级别配置的传输地址允许您在路由中枢中使用IGP协议用于 LDP。这实现了平滑、轻松的操作。

目标-LDP 传输地址概述

在 Junos OS Release 19.1 R1 之前,LDP 仅将路由器 ID 或接口地址提供支持作为任何 LDP 接口上的传输地址。在该接口上形成的邻接使用分配给接口的 IP 地址之一或路由器 ID。在目标邻接的情况下,接口为回传接口。在设备上配置多个环回地址时,无法为接口派生出传输地址,因此无法建立 LDP 会话。

从 Junos OS Release 19.1 r1 开始,除了用于目标-LDP 会话的传输地址的默认 ip 地址之外,您还可以将任何其他 IP 地址配置为在sessionsession-group下的传输地址和配置interface声明. 传输地址配置适用于配置的邻接方,仅包括2层电路、MPLS 和 VPLS 邻接。此配置不适用于已发现的邻接(设定了目标)。

传输地址首选参数

您可以在会话、会话组和接口级别配置目标-LDP 会话的传输地址。

配置传输地址之后,将根据 LDP 的传输地址首选项建立目标-LDP 会话。

目标邻接方的传输地址优先级顺序(通过第2层电路、MPLS、VPLS 和 LDP 配置配置)如下:

  1. [edit protocols ldp session]层次结构下。

  2. [edit protocols ldp session-group]层次结构下。

  3. [edit protocols ldp interfcae lo0]层次结构下。

  4. [edit protocols ldp]层次结构下。

  5. 默认地址。

发现的邻居的传输地址优先级顺序如下:

  1. [edit protocols ldp interfcae]层次结构下。

  2. [edit protocols ldp]层次结构下。

  3. 默认地址。

自动目标邻居的传输地址优先级顺序,LDP 配置为接受 hello 数据包,如下所示:

  1. [edit protocols ldp interfcae lo0]层次结构下。

  2. [edit protocols ldp]层次结构下。

  3. 默认地址。

传输地址配置故障排除

您可以使用以下 show 命令输出对目标-LDP 会话进行故障排除:

  • show ldp session

  • show ldp neighbor

    detail命令输出的show ldp neighbor级别将在 hello 消息中发送的传输地址显示在目标邻居中。如果无法从邻居到达此地址,LDP 会话将不会启动。

  • show configuration protocols ldp

您也可启用 LDP 追踪选项进行进一步的故障排除。

  • 如果配置已从使用无效(不可访问)的传输地址更改为有效的传输地址,则可以观察到以下踪迹:

  • 如果配置已从使用有效的传输地址更改为无效的传输地址(不可访问),则可以观察到以下踪迹:

如果配置发生故障,请执行以下故障排除任务:

  • 检查address family。在session语句下配置的传输地址必须与邻居或会话属于相同的地址系列。

  • neighborsession语句下配置为传输地址的地址对于要启动的目标呼叫消息,必须位于路由器的本地。您可以检查地址是否已配置。如果未在任何接口下配置地址,则配置将被拒绝。

配置从路由表中通告到 LDP 的前缀

您可以控制通告到 LDP 中的一组前缀,并使路由器成为这些前缀的出口路由器。默认情况下,只有回传地址通告到 LDP 中。要将路由表中的一组前缀配置为要通告到 LDP 中,请egress-policy包含以下语句:

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

注:

如果为不包含回传地址的 LDP 配置出口策略,则不会再在 LDP 中通告。要继续通告环回地址,您需要将其显式配置为 LDP 出口策略的一部分。

命名策略(在[edit policy-options][edit logical-systems logical-system-name policy-options]层次结构级别上配置)将应用于路由表中的所有路由。这些与策略匹配的路由将通告到 LDP 中。您可以使用export语句来控制要将这些前缀通告到的邻接方集。仅 from 考虑运算符;您可以使用任何有效的 from 运算符。有关详细信息,请参阅 Junos OS 设备的路由协议库

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

示例:配置通告到 LDP 中的前缀

将所有连接的路由公布到 LDP 中:

配置 FEC Deaggregation

当 LDP 出口路由器公布多个前缀时,这些前缀将绑定到单个标签,并聚合到单个转发等价类(FEC)中。默认情况下,当广告遍历网络时,LDP 将维护此聚合。

通常,由于 LSP 未跨多个后续跃点分割,并且前缀绑定到单个 LSP,因此不会发生跨成本路径的负载平衡。但是,如果配置负载平衡策略并 deaggregate Fec,您可以在同等成本路径上实现负载平衡。

Deaggregating Fec 会导致每个前缀都绑定到单独的标签,并成为单独的 LSP。

要配置 deaggregated Fec,请包含deaggregate以下语句:

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

对于所有 LDP 会话,只能在全局范围内配置 deaggregated Fec。

Deaggregating FEC 允许生成的多个 Lsp 跨多个同等成本路径分配,并跨多个出口分段的下一个跃点分配 Lsp,但每个 LSP 仅安装一个下一跳跃。

要聚合 Fec,请包含no-deaggregate以下语句:

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

对于所有 LDP 会话,只能在全局范围内配置聚合 Fec。

为 LDP Fec 配置监管器

您可以将 Junos OS 配置为跟踪和警察对 LDP Fec 的流量。LDP FEC 监管器可用于执行以下任意操作:

  • 跟踪或警察 LDP FEC 的入口流量。

  • 跟踪或警察 LDP FEC 的传输流量。

  • 跟踪或警察 LDP FEC 来自特定转发类的信息流。

  • 跟踪或警察来自特定虚拟路由和转发(VRF)站点的 LDP FEC 流量。

  • 丢弃为特定 LDP FEC 绑定的假信息流。

要对 LDP FEC 的流量进行警方,必须先配置过滤器。具体而言,您需要在interfaceinterface-set[edit firewall family protocol-family filter filter-name term term-name from]层次结构级别上配置语句或语句。该interface语句允许您将过滤器与单个接口相匹配。该interface-set语句允许您将过滤器与多个接口相匹配。

有关如何配置 LDP FEC 语句、语句和策略的信息,请参阅 路由策略、防火墙过滤器和流量管制器 interfaceinterface-set用户指南

配置过滤器后,需要将其包含在 LDP 的policing语句配置中。要配置 LDP Fec 的监管器,请包含policing以下语句:

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

policing语句包含以下选项:

  • fec—指定要策略的 LDP FEC 的 FEC 地址。

  • ingress-filter—指定入口流量过滤器的名称。

  • transit-traffic—指定传输流量过滤器的名称。

配置 LDP IPv4 FEC 筛选

默认情况下,在建立目标 LDP 会话时,Junos OS 始终通过目标 LDP 会话交换 IPv4 转发同等类 (FEC) 和 2 层电路 FEC。对于与间接连接的邻接方的 LDP 会话,如果会话被特别配置为支持第 2 层电路或 VPLS,则只能将第 2 层电路 FEC 导出到邻接方。

在将所有非 BGP 前缀都通告到 LDP 的混合供应商网络中,LDP 数据库可能会变得很大。对于这种类型的环境,防止由于第 2 层电路或 LDP VPLS 配置而形成的 LDP 会话上的 IPv4 FEC 通告非常有用。同样,过滤在此类环境中收到的任何 IPv4 Fec 可能也很有用。

如果与 LDP 会话关联的所有 LDP 邻Junos OS都是第 2 层,则可以通过配置 语句来Junos OS第 2 层电路 l2-smart-policy FEC。此功能还会自动筛选出在此会话上收到的 IPv4 Fec。对已激活的显式导出或导入策略进行l2-smart-policy配置,可在相应的方向上禁用此功能。

如果一个 LDP 会话的邻接关系形成是因为已发现的邻接关系,或者由于一个或多个 RSVP LSP 上的 LDP 隧道配置而形成邻接关系,则使用默认行为通告和接收 IPv4 FEC。

为了防止 LDP 在具有第 2 层邻接的 LDP 会话中导出 IPv4 FEC 并过滤掉通过此类会话收到的 IPv4 FEC,请 l2-smart-policy 添加以下语句:

有关可用于配置此语句的层次结构级别列表,请参阅本声明的语句摘要。

为 LDP Lsp 配置 BFD

您可以为 LDP Lsp 配置双向转发检测(BFD)。BFD 协议是一种简单的 hello 机制,可检测网络中的故障。Hello 数据包以指定的定期间隔发送。当路由器在指定间隔后停止接收应答时,将检测到邻居故障。BFD 与各种网络环境和拓扑配合使用。BFD 的故障检测计时器的时间限制比静态路由的故障检测机制短,从而加快检测速度。

只要路径的 BFD 会话发生故障,就会记录错误。以下内容显示了如何显示 LDP LSP 日志消息的 BFD:

您还可以配置 RSVP Lsp 的 BFD,详见为Rsvp 信号 Lsp 配置 BFD中的说明。

BFD 故障检测计时器是自适应的,可调整为更高或更低的效率。例如,如果邻接发生故障,则计时器可适应更高的值,或者相邻节点可以协商更高的定时器值,而不是配置的值。当 BFD 会话封盖在15秒内出现三次以上时,计时器可适应更高的价值。如果本地 BFD 实例是会话封盖的原因,则备份算法将接收(Rx)间隔增加两个。如果远程 BFD 实例是会话封盖的原因,则传输(Tx)间隔增加了两个。您可以使用clear bfd adaptation命令将 BFD 间隔计时器返回到其配置值。此clear bfd adaptation命令为无中断,表示命令不影响路由设备上的信息流。

要为 LDP Lsp 启用 BFD,请包括oambfd-liveness-detection语句:

通过使用fec[edit protocols ldp]层次结构级别上的选项配置 FEC 地址,可为与特定转发等价类(FEC)相关联的 LDP lsp 启用 BFD。或者,您也可以配置操作管理和管理(OAM)入口策略,以便在一系列 FEC 地址上启用 BFD。有关详细信息,请参阅配置 LDP 的 OAM 入口策略

除非显式配置了等效的 FEC 地址,或者使用 OAM 入口策略在 Fec 上启用 OAM,否则您无法启用 BFD LDP Lsp。如果没有为任何 FEC 地址启用 BFD,BFD 会话将不会出现。

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

  • [edit protocols ldp]

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

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

oam语句包含以下选项:

  • fec—指定 FEC 地址。您必须指定 FEC 地址或配置 OAM 入口策略,以确保 BFD 会话出现。

  • lsp-ping-interval—指定 LSP ping 间隔的持续时间(以秒为单位)。要在 LDP 信号的 LSP 上发出 ping,请使用ping mpls ldp命令。有关详细信息,请参阅 CLI Explorer

bfd-liveness-detection语句包含以下选项:

  • ecmp—导致 LDP 为为指定 FEC 配置的所有 ECMP 路径建立 BFD 会话。如果配置该ecmp选项,则还必须为指定的periodic-traceroute FEC 配置语句。如果不这样做,提交操作将失败。您可以在全局periodic-traceroute层次结构级别([edit protocols ldp oam])配置语句,同时仅为特定ecmp FEC ([edit protocols ldp oam fec address bfd-liveness-detection])配置选项。

  • 举行间隔— 指定 BFD 会话在添加路由或下一跃点之前应保持运行的时间。将时间指定为0秒将导致在 BFD 会话恢复后立即添加路由或下一个跳跃。

  • minimum-interval—指定最小传输和接收间隔。如果配置此minimum-interval选项,则无需配置minimum-receive-interval选项或minimum-transmit-interval选项。

  • minimum-receive-interval—指定最小接收间隔。范围为 1 到 255,000 毫秒。

  • minimum-transmit-interval—指定最小传输间隔。范围为 1 到 255,000 毫秒。

  • multiplier— 指定检测时间倍增器。范围为1到255。

  • 版本—指定 BFD 版本。选项为 BFD 版本0或 BFD 版本1。默认情况下,Junos OS 软件会尝试自动确定 BFD 版本。

为 LDP Lsp 配置 ECMP 感知 BFD

为 FEC 配置 BFD 时,会为路由器仅建立一个活动的本地下一跳跃的 BFD 会话。但是,您可以配置多个 BFD 会话,每个 FEC 与一个特定的同等成本多路径(ECMP)路径相关联。为了使其正常运行,您还需要配置 LDP LSP 定期 traceroute。(请参阅配置 LDP LSP Traceroute。)LDP LSP traceroute 用于发现 ECMP 路径。将为发现的每个 ECMP 路径启动一个 BFD 会话。只要其中一个 ECMP 路径的 BFD 会话发生故障,就会记录错误。

LDP LSP traceroute 将定期运行,以检查 ECMP 路径的完整性。发现问题时,可能会发生以下情况:

  • 如果 FEC 的最新 LDP LSP traceroute 不同于以前的 traceroute,将关闭与该 FEC 相关联的 BFD 会话(地址范围的 BFD 会话已从先前运行更改),并为目标启动新的 BFD 会话更改范围内的地址。

  • 如果 LDP LSP traceroute 返回错误(例如超时),则与该 FEC 相关的所有 BFD 会话都将断开。

要将 LDP 配置为为指定 FEC 配置的所有 ECMP 路径建立 BFD 会话,请包含ecmp语句。

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

ecmp除了periodic-traceroute语句之外,您还必须将语句包含在全局 LDP OAM 配置(在[edit protocols ldp oam][edit logical-systems logical-system-name protocols ldp oam]层次结构级别)或指定 FEC (位于[edit protocols ldp oam fec address][edit logical-systems logical-system-name protocols ldp oam fec address]层次结构)的配置中。级别)。否则,提交操作将失败。

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

在 LDP LSP 上为 BFD 会话配置故障操作

您可以在 LDP LSP 上的 BFD 会话失败事件发生时配置路由和下一跳属性。失败事件可能是已停止的现有 BFD 会话,也可能是从未出现过的 BFD 会话。当相关 BFD 会话重新启动时,LDP 会将路由或下一跳跃添加回去。

您可以在 LDP LSP 上的 BFD 会话发生故障时failure-action为语句配置以下故障操作选项之一:

  • remove-nexthop—在检测到 BFD 会话故障事件时,删除入口节点上 LSP 路由的下一跳跃对应的路由。

  • remove-route—在检测到 BFD 会话故障事件时,从相应的路由表中删除与 LSP 对应的路由。如果 LSP 配置了 ECMP,并且与任何路径对应的 BFD 会话关闭,则路由将被移除。

要在 LDP LSP 上的 BFD 会话发生故障时配置失败操作,请包含以下remove-nexthopremove-routefailure-action语句的选项或选项:

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

为 BFD 会话配置 Holddown 间隔

您可以指定 BFD 会话在添加路由或下一跳跃之前应等待的持续时间,方法是holddown-interval[edit protocols ldp oam bfd-livenesss-detection]层次结构级别或[edit protocols ldp oam fec address bfd-livenesss-detection]层次结构级别配置该语句。将时间指定为0秒将导致在 BFD 会话恢复后立即添加路由或下一个跳跃。

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

了解仅限多播快速路由

仅组播快速重新路由 (MoFRR) 可最大程度地减少发生链路故障时组播分配树中的流量的丢包情况,从而增强支持这些功能的设备上组播路由协议,如协议无关组播 (PIM) 和多点标签分发协议 (多点 LDP)。

注:

交换机上不支持带MPLS交换系列和多点 LDP 的 MoFRR。

对于 MX 系列路由器,只有带 MPC 线卡的 MX 系列路由器才支持 MoFRR。先决条件是,您必须将路由器配置为模式,且路由器中所有线 network-services enhanced-ip 卡都必须为 MPC。

启用 MoFRR 后,设备在主上游路径和备份上游路径上向组播源发送加入消息。设备从主路径和备份路径接收数据包,并基于优先级(分配给主路径和备份路径的重量)丢弃冗余数据包。当设备检测到主路径上的故障时,它会立即开始接受来自辅助接口(备份路径)的数据包。快速切换极大地改进了主要路径链路故障时融合的时间。

MoFRR 的一个应用程序是流式 IPTV。IPTV 流作为 UDP 流组播,因此不会重新传输任何丢失的数据包,从而导致用户体验不尽人意。MoFRR 可以改善这种情况。

MoFRR 概述

通过单播流上的快速重新路由,上游路由设备将建立 MPLS 个标签交换系列 (LSP) 或预先计算 IP 无环路备选路由 (LFA) 快速重新路由备份路径,以处理下行路径中的分段故障。

在组播路由中,接收方通常发起流量分布图。这与单播路由不同,单播路由通常建立从来源到接收方的路径。PIM(表示 IP)、多点 LDP(表示 MPLS)和 RSVP-流量工程(表示 MPLS)都是能够建立组播分布图的协议。其中,PIM 和多点 LDP 接收器启动分布图设置,因此 MoFRR 可处理支持它们的这两个组播协议。

在组播树中,如果设备检测到网络组件故障,需要一段时间才能执行响应性修复,从而在设置备用路径时导致巨大的信息流丢失。当网络组件发生故障时,MoFRR 会减少多播分布树中的信息流丢失。借助 MoFRR,一个下游路由设备为来源设置备用路径,以接收相同组播流量的备份实时流。如果主流上发生故障,MoFRR 路由设备可快速切换至备份流。

启用 MoFRR 后,对于每个 (S,G) 条目,设备将使用两个可用上游接口发送加入消息和接收组播信息流。如果有两条这样的路径,协议将尝试选择两个不相交路径。如果未相交路径不可用,则该协议将选择两个非连续路径。如果两个不连续路径不可用,则仅选择不备份的主路径。MoFRR 将脱节备份的优先级排序,以有利于平衡可用路径的负载。

IPv4 和 IPv6 协议系列均支持 MoFRR。

图 12 显示了从组播接收方路由设备(也称为出口提供商边缘 (PE) 设备)到组播源路由设备的两个路径(也称为入口 PE 设备)。

图 12: MoFRR 示例拓扑MoFRR 示例拓扑

启用 MoFRR 后,出口(接收器侧)路由设备将针对每个 (S,G) 设置两个组播树(一条主路径和一条备份路径)。换言之,出口路由设备将相同的 (S,G) 加入消息传播到两个不同的上游邻里方,从而创建两个组播树。

其中一个多播树穿过平面1,另一个穿过平面2,如中图 12所示。对于每个 (S,G),出口路由设备将转发主路径上收到的流量,并丢弃在备份路径上接收的信息流。

MoFRR 在同等成本多路径(ECMP)路径和非 ECMP 路径上均受支持。设备需要启用单播无环路备选 (LFA) 路由以支持非 ECMP 路径上的 MoFRR。您可使用内部网关协议 (IGP) 配置中的 语句启用 LFA link-protection 路由。在 OSPF 或 IS-IS 接口上启用链路保护时,设备会为遍历受保护接口的所有目标路由创建到主下一跳跃的备份 LFA 路径。

Junos OS IP 网络中为 IP MoFRR 实施 MoFRR,在多点 LDP MoFRR MPLS标签边缘路由设备 (LER) 实施 MoFRR。

多点 LDP MoFRR 用于在网络出口MPLS,将数据包转发至 IP 网络。借助多点 LDP MoFRR,设备会建立两条通往上游 PE 路由设备的路径,以在 LER 接收两MPLS数据包流。设备接受其中一个流(主流),另一个(备份)在 LER 中丢弃。如果主路径发生故障,设备将改为接受备份流。带多点 LDP 支持 MoFRR 的先决条件(请参阅 了解点对多点 LSP 的多点 LDP带内信号 )。

PIM 功能

Junos OS 支持 MoFRR,用于在 PIM 源特定多播(SSM)和任何源多播(ASM)中提供最短路径树(SPT)联接。SSM 和 ASM 范围均支持 MoFRR。要启用 (*,G) 加入的 MoFRR,请包括在 mofrr-asm-starg 层次结构中的配置 [edit routing-options multicast stream-protection] 语句。对于每个组 G,MoFRR 将分别为 (S、G) 或 (*,G) 操作,但不能同时运行两者。(S,G)始终优先于(*,G)。

启用 MoFRR 后,PIM 路由设备在两个上游反向路径转发 (RPF) 接口上传播加入消息,以接收同一加入请求的两个链路上的组播信息流。MoFRR 优先选择不融合至相同即时上游路由设备的两条路径。PIM 安装带两个接口(主路径和备份路径)的上游 RPF 下一跃点的适当组播路由。

当主路径出现故障时,备份路径将升级为主状态,设备将相应地转发信息流。如果有备用路径可用,MoFRR 将计算新的备份路径并更新或安装相应的组播路由。

您可以通过 PIM 加入负载平衡来启用 MoFRR(请参阅 join-load-balance automatic 语句)。但是,在这种情况下,连接消息的分布可能甚至不是。添加新的 ECMP 链路时,主路径上的联接消息将被重新分配和负载平衡。备份路径上的联接消息仍可采用相同的路径,并且可能不会平均重新分配。

您可使用 层次结构中的 stream-protection 配置语句启用 MoFRR。 [edit routing-options multicast] MoFRR 由一组过滤器策略管理。

当出口 PIM 路由设备收到加入消息或 IGMP 报告时,它会检查 MoFRR 配置,然后按如下操作:

  • 如果未提供 MoFRR 配置,PIM 会向一个上游相邻节点(例如平面 2 图 12)发送上游消息。

  • 如果存在 MoFRR 配置,设备将检查策略配置。

  • 如果没有策略,设备将检查主路径和备份路径(上游接口),然后按如下操作:

    • 如果主要路径和备份路径不可用,PIM 向一个上游邻接方向(例如,中的平面 2)发送加入消息 图 12

    • 如果主要路径和备份路径可用,PIM 向上游向两个可用上游邻路发送加入消息。Junos OS 设置主要和辅助多播路径以接收多播流量(例如,平面1英寸图 12)。

  • 如果存在策略,设备将检查此策略是否允许 MoFRR 用于此 (S,G),然后按如下操作:

    • 如果此策略检查失败,PIM 向一个上游邻接方(例如,中的平面 2)发送加入消息 图 12

    • 如果此策略检查通过 — 设备将检查主路径和备份路径(上游接口)。

      • 如果主要和备份路径不可用,PIM 将向一个上游相邻节点(例如平面 2 in 图 12)发送上游消息。

      • 如果主设备和备份路径可用,PIM 会将连接消息向两个可用的上游邻接方发送。设备设置主要和辅助组播路径以接收组播信息流(例如,中的平面 图 12 1)。

Multipoint LDP 功能

为避免重复MPLS,多点 LDP 通常仅选择一个上游路径。(请参阅2.4.1.1 节。确定 RFC 6388 中的"上游 标签交换路由器"、点对多点和多点对多点标签交换系列的标签分发协议 扩展。)

对于具有 MoFRR 的多点 LDP,多点 LDP 设备会选择两个独立的上游对等方,并发送两个独立的标签,每个上游对等方一个。该设备使用 RFC 6388 中所述的相同算法来选择主上游路径。设备使用相同的算法来选择备份上游路径,但以候选标签交换路由器主上游路径。两个不同的上游对等方将两个流MPLS流量发送到出口路由设备。设备仅选择一个上游邻接路径作为接受此流量的主MPLS路径。另一条路径变为备份路径,设备丢弃该流量。当主上游路径出现故障时,设备将开始接受来自备份路径的信息流。多点 LDP 设备根据内部网关协议 (IGP) 根设备下一跃点选择两个上游路径。

转发同等类 (FEC)是一组 IP 数据包,以相同的方式、通过相同路径和相同的转发处理进行转发。通常,放置在特定数据包上的标签表示该数据包分配到的 FEC。在 MoFRR 中,每个 FEC 的 mpls.0 表中放置两个路由:一个路由用于主标签,另一个路由用于备份标签。

如果并行链路指向相同的即时上游设备,则设备将两个并行链路都考虑为主链路。在任意时间,上游设备只会在多个并行链路之一上发送信息流。

个花 标签交换路由器节点是一个出口标签交换路由器,但也具有一个或多个直接连接的下游 LRS。对于点节点,来自主上游路径的流量将转发至下游标签交换路由器。如果主上行通道发生故障,则从备份上行路径 MPLS 信息流将转发到下游 LSR。这意味着下游 LSR 下一跃点将同时添加到 MPLS 路由以及出口下一跳跃。

与 PIM 一样,使用 层次结构中的配置语句启用带多点 LDP 的 MoFRR,并且由一组 stream-protection[edit routing-options multicast] 过滤器策略管理。

如果为 MoFRR 启用了多点 LDP 点到多点 FEC,设备将考虑以下注意事项来选择上游路径:

  • 如果存在 nontargeted LDP 会话,则会跳过目标 LDP 会话。如果存在单个目标 LDP 会话,则会选择目标 LDP 会话,但相应的点到多点 FEC 将失去 MoFRR 功能,因为没有与目标 LDP 会话关联的接口。

  • 属于相同上游 LSR 的所有接口均被视为主路径。

  • 对于任何根节点路由更新,上行路径将根据 IGP 中的最新跃点进行更改。如果有更好的路径,multipoint LDP 会尝试切换到更好的路径。

分组转发

对于 PIM 或多点 LDP,设备在入口接口执行组播源流选择。这样可保留结构带宽并最大限度地提高转发性能,因为它:

  • 避免在交换矩阵中发送重复流

  • 防止多个路由查找(这导致数据包丢失)。

对于 PIM,每个 IP 多播流都包含相同的目标地址。无论数据包到达何种接口,数据包都具有相同的路由。设备检查每个数据包到达的接口,并仅转发来自主接口的数据包。如果接口与备份流接口匹配,设备将丢弃数据包。如果接口与主流或备份流接口不匹配,设备将数据包作为例外处理在控制平面中。

图 13 显示了此过程,以及带 PIM 的路由器的主接口和备份接口示例。 图 14 对具有 PIM 的交换机也显示了这一点。

图 13: 路由器上的 "数据包转发引擎 MOFRR IP 路由查找"路由器上的 "数据包转发引擎 MOFRR IP 路由查找"
图 14: 交换机上的交换机数据包转发引擎 MOFRR IP 路由处理交换机上的交换机数据包转发引擎 MOFRR IP 路由处理

对于路由器上具有多点 LDP 的 MoFRR,设备使用多个MPLS标签来控制 MoFRR 流选择。每个标签代表一个单独的路由,但每个都引用相同的接口列表检查。设备只会转发主标签,并丢弃所有其他标签。多个接口可使用相同标签接收数据包。

图 15 显示了对具有多点 LDP 的路由器的此过程。

图 15: 数据包转发引擎中的 MoFRR MPLS 路由查找数据包转发引擎中的 MoFRR MPLS 路由查找

限制和警告

交换和路由设备的 MoFRR 限制和注意事项

MoFRR 在路由和交换设备上具有以下限制和注意事项:

  • 支持 MoFRR 故障检测,以针对已启用 MoFRR 的路由设备(而非组播信息流路径中所有链路(端到端)的路由设备提供即时链路保护。

  • MoFRR 支持在两条所选来源不一起的路径上快速重新路由。选定的两个上游邻邻方不能位于同一接口上— 换句话说,LAN 分段上的两个上游邻里方。如果上游接口是一个多播通道接口,则同样如此。

  • 不支持检测最大端到端的脱节上游路径。接收方侧(出口)路由设备只能确保上游设备(前一跳)不一致。PIM 和 multipoint LDP 不支持等效的显式路由对象(Ero)。因此,不一而同的上游路径检测仅限于对上一跳跃设备的控制。因此,可以共享上一跃点上游设备作为主设备和备份设备的路径。

  • 您可能会在下列情景下看到一些信息流丢失:

    • 出口设备上会提供一种更好的上游路径。

    • 存在活动流量流时,出口设备上启用或禁用 MoFRR。

  • 不支持用于备份路径的联接消息的 PIM 连接负载平衡。

  • 对于多路广播组 G,MoFRR 不允许用于(S、G)和(*、G)加入消息。(S,G)联接消息优先于(*,G)。

  • 使用两个不同多播组的多播信息流流不支持 MoFRR。每个(S,G)组合均被视为唯一的多播信息流流。

  • MoFRR 不支持双向 PIM 范围。

  • MoFRR 不支持 PIM 密集模式。

  • 备份信息流流的多播统计信息不会通过 PIM 维护,因此在show命令的操作输出中不可用。

  • 不支持速率监控。

使用 PIM 交换设备的 MoFRR 限制

带 PIM 的 MoFRR 对交换设备具有以下限制:

  • 如果上游接口是一个集成路由和桥接 (IRB) 接口,这将影响其他组播功能,如互联网组管理协议版本 3 (IGMPv3) 窥探,则不支持 MoFRR。

  • 在转发组播信息流时,数据包复制和组播查找可能导致数据包多次通过 PFE 重新循环。因此,命令显示的组播数据包计数值可能显示的数字比 和 等输出字段中预期的 show pfe statistics trafficInput packets 数字高 Output packets 。在 MoFRR 场景中,您可能会更加频繁地注意到此行为,因为复制的主流和备份流一般会增加流量。

使用多点 LDP 的路由设备的 MoFRR 限制和注意事项

与多点 LDP 一起使用时,MoFRR 对路由器具有以下限制和注意事项:

  • MoFRR 不会应用于 RSVP 通道上收到的 multipoint LDP 信息流,因为 RSVP 通道未与任何接口相关联。

  • 不支持混合上游 MoFRR。这是指 PIM multipoint LDP 带内信号,其中一个上游路径通过 multipoint LDP,第二个上游路径通过 PIM。

  • 不支持将多点 LDP 标签用作内部标签。

  • 如果通过多个入口(源侧)提供商边缘 (PE) 路由设备可到达源,则不支持多点 LDP MoFRR。

  • 有针对性的 LDP 上游会话不会被选为 MoFRR 的上游设备。

  • 不支持对备份路径进行 Multipoint LDP link 保护,因为不支持 MoFRR 内部标签。

配置仅多播快速重新路由

您可以配置仅多播快速重新路由(MoFRR),以便在链路发生故障时最大限度地减少网络中的数据包丢失。

将快速重新路由应用于单播流时,上游路由器 preestablishes MPLS 标签交换路径(Lsp)或 precomputes IP 无环路备用(路由 LFA)快速重新路由备份路径,以处理下游路径中的分段故障。

在多路广播路由中,信息流分发图形通常由接收器发起。这与单播路由不同,后者通常建立从源到接收器的路径。能够建立多址广播分发图形的协议是 PIM (对于 IP)、multipoint LDP (用于 MPLS)和 RSVP-TE (用于 MPLS)。其中,PIM 和 multipoint LDP 接收器将启动分配图设置,因此:

  • 在 QFX 系列上,PIM 域中支持 MoFRR。

  • 在 MX 系列和 SRX 系列上,MoFRR 在 PIM 和 multipoint LDP 域中受支持。

除非另有说明,否则配置步骤与在支持此功能的所有设备上启用 MoFRR。还指示不适用于 multipoint LDP MoFRR 的配置步骤。

(仅适用于 MX 系列路由器)带有 MPC 线卡的 MX 系列路由器支持 MoFRR。作为先决条件,路由器中的所有线卡都必须 Mpc。

要在路由器或交换机上配置 MoFRR:

  1. (仅适用于 MX 系列和 SRX 系列路由器)将路由器设置为增强型 IP 模式。
  2. 启用 MoFRR。
  3. 必配置一个路由策略,用于过滤受 MoFRR 配置影响的一组受限的多播流。

    您可以应用基于源或组地址的过滤器。

    例如:

  4. 必如果您配置了路由策略以过滤受 MoFRR 配置影响的一组多播组,则应用该策略以 MoFRR 流保护。

    例如:

  5. 必在具有 MoFRR 的 PIM 域中,允许 MoFRR 应用于任何源多播(ASM)(*、G)联接。

    对于 multipoint LDP MoFRR,不支持这种情况。

  6. 必在具有 MoFRR 的 PIM 域中,仅允许选择不相交的 RPF (单独平面上的 RPF)作为备份 RPF 路径。

    对于 multipoint LDP MoFRR,不支持这种情况。在多点 LDP MoFRR 域中,相同的标签在与相同上游相邻节点之间的并行链路之间共享。PIM 域中不会出现这种情况,其中每个链路形成一个邻居。如果mofrr-disjoint-upstream-only路径到达与主 RPF 路径相同的上游相邻节点,则该语句不允许选择备份 RPF 路径。这可确保 MoFRR 仅在具有多个 RPF 上游邻接方的拓扑中触发。

  7. 必在具有 MoFRR 的 PIM 域中,阻止在备份路径上发送联接消息,但保留所有其他 MoFRR 功能。

    对于 multipoint LDP MoFRR,不支持这种情况。

  8. 必在具有 MoFRR 的 PIM 域中,允许新主路径选择基于单播网关选择,以便单播路由到源,并在单播选择中发生更改时更改,而不是将备份路径升级为主地址。这可确保主 RPF 跳跃始终在最佳路径上。

    包括此mofrr-primary-selection-by-routing语句时,如果主路径发生故障,备份路径将不能被提升为新主路径。

    对于 multipoint LDP MoFRR,不支持这种情况。

示例:在多点 LDP 域中配置仅多播快速重新路由

此示例演示如何配置仅多播快速重新路由(MoFRR),以便在链路故障时最大限度地减少网络中的数据包丢失。

Multipoint LDP MoFRR 用于 MPLS 网络的出口节点,其中的数据包将转发到 IP 网络。对于多点 LDP MoFRR,建立了面向上游提供边缘(PE)路由器的两条路径,用于在标签边缘路由器(LER)上接收两个 MPLS 数据包流。接受其中一个流(主设备),另一个将(备份)放在 LER 上。如果主路径发生故障,备份流将被接受。

要求

配置此示例之前,不需要在设备初始化之外进行特殊配置。

在 multipoint LDP 域中,要使 MoFRR 正常工作,只有出口 PE 路由器需要启用 MoFRR。其他路由器无需支持 MoFRR。

MoFRR 在带有 MPC 线卡的 MX 系列平台上受支持。作为先决条件,路由器必须设置为network-services enhanced-ip模式,并且平台中的所有线卡都必须为 mpc。

此示例需要在出口 PE 路由器上 Junos OS 版本14.1 或更高版。

概述

在此示例中,设备 R3 是出口边缘路由器。MoFRR 仅在此设备上启用。

OSPF 用于连接,但可以使用任何内部网关协议(IGP)或静态路由。

出于测试目的,路由器可用于模拟源和接收器。设备 R 4 和设备 R8 配置为使用set protocols igmp interface interface-name static group group命令静态联接所需的组。在实际多播接收器主机不可用的情况下,如本示例中所示,此静态 IGMP 配置很有用。在接收器上,要让它们侦听多播组地址,本示例使用set protocols sap listen group

MoFRR 配置包含的策略选项未在此示例中显示,但会单独说明。该选项按以下方式配置:

拓扑

图 16显示了示例网络。

图 16: 多点 LDP 域中的 MoFRR多点 LDP 域中的 MoFRR

CLI 快速配置显示了中图 16所有设备的配置。

本节配置介绍设备 R3 上的步骤。

CLI 快速配置

CLI 快速配置

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

设备 src1

设备 src2

设备 R1

设备 R2

设备 R3

设备 R 4

设备 R5

设备 R6

设备 R7

设备 R8

配置

操作

分步过程

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

要配置设备 R3:

  1. 启用增强型 IP 模式。

  2. 配置设备接口。

  3. 配置自治系统(AS)编号。

  4. 配置路由策略。

  5. 配置 PIM。

  6. 配置 LDP。

  7. 配置 IGP 或静态路由。

  8. 配置内部 BGP。

  9. 配置 MPLS 和 RSVP (可选)。

  10. 启用 MoFRR。

成果

show chassis配置模式,输入、 show interfacesshow protocolsshow policy-options、、和show routing-options命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。

如果您完成了设备配置,请从commit配置模式进入。

针对

确认配置是否正常工作。

检查 LDP 点对多点转发对等类

用途

请确保已启用 MoFRR,并确定使用的是哪些标签。

行动
含义

输出显示 MoFRR 已启用,并显示标签301568和301600正用于两个 multipoint LDP 点到多点 Lsp。

检查标签信息

用途

确保出口设备有两个用于多播组联接的上游接口。

行动
含义

输出显示主上行路径和备份上行路径。它还显示 RPF 的下一个跳跃。

检查多播路由

用途

检查 IP 多播转发表,确保有一个具有主接口和一个备份界面的上游 RPF 接口列表。

行动
含义

输出显示主要和备份会话,RPF 下一跳跃。

检查 LDP 点对多点流量统计数据

用途

请确保主要和备份统计均已列出。

行动
含义

输出显示带有标签的主要和备份路由。

示例:按需配置 LDP

此示例演示如何按需配置LDP 。LDP 通常使用下游的主动提供广告模式进行配置,表示所有路由的标签广告均从所有 LDP 对等方接收。随着服务提供商将接入和聚合网络集成到单个 MPLS 域中,需要的 LDP 应需在接入与聚合网络之间分配绑定,并降低控制平面的处理要求。

下游节点可能会从上游聚合节点接收数十个标签绑定。下游聚合节点可按需使用 LDP 下游配置,而不是为整个 MPLS 网络中的所有可能的回传地址进行学习和存储,而是仅请求 Fec 的标签绑定,对应于配置了服务的那些出口节点的回传地址。

要求

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

  • M Series 路由器

  • Junos OS 12。2

概述

您可以通过在[edit protocols ldp session]层次结构级别包括下游按语句,为 ldp 会话启用 ldp 下游按需标签广告。如果已按需配置下游,瞻博网络路由器将向其对等路由器通告下游按需请求。对于在两个路由器之间建立的下游按需会话,双方都必须在 LDP 会话建立期间公布下游按需模式。如果一个路由器公布下游主动请求模式和按需下游的其他通告,则使用下游主动请求模式。

配置

按需配置 LDP

分步过程

要配置 LDP 下游按需策略,然后在 LDP 会话上配置该策略并按需启用 LDP:

  1. 配置下游按需策略(在此示例中为 DOD 请求-回传)。

    此策略会导致路由器仅将标签请求消息转发至由 DOD 请求-回传策略匹配的 Fec。

  2. 使用dod-request-policy[edit protocols ldp]层次结构级别的语句指定 DOD-请求回传策略。

    用该dod-request-policy语句指定的策略用于识别发送标签请求消息的前缀。此策略类似于出口策略或导入策略。从 inet 路由表中处理路由时,Junos OS 软件会检查与DOD-Request-Loopbacks策略匹配的路由(在此示例中)。如果路由与策略匹配,并且 LDP 会话与 DOD 播发模式协商,则会将标签请求消息发送至相应的下游 LDP 会话。

  3. 在 LDP downstream-on-demand会话的配置中包含语句,以启用下游按需分配模式。

将 LDP 下游按需路由分配给标记 BGP

分步过程

要将按需路由的 LDP 下游分布到标记 BGP 中,请使用 BGP 导出策略。

  1. 配置 LDP 路由策略(redistribute_ldp在此示例中)。

  2. redistribute_ldp在 BGP 配置中包括 LDP 路由策略(本示例中为 BGP 组配置ebgp-to-abr的一部分)。

    BGP 将基于redistribute_ldp策略的 LDP 路由转发到远程 PE 路由器

分步过程

要限制以下游主动请求模式(而不是按需下游)配置的其他路由器的标签传播,请配置以下策略:

  1. dod-routes策略配置为接受来自 LDP 的路由。

  2. do-not-propagate-du-sessions策略配置为不将路由转发至1.1.1.1邻居2.2.2.2、和3.3.3.3

  3. 配置filter-dod-on-du-sessions策略以防止dod-routes策略检查的路由转发到do-not-propagate-du-sessions策略中定义的邻接路由器。

  4. filter-dod-routes-on-du-sesssion策略指定为 BGP broup ebgp-to-abr的导出策略。

成果

在配置模式下,输入show policy-optionsshow protocols ldp命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。

针对

验证标签通告模式

用途

确认配置是否正常工作。

使用show ldp session命令验证 LDP 会话的标签广告模式的状态。

行动

发出show ldp sessionshow ldp session detail命令:

  • show ldp session命令的以下命令输出指示Adv. Mode (标签通告模式)为DOD (表示 LDP 下游按需会话正在运行):

  • show ldp session detail命令的以下命令输出指示, Local Label Advertisement modeDownstream unsolicited默认值(本地会话中未配置按需下游的含义)。相反,在Remote Label Advertisement mode远程会话Negotiated Label Advertisement mode上配置的Downstream on demand和两个都表示

配置 LDP 本机 IPv6 支持

LDP 在仅 IPv6 网络以及 IPv6 或 IPv4 双协议栈网络中受支持,如 RFC 7552 中所述。将地址族配置为inet适用于 IPv4 inet6或 IPv6,以及传输首选项是IPv4或。 IPv6dual-transport语句允许 Junos OS LDP 通过 IPv4 与 ipv4 邻居建立 TCP 连接,将 ipv6 邻的邻接作为单堆栈 LSR。inet-lsr-idinet6-lsr-id ID 是两个 LSR id,必须配置为通过 IPv4 和 IPV6 TCP 传输建立 LDP 会话。这两个 Id 应为非零值,并且必须配置为不同数值。

将 IPv6 配置为双栈之前,请确保配置路由和信号协议。

要配置 LDP 原生 IPv6 支持,必须执行以下操作:

  1. 启用转发等价类(FEC) deaggregation,以便为不同地址系列使用不同标签。
  2. 配置 LDP 地址系列。
  3. 配置该transport-preference语句,以便在 IPv4 和 IPv6 均已启用时选择用于 TCP 连接的首选传输。默认情况下,IPv6 用作建立 LDP 连接的 TCP 传输。
  4. 必配置双传输以允许 LDP 与 IPv4 邻接方建立单独的 IPv4 会话,以及与 IPv6 邻接方进行 IPv6 会话。配置inet-lsr-id为 IPV4 的 LSR ID,并inet6-lsr-id用作 IPv6 的 LSR id。

    例如,将 inet-lsr id 配置为10.255.0.1,并将 inet6-lsr id 设置为1.1.1.1。

示例:配置 LDP 本机 IPv6 支持

此示例演示如何允许 Junos OS 标签分发协议(LDP)通过 IPv4 与 IPv4 邻居建立 TCP 连接,将 IPv6 邻接作为单堆栈 LSR。这有助于避免通过 ipv4 信号 MPLS 标签交换路径(Lsp)的 IPv4 MPLS 核心的 IPv6 隧道通道。

要求

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

  • 两个 MX 系列路由器

  • 在所有设备上运行 Junos OS Release 16.1 或更高版本

将 IPv6 配置为双栈之前,请确保配置路由和信号协议。

概述

LDP 仅在 IPv6 网络中受支持,在 IPv6 或 IPv4 双协议栈网络中受支持,如 RFC 7552 中所述。配置 IPv4 或inet IPv6 的inet6地址族。默认情况下,IPv6 在 IPv4 和 IPv6 均已启用时用作与对等方的 LDP 会话的 TCP 传输。双重传输语句允许 Junos LDP 通过 IPv4 与 IPv4 邻居建立 TCP 连接,通过 IPv6 将 IPv6 邻接作为单堆栈 LSR。inet-lsr-idinet6-lsr-id是必须配置为通过 IPv4 和 IPV6 TCP 传输建立 LDP 会话的两个 LSR id。这两个 Id 应为非零值,并且必须配置为不同数值。

拓扑

图 17 显示了在设备 R1 和设备 R2 上配置为双堆栈的 LDP IPv6。

图 17: 示例 LDP Native IPv6 支持示例 LDP Native IPv6 支持

配置

CLI 快速配置

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

R1

R2

配置 R1

分步过程

以下示例要求您在配置层次结构中导航各个级别。有关导航应用程序CLI,请参阅 Junos OS CLI Using the CLI Editor in Configuration Mode User Guide 中的 "

要配置设备 R1:

  1. 配置接口。

  2. 为设备分配一个回送地址。

  3. 配置 IS-IS 接口。

  4. 将 MPLS 配置为使用设备上的 LDP 接口。

  5. 启用转发等价类(FEC) deaggregation,以便为不同地址系列使用不同标签。

  6. 配置 LDP 地址系列。

成果

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

配置传输首选项选择首选传输

CLI 快速配置
分步过程

您可以配置此transport-preference语句,以便在 IPv4 和 IPv6 均已启用时选择 TCP 连接的首选传输。默认情况下,IPv6 用作建立 LDP 连接的 TCP 传输。

  • 必配置 LDP 连接的传输首选项。

分步过程
成果

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

将双重传输配置为使用 IPv4 邻接方和具有 IPv6 邻接方的 IPv6 为 IPv4 建立单独的会话

分步过程

您可以将dual-transport语句配置为允许 LDP 与 IPv4 邻接方建立单独的 ipv4 会话,以及与 ipv6 邻接方进行 ipv6 会话。这需要配置inet-lsr-id as IPV4 的 LSR ID,并inet6-lsr-id 作为 IPv6 的 LSR id。

  • 必将双传输配置为允许 LDP 通过 IPv4 与 IPv4 邻居建立 TCP 连接,通过 IPv6 将 IPv6 邻居用作单堆栈 LSR。

成果

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

针对

确认配置是否正常工作。

验证 mpls 中的路由条目。0表
用途

显示 mpls。0路由表信息。

行动

在设备 R1 上,从运行模式运行show route table mpls.0命令以显示 mpls。0路由表信息。

含义

输出显示 mpls. 0 路由表信息。

验证 inet 中的路由条目。3表
用途

显示 inet。3路由表信息。

行动

在设备 R1 上,从运行模式运行show route table inet.3命令以显示 inet。3路由表信息。

含义

输出显示 inet。3路由表信息。

验证 inet 6.3 表中的路由条目
用途

显示 inet 6.3 路由表信息。

行动

在设备 R1 上,从运行模式运行show route table inet6.3命令以显示 inet 6.3 路由表信息。

含义

输出显示 inet 6.3 路由表信息。

验证 LDP 数据库
用途

显示 LDP 数据库信息。

行动

在设备 R1 上,从运行模式运行show ldp database命令以显示 LDP 数据库信息。

含义

输出显示 LDP 数据库中的条目。

验证 LDP 邻居信息
用途

显示 LDP 邻居信息。

行动

在设备 R1 上,从运行模式运行show ldp neighborshow ldp neighbor extensive命令以显示 LDP 邻居信息。

含义

输出显示 IPv4 和 IPv6 地址的 LDP 邻居信息。

验证 LDP 会话信息
用途

显示 LDP 会话信息。

行动

在设备 R1 上,从运行模式运行show ldp sessionshow ldp session extensive命令显示 LDP 会话信息。

含义

输出显示使用 IPv6 作为 TCP 传输的 LDP 会话的信息。

针对

确认配置是否正常工作。

验证 LDP 邻居信息
用途

显示 LDP 邻居信息。

行动

在设备 R1 上,从运行模式运行show ldp neighbor extensive命令以显示 LDP 邻居信息。

含义

输出显示 IPv4 和 IPv6 地址的 LDP 邻接方信息。

验证 LDP 会话信息
用途

显示 LDP 会话信息。

行动

在设备 R1 上,从运行模式运行show ldp session extensive命令以显示 LDP 会话信息。

含义

输出显示使用 IPv6 作为 TCP 传输的 LDP 会话的信息。

针对

确认配置是否正常工作。

验证 LDP 邻居信息
用途

显示 LDP 邻居信息。

行动

在设备 R1 上,从运行模式运行show ldp neighbor extensive命令以显示 LDP 邻居信息。

含义

输出显示 IPv4 和 IPv6 地址的 LDP 邻接方信息。

验证 LDP 会话信息
用途

显示 LDP 会话信息。

行动

在设备 R1 上,从运行模式运行show ldp session extensive命令以显示 LDP 邻居信息。

示例:配置点对多点 Lsp 的 Multipoint LDP 带内信号

了解 Multipoint LDP Inband 信号点对 Multipoint Lsp

在具有现有 IP/MPLS 中枢的点对 multipoint 标签交换路径(Lsp)的部署中,使用带内信号的 Multipoint 标签分配协议(M-LDP)非常有用,您需要携带多播流量(例如,用于 IPTV)。

多年来,用于传输多址广播流量的最广泛使用的解决方案已在具有 multipoint IP 通道的服务提供商核心中使用本机 IP 多播,以隔离客户流量。部署多播路由协议(通常是协议无关的多播(PIM))来设置转发路径。IP 多播路由用于转发,使用核心中的 PIM 信号。要使此模型正常工作,核心网络必须启用多播。这样,即使在自治系统(AS)方案中,也能实现有效且稳定的部署。

但是,在现有 IP/MPLS 网络中,部署 PIM 可能不是第一种选择。某些服务提供商有兴趣将 IP 隧道更换 MPLS 标签封装。迁移到 MPLS 标签的动机是利用 MPLS 流量工程和保护功能,并降低提供商核心中的控制流量开销。

为此,服务提供商有兴趣利用现有部署的扩展来允许多播信息流通过。用于 IP/MPLS 的现有多址广播扩展插件是用于 RSVP 和点到 multipoint 以及 LDP 的 multipoint 到多点扩展的点到 multipoint 扩展。RFC 6826、点对多点和多点对多点标签交换系列的多点 LDP带内信号中讨论了这些部署场景。此功能概述仅限于 LDP 的点对多点扩展。

M-LDP 的工作原理

M 中的标签绑定-LDP 信号

LDP的多点扩展使用点对多点和多点对多点转发同等类 (FEC) 元素(在 RFC 5036,LDP 规范中定义)以及功能通告、标签映射和信号发送过程。FEC 元素包括 LSP root(一个 IP 地址)和一个"不透明"值的想法,该选择器将共享相同不透明值的叶节点分组在一起。不透明的值对于中间节点是透明的,但对于 LSP 根具有意义。每个 LDP 节点都将其本地传入标签绑定到在 FEC 中找到的根 IP 地址的最短路径上的上游 LDP 节点。接收标签绑定的上游节点将创建自己的本地标签和传出接口。如果存在多个传出分支,则此标签分配过程可能会导致数据包复制。如中图 18所示,如果 LDP 节点找到共享相同上游节点的下游节点,将为相同的不透明值合并标签绑定。这就允许有效构建点对 multipoint Lsp 和标签节约。

图 18: M 中的标签绑定-LDP 信号M 中的标签绑定-LDP 信号
在 PIM MPLS 核心中的 M-LDP

图 19显示了可扩展的部署情景。两个单独的 PIM 域由一个 PIM 自由核心站点互连。此核心站点中的边界路由器支持在边界接口上 PIM。此外,这些边界路由器还会收集相邻站点的路由信息并将其分发至核心网络。站点 C 中的边缘路由器运行 BGP 进行 root 节点发现。内部网关协议(IGP)路由不能用于入口发现,因为在大多数情况下,IGP 提供的转发下一跃点不会向源提供入口设备的相关信息。M-LDP inband 信号在点到多点 LSP 与(S,G)流之间存在一对一映射。借助带内信号,PIM 消息可直接转换为 M-LDP FEC 绑定。相反,带外信号基于手动配置。用于 M-LDP inband 信号的一个应用程序是在 MPLS 主干网中携带 IPTV 多播流量。

图 19: PIM MPLS 核心中的 M-LDP 拓扑示例PIM MPLS 核心中的 M-LDP 拓扑示例
配置

当 LER 未检测到 pim 上游邻接方时,标签边缘路由器(LER)上的配置语句 mldp-inband-signalling允许 PIM 将 M-LDP 带内信号用于上游邻域。PIM 配置中包含 MPLS LSP root 的静态配置,使用策略。当 IBGP 在核心站点不可用或替代基于 IBGP 的 LSP 根检测时,需要此功能。

例如:

在启用 PIM 的 MPLS 核心中的 M-LDP

从 Junos OS 版本 14.1 开始,为了将现有 IPTV 服务从本机 IP 组播 迁移到 MPLS 组播,您需要以最少的中断从 PIM 平稳过渡到 M-LDP 点到多点 LSP。 图 20 显示了类似于 、但在不同情景中的 M-LDP 图 19 拓扑。核心通过 PIM 启用,其中一个源流处理所有 IPTV 通道。电视频道以 ASM 流的形式发送,每个通道都由其组地址标识。以前,这些通道以 IP 流的形式流入核心,并使用 PIM 发出信号。

图 20: 支持 PIM 的 MPLS 核心中的 M-LDP 拓扑示例支持 PIM 的 MPLS 核心中的 M-LDP 拓扑示例

通过mldp-inband-signaling在这种情况下配置,仅当不存在与源的 PIM 邻居时,才会启动 M-LDP 信号。但是,由于在出口 PE 的上游接口上不活动 pim,PIM 在源节点上始终有一个 PIM 邻居,而且 m-ldp 的优先级不会生效。

配置

要逐步将通道从通道逐渐迁移到 M-LDP MPLS 核心,包含使用现有 PIM 的多个流的 m-LDP 上游和其他selected-mldp-egress流,包括配置语句以及用于 m-ldp inband 的策略过滤器中的基于组的过滤器信号.

注:

M-LDP inband 信令策略过滤器可以包含source-address-filter语句或route-filter语句,或者二者的组合。

例如:

注:

上述配置的一些限制如下:

  • selected-mldp-egress仅在 LER 上配置该语句。在非selected-mldp-egress出口 PIM 路由器上配置语句可能会导致路径设置故障。

  • 将策略更改为从 PIM 上行链路到 M-LDP 之间的交换机流量时,数据包丢失可能会被视为在控制平面执行断路和建立机制。

术语

以下术语对于了解对多播信息流的 M-LDP 带内信号很重要。

点对点 LSP

具有一个入口标签交换路由器(LSR)和一个出口 LSR 的 LSP。

Multipoint LSP

点对 multipoint 或多点对多点 LSP。

点对多点 LSP

具有一个入口 LSR 和一个或多个出口 Lsr 的 LSP。

Multipoint 到点 LSP

具有一个或多个入口 Lsr 和一个独特出口 LSR 的 LSP。

多点对多点 LSP

一种连接一组节点的 LSP,由 LSP 中的任何节点发送的通信流传送给所有其他人。

入口 LSR

特定 LSP 的入口 LSR 是可沿 LSP 发送数据包的 LSR。Multipoint 到多点 Lsp 可以有多个入口 Lsr。点对多点 Lsp 只有一个,并且该节点通常称为根节点。

出口 LSR

特定 LSP 的出口 LSR 是可从 LSP 中删除数据包以进行进一步处理的 LSR。点到点和 multipoint 到 point Lsp 只有一个出口节点。点对 multipoint 和多点对多点 Lsp 可以有多级出口节点。

传输 LSR

通过直接连接的上游 LSR 以及一个或多个直接连接的下游 Lsr 可到达 multipoint LSP 的根的 LSR。

Bud LSR

一种 LSR,也有一个或多个直接连接的下游 Lsr。

叶节点

点对多点 LSP 上下文中的出口或 bud LSR。在多点到多点 LSP 的环境中,LSR 既是入口和出口,也是同一多点对 LSP 的出入,也可以是 bud LSR。

入口连接转换和伪接口处理

在入口 LER 处,LDP 会通知 PIM 关于(S,G)通过带内信号接收的消息。PIM 将每个(S,G) messagewith a 伪接口相关联。随后,将向源发起最短路径树(SPT)加入消息。PIM 将此视为新类型的本地接收器。当 LSP 断开时,PIM 将根据 LDP 中的通知移除此本地接收器。

入口 Splicing

LDP 为 PIM 提供了与每个(S,G)条目关联的下一个跳跃。PIM 将使用 LDP next 跳跃和其他 PIM 接收器安装 PIM (S G)多播路由。下一跃点是本地接收方的下一跳跃的组合,以及 LDP 隧道下一 hopfor 的 PIM 下游邻居 + 子级别列表。

反向路径转发

PIM 的反向路径转发(RPF)计算在出口节点执行。

如果满足以下所有条件,PIM 将执行 M-LDP 带内信号:

  • 向源邻居没有 PIM 邻接方。

  • M-LDP 带内信号语句配置。

  • 下一跳跃通过 BGP 获知,或者存在于静态映射中(在 M-LDP 带内信号策略中指定)。

否则,如果 LSP 根检测失败,PIM 将保留不能解析的 RPF 状态的(S,G)条目。

PIM RPF 在每次单播路由信息更改时都注册此源地址。因此,如果朝向源的路由发生变化,RPF 重新计算将重复。还会监控对源的 BGP 协议的下一跃点,以了解 LSP 根的变化。此类更改可能会导致短时间中断信息流。

LSP 根检测

如果 RPF 操作检测到对带上 M-LDP 带内信号的需求,将检测 LSP 根(入口)。此根是 LDP LSP 信号的参数。

检测到的根节点如下:

  1. 如果现有静态配置指定源地址,root 将在配置中提供。

  2. 在单播路由表中执行查找。如果找到源地址,则流向源的协议下一跃点用作 LSP 根。

    在 Junos OS 版本16.1 之前,M-LDP 点到多点 LSP 由使用入口 LSR 的根地址的入口发出信号。此根地址只能通过 IGP 到达,从而将 M-LDP 点到多点的 LSP confining 到单个自治系统。如果无法通过 IGP 访问根地址,但通过 BGP 可通过,如果 BGP 路由通过 MPLS LSP 进行递归解析,则点到多点 LSP 不会从该点向入口 LSR 根地址进一步发出信号。

    在多个自治系统中,这些不分段的点至多点 Lsp 需要发出信号,可用于以下应用程序:

    • 具有非分段点对多点 Lsp 的 AS 间 MVPN。

    • 由 MPLS 核心网络连接的客户端网络之间的 AS M-LDP inband 信号。

    • 区域间 MVPN 或 M-LDP inband 使用非分段点对多点 Lsp 的信号(无缝 MPLS 多播)。

    从 Junos OS 版本16.1、M-LDP 开始,当根地址是通过 MPLS LSP 进一步递归解析的 BGP 路由时,可在 ASBR 或出口处发出点到多方面 Lsp 信号。

出口加入转换和伪接口处理

在出口 LER 处,PIM 将通知的 LDP (S,G)消息与 LSP root 一起发出信号。PIM 将创建一个伪接口作为此(S)消息的上游接口。收到(S,G)修剪消息时,此关联将被移除。

出口 Splicing

在核心网络的出口节点上收到来自下游站点的(S、G) join 消息时,此联接消息将转换为 M-LDP 带内信号参数,并且会通知 LDP。此外,当(S,G)条目丢失、LSP 根更改时,或者(S,G)条目可通过 PIM 邻居到达时,将发生 LSP 拆卸。

支持的功能

对于 M-LDP 带内信号,Junos OS 支持以下功能:

  • 与 LDP 路由的 PIM 下一跳跃的出口 splicing

  • 使用 LDP 下一跳跃将 PIM 路由的入口 splicing

  • PIM 将消息转换为 LDP 点对多点 LSP 设置参数

  • M-LDP 带内 LSP 参数的平移设置 PIM 联接消息

  • 基于跳跃的静态配置和 BGP 协议下一跃点的 LSP 根检测

  • PIM 源特定多播(SSM)和 anysource multicsast (ASM)范围中的 PIM (S,G)状态

  • 入口和出口 LERs 上的配置声明,使其可用作边缘路由器

  • LERs 上的 IGMP 加入消息

  • 向 IPv4 根节点传输 IPv6 源和组地址为不透明信息

  • 将 IPv6 (S、G)映射到 IPv4 根地址的静态配置

不支持的功能

对于 M-LDP 带内信号,Junos OS不支持以下功能:

  • 完全支持 PIM ASM

  • 带有mpls lsp point-to-multipoint ping (S,G)选项的命令

  • 不间断活动路由NSR

  • PIM 的断路器(MBB)

  • IPv6 LSP 根地址(LDP 不支持 IPv6 Lsp。)

  • 未直接连接的 PIM 扬声器之间的相邻节点关系

  • 平滑重启

  • PIM 密集模式

  • PIM 双向模式

LDP 功能

PIM (S、G)信息以 M-LDP 不透明类型长度(TLV)编码的形式传输。点到多点 FEC 元素由根节点地址构成。对于下一代多播 Vpn (NGEN Mvpn),点到多点 LSP 由根节点地址和 LSP ID 标识。

出口 LER 功能

在出口 LER 上,PIM 将触发带有以下信息的 LDP,以创建点对多点 LSP:

  • 根节点

  • (S,G)

  • 下一跳跃

PIM 将根据多播树的来源查找根节点。如果为此(S,G)条目配置了根地址,则配置的地址将用作点对多点 LSP 根。否则,路由表用于查找到源的路由。如果到多播树源的路由是 BGP 了解的路由,PIM 将检索 BGP 下一跳跃地址,并将其用作点对多点 LSP 的根节点。

LDP 根据根节点查找上游节点,分配一个标签,然后将标签映射发送至上游节点。LDP 不使用倒数第二跳弹出(PHP)进行带内 M-LDP 信号。

如果多播树源的根地址发生变化,PIM 将删除点对多点 LSP 并触发 LDP 以创建新的点对多点 LSP。发生这种情况时,传出接口列表将变为 NULL,PIM 将触发 LDP 以删除点对多点 LSP,并且 LDP 会向上游节点发送标签撤消消息。

传输 LSR 功能

传输 LSR 向指向多点 FEC 源的上游 LSR 通告标签,并安装必要的转发状态以转发数据包。传输 LSR 可以是任何支持 M-LDP 的路由器。

入口 LER 功能

在入口 LER 上,LDP 在接收标签映射时提供以下信息:

  • (S,G)

  • 泛滥下一跳跃

然后 PIM 将安装转发状态。如果添加或删除新分支机构,则会相应更新洪水下一跳跃。如果由于正在撤消的标签而删除所有分支,LDP 会将更新的信息发送至 PIM。如果上游和下游相邻方之间有多个链路,则点到多点 LSP 不会进行负载平衡。

示例:配置点对多点 Lsp 的 Multipoint LDP 带内信号

此示例演示如何配置多点 LDP (M-LDP)带内传输的传送信号,即对协议无关多播(PIM)协议的扩展或替代 PIM。

要求

此示例可使用以下硬件和软件组件进行配置:

  • 13.2 或更高版本 Junos OS

  • MX 系列5G 通用路由平台或用于提供商边缘(PE)路由器的 M Series 多服务边缘路由器

  • 作为传输标签交换路由器的 PTX 系列数据包传输路由器

  • 核心路由器 T Series 核心路由器

注:

PE 路由器也可以 T Series 核心路由器,但这并不典型。核心路由器也可能是 MX 系列5G 通用路由平台或 M Series 多服务边缘路由器,具体取决于您的扩展要求。客户边缘(CE)设备可能是瞻博网络或其他供应商提供的其他路由器或交换机。

配置此示例之前,不需要在设备初始化之外进行特殊配置。

概述

CLI 快速配置显示了中图 21所有设备的配置。一节../example/mldp-p2mp-inband.html#configuration1506__mldp-inband-example-step-by-step介绍设备 EgressPE 上的步骤。

图 21: M-LDP 带内点到 Multipoint Lsp 的传输带中信号示例拓扑M-LDP 带内点到 Multipoint Lsp 的传输带中信号示例拓扑

配置

操作
CLI 快速配置

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

设备 src1

设备 IngressPE

设备 EgressPE

设备 p6

设备 pr3

设备 pr4

设备 pr5

分步过程

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

要配置设备 EgressPE:

  1. 配置接口。

    在面向核心的接口上启用 MPLS。在出口下一跳跃中,您无需启用 MPLS。

  2. 在出口接口上配置 IGMP。

    出于测试目的,此示例包括静态组和源地址。

  3. 在面向核心的接口上配置 MPLS。

  4. 配置 BGP。

    BGP 是策略驱动的协议,因此也配置并应用任何所需的路由策略。

    例如,您可能希望将静态路由导出为 BGP。

  5. 必使用设备 pr5 配置 MSDP 对等连接,以便互连不同的 PIM 域,从而实现冗余 RPs。

  6. 配置 OSPF。

  7. 在面向核心的接口和环回接口上配置 LDP。

  8. 启用点对点 MPLS Lsp。

  9. 在下游接口上配置 PIM。

  10. 配置 RP 设置,因为此设备用作 PIM 汇聚点(RP)。

  11. 启用 M-LDP 带内信号并设置关联的策略。

  12. 配置路由策略,用于指定点对点 LSP 的根地址和关联的源地址。

  13. 配置自治系统(AS) ID。

成果

从配置模式, show interfaces输入、 show protocolsshow policy-options、和show routing-options命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。

设备 EgressPE

同样,配置其他出口设备。

如果您完成了设备配置,请从commit配置模式进入。

针对

确认配置是否正常工作。

检查 PIM 联接状态
用途

显示有关 PIM 连接状态的信息,以验证 M-LDP 带内上行和下游详细信息。在入口设备上,将show pim join extensive显示Pseudo-MLDP下游接口的命令。在出口,将show pim join extensive显示Pseudo-MLDP上游接口的命令。

行动

在操作模式下,输入show pim join extensive命令。

检查 PIM 源
用途

验证 PIM 源是否具有所需的 M-LDP 带内上行和下游详细信息。

行动

在操作模式下,输入show pim source命令。

检查 LDP 数据库
用途

确保show ldp database命令显示预期的根-(S,G)绑定。

行动
查找 MPLS 标签的路由信息
用途

显示点到多点 FEC 信息。

行动
检查 LDP 流量统计信息
用途

监控点对多点 LSP 的数据流量统计信息。

行动

使用 LDP 进行的段路由互操作性的 LDP 映射服务器概述

在具有分段路由的逐步部署的 LDP 网络中,可能会有仅支持 LDP 的设备孤岛,也可以只能有分段路由。对于要可的设备,需要在分段路由网络中的任何设备上配置 LDP mapping 服务器功能。

LDP 映射服务器功能使用 OSPF 或 ISIS 实现。

使用 OSPF 的带 LDP 的分段路由的互操作性

要使用 OSPF 实施带 LDP 的分段路由的互操作性,将生成所有 LDP 前缀的范围类型、长度和值(TLV)的扩展前缀链接状态通告(LSA),并将对应于该前缀的映射路由安装在inet 3 和 mpls。0路由表。

图 22是一种简单的 LDP 网络拓扑结构,用于说明使用 OSPF 的 LDP 设备实现分段路由设备的互操作性。该拓扑包含六个设备(设备 R1、R2、R3、R 4、R5 和 R6)以及 LDP 到分段路由迁移。

图 22: 使用 OSPF 的带有 LDP 的分段路由的互操作性示例 LDP 拓扑使用 OSPF 的带有 LDP 的分段路由的互操作性示例 LDP 拓扑

在上面的拓扑中,设备 R1、R2 和 R3 仅支持分段路由,设备 R5 和 R6 仅支持 LDP,而设备 R 4 同时支持 LDP 和分段路由。这里,由于互操作性问题,设备 R1 不能与设备 R6 可。

要在支持 LDP 的设备与分段路由设备之间启用互操作性,请将网段路由网段中的设备的任何一个接口配置为 LDP 映射服务器。目前,映射服务器在[edit routing-options source-packet-routing]层次结构级别下配置前缀。借助此功能,如果在[edit protocols ospf]层次结构级别下应用了 LDP 映射服务器配置,则将通过 OSPF 通告所有 ldp 前缀的范围 TLV 的新扩展前缀 LSA。支持分段路由的设备分析扩展前缀范围 TLV 和对应于该前缀的映射路由,安装在 inet. 3 和 mpls。0路由表。

例如,在中图 22,如果设备 R2 (在分段路由网络中)是 LDP 映射服务器,则包含以下配置:

注:

用作 LDP 网络中设备的start-prefix回传地址的 IP 地址(在此示例中为设备 R5)。

当在设备 R2 上提交 LDP 映射服务器配置时,扩展前缀范围 TLV 将在 OSPF 区域内淹没。能够分段路由(设备 R1、R2 和 R3)的设备安装 OSPF 分段路由路由,并使用分段 ID (SID)索引进行指定的环回地址。SID 索引也在 mpls 中更新。由分段路由设备发送的0路由表。

从 Junos OS Release 19.1 R1 开始,分段路由-LDP 边界路由器可以将分段路由流量拼接至 LDP 下一跳跃,反之亦然。

Unsupported Features and Functionality for Interoperability of Segment Routing with LDP using OSPF

  • 只有在源配置中检测到前缀冲突。如果存在前缀范围冲突,则来自下部路由器 ID prevails 的前缀 SID。在这种情况下,将生成系统日志错误消息 — RPD_OSPF_PFX_SID_RANGE_CONFLICT

  • 不支持 IPv6 前缀。

  • 不支持大量 OSPF 扩展前缀由自治系统的分段路由映射服务器生成的不透明 LSA (As)。

  • 不支持区域间 LDP 映射服务器 functionary。

  • 不支持扩展前缀不透明 LSA 的 ABR 功能。

  • ASBR 不支持扩展前缀不透明 LSA 功能。

  • 不支持分段路由映射服务器首选项 TLV。

使用 ISIS 通过 LDP 实现分段路由的互操作性

要使用 ISIS 实施带 LDP 的分段路由的互操作性,需要在协议 ISIS 和 LDP 下分别提供服务器-客户端配置,以及 inet. 3 或 inet 中的路由。0路由表用于用 LDP 为分段路由 LSPLSP,反之亦然。

图 23是一种简单的 LDP 网络拓扑结构,用于说明使用 LDP 映射服务器-客户端功能将分段路由设备与 LDP 设备的互操作性。该拓扑包含四个提供商边缘(PE)设备(设备 PE1、PE2、PE3 和 PE4)和四个提供商(P)设备(设备 P5、P6、P7 和 P8)。

图 23: 带有使用 ISIS 的 LDP 的带互操作性的 LDP 拓扑示例带有使用 ISIS 的 LDP 的带互操作性的 LDP 拓扑示例

设备 PE3、PE4、P6、P7 和 P8 是支持 LDP 的设备。设备 PE1、PE2、P5 和 P6 能够分段路由全局块(SRGB)值为100和200,节点分段 Id (Sid)值分别为101、102105和106。

对于通过连续 MPLS 通道从设备 PE3 和设备 PE1 进行隧道传输的服务流,支持分段路由和 LDP 的设备孤岛必须可互操作。

LDP Mapping Client Functionality (LDP to Segment Routing)

LDP 客户端功能是 LDP 到分段的路由映射,是从右到左的信息流图 23。在设备 P6 上,LDP 出局策略配置为向左侧的分段路由网络中的所有节点 Sid 和前缀 Sid 公布。因此,在设备 P6 上,LDP 将设备 PE1、PE2 和 P5 用作设备 P7 的出口 FEC 标签绑定。

设备 PE3 已经学习了将设备 PE1 用作协议下一跳跃的服务路由。设备 PE3 具有来自 PE1 FEC 的 P8 下一跳跃的 LDP 标签绑定。因此,设备 PE3 根据经典 LDP 行为将其服务数据包发送到设备 P8。设备 P8 具有从其 P7 的下一跳跃 PE1 FEC 的 LDP 标签绑定,因此设备 P8 按照经典 LDP 行为转发到设备 P7。

设备 P7 具有 PE1 FEC 的 P6 下一跳跃的 LDP 标签绑定,因此设备 P7 根据经典 LDP 行为转发到设备 P6。

设备 P6that 作为 PE1 FEC 的 LDP 出口,拼接并调换 PE1 FEC 的传入的出局 LDP 标签与同等分段路由节点 SID (在此示例中为101),以将流量转发至设备 P5。

设备 P5 pop 101 SID,假定设备 PE1 将其节点段101公布为倒数第二-pop 标志,然后将信息流转发给设备 PE1。设备 PE1receives 通道化数据包并处理服务标签。

因此,端到端 MPLS 通道基于从设备 PE3 到设备 P6 的 LDP LSP 构建,以及从设备 P6 到设备 PE1 的相关节点段。

LDP Mapping Server Functionality (Segment Routing to LDP)

LDP 服务器功能是分段路由到 LDP 的映射,这是从左到右的信息流图 23。在设备 P6 上,映射服务器前缀配置包含在[edit routing-options source-packet-routing]层次结构级别之下。如果在特定 IGP 下应用配置,则 LDP 网络中所有 LDP FEC 标签绑定的标签绑定类型、长度和值(TLV)都将公布为 inet。3个 LDP 路由。

此处,设备 P6 充当分段路由映射服务器 (SRMS)并通告以下映射 – (P7、107)、(P8、108)、(PE3、103)、(PE4、104)和(P7、107)。如果设备 PE3 上支持分段路由,则会在设备 PE3 上配置节点 SID 103。由于设备 PE3 不支持分段路由,该策略在设备 P6 上的 SRMS 上配置,而设备 P6 负责通告映射。

这些映射服务器通告仅由分段路由设备理解。分段路由设备在 MPLS 数据平面中安装相关节点 Sid,具体取决于节点自身如何通告节点分段。例如,设备 PE1 使用 P5 下一跳跃安装节点 SID 103,就像设备 PE3 公布了 SID 103 一样。

设备 PE1 具有 PE3 作为其协议下一跳跃的服务路由。设备 PE1 有一个节点段用于该路由IGP – 103,带 P5 下一跳跃。因此,设备 PE1 会使用两个标签将其服务数据包发送到设备 P5:底部标签(即服务标签)和顶部标签(即 SID 103)。设备 P5 将103更换为103并转发至设备 P6。设备 P6 的下一跳跃是 IGP 路由 PE3,不能分段路由。(设备 P7 不会通告分段路由功能)。但是,设备 P6 具有来自此下一跳跃的 LDP 标签绑定,用于相同的 FEC (例如 LDP 标签1037)。因此,在设备 P6 上,IGP 将103更换为1037并转发至设备 P7。

设备 P7 将此标签替换为设备 P8 收到的 LDP 标签,然后将其转发至设备 P8。LDP 标签通过设备 P8 弹出并转发至设备 PE3。

设备 PE3 接收通道上的数据包并处理服务标签。端到端 MPLS 通道基于从 PE1 到 P6 的设备从分段路由节点构建,以及从设备 P6 到 PE3 的 LDP LSP。

Segment Routing to LDP Stitching

当 IGP 段路由 LSP 的 IP 下一跃点不支持分段路由时,IGP 查看 inet 的路由表,以查看是否存在 LDP LSP 到相同的前缀。如果存在 LDP LSP,IGP 通过编程将分段路由标签交换为 ldp 标签的 MPLS 传输路由,从而将分段路由 LSP 拼接到 ldp LSP,以将信息流从分段路由域切换到 LDP 域。

图 24说明了用于实现互操作性的分段路由和 LDP Lsp 的装订。

图 24: 拼接分段路由和 LDP Lsp拼接分段路由和 LDP Lsp

在拓扑中,设备 PE3 是支持 LDP 的,不支持分段路由。分段路由域中的映射服务器可以为设备 P7、P8 和 PE4 播发标签绑定 TLV。在此类情况下,设备 PE1 可以同时具有前缀 SID 和远程标签绑定 TLV 和 SID,以到达设备 PE4。但是,设备 PE1 将前缀 SID 优先于远程标签绑定 TLV,同时 programing 其用于设备 PE4 的入口分段路由路由。因此,设备 PE1 使用分段路由 LSP 端到端向设备 PE4 发送流量,并在向设备 PE3 发送流量时使用分段路由到 LDP 拼接。

Unsupported Features and Functionality for Interoperability of Segment Routing with LDP using ISIS

  • 不支持对标签绑定 TLV 采用倒数第二跳弹出行为。

  • 不支持对标签绑定 TLV 中的前缀范围进行广告。

  • 不支持分段路由冲突解决方案。

  • LDP 信息流统计信息不起作用。

  • 不支持不间断活动路由(NSR)和平滑路由引擎切换(GRES)。

  • 不支持 ISIS 层间。

  • RFC 7794,IS-IS 扩展 IPv4 的前缀属性。

  • 不支持在缝合节点上将 LDP 路由重新分发为前缀 sid。

配置杂项 LDP 属性

以下各节介绍如何配置许多其他 LDP 属性:

将 LDP 配置为使用 IGP 路由指标

如果要将内部网关协议 (IGP) 路由度量用于 LDP 路由,而不是默认 LDP 路由度量(默认 LDP 路由度量为 track-igp-metric 1),请使用 语句。

要使用 IGP 路由指标,请包含以下track-igp-metric语句:

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

防止向 inet 添加入口路由。0路由表

通过配置该no-forwarding语句,可以防止将入口路由添加到 inet 路由表中,而不是 inet 路由表,即使您在traffic-engineering bgp-igp[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]层次结构级别启用了该语句也是如此。默认情况下, no-forwarding该语句是禁用的。

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

要忽略 inet 路由表中的入口路由,请包含以下no-forwarding语句:

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

多实例 LDP 和载波运营商 Vpn

通过配置多个 LDP 路由实例,您可以使用 LDP 将服务运营商 VPN (PE)路由器中的标签播发到客户运营商客户边缘(CE)路由器。当运营商客户是基本互联网服务提供商(ISP)并想要限制其 PE 路由器的完整 Internet 路由时,这特别有用。通过使用 LDP 而不是 BGP,运营商客户将从互联网中防护其他内部路由器。如果运营商客户希望为客户提供第 2 层或第 3 层 VPN 服务,多实例 LDP 也很有用。

有关如何为载波至载波 VPN 配置多个 LDP 路由实例的示例,请参阅 标签分发协议用户指南 的多个 实例

配置 MPLS 和 LDP 以在终极跳路由器上弹出标签

默认通告标签为标签3(隐式空标签)。如果已公布标签3,倒数第二中继站路由器将删除该标签,并将数据包发送至出口路由器。如果启用终极跳弹出,则会通告标签0(IPv4 显式 Null 标签)。终极跳弹出可确保任何遍历 MPLS 网络的数据包都包含一个标签。

要配置终极跳弹出,请包含以下explicit-null语句:

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

注:

瞻博网络路由器基于传入标签对数据包进行排队。其他供应商的路由器可能会以不同的方式对数据包进行排队。在使用包含多家供应商路由器的网络时,请记住这一点。

有关标签的详细信息,请参阅MPLS 标签概述MPLS 标签分配

通过 RSVP 建立的 Lsp 启用 LDP

您可以通过 RSVP 建立的 Lsp 运行 LDP,从而有效地将 LDP 建立的 LSP 与 RSVP 建立的自我通道进行隧道。为此,请在 lo 0.0 接口上启用 LDP (请参阅启用和禁用 ldp)。您还必须通过在ldp-tunneling[edit protocols mpls label-switched-path lsp-name]层次结构级别上包括语句,来配置要通过其运行 LDP 的 lsp:

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

在异类网络中通过 RSVP 建立的 Lsp 启用 LDP

一些其他供应商对回传地址使用 OSPF 指标1。瞻博网络路由器将 OSPF 指标0用于回传地址。这可能需要您在异类网络中的 RSVP Lsp 上部署 LDP 隧道时手动配置 RSVP 指标。

如果 瞻博网络 路由器通过 RSVP 隧道连接到另一家供应商的路由器,并且 LDP 隧道也启用,则默认情况下 瞻博网络 路由器可能不使用 RSVP 隧道将流量路由至其他供应商出口路由器下游的 LDP 目标,如果 RSVP 路径的度量值比物理 OSPF 路径大 1。

为确保 LDP 通道在异类网络中正常运行,您可以将 OSPF 配置为通过包含以下ignore-lsp-metrics语句来忽略 RSVP LSP 指标:

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

  • [edit protocols ospf traffic-engineering shortcuts]

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

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

要启用 RSVP Lsp 上的 LDP,您还需要完成部分通过 RSVP 建立的 Lsp 启用 LDP中的过程。

为 LDP 会话配置 TCP MD5 签名

您可以为 LDP TCP 连接配置 MD5 签名,以防止将欺骗 TCP 分段引入到 LDP 会话连接流中。

使用 MD5 签名选项的路由器配置了需要身份验证的每个对等方的密码。密码存储加密。

即使对等接口配置了不同的安全签名,也仍然可以创建 LDP hello 邻区。但是,TCP 会话不能通过身份验证,也不会建立。

从 Junos OS Release 16.1 R1 开始,对 LDP 会话支持散列消息身份验证代码(HMAC)和 MD5 身份验证,从每个会话配置扩展为子网匹配(即与最长前缀匹配)配置。

对子网匹配身份验证的支持为为自动目标 LDP (TLDP)会话配置身份验证提供了灵活性,从而实现了远程环路自由替代(路由 LFA)和 FEC 129 伪线的部署。

要为 LDP TCP 连接配置 MD5 签名,请包含session-group and authentication-key语句:

使用session-group语句配置 LDP 会话远程端的地址。

md5-authentication-key (密码)长度最高可为69个字符。字符可以包含任何 ASCII 字符串。如果包含空格,请将所有字符放在引号内。

您还可以为 LDP 路由协议配置身份验证密钥更新机制。此机制允许您更新身份验证密钥,而不会中断关联的路由和信号协议,例如开放最短路径优先(OSPF)和资源保留设置协议(RSVP)。

要配置身份验证密钥更新机制,请将key-chain语句包括在[edit security authentication-key-chains]层次结构级别,并指定key用于创建包含多个身份验证密钥的 keychain 的选项。

要配置 LDP 路由协议的认证密钥更新机制,请包含 层级的 语句,以将协议 authentication-key-chain[edit protocols ldp] 与认证 [edit security authentication-key-chains] 密钥关联。您还必须配置认证算法,方式为包含 authentication-algorithm algorithm 层次结构 [edit protocols ldp] 级别的 语句。

有关身份验证密钥更新功能的详细信息,请参阅为BGP 和 LDP 路由协议配置身份验证密钥更新机制

配置 LDP 会话保护

LDP 会话通常在由一个或多个链路连接的一对路由器之间创建。路由器为连接它们的每个链路形成一个 hello 邻接关系,并将所有邻接项与相应的 LDP 会话相关联。当 LDP 会话的最后一个 hello 邻接关系消失时,LDP 会话将终止。您可能需要修改此行为,以防止 LDP 会话不必要地终止和重新建立。

您可以将 Junos OS 配置为在两个路由器之间保持 LDP 会话,即使在通过配置session-protection语句连接两个路由器的链路上没有 hello 邻接关系也是如此。您可以选择使用timeout选项指定时间(秒)。只要路由器维护 IP 网络连接,会话就会在指定的持续时间内保持不变。

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

禁用 LDP 的 SNMP 陷阱

每当 LDP LSP 从多达下或向下过渡到 up 时,路由器都会发送 SNMP 陷阱。但是,可以禁用路由器、逻辑系统或路由实例上的 LDP SNMP 陷阱。

有关 LDP SNMP 陷阱和专有 LDP 工具MIB的信息,请参阅 SNMP MIB Explorer

要禁用 LDP 的 SNMP 陷阱,请为trap disable以下log-updown语句指定选项:

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

使用 LDP 链路上的 IGP 配置 LDP 同步

LDP 是用于在非流量工程的应用程序中分配标签的协议。标签沿由 IGP 确定的最佳路径分布。如果不维护 LDP 与 IGP 之间的同步,则 LSP 会下降。当 LDP 未在给定链路上完全运行时(未建立会话且未交换标签),IGP 会公布具有最大成本指标的链路。链路不是首选链接,但仍保留在网络拓扑中。

LDP 同步仅支持在 IGP 下配置为点到点的主动点对点接口和 LAN 接口上。温和重启期间不支持 LDP 同步。

要通告最大成本指标,直到 LDP 运行同步,请包括以下ldp-synchronization语句:

要禁用同步,请包含disable语句。要配置用于通告未完全运行的链路的最大成本指标的时间段,请包括hold-time语句。

有关可在其中配置此语句的层次结构级别列表,请参阅本声明的语句摘要部分。

配置与路由器上的 IGP 的 LDP 同步

您可以配置 LDP 等待的时间,然后通知 IGP 某个接口的 LDP 邻居和会话正在运行。对于具有大量 Fec 的大型网络,您可能需要将更长的值配置为允许足够的时间来交换 LDP 标签数据库。

要配置 LDP 在通知 IGP LDP 邻居和会话运行之前等待的时间,请包括igp-synchronization语句并指定holddown-interval选项的秒数:

有关可在其中配置此语句的层次结构级别列表,请参阅本声明的语句摘要部分。

配置标签提款定时器

标签提款定时器会延迟向相邻节点发送 FEC 的标签提款消息。当到邻接方的 IGP 链路发生故障时,如果相邻节点是 FEC 的下一跳跃,则与 FEC 相关联的标签必须从所有上游路由器中提取。在 IGP 汇聚并从新的下一跳跃中接收到标签后,该标签将 readvertised 所有上游路由器。这是典型的网络行为。通过延迟一小段时间取出标签(例如,直到 IGP 汇聚,并且路由器从下游下一跳跃接收新的 FEC 标签),即可避免标签取出并发送标签映射。该label-withdrawal-delay语句允许您配置此延迟时间。默认情况下,延迟为 60 秒。

如果路由器在定时器退出之前接收新标签,则标签提款计时器将取消。但是,如果计时器运行,则会从所有上游路由器中提取 FEC 的标签。

默认情况下,LDP 会等待 60 秒,然后撤销标签,以避免在 LSP 重新融合IGP时实现 LSP 多次。要以秒数配置标签撤消延迟时间,请包含 label-withdrawal-delay 以下语句:

有关可在其中配置此语句的层次结构级别列表,请参阅本声明的语句摘要部分。

忽略 LDP 子网检查

在 Junos OS 8.4 及更高版本中,在邻接方建立过程中执行 LDP 源地址子网检查。LDP link hello 数据包中的源地址与接口地址相匹配。这导致与一些其他供应商的设备出现互操作性问题。

要禁用子网检查,请包含allow-subnet-mismatch以下语句:

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

  • [edit protocols ldp interface interface-name]

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

注:

ACX 系列路由器不支持 [edit logical-systems] 层次结构级别。

配置 LDP LSP Traceroute

您可以跟踪路由,随后是 LDP 信号的 LSP。LDP LSP traceroute 基于 RFC 4379,检测多协议标签交换 (MPLS) 数据平面故障。此功能允许您定期跟踪 FEC 中的所有路径。FEC 拓扑信息存储在可从 CLI 访问的数据库中。

拓扑更改不会自动触发 LDP LSP 的跟踪。但是,您可以手动启动 traceroute。如果 traceroute 请求针对的是数据库中的当前 FEC,则会使用结果更新数据库的内容。

定期 traceroute 功能适用于在oam[edit protocols ldp]层次结构级别配置的语句指定的所有 fec。要配置定期 LDP LSP traceroute,请包含periodic-traceroute以下语句:

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

  • [edit protocols ldp oam]

  • [edit protocols ldp oam fec address]

您可以单独配置periodic-traceroute该语句,也可使用以下任一选项:

  • exp—指定服务等级探测器时使用哪些选项。

  • fanout—指定每个节点要搜索的下一跃点的最大数量。

  • frequency—指定 traceroute 尝试之间的间隔。

  • paths—指定要搜索的最大路径数。

  • retries—指定在放弃之前将探测器发送到特定节点的尝试次数。

  • source—指定发送探测器时要使用 IPv4 源地址。

  • ttl—指定最大活动时间值。超出此值的节点将不会被追踪。

  • wait—在重新发送探查数据包之前,请指定等待间隔时间。

收集 LDP 统计信息

LDP 流量统计信息显示已通过路由器上特定 FEC 的信息流量。

traffic-statistics层次结构级别[edit protocols ldp]配置语句时,LDP 信息流统计信息定期收集并写入文件。通过使用 选项,您可以配置收集统计数据(以秒 interval 计)有多长。默认收集间隔为5分钟。您必须配置 LDP 统计信息文件;否则,将不会收集 LDP 流量统计信息。如果 LSP 出现故障,则 LDP 统计信息将重置。

要收集 LDP 信息流统计信息,请traffic-statistics包含以下语句:

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

本节包含以下主题:

LDP 统计信息输出

以下示例输出来自 LDP 统计信息文件:

LDP 统计信息文件包含以下数据列:

  • FEC—用于收集 LDP 流量统计信息的 FEC。

  • Type—源自路由器的信息流类型(源自此路由器 Ingress )或 Transit (通过此路由器转发)。

  • Packets— FEC 自 LSP 启动以来经过的数据包数。

  • Bytes— FEC 自 LSP 启动以来传递的字节数。

  • Shared—一个值表示多个前缀绑定到同一标签(例如,当多个前缀通过出口策略 Yes 通告时)。这种情况下的 LDP 信息流统计数据适用于所有前缀,应将其视为此类情况。

  • read—此数字(在日期和时间旁边显示)可能与显示的实际统计信息数不同。部分统计数据在显示之前汇总。

在倒数第二中继站路由器上禁用 LDP 统计信息

特定情况下,在倒数第二中继站路由器上收集 LDP 流量统计信息会消耗过多的系统资源。如果除了deaggregatetraffic-statistics语句之外还配置语句,则会加剧此问题。对于达到其下一中继站路由使用限制的路由器,建议为以下no-penultimate-hoptraffic-statistics语句配置选项:

有关可在其中配置traffic-statistics语句的层次结构级别列表,请参阅本声明的语句摘要部分。

注:

配置该no-penultimate-hop选项时,对于此路由器的倒数第二跳跃,fec 没有可用的统计信息。

每当您在配置中包括或删除此选项时,LDP 会话将被关闭然后重新启动。

以下样本输出来自显示配置该选项的no-penultimate-hop路由器的 LDP 统计信息文件:

LDP 统计信息限制

以下是通过配置traffic-statistics语句收集 LDP 统计信息相关的问题:

  • 您不能清除 LDP 统计信息。

  • 如果缩短指定间隔,则仅当统计信息计时器的到期时间晚于新间隔时,才发出新的 LDP 统计信息请求。

  • 新的 LDP 统计信息集合操作在前一项完成之前无法启动。如果间隔很短或 LDP 统计的数量很大,则两个统计信息集合之间的时间间隔可能会比间隔长。

当 LSP 关闭时,LDP 统计信息将重置。

跟踪 LDP 协议流量

以下各节介绍如何配置跟踪选项以检查 LDP 协议流量:

在协议和路由实例级别跟踪 LDP 协议流量

要跟踪 LDP 协议流量,可在traceoptions[edit routing-options]层次结构级别的全局语句中指定选项,并且可以通过包含以下traceoptions语句来指定 LDP 特定选项:

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

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

以下跟踪标志显示与发送和接收各种 LDP 消息相关联的操作。每个修饰符都可以带有一个或多个以下修改键:

  • address— 跟踪地址操作和地址撤消消息。

  • binding—跟踪标签绑定操作。

  • error—追踪错误情况。

  • event—跟踪协议事件。

  • initialization—跟踪初始化消息的操作。

  • label— 跟踪标签请求、标签映射、标签撤消和标签发布消息的操作。

  • notification—跟踪通知消息的操作。

  • packets— 跟踪地址操作、地址撤消、初始化、标签请求、标签映射、标签撤消、标签发布、通知和定期消息。此address修饰符等效于设置、 initializationlabelnotification、、和periodic修饰符。

    您还可以使用filtermatch-on addresspackets标志的子选项配置标记修饰符。这允许您根据数据包的源和目标地址进行跟踪。

  • path—追踪标签交换路径操作。

  • path—追踪标签交换路径操作。

  • periodic—跟踪 hello 和持续消息的操作。

  • route—跟踪路由消息的操作。

  • state—追踪协议状态转换。

跟踪 Fec 内的 LDP 协议流量

LDP 将一个转发等效类(FEC)与它所创建的每个 LSP 相关联。与 LSP 关联的 FEC 指定将哪些数据包映射到 LSP。Lsp 通过网络扩展,因为每个路由器都选择下一跳跃为 FEC 和接头通告的标签,并将其添加至所有其他路由器的标签。

您可以跟踪特定 FEC 内的 LDP 协议流量,并基于 FEC 的 LDP 跟踪语句。当您想要跟踪或故障排除与 FEC 相关联的 LDP 协议流量时,这是很有用的。以下跟踪标志可用于此目的:routepathbinding

下面的示例说明如何配置 LDP traceoptions语句,以根据 FEC 筛选 ldp 跟踪语句:

此功能具有以下局限性:

  • 过滤功能仅适用于由 IP 版本 4 (IPv4) 前缀组成的 FEC。

  • 无法过滤第 2 层电路 FEC。

  • 在配置路由跟踪和筛选时,不会显示 MPLS 路由(它们被过滤器阻止)。

  • 过滤由策略和配置的match-on选项值决定。配置策略时,请确保默认行为始终reject为。

  • 唯一match-on的选择是fec。因此,唯一应包含的策略类型是路由过滤器策略。

例子跟踪 LDP 协议流量

详细跟踪 LDP 路径消息:

跟踪所有 LDP 传出消息:

跟踪所有 LDP 错误情况:

跟踪所有 LDP 传入消息和所有标签绑定操作:

跟踪与 LSP 关联的 FEC 的 LDP 协议流量:

发布历史记录表
版本
说明
19.1
从 Junos OS Release 19.1 R1 开始,分段路由-LDP 边界路由器可以将分段路由流量拼接至 LDP 下一跳跃,反之亦然。
16.1R1
从 Junos OS Release 16.1 R1 开始,对 LDP 会话支持散列消息身份验证代码(HMAC)和 MD5 身份验证,从每个会话配置扩展为子网匹配(即与最长前缀匹配)配置。
16.1
从 Junos OS 版本16.1、M-LDP 开始,当根地址是通过 MPLS LSP 进一步递归解析的 BGP 路由时,可在 ASBR 或出口处发出点到多方面 Lsp 信号。
14.1
从 Junos OS 版本14.1 开始,为了将现有的 IPTV 服务从本机 IP 多播迁移到 MPLS 多播,您需要从 PIM 过渡到 M-LDP 点对多点 Lsp,并最小限度地减少停机。