3. 动机
SR P2MP Policies 通常由控制器、NETCONF/YANG 或 CLI 配置. 因为没有 underlay signaling protocol 将 SR P2MP Policy 从 Root 分发到 Leaf routers, 因此需要 ping 和 traceroute 沿 multicast tree 隔离故障.
RFC 6425 过程适用于 SR P2MP Policy, 但有 SR 特定考虑. 当 echo request 携带 SR P2MP Policy MPLS CP FEC 时, Egress Address P2MP Responder sub-TLVs SHOULD NOT 使用. SR P2MP Policies SHOULD 遵循 RFC 6425 的通用 P2MP MPLS LSP 过程. 实现 MUST 考虑一个 SR P2MP Policy 可能包含多个 CP 和 PTI, 并 SHOULD 支持逐个测试每个 CP 和 PTI. 能理解 Replication-SID 的下游节点收到 ping 或 traceroute 包时, 即使该 CP/PTI 不是 active path, 也 MUST 处理请求并生成响应.
对于由 unicast path 连接的非相邻 Replication segments, SR P2MP Policy OAM 验证 P2MP 部分, unicast OAM 验证连接它们的 unicast path. 对 P2MP tree traceroute, TTL mode MUST 在 unicast path 起始路由器上设为 Pipe Mode.
echo request message MUST 包含 Target FEC Stack TLV, 明确指定被测试的 CP 和 PTI. RFC 9961 引入 SR MPLS P2MP Policy Tree Instance sub-TLV:
| Sub-Type | Length | Value Field |
|---|---|---|
| 41 | Variable | SR MPLS P2MP Policy Tree Instance |
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address Family | Address Length| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Root ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tree-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Instance-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Address Family: 2 octets, IPv4/IPv6 Address Family Numbers from [IANA-AF].
- Address Length: 1 octet, 4 octets for IPv4 and 16 octets for IPv6.
- Reserved: MUST be set to zero by the sender and ignored by the receiver.
- Root: variable length, the Root node of the SR P2MP Policy.
- Tree-ID: 4 octets.
- Instance-ID: 2 octets, identifying the specific Path-Instance.
响应范围使用 RFC 6425 的 P2MP Responder Identifier TLV 机制, 包括 IPv4/IPv6 egress 和 node address sub-TLVs.