示例:为 LDP 信号 LSP 配置 MPLS TTL 传播
概述
下图描述了层次结构中的[edit protocol ldp]
语句有益的典型方案no-propagate-ttl
。
拓扑学
在图中,您可以看到两个原生 LDP 云通过主干网与 LDPoRSVP 连接。
- 从路由器 R1,数据包被封装为 LDP 标签并发送到目标 R7。
- 在路由器 R3 上,数据包中的 LDP 标签被剥离为 IP 数据包。然后,数据包使用 LDP over RSVP (LDPoRSVP) 封装,并通过骨干网发送。
- 在路由器 R5 上,LDPoRSVP 标签被剥离为 IP 数据包,然后数据包再次封装在 LDP 标签中并发送到目标。
目的
目的是执行以下操作:
- 不使用 TTL 传播隐藏两个 LDP 云
- 取消隐藏主干网 (LDPoRSVP)
将数据包从路由器 R1 发送到路由器 R7 时,必须在两个路由器 R1 和 R5 上执行这些操作。您无法使用现有选项实现此目的。例如,在路由器 R5 上使用全局选项 (set protocol mpls no-propagate-ttl
) 时,它会在相反方向 (R7-R1) 上禁用 TTL 传播 LDPoRSVP 主干网。发生这种情况是因为该选项适用于 LDP 和 RSVP。
LDP 上的无传播 TTL 和传播 TTL 行为的用例
路由器 R3 上的 LDP 需要同时支持无传播 TTL 和传播 TTL 行为。
从带有 LDPoRSVP 的路由器 R3 在 R4 方向上,路由器需要支持传播 TTL 行为。但是,对于本机 LDP(路由器 R2),LDP 需要支持无传播 TTL 行为。
为了实现此结果,我们在 LDP 下引入了一个新选项, no-propagate-ttl
您需要为路由器 R3 和路由器 R5 配置该选项。此选项禁用 LDP 路径的 TTL 传播。
在 LDPoRSVP 场景中,传播行为取决于 RSVP 无递减 TTL (no-decrement-ttl
) 选项。
- 如果在 LDPoRSVP 方案中配置了
no-propagate-ttl
该选项,并且未配置无递减 TTL (no-decrement-ttl
),则会进行 TTL 传播。例如:
在路由器 R3 上,对于 LDPoRSVP 方案,如果设置以下配置,则会进行 TTL 传播。
user@host> set protocol ldp no-propagate-ttl
- 如果在路由器 R3 和路由器 R5 之间通过
no-decrement-ttl
LSP 配置选项,则会禁用 TTL 传播。例如,在路由器 R3 上:
user@host> set protocol ldp no-propagate-ttl user@host> set protocol mpls no-decrement-ttl
在路由器 R1 上,数据包使用 TTL 255 的 LDP 标签封装,就像配置任何 no-propagate-ttl
CLI 一样。
在路由器 R3 上:
- 数据包中的 LDP 标签被剥离为 IP 报头,并且 TTL 不会从 LDP 标签复制到 IP 报头。
- 数据包使用 LDPoRSVP 标签封装,并通过主干网发送。
- 带有
no-decrement-tll
的新选项ldp no-propagate-ttl
决定是否应传播 TTL。 - 该选项未配置,
no-decrement-ttl
因此会发生通常的 TTL 传播
在路由器 R5 上,LDPoRSVP 标签被剥离到 IP 报头。新选项配置为支持 no-propagate-ttl
LDP 协议,IP 数据包使用带有 TTL 255 的 LDP 标签封装并发送。
配置
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的网络配置,然后将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中。
set protocol ldp no-propagate-ttl
结果
我们修改了 CLI 命令 show ldp overview
的输出以显示 TTL 配置。
检查配置结果:
user@host> show ldp overview Instance: master Reference count: 4 Router ID: 10.1.1.1 Inet LSR ID: 10.1.1.4 Inet6 LSR ID: 10.1.1.6 LDP inet: enabled LDP inet6: enabled Transport preference: Single-stack Message id: 21 Configuration sequence: 1 Deaggregate: disabled Explicit null: disabled IPv6 tunneling: disabled Strict targeted hellos: disabled Loopback if added: yes Route preference: 9 Unicast transit LSP chaining: disabled P2MP transit LSP chaining: disabled Transit LSP statistics based on route statistics: disabled LDP route acknowledgement: enabled BGP export: enabled No TTL propagate: enabled LDP mtu discovery: disabled LDP SR Mapping Client: disabled Capabilities enabled: none Egress FEC capabilities enabled: entropy-label-capability Downstream unsolicited Sessions: Operational: 2 Retention: liberal Control: ordered Auto targeted sessions: Auto targeted: disabled Dynamic tunnel session count: 0 P2MP: Recursive route: disabled No rsvp tunneling: disabled Timers: Keepalive interval: 10, Keepalive timeout: 30 Link hello interval: 5, Link hello hold time: 15 Targeted hello interval: 15, Targeted hello hold time: 45 Label withdraw delay: 60, Make before break timeout: 30 Make before break switchover delay: 3 Link protection timeout: 120 Graceful restart: Restart: enabled, Helper: enabled, Restart in process: false Reconnect time: 60000, Max neighbor reconnect time: 120000 Recovery time: 160000, Max neighbor recovery time: 240000 Traffic Engineering: Bgp igp: disabled Both ribs: disabled Mpls forwarding: disabled IGP: Tracking igp metric: disabled Sync session up delay: 10 Session protection: Session protection: disabled Session protection timeout: 0 Interface addresses advertising: 10.1.1.1 10.100.2.1 10.101.2.1 10.1.1.4 10.1.1.6 10.53.85.142 2001:db8:1000:1:2::1 2001:db8:1001:1:2::1 2001:db8:1111::1 2001:db8:abcd::128:53:85:142 fe80:1:2::1 fe80:1001:1002::1 LDP Job: Read job time quantum: 1000, Write job time quantum: 1000 Read job loop quantum: 100, Write job loop quantum: 100 Backup inbound read job time quantum: 1000, Backup outbound read job time quantum: 1000 Backup inbound read job loop quantum: 100, Backup outbound read job loop quantum: 100 Label allocation: Current number of LDP labels allocated: 4 Total number of LDP labels allocated: 7 Total number of LDP labels freed: 3 Total number of LDP label allocation failure: 0 Current number of labels allocated by all protocols: 4