Segment Routing Co-existence with LDP 段路由与 LDP 的共存 Clarence Filsfils Kris Michielsen
Segment Routing 与 LDP 的共存 与 LDP 和其它 MPLS 控制协议共存 从 LDP 简单迁移到 Segment Routing
Segment Routing 与 LDP 控制平面共存
与其它 MPLS 标签分发协议共存 MPLS 体系架构允许同时使用多个标签分配协议 LDP,RSVP-TE, 和 SR 控制平面无需交互也可以共存 每个节点的标签管理器 ( Label Manager) 预留一个 SR 控制平面的标签范围 (SRGB) 确保所有动态标签在 SRGB 块之外分配 确保动态标签是唯一分配 每个 LSR 必须确保它可以唯一地解读其入标签 邻接段 :Label Manager 本地自动分配独一无二的标签 前缀段 : 运营商确保在 SRGB 范围内分配唯一的标签
段路由和 LDP 数据平面共存
MPLS 到 MPLS 转发与 MPLS 到 IP 转发标签交换与标签处置 对于 MPLS 到 MPLS 与 MPLS 到 IP 转发条目,SR 和 LDP 可以共存 这些条目可以按照本地 ( 入向 ) 标签来索引 由 LDP 和 SR ( 或其他标签分配协议 ) 掌管的本地 / 入向标签是唯一的 出向标签仅对下游邻居有意义, 而对本地节点无意义 可以为一个 Prefix 创建多个 MPLS 到 MPLS 或 MPLS 到 IP 转发条目 > 即 LSP 中间点的交叉连接
SRGB SRGB SRGB SRGB MPLS 到 MPLS 与 MPLS 到 IP SR LDP 所有节点 : 启用 SR + LDP Prefix-SID index 5 1 2 3 4 5 1.1.1.5... 31999
SRGB SRGB SRGB SRGB MPLS 到 MPLS 与 MPLS 到 IP 到 1.1.1.5/32 的 SR Prefix-Segment 所有节点 : 启用 SR + LDP SR LDP Prefix-SID index 5 1 2 3 4 5 1.1.1.5 16005 16005 16005 24005 16005 pop 24005 16005 31999
SRGB SRGB SRGB SRGB MPLS 到 MPLS 与 MPLS 到 IP 到 1.1.1.5/32 的 LDP FEC 所有节点 : 启用 SR + LDP 1 2 3 4 5 SR LDP Prefix-SID index 5 1.1.1.5 16005 16005 16005 24005 16005 pop 24001 32011 24002 24001 24005 16005 24003 pop 31999 32011 24003
IP 到 MPLS 标签压入 相同 Prefix 的多个 IP 到 MPLS 转发条目 ( 如 LDP 到 SR) 不能够共存 这些转发条目 ( 指定标签压入 ) 只能按照 prefix 来索引 转发表查询的结果是到目的地的一个或多个路径 每个路径只能有一个 IP2MPLS 转发条目 如果多路径通向目的地, 那么每个路径都有其自己的 IP2MPLS 条目 > 例如, 一个路径压入一个 LDP 标签, 另一个路径压入一个 SR 标签
SRGB SRGB SRGB SRGB IP 到 MPLS: 哪个标签应该被压入? 所有节点 : 开启 SR + LDP SR LDP Prefix-SID index 5 1 2 3 4 5 1.1.1.5 segment-routing mpls sr-prefer 16005 16005 16005 24005 16005 pop to 1.1.1.5 Payload 24001 32011 24002 24001 24005 16005 24003 pop segment-routing mpls (default) 31999 32011 24003
IP 到 MPLS 标签压入 对于 IP 到 MPLS 转发,LDP 或 SR 条目 ( 二选一 ) 可以写入到 FIB 每一个前缀路径, 仅有 1 个 IP2MPLS 条目能够存在 默认 :LDP 标签压入为优选 可配置为优选 SR 而不是 LDP router isis 1 address-family ipv4 6 unicast segment-routing mpls sr-prefer router ospf 1 segment-routing mpls segment-routing sr-prefer
SRGB IGP/SR 与 LDP 对 FIB 的写入 此图示显示了第 8 页里节点 1 的行为 IGP 1 1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005 RIB 1.1.1.5/32 LDP/LSD 16005 16005 1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005 1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001 24002 24001 FIB Loc_lbl: 本地标签, 由本地节点分配 Out_lbl: 出向标签 16005: SR label 24002: LDP label
SRGB IGP/SR 与 LDP 对 FIB 的写入 此图示显示了默认行为 : 优选 LDP 标签压入 to 1.1.1.5 Payload 16005 16005 24002 24001 segment-routing mpls (default) 1 FIB IGP/RIB 1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005 cef 1.1.1.5/32 24001 LDP/LSD 1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001 mpls forwarding 24002 24001 16005 16005 Loc_lbl: 本地标签, 由本地节点分配 Out_lbl: 出向标签 16005: SR label 24002: LDP label
SRGB IGP/SR 与 LDP 对 FIB 的写入 此图示显示了当配置了优选 SR 标签命令时的行为 IGP/RIB LDP/LSD segment-routing local/in mpls lbl sr-prefer 16005 16005 to 1.1.1.5 Payload 24002 24001 1 FIB 1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005 cef 1.1.1.5/32 16005 1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001 mpls forwarding 16005 16005 24002 24001 Loc_lbl: 本地标签, 由本地节点分配 Out_lbl: 出向标签 16005: SR label 24002: LDP label
所有节点 : 启用 SR + LDP MPLS 到 MPLS 转发条目 3 2 1 RP/0/0/CPU0:xrvr-3#show mpls forwarding labels 24003 Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 24003 24005 100.0.0.3/32 Gi0/0/0/0 99.2.3.3 5670 RP/0/0/CPU0:xrvr-3#show mpls forwarding labels 16001 Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 16001 16001 SR Pfx (idx 1) Gi0/0/0/0 99.2.3.3 345243 1.1.1.3 1.1.1.2 1.1.1.1 MPLS 到 MPLS LDP 标签条目 两个条目被呈现, 而不是优先设置 MPLS 到 MPLS SR 标签条目
LDP 优选时的 IP 到 MPLS 转发条目 所有节点 : 启用 SR + LDP 默认 (LDP 优先 ) 3 2 1 RP/0/0/CPU0:xrvr-3#show mpls ldp bindings 1.1.1.1/32 neighbor 1.1.1.2 1.1.1.1/32, rev 24 Local binding: label: 24003 Remote bindings: (1 peer) Peer Label ----------------- --------- 1.1.1.2:0 24005 RP/0/0/CPU0:xrvr-3#show cef 1.1.1.1/32 1.1.1.1/32, version 222, internal 0x4000001 0x0 (ptr 0xa1376074) [1], 0x0 (0xa135b560), 0x228 (0xa1411118) Updated May 21 07:08:50.475 local adjacency 99.2.3.2 Prefix Len 32, traffic index 0, precedence n/a, priority 3 via 99.2.3.2, GigabitEthernet0/0/0/0, 9 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xa0e300bc 0x0] next hop 99.2.3.2 tx adjacency local label 24003 labels imposed {24005} 1.1.1.3 1.1.1.2 1.1.1.1 本地 LDP 标签 邻居的 ( 远程 )LDP 标签 IP 到 MPLS cef 条目 : 采用 LDP 标签
SR 优选时的 IP 到 MPLS 转发条目 All nodes: SR + LDP 配置 sr-prefer 时 3 2 1 RP/0/0/CPU0:xrvr-3#show route 1.1.1.1/32 detail Routing entry for 1.1.1.1/32 Known via "isis 1", distance 115, metric 2, type level-2 Installed May 21 07:08:45.345 for 00:35:05 Routing Descriptor Blocks 99.2.3.2, from 1.1.1.1, via GigabitEthernet0/0/0/0 Route metric is 2 Label: 0x3e81 (16001) Tunnel ID: None Extended communities count: 0 Path id:1 Path ref count:0 NHID:0x1(Ref:6) Route version is 0xa (10) Local Label: 0x3e81 (16001) <...> RP/0/0/CPU0:xrvr-3#show cef 1.1.1.1/32 1.1.1.1/32, version 222, internal 0x4000001 0x0 (ptr 0xa1376074) [1], 0x0 (0xa135b560), 0x228 (0xa1411118) Updated May 21 07:08:50.475 local adjacency 99.2.3.2 Prefix Len 32, traffic index 0, precedence n/a, priority 3 via 99.2.3.2, GigabitEthernet0/0/0/0, 9 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xa0e300bc 0x0] next hop 99.2.3.2 tx adjacency local label 16001 labels imposed {16001} 1.1.1.3 1.1.1.2 1.1.1.1 邻居的 ( 远程 )SR 标签本地 SR 标签 IP 到 MPLS cef 条目 : 采用 SR 标签
Segment Routing and LDP Ships in the night Deployment Model 段路由与 LDP 午夜航船 部署模式
午夜航船 部署模式 LDP 与 SR 保持独立 在 SR PE 之间需要保持持续的 SR 连接 ; 在 LDP PE 之间需要保持持续的 LDP 连接 ; 不需要 SR 到 LDP 或 LDP 到 SR 的交互工作 (interworking) 其它部署模式也可以, 请参见 SR/LDP 交互工作 章节
最简单地迁移方式 :LDP 到 SR 假设 : 所有节点可以升级到 SR 所有服务可以升级到 over SR 初始状态 : 所有节点运行 LDP, 而不运行 SR LDP LDP LDP 3 4 LDP 1 LDP 2 5 6 LDP LDP LDP Domain
最简单地迁移方式 :LDP 到 SR 假设 : 所有节点可以升级到 SR 所有服务可以升级到 over SR 初始状态 : 所有节点运行 LDP, 而不运行 SR 步骤 1: 所有节点都升级到支持 SR 没有特殊的顺序要求 仍旧默认优选 LDP 标签压入 SR+LDP 1 LDP SR+LDP SR+LDP 3 4 SR+LDP 2 5 6 SR+LDP SR+LDP SR+LDP Domain
最简单地迁移方式 :LDP 到 SR 假设 : 所有节点可以升级到 SR 所有服务可以升级到 over SR 初始状态 : 所有节点运行 LDP, 而不运行 SR 步骤 1: 所有节点都升级到支持 SR 没有特殊的顺序要求 仍旧默认优选 LDP 标签压入 步骤 2: 所有 PE 都配置成优选 SR 标签压入 SR+LDP 1 SR 没有特殊的顺序要求 sr-prefer SR+LDP SR+LDP 3 4 5 6 SR+LDP 2 SR+LDP SR+LDP SR+LDP Domain
最简单地迁移方式 :LDP 到 SR 假设 : 所有节点可以升级到 SR 所有服务可以升级到 over SR 初始状态 : 所有节点运行 LDP, 而不运行 SR 步骤 1: 所有节点都升级到支持 SR SR SR 没有特殊的顺序要求 仍旧默认优选 LDP 标签压入 SR 3 4 SR 步骤 2: 所有 PE 都配置成优选 SR 标签压入 1 SR 2 没有特殊的顺序要求 步骤 3:LDP 被从网络节点中移除 没有特殊的顺序要求 5 6 SR SR 最终状态 : 所有节点运行 SR, 而不运行 LDP SR Domain
请访问 : cisco.com segment-routing.net
鸣谢 : Ahmed Bashandy Robert Hanzl Steven Luong Stefano Previdi Peter Psenak
Thank you.