ON THIS PAGE
连接
这一章介绍了在边缘使用 LDP 的brownfield网络(包含传统系统),并且该隧道通过仅限 RSVP 的核心。第一’章的任务是介绍 SR 智能化和故意;然后,它将了解 SR 可 subsume 所有标签分配责任的程度。
此处详述的某些功能可能尚未在发布此书籍时正式可用。请联系您的 Juniper 客户经理以获取时间线。
可达性
SR 中的基本连接通过广告前缀和邻接网段实现。它们由段标识符(SID)表示。存在许多其他类型的 Sid,每个都为不同的目的提供服务,但这两个类别足以建立基本可访问性。该前缀及其专用节点 SID 窗体在给定拓扑中唯一标识一个路由器,可通过特定路径查找算法到达;邻接 SID 用于识别到 IGP 邻居的路由链路。
有更多的分段类型,不存在讨论它们的空间。任意广播段表示节点间的共享前缀,可用于简单、无状态的负载分担和冗余。2级邻接 SID 表示 LAG 束的单个成员链路,应用于验证按成员链路 OAM;其 corollary 是将邻接关系到一个分段的邻接集。绑定 Sid 表示隧道。其中一些 Sid 在Observability章: Optimizability中详细探讨。
某些分段将作为标签直接播发,如邻接 Sid 的情况;前缀和节点 Sid 被间接通告为 SR 全局块(SRGB)中的索引。SRGB 表示节点用于指代全局分段的标签空间。它是 SR 无需为每个 IGP 了解的前缀公布标签的原因之一。SRGB 可在 SR 域中配置且理想地保持一致。
至少有一个分段与 IPv4 前缀关联,对于 IPv6 也可能是另一个段。节点段与路由器’的回传地址相关联。实际上,IPv4 和 IPv6 节点索引应视为回传地址由 SR 域中的操作员和–每节点唯一的管理。
邻接时间段默认为使用 pop 动态分配标签,并通过相应的 IGP 邻接操作转发。它们用于严格控制,包括流量保护。与节点 Sid 不同,邻接 Sid 具有本地或全局重要选择(尽管全局有效邻接 Sid 不常见)。
严格来讲,节点 Sid 只有在所有路由器共享一个通用的 SRGB 时才是全局一致。这是建议的部署模式。全局一致节点 SID 极大地简化了操作(包括故障排除),因为给定路由器由同一 SR 域中所有其他路由器的标签转发信息基(LFIB)中的相同条目表示。
Brownfields
示例网络如中Figure 1所示。这是许多运营商的通用设计。互联网和 VPN 叠加服务均由 LDP/RSVP-TE 组合提供,作为标签分配协议,多区域 IS-IS 作为选择 IGP。
由于我们的重点是底层,因此允许互联网和 L3VPN 连接满足我们的工作的证据。当然,任何 MPLS 服务– 6PE、6VPE、L2VPN、EVPN、et– al 可通过此相同网络交付。
为自己定位,让’我们从纽约的 CE (ce1 nyc)到华盛顿(ce1 iad)运行 traceroute。
为了简便起见,华盛顿州的 DC 将于华盛顿州从现在开始。
Connectivity verification
user@ce1.nyc> traceroute 198.51.100.54 routing-instance svc-inet traceroute to 198.51.100.54 (198.51.100.54), 30 hops max, 40 byte packets 1 pe1.nyc-ge-0-0-10.1 (198.51.100.1) 2.427 ms 1.646 ms 3.676 ms 2 p2.nyc-ge-0-0-2.0 (192.0.2.7) 70.034 ms p1.nyc-ge-0-0-2.0 (192.0.2.5) 7.387 ms p2.nyc-ge-0-0-2.0 (192.0.2.7) 52.897 ms MPLS Label=119 CoS=0 TTL=1 S=1 3 p1.phl-ge-0-0-2.0 (192.0.2.21) 55.576 ms p2.ewr-ge-0-0-2.0 (192.0.2.17) 6.849 ms p1.phl-ge-0-0-2.0 (192.0.2.21) 80.628 ms MPLS Label=313824 CoS=0 TTL=1 S=0 MPLS Label=352896 CoS=0 TTL=1 S=1 4 p2.iad-ge-0-0-6.0 (192.0.2.28) 7.129 ms p1.iad-ge-0-0-5.0 (192.0.2.30) 80.143 ms 73.898 ms MPLS Label=352896 CoS=0 TTL=1 S=1 5 pe1.iad-ge-0-0-1.0 (192.0.2.36) 6.994 ms 8.681 ms 5.971 ms 6 ce1.iad-ge-0-0-4.0 (198.51.100.54) 8.125 ms 7.631 ms 10.807 ms
请注意,使用的标签将在 SR 开始使用后更改。
现在,让我们’可以在 pe1 上启用 SR,并仔细追踪控制平面和转发表的变化。
Enabling SR on pe1.nyc
SRGB 的配置范围为1000到1127(含)。在该范围内,此路由器将其 IPv4 回传地址表示为1001(1000 + 1,其 IPv4 索引)。让’我们来确认这是如此。
Control plane: node SID verification
user@pe1.nyc> show isis overview Instance: master Router ID: 128.49.106.1 Hostname: pe1.nyc Sysid: 0128.0049.1061 Areaid: 49.0001 Adjacency holddown: enabled Maximum Areas: 3 LSP life time: 1200 Attached bit evaluation: enabled SPF delay: 200 msec, SPF holddown: 5000 msec, SPF rapid runs: 3 Overload bit at startup is set Overload high metrics: disabled Allow route leaking: disabled Allow internal prefix overloading: disabled Allow external prefix overloading: disabled IPv4 is enabled, IPv6 is enabled, SPRING based MPLS is enabled Traffic engineering: enabled Restart: Disabled Helper mode: Enabled Layer2-map: Disabled Source Packet Routing (SPRING): Enabled SRGB Config Range: SRGB Start-Label : 1000, SRGB Index-Range : 128 SRGB Block Allocation: Success SRGB Start Index : 1000, SRGB Size : 128, Label-Range: [ 1000, 1127 ] Node Segments: Enabled Ipv4 Index : 1, Ipv6 Index : 61 Post Convergence Backup: Disabled Level 1 Internal route preference: 15 External route preference: 160 Prefix export count: 0 Wide metrics are enabled Source Packet Routing is enabled Level 2 Internal route preference: 18 External route preference: 165 Prefix export count: 0 Wide metrics are enabled, Narrow metrics are enabled Source Packet Routing is enabled
除了手动配置的节点 SID 之外,我们还’可以验证邻接 sid 是否也已动态分配。
Control plane: adjacency SID verification
user@pe1.nyc> show isis database pe1.nyc level 1 extensive IS-IS level 1 link-state database: pe1.nyc.00-00 Sequence: 0x496, Checksum: 0x981e, Lifetime: 771 secs IPV4 Index: 1 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: p2.nyc.00 Metric: 10 Two-way fragment: p2.nyc.00-00, Two-way first fragment: p2.nyc.00-00 P2P IPv4 Adj-SID: 26, Weight: 0, Flags: --VL-- IS neighbor: p1.nyc.00 Metric: 10 Two-way fragment: p1.nyc.00-00, Two-way first fragment: p1.nyc.00-00 P2P IPv4 Adj-SID: 27, Weight: 0, Flags: --VL-- IP prefix: 128.49.106.1/32 Metric: 0 Internal Up Header: LSP ID: pe1.nyc.00-00, Length: 191 bytes Allocated length: 1492 bytes, Router ID: 128.49.106.1 Remaining lifetime: 771 secs, Level: 1, Interface: 0 Estimated free bytes: 1257, Actual free bytes: 1301 Aging timer expires in: 771 secs Protocols: IP, IPv6 Packet: LSP ID: pe1.nyc.00-00, Length: 191 bytes, Lifetime : 1198 secs Checksum: 0x981e, Sequence: 0x496, Attributes: 0x5 <L1 Overload=> NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes Packet type: 18, Packet version: 1, Max area: 0 TLVs: Area address: 49.0001 (3) LSP Buffer Size: 1492 Speaks: IP Speaks: IPV6 IP router id: 128.49.106.1 IP address: 128.49.106.1 Hostname: pe1.nyc Router Capability: Router ID 128.49.106.1, Flags: 0x00 SPRING Capability - Flags: 0xc0(I:1,V:1), Range: 128, SID-Label: 1000 SPRING Algorithm - Algo: 0 Extended IS Reachability TLV, Type: 22, Length: 80 IS extended neighbor: p2.nyc.00, Metric: default 10 SubTLV len: 29 IP address: 192.0.2.6 Neighbor’s IP address: 192.0.2.7 Local interface index: 336, Remote interface index: 334 P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0,P:0), Weight:0, Label: 26 P2P IPv4 Adj-SID: 26, Weight: 0, Flags: --VL-- IS extended neighbor: p1.nyc.00, Metric: default 10 SubTLV len: 29 IP address: 192.0.2.4 Neighbor’s IP address: 192.0.2.5 Local interface index: 335, Remote interface index: 334 P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0,P:0), Weight:0, Label: 27 P2P IPv4 Adj-SID: 27, Weight: 0, Flags: --VL-- IP extended prefix: 128.49.106.1/32 metric 0 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 1 No queued transmissions </L1
每个 pe1 都有一个邻接 SID。 nyc’IS-IS 邻居。此外,节点 SID 突出显示为 IP 扩展前缀 TLV 的子 TLV。这些标志还会在两种 SID 类型之间进行澄清和对比。‘V’指示 subTLV 是否带有一个值(如邻接 SID 的情况)或索引(与节点 SID 一样)。‘L’代表本地与全球意义。最后, ‘N’标志指出,给定的前缀 SID 在连接到路由器’的回传地址时更专用于节点 SID。
Forwarding plane: PE1’s FIB
user@pe1.nyc> show route table mpls.0 protocol isis mpls.0: 21 destinations, 21 routes (21 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 26 *[L-ISIS/14] 00:44:02, metric 0 > to 192.0.2.7 via ge-0/0/2.0, Pop 26(S=0) *[L-ISIS/14] 00:02:40, metric 0 > to 192.0.2.7 via ge-0/0/2.0, Pop 27 *[L-ISIS/14] 00:44:02, metric 0 > to 192.0.2.5 via ge-0/0/1.0, Pop 27(S=0) *[L-ISIS/14] 00:02:40, metric 0 > to 192.0.2.5 via ge-0/0/1.0, Pop
L-ISIS代表标记为 IS-IS。邻接 Sid 安装在 FIB 中,但节点 SID 似乎已丢失。这是正常的。由于未‘设置’ P 标记(PHP off),此路由器不希望收到带有顶部标签1001的数据包。相反,1001将由其邻接方弹出(一旦为 SR 启用)。这类似于传统标签分配协议使用的隐式-空行为。
Inter-area
由于目前没有其他路由器支持 SR,pe1。 nyc’的 sid’尚未通过区域外部路由器了解。区域内路由器(如 pe2)学习但忽略它们。
user@ce1.nyc> traceroute 198.51.100.54 routing-instance svc-inet traceroute to 198.51.100.54 (198.51.100.54), 30 hops max, 40 byte packets 1 pe1.nyc-ge-0-0-10.1 (198.51.100.1) 6.659 ms 2.265 ms 2.116 ms 2 p2.nyc-ge-0-0-2.0 (192.0.2.7) 8.626 ms 8.556 ms 13.895 ms MPLS Label=119 CoS=0 TTL=1 S=1 3 p2.ewr-ge-0-0-2.0 (192.0.2.17) 20.193 ms p1.phl-ge-0-0-2.0 (192.0.2.21) 18.045 ms 11.514 ms MPLS Label=313824 CoS=0 TTL=1 S=0 MPLS Label=352896 CoS=0 TTL=1 S=1 4 p1.iad-ge-0-0-5.0 (192.0.2.30) 10.881 ms 9.305 ms 8.683 ms MPLS Label=352896 CoS=0 TTL=1 S=1 5 pe1.iad-ge-0-0-1.0 (192.0.2.36) 8.032 ms pe1.iad-ge-0-0-2.0 (192.0.2.38) 8.232 ms pe1.iad-ge-0-0-1.0 (192.0.2.36) 7.529 ms 6 ce1.iad-ge-0-0-4.0 (198.51.100.54) 15.007 ms 10.747 ms 12.320 ms
一切都不会发生变化。标记为 IS-IS 的协议优先级别比 LDP 或 RSVP 高,并且需要操作员干预才能开始使用。不会发生 SR 转发,因为我们的 SR 域是一小孤岛,如中Figure 2所示。在下一节中,’我们将在纽约的所有路由器上配置节点 sid (也共享一个公共 IS-IS 区域),从 L1-L2 连接的 p1 开始。 nyc。
Enabling SR on p1.nyc
Control plane
让’我们先验证哪些方面的变化更快,这次。Abridged 输出将显示为强调省略号(…)指示的利息点。
user@p1.nyc> show isis database extensive p1.nyc IS-IS level 1 link-state database: p1.nyc.00-00 Sequence: 0x4b8, Checksum: 0x6c1a, Lifetime: 546 secs IPV4 Index: 3 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: pe2.nyc.00 Metric: 10 Two-way fragment: pe2.nyc.00-00, Two-way first fragment: pe2.nyc.00-00 P2P IPv4 Adj-SID: 30, Weight: 0, Flags: --VL-- IS neighbor: pe1.nyc.00 Metric: 10 Two-way fragment: pe1.nyc.00-00, Two-way first fragment: pe1.nyc.00-00 P2P IPv4 Adj-SID: 31, Weight: 0, Flags: --VL-- IS neighbor: p2.nyc.00 Metric: 10 Two-way fragment: p2.nyc.00-00, Two-way first fragment: p2.nyc.00-00 P2P IPv4 Adj-SID: 32, Weight: 0, Flags: --VL-- ... TLVs: ... IP extended prefix: 128.49.106.3/32 metric 0 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 3 IS-IS level 2 link-state database: p1.nyc.00-00 Sequence: 0x758, Checksum: 0xc13, Lifetime: 967 secs IPV4 Index: 3 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: p2.nyc.00 Metric: 999999 Two-way fragment: p2.nyc.00-00, Two-way first fragment: p2.nyc.00-00 P2P IPv4 Adj-SID: 33, Weight: 0, Flags: --VL-- IS neighbor: p1.ewr.00 Metric: 10 Two-way fragment: p1.ewr.00-00, Two-way first fragment: p1.ewr.00-00 P2P IPv4 Adj-SID: 29, Weight: 0, Flags: --VL-- IS neighbor: p1.phl.00 Metric: 10 Two-way fragment: p1.phl.00-00, Two-way first fragment: p1.phl.00-00 P2P IPv4 Adj-SID: 28, Weight: 0, Flags: --VL-- ... TLVs: ... IP extended prefix: 128.49.106.3/32 metric 0 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 3 IP extended prefix: 128.49.106.1/32 metric 10 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0xe0(R:1,N:1,P:1,E:0,V:0,L:0), Algo: SPF(0), Value: 1
与 pe1 相比,nyc 有两个差异。作为区域边界路由器(ABR),p1. nyc 不仅将自己的节点 SID 公布到 L1 和 L2 区域,还会在各个区域重新发起 pe1。 nyc’s 节点 sid 通告。这允许跨 IGP 区域了解全球分段。‘R’标志表示此节点 SID 正在各区域/级别上重新公布。
Crucially,此‘重新’播发节点 sid 上设置了 P 标志,而鲜明与 p1 的对比度相同。 NYC’自己的节点 sid。对于 p1,这条信号将发送给 SR-IOV 的邻接方,nyc 希望他们使用继续(交换)操作并保留将其解释为 pe1 nyc 的转发指令的顶部标签。
Forwarding plane: P1’s FIB
我们可以确认 p1。 nyc 已安装了标签1001的条目,表示 pe1 nyc’s 节点 SID:
user@p1.nyc> show route table mpls.0 protocol isis mpls.0: 31 destinations, 31 routes (31 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 28 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.21 via ge-0/0/5.0, Pop 28(S=0) *[L-ISIS/14] 00:09:21, metric 0 > to 192.0.2.21 via ge-0/0/5.0, Pop 29 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.15 via ge-0/0/4.0, Pop 29(S=0) *[L-ISIS/14] 00:09:21, metric 0 > to 192.0.2.15 via ge-0/0/4.0, Pop 30 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.8 via ge-0/0/3.0, Pop 30(S=0) *[L-ISIS/14] 00:07:10, metric 0 > to 192.0.2.8 via ge-0/0/3.0, Pop 31 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.4 via ge-0/0/2.0, Pop 31(S=0) *[L-ISIS/14] 00:07:10, metric 0 > to 192.0.2.4 via ge-0/0/2.0, Pop 32 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.13 via ge-0/0/1.0, Pop 32(S=0) *[L-ISIS/14] 00:07:10, metric 0 > to 192.0.2.13 via ge-0/0/1.0, Pop 33 *[L-ISIS/14] 00:34:55, metric 0 > to 192.0.2.13 via ge-0/0/1.0, Pop 33(S=0) *[L-ISIS/14] 00:09:21, metric 0 > to 192.0.2.13 via ge-0/0/1.0, Pop 1001 *[L-ISIS/14] 00:34:55, metric 10 > to 192.0.2.4 via ge-0/0/2.0, Pop 1001(S=0) *[L-ISIS/14] 00:07:10, metric 10 > to 192.0.2.4 via ge-0/0/2.0, Pop
您不仅可以看到用于传入标签1001的 pop (MPLS’转发平面的continue版本)操作,您可以看到邻接 SID 标签28-33 的 pop 操作。
Forwarding plane: PE1’s FIB
user@pe1.nyc> show route protocol isis table mpls.0 mpls.0: 23 destinations, 23 routes (23 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 26 *[L-ISIS/14] 02:06:55, metric 0 > to 192.0.2.7 via ge-0/0/2.0, Pop 26(S=0) *[L-ISIS/14] 00:10:50, metric 0 > to 192.0.2.7 via ge-0/0/2.0, Pop 27 *[L-ISIS/14] 00:48:12, metric 0 > to 192.0.2.5 via ge-0/0/1.0, Pop 27(S=0) *[L-ISIS/14] 00:10:50, metric 0 > to 192.0.2.5 via ge-0/0/1.0, Pop 1003 *[L-ISIS/14] 00:35:14, metric 10 > to 192.0.2.5 via ge-0/0/1.0, Pop 1003(S=0) *[L-ISIS/14] 00:10:50, metric 10 > to 192.0.2.5 via ge-0/0/1.0, Pop
Pe1。 nyc 现在有一个标签为1003的转发条目,表示 p1. nyc’s node SID。
Inter-area
除了 pe1 之外,nyc’的其他任何邻居均已启用 SR。所有 L2 邻居都了解并忽略这些分段。
Connectivity verification
user@ce1.nyc> traceroute 198.51.100.54 routing-instance svc-inet traceroute to 198.51.100.54 (198.51.100.54), 30 hops max, 40 byte packets 1 pe1.nyc-ge-0-0-10.1 (198.51.100.1) 3.118 ms 2.042 ms 1.803 ms 2 p2.nyc-ge-0-0-2.0 (192.0.2.7) 7.747 ms p1.nyc-ge-0-0-2.0 (192.0.2.5) 101.823 ms p2.nyc-ge-0-0-2.0 (192.0.2.7) 23.312 ms MPLS Label=119 CoS=0 TTL=1 S=1 3 p1.phl-ge-0-0-2.0 (192.0.2.21) 7.152 ms p2.ewr-ge-0-0-2.0 (192.0.2.17) 69.566 ms 67.497 ms MPLS Label=314 CoS=0 TTL=1 S=0 MPLS Label=355776 CoS=0 TTL=1 S=1 4 p1.iad-ge-0-0-5.0 (192.0.2.30) 11.528 ms 9.755 ms p2.iad-ge-0-0-6.0 (192.0.2.28) 6.276 ms MPLS Label=355776 CoS=0 TTL=1 S=1 5 pe1.iad-ge-0-0-1.0 (192.0.2.36) 5.667 ms 8.056 ms pe1.iad-ge-0-0-2.0 (192.0.2.38) 10.915 ms 6 ce1.iad-ge-0-0-4.0 (198.51.100.54) 169.285 ms 11.048 ms 9.896 ms
如 unexciting 所述,转发行为更改可能是 reassuring。启用 SR 时未发生意外更改,导致损坏现有服务。毕竟,应首选采用受控部署。
Enabling SR on the remaining New York routers
Control plane
此时,您应该知道需要什么。两个新节点 Sid 将通告到 L1 区域;pe2。 nyc’s 节点 SID 将被两个 p1 nyc 和 p2 重新公布。 Nyc 到 L2 子域。如 pe1。nyc’网络之前,目前已启用的 L2 路由器将忽略这种情况。让’我们来看:
user@p2.nyc> show isis database p2.nyc extensive IS-IS level 1 link-state database: p2.nyc.00-00 Sequence: 0x4a3, Checksum: 0x28ab, Lifetime: 851 secs IPV4 Index: 2 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: pe2.nyc.00 Metric: 10 Two-way fragment: pe2.nyc.00-00, Two-way first fragment: pe2.nyc.00-00 P2P IPv4 Adj-SID: 265, Weight: 0, Flags: --VL-- IS neighbor: pe1.nyc.00 Metric: 10 Two-way fragment: pe1.nyc.00-00, Two-way first fragment: pe1.nyc.00-00 P2P IPv4 Adj-SID: 266, Weight: 0, Flags: --VL-- IS neighbor: p1.nyc.00 Metric: 10 Two-way fragment: p1.nyc.00-00, Two-way first fragment: p1.nyc.00-00 P2P IPv4 Adj-SID: 267, Weight: 0, Flags: --VL-- ... TLVs: ... IP extended prefix: 128.49.106.2/32 metric 0 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 2 IS-IS level 2 link-state database: p2.nyc.00-00 Sequence: 0x4a0, Checksum: 0x8f75, Lifetime: 851 secs IPV4 Index: 2 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: p1.nyc.00 Metric: 999999 Two-way fragment: p1.nyc.00-00, Two-way first fragment: p1.nyc.00-00 P2P IPv4 Adj-SID: 268, Weight: 0, Flags: --VL-- IS neighbor: p2.ewr.00 Metric: 10 Two-way fragment: p2.ewr.00-00, Two-way first fragment: p2.ewr.00-00 P2P IPv4 Adj-SID: 264, Weight: 0, Flags: --VL-- IS neighbor: p2.phl.00 Metric: 10 Two-way fragment: p2.phl.00-00, Two-way first fragment: p2.phl.00-00 P2P IPv4 Adj-SID: 263, Weight: 0, Flags: --VL-- ... TLVs: ... IP extended prefix: 128.49.106.2/32 metric 0 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 2 IP extended prefix: 128.49.106.0/32 metric 10 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0xe0(R:1,N:1,P:1,E:0,V:0,L:0), Algo: SPF(0), Value: 0 IP extended prefix: 128.49.106.1/32 metric 10 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0xe0(R:1,N:1,P:1,E:0,V:0,L:0), Algo: SPF(0), Value: 1 IP extended prefix: 128.49.106.3/32 metric 10 up 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0xe0(R:1,N:1,P:1,E:0,V:0,L:0), Algo: SPF(0), Value: 3
现在应该熟悉,对于所有支持 SR-IOV 的路由器,每个 IS-IS 邻居(不受 SR 或不适用)以及节点 Sid (在所有情况下都重新通告,另一种)都存在邻接 Sid。
Connectivity verification
user@ce1.nyc> traceroute 198.51.100.54 routing-instance svc-inet traceroute to 198.51.100.54 (198.51.100.54), 30 hops max, 40 byte packets 1 pe1.nyc-ge-0-0-10.1 (198.51.100.1) 27.852 ms 38.214 ms 2.399 ms 2 p2.nyc-ge-0-0-2.0 (192.0.2.7) 8.883 ms p1.nyc-ge-0-0-2.0 (192.0.2.5) 7.776 ms p2.nyc-ge-0-0-2.0 (192.0.2.7) 6.584 ms MPLS Label=119 CoS=0 TTL=1 S=1 3 p1.phl-ge-0-0-2.0 (192.0.2.21) 6.929 ms p2.ewr-ge-0-0-2.0 (192.0.2.17) 7.092 ms 8.230 ms MPLS Label=314 CoS=0 TTL=1 S=0 MPLS Label=355776 CoS=0 TTL=1 S=1 4 p1.iad-ge-0-0-5.0 (192.0.2.30) 7.097 ms 6.988 ms p2.iad-ge-0-0-6.0 (192.0.2.28) 7.142 ms MPLS Label=355776 CoS=0 TTL=1 S=1 5 pe1.iad-ge-0-0-1.0 (192.0.2.36) 6.132 ms pe1.iad-ge-0-0-2.0 (192.0.2.38) 8.677 ms 5.444 ms 6 ce1.iad-ge-0-0-4.0 (198.51.100.54) 11.672 ms 9.005 ms 7.873 ms
最后,您可以确认无需更改流量转发。
所有这些工作都不会结束?几乎. 经过证明,启用 SR 控制平面并不会强制操作员立即利用其转发平面。实际上,这可能是任何迁移到 SR –控制平面验证的第一步,再加上服务保证。
交换到 SR
现已在纽约实现 SR。在入口路由器上进行调整是一项协议优先选项。到目前为止,我们一直在纽约和华盛顿州的 CEs 之间测试转发。由于我们的 SR 域被限制为前者,因此’让我们快速验证该区域内的 CEs 之间的连接。
Connectivity verification
user@ce1.nyc> traceroute routing-instance svc-inet 198.51.100.0 traceroute to 198.51.100.0 (198.51.100.0), 30 hops max, 40 byte packets 1 pe2.nyc-ge-0-0-10.1 (198.51.100.3) 235.860 ms 226.521 ms 69.491 ms 2 p1.nyc-ge-0-0-3.0 (192.0.2.9) 11.960 ms 4.510 ms p2.nyc-ge-0-0-3.0 (192.0.2.11) 4.477 ms MPLS Label=257 CoS=0 TTL=1 S=1 3 pe1.nyc-ge-0-0-1.0 (192.0.2.4) 3.625 ms 4.503 ms pe1.nyc-ge-0-0-2.0 (192.0.2.6) 5.833 ms 4 ce1.nyc-ge-0-0-1.1 (198.51.100.0) 6.088 ms 6.480 ms 7.580 ms
未使用任何 SR 标签。这一点很有意义,因为入口路由器 pe2,在 BGP 服务路由解析时,继续首选 LDP 学习的下一跃点。
Control plane
让’我们来验证入口 PE 上的服务路由和下一跳跃:
user@pe2.nyc> show route 198.51.100.0 active-path extensive inet.0: 30 destinations, 37 routes (30 active, 0 holddown, 0 hidden) 198.51.100.0/31 (2 entries, 1 announced) ... Indirect next hops: 1 Protocol next hop: 128.49.106.1 Metric: 1 Indirect next hop: 0xba57f80 1048577 INH Session ID: 0x165 Indirect path forwarding next hops: 2 Next hop type: Router Next hop: 192.0.2.9 via ge-0/0/1.0 weight 0x1 Session Id: 0x0 Next hop: 192.0.2.11 via ge-0/0/2.0 weight 0x1 Session Id: 0x0 user@pe2.nyc> show route 128.49.106.1 table inet.3 inet.3: 8 destinations, 11 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 128.49.106.1/32 *[LDP/9] 00:54:50, metric 1 to 192.0.2.9 via ge-0/0/1.0, Push 18 > to 192.0.2.11 via ge-0/0/2.0, Push 257 [L-ISIS/14] 00:54:29, metric 20 to 192.0.2.9 via ge-0/0/1.0, Push 1001 > to 192.0.2.11 via ge-0/0/2.0, Push 1001 user@pe2.nyc> show isis adjacency Interface System L State Hold (secs) SNPA ge-0/0/1.0 p1.nyc 1 Up 26 ge-0/0/2.0 p2.nyc 1 Up 26 user@pe2.nyc> show ldp database | match “put|128.49.106.1/32” Input label database, 128.49.106.0:0--128.49.106.2:0 257 128.49.106.1/32 ...
通过协议下一’跃点 128.49.106.1 –了解我们重新跟踪的 BGP 路由,pe1。 nyc’s 回路地址。标签与来自 LDP 和 SR 的此转发等价类(FEC)相关联(L ISIS 表示标记为 IS-IS)邻居。前者具有卓越的协议首选项,导致 pe2。 nyc 将 LDP 获知的标签257从其选择的邻域(p2. nyc)施加。
由于 ECMP 已生效,pe2 已推送标签18(由 p1 播发),因此 nyc 也会同样有效。 nyc 适用于相同的 FEC。这是转发平面决策。这是通过散列传入数据包标头并使用结果在每个流上选择一个出站路径的结果。
要进行更改,让我们’改进 pe2 上的 L a-ISIS 协议首选项。 nyc。
Prefer SR for intra-region traffic originating at pe2.nyc
Control plane: confirm pe2.nyc performs route resolution using SR instead of LDP
user@pe2.nyc> show route 128.49.106.1 table inet.3 inet.3: 8 destinations, 11 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 128.49.106.1/32 *[L-ISIS/8] 00:00:41, metric 20 to 192.0.2.9 via ge-0/0/1.0, Push 1001 > to 192.0.2.11 via ge-0/0/2.0, Push 1001 [LDP/9] 01:10:36, metric 1 to 192.0.2.9 via ge-0/0/1.0, Push 18 > to 192.0.2.11 via ge-0/0/2.0, Push 257
协议下一跳跃现在优先于 SR divined 标签(1001、pe1 nyc’s node SID)。这应该(finally!)会影响到转发平面。
Connectivity verification: intra-NY traffic is SR-switched
user@ce1.nyc> traceroute routing-instance svc-inet 198.51.100.0 traceroute to 198.51.100.0 (198.51.100.0), 30 hops max, 40 byte packets 1 pe2.nyc-ge-0-0-10.1 (198.51.100.3) 2.903 ms 3.001 ms 1.934 ms 2 p2.nyc-ge-0-0-3.0 (192.0.2.11) 5.263 ms p1.nyc-ge-0-0-3.0 (192.0.2.9) 35.811 ms 87.604 ms MPLS Label=1001 CoS=0 TTL=1 S=1 3 pe1.nyc-ge-0-0-1.0 (192.0.2.4) 188.617 ms 47.428 ms 8.965 ms 4 ce1.nyc-ge-0-0-1.1 (198.51.100.0) 10.858 ms 5.580 ms 5.275 ms
注意 pe2 从257推送到1001的标签中的变化。这将确认 SR 域中的信息流现在正在行使由分段的 LSP。只是为了确保所有额外区域的流量不会因协议首选项在 pe2 上的变化而不受影响,对华盛顿的跨国家目标的跟踪仍然保持为传统标签交换。
Connectivity verification: extra-NY traffic still uses LDP
user@ce1.nyc> traceroute 198.51.100.54 routing-instance svc-inet traceroute to 198.51.100.54 (198.51.100.54), 30 hops max, 40 byte packets 1 pe2.nyc-ge-0-0-10.1 (198.51.100.3) 49.540 ms 78.154 ms 68.680 ms 2 p1.nyc-ge-0-0-3.0 (192.0.2.9) 62.733 ms 64.765 ms p2.nyc-ge-0-0-3.0 (192.0.2.11) 64.562 ms MPLS Label=119 CoS=0 TTL=1 S=1 3 p1.phl-ge-0-0-2.0 (192.0.2.21) 60.903 ms 6.794 ms p2.ewr-ge-0-0-2.0 (192.0.2.17) 33.531 ms MPLS Label=314 CoS=0 TTL=1 S=0 MPLS Label=355776 CoS=0 TTL=1 S=1 4 p2.iad-ge-0-0-6.0 (192.0.2.28) 6.553 ms p1.iad-ge-0-0-5.0 (192.0.2.30) 96.063 ms 67.346 ms MPLS Label=352896 CoS=0 TTL=1 S=1 5 pe1.iad-ge-0-0-2.0 (192.0.2.38) 8.891 ms pe1.iad-ge-0-0-1.0 (192.0.2.36) 6.837 ms 6.421 ms 6 ce1.iad-ge-0-0-4.0 (198.51.100.54) 30.158 ms 108.181 ms 84.979 ms
现在,我们确信不会因为我们的行为而导致服务中断,而是让我’的镜像 pe2。nyc’在所有纽约路由器上的 SR 优先。配置完全相同:
此时,纽约路由器优先于将 SR 到 LDP 用于下一跳解析到其他纽约路由器。区域外的路由器仍不具有 SR,信息流继续不经中断转发。
服务类别保留
既然我们的孤岛正在发挥作用,’我们将简要介绍 SR 如何支持网络,从而在正常运行时间和服务等级(CoS)方面提供严格的 sla。一种广泛部署的技术是禁用倒数第二跳弹出(PHP),以支持最终跳弹出(UHP)行为。由于 SR 不会直接将节点 Sid 作为标签播发,因此它使用标志来请求上游路由器的 UHP 行为。让’我们在 pe1 上启用 UHP 并查看其邻接’ FIB 的变化。
Enable explicit-null UHP behavior on egress router pe1.nyc
Control plane: verify the change in pe1.nyc’s IS-IS LSP
user@pe1.nyc> show isis database pe1.nyc extensive IS-IS level 1 link-state database: pe1.nyc.00-00 Sequence: 0x4d4, Checksum: 0x4f97, Lifetime: 1195 secs IPV4 Index: 1 ... IP extended prefix: 128.49.106.1/32 metric 0 up \ 14 bytes of subtlvs Administrative tag 1: 1111 Node SID, Flags: 0x70(R:0,N:1,P:1,E:1,V:0,L:0), Algo: SPF(0), Value: 1
与早期输出相比,pe1 现在公布其节点 SID,同时‘P
’(PHP Off 或 disable PHP)和‘E
’(启用显式-null 或使用保留标签0)标志集。
这会导致其邻接方、p1 nyc 和 p2 nyc,以便为标签1001(pe1)使用 "继续" (交换)代替下一个(pop)操作。’nyc s 节点索引为1,并且网络使用通用的1k,如前文所述的 SRGB。Pe2 nyc’s FIB 不变。它不会直接连接到 pe1 nyc。PHP 和 UHP 行为仅与直接上游路由器相关。
Forwarding plane: verify pe1.nyc neighbors’ FIB
user@p1.nyc> show route label 1001 mpls.0: 35 destinations, 35 routes (35 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 1001 *[L-ISIS/8] 00:04:03, metric 10 > to 192.0.2.4 via ge-0/0/2.0, Swap 0 1001(S=0) *[L-ISIS/8] 00:04:03, metric 10 > to 192.0.2.4 via ge-0/0/2.0, Pop user@p2.nyc> show route label 1001 mpls.0: 40 destinations, 40 routes (40 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 1001 *[L-ISIS/8] 00:04:05, metric 10 > to 192.0.2.6 via ge-0/0/2.0, Swap 0 1001(S=0) *[L-ISIS/8] 00:04:05, metric 10 > to 192.0.2.6 via ge-0/0/2.0, Pop user@pe2.nyc> show route label 1001 mpls.0: 26 destinations, 26 routes (26 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 1001 *[L-ISIS/8] 09:14:56, metric 20 to 192.0.2.9 via ge-0/0/1.0, Swap 1001 > to 192.0.2.11 via ge-0/0/2.0, Swap 1001
P1 和 p2 现在都使用标签0来交换标签1001,这是众所周知的 IPv4 显式空值标签。此标签可确保 MPLS 信息流类(以前称为实验位)持续复制到最后一个跳跃路由器。在最后一个跳跃时,将弹出标签0,然后进行 IPv4 查找。标签0的存在已启用 CoS 透明度和保留。
继续之前,请注意,UHP 也在 pe2 上启用。
信息流保护和恢复
数据包网络很长时间能够在50ms 故障范围内提供保护,跨越 SONET/SDH 网络的数据条。基于 IP 的快速重新路由(FRR)可用于无循环替代(路由 LFA)和远程路由 LFA (rLFA)的 LDP。此外,RSVP-TE 还具备丰富的机制,可防止链路、节点或被识别为共享风险链路组(SRLG)的命运共享资源丢失。
这两种方法都没有其告诫。路由 LFA 与拓扑无关,其提供保护能力;rLFA 按添加的目标 LDP 会话状态和复杂性的代价提高了这一点。RSVP 具有最彻底的功能集,这取决于旁路和绕道 Lsp 的附加信号和状态维护。
对’源路由、显式控制和缺乏传输控制平面状态的高级能力,非常适合建立 costless 本地保护路径。只要拓扑中存在物理冗余,与拓扑无关的无环路替代(TI-路由 LFA)将会找到备用路由。它可以围绕受保护的链路、节点或本地定义的命运共享组进行重新路由。Erstwhile 网络保护技术的另一项改进是,路由 LFA 保护路径也是 ECMP 支持的。
路由 LFA protection 是本地维修点(PLR)的本地保护。备份路径经过预计算,但未预先终止。没有单一的合并点(MP),因为每个版本点都可以经过每个前缀优化。预计算的路径会从拓扑中修剪或过度地降低受保护资源的成本,以便计算后 IGP 融合路径。受保护资源的故障导致单个更新数据平面,将本地和全局修复组合到一个步骤中。
让’s 在 p1 上启用链路保护。 nyc 并观察其 SR 邻接方的结果变化。
Enable TI-LFA link protection for all level 1 links on p1.nyc
Control plane: verify p1.nyc is announcing its adjacency SIDs as protection-eligible
user@p1.nyc> show isis database extensive p1.nyc level 1 IS-IS level 1 link-state database: p1.nyc.00-00 Sequence: 0x510, Checksum: 0x192f, Lifetime: 1078 secs IPV4 Index: 3 Node Segment Blocks Advertised: Start Index : 0, Size : 128, Label-Range: [ 1000, 1127 ] IS neighbor: pe2.nyc.00 Metric: 10 Two-way fragment: pe2.nyc.00-00, Two-way first fragment: pe2.nyc.00-00 P2P IPv4 Adj-SID: 47, Weight: 0, Flags: -BVL-- IS neighbor: pe1.nyc.00 Metric: 10 Two-way fragment: pe1.nyc.00-00, Two-way first fragment: pe1.nyc.00-00 P2P IPv4 Adj-SID: 48, Weight: 0, Flags: -BVL-- IS neighbor: p2.nyc.00 Metric: 10 Two-way fragment: p2.nyc.00-00, Two-way first fragment: p2.nyc.00-00 P2P IPv4 Adj-SID: 35, Weight: 0, Flags: -BVL—
‘B’标志表示 p1. Nyc 将这些邻接 sid 候选项视为保护。让’我们来看一下其中的一个详细–的 SID 47,它表示指向 pe2 的链接。
Forwarding plane: verify p1.nyc has installed backup paths for protection-eligible SIDs
user@p1.nyc> show route label 47 extensive mpls.0: 35 destinations, 35 routes (35 active, 0 holddown, 0 hidden) … Next hop: 192.0.2.8 via ge-0/0/3.0 weight 0x1, selected Label operation: Pop … Next hop: 192.0.2.13 via ge-0/0/1.0 weight 0xf000 Label operation: Swap 1000 user@p1.nyc> show isis adjacency Interface System L State Hold (secs) SNPA ge-0/0/1.0 p2.nyc 3 Up 23 ... ge-0/0/3.0 pe2.nyc 1 Up 20
有两个不等的下一跃点,即新添加为备份。请注意,p1.’nyc 的计算备份到达 pe2 nyc,从而避免受保护的 ge-0/0/3 链路通过 p2. nyc。传入标签47的主要操作是弹出并直接发送到 pe2。 nyc。备份操作是将其交换 pe2 nyc’s 节点 SID (标签1000)并发送至 p2。如所示Figure 3,请 nyc。在该路由器上,将标签更换为0,这是由于 pe2。 nyc 通过显式-空公布其可访问性。
Forwarding plane: verify p2.nyc acts as a transit router on this stateless protection path
user@p2.nyc> show route label 1000 mpls.0: 37 destinations, 37 routes (37 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 1000 *[L-ISIS/8] 12:18:02, metric 10 > to 192.0.2.10 via ge-0/0/3.0, Swap 0 1000(S=0) *[L-ISIS/8] 00:03:43, metric 10 > to 192.0.2.10 via ge-0/0/3.0, Pop
第一个腿结束:即使在网络包含的部分中,SR 也已启用且处于主动使用状态。可访问性和保留 CoS 标记功能,以及提供无状态信息流保护和还原。
下一步是将 SR broach 到网络中的其余部分。