SR with ExpNull
Load basic.isis.sr.enabled.cfg
SR is already enabled using ISIS.
Configure R7 so that all directly connected nodes use ExpNull instead of PHP behavior for traffic sent to R7’s Lo1.
Answer
Explanation
By default, with LDP, RSVP-TE, and SR, the penultimate hop node will pop off the label. This saves resources on the final node, which would otherwise have to do both a pop action and a lookup on the bottom label or IP header. Sometimes you might instead want to retain the top label, usually for the purpose of retaining the EXP value for QoS. This is done in LDP and RSVP-TE by advertising an explicit null label value, instead of implicit null.
But how can we achieve this with SR? SR is not a separate protocol, so nodes are not advertising label mapping messages to one another. The way this is accomplished is through the flags on the prefix SID in the IGP advertisement.
Before we make any changes, we can see that R7 advertises its prefix-SID with the “no-PHP” flag cleared (P) and the ExpNull flag cleared (E).
To advertise the Prefix-SID with expnull we use the following keyword on the prefix-sid configuration:
Now R7 advertises the Prefix-SID with both the PHP-Off flag set and the ExpNull flag set:
This causes directly connected nodes, such as R5, to swap 16007 for ExpNull:
We can verify this in the data plane by enabling mpls oam on all nodes and doing a traceroute to R7:
Last updated