SR OAM DPM
Last updated
Last updated
Load top2.sdn.transport.init.cfg in topology1.
SR-MPLS using ISIS is already configured.
Configure data plane monitoring on XR3 so that all adjacency SIDs and prefix SIDs are tested every 1 minute for correct ingress and egress forwarding. Limit the testing to 20 pps.
Note that this lab requires XRv9000 to fully work properly (at least for XR3).
MPLS OAM DPM for SR is a fairly simple mechanism used to detect forwarding issues. DPM stands for data plane monitoring. First the process will perform an Adj-SID check for every Adj-SID of its directly connected neighbors. The router simply sends an LSP Ping with the top label as the Adj-SID for the neighbor’s adjacency with itself.
For example, on the XR3-XR2 link, XR3 sends an LSP ping to XR2 with the top label as XR2’s Adj-SID for that link. This causes XR2 to simply loop the packet back to XR3.
TI-LFA is not enabled, so XR3 only tests the single non-FRR Adj-SID. On XR2, we see that this is 24005:
XR3 sends an LSP ping with label 24005:
XR2 replies to XR3 with a successful result:
We can see the results of the adjacency SID tests using the following command on XR3:
Next, XR3 validates every prefix SID in its RIB. It verifies both the ingress and egress forwarding path in a clever way. It sets the TTL to 2 and sends the LSP Ping “backwards” to an upstream client with the client’s Adj-SID for itself. This causes the LSP Ping to be received inbound to XR3. Then XR3 forwards it egress to a downstream router, and verifies that it gets a successful reply.
For example, XR3 sends an LSP Ping to XR4 with top label as XR4’s Adj-SID with XR3, and then a subsequent label for the prefix SID for 10.0.0.1/32.
XR4 pops the top label and loops this back to XR3:
Now XR3 forwards this to XR1 on vlan 101 after popping the top label:
XR1 sends a successful reply:
This process is iterated for every upstream/downstream combination for every prefix SID. We can see the results using the following show command:
To see the details of the upstream/downstream combinations, we can specify a particular prefix:
DPM is ECMP aware, so in te case that multiple ECMP paths exist, all will be tested. For example, 10.0.0.11/32 is ECMP with two downstream nexthops: