Hi Zafar & authors

I reviewed the draft and have a few comments.

The draft is a sid list  optimization providing an exclusion of the node
sid PCEP extension using a capability flag to signal to include or exclude
based on the use case scenario.

This idea seems very similar in context to RFC 8986 SRv6 PGM H.Encap.Red
head end behavior reduces the size of the SRH by one SID by excluding the
first SID in the SRH of the new IPv6 header, but now applying to the last
SID SR Policy endpoint.

So applying  a similar optimization on the SR policy endpoint for static or
dynamic ODN or automatic steering where the endpoint node SID is defined in
the SID list and signaling in PCEP a flag for exclusion in cases where the
egress SID is not necessary.

I think it maybe good to run this draft by Spring WG on their thoughts on
the use case since it’s an SR architecture change to not include the
endpoint SID as I have noticed it is required for Linux kernel and FD.IO VPP
(Vector Packet Processing) but not for routers for static SID lists.  I am
guessing PCE dynamic SID list may have the same requirement but should be
researched why so this can be changed as proposed in the draft.

Also this could be applicable to SRv6 Compression C-SID  both next and
replace sid as well maybe  SR-MPLS.  We should mention in the draft.

In the draft it mentions the endpoint SID locator on the egress PE being
redundant if you have a service SID.  I agree if the PCE adds the endpoint
SID and overlay service SID that is definitely redundant.

So the SR policy endpoint is a 2 tuple {color, endpoint}. The SR policy
endpoint should not be confused with the last SID in the SID list egress PE
Endpoint Node SID.  When egress PE signaling RFC 9012 color extended
community color matches the SR head node SR policy color the BSID is
locally auto generated and binds the candidate path dynamic or static SID
list onto the SRv6 forwarding plane to the SR policy endpoint.   In order
for the candidate path to be bound to the forwarding plane a key ingredient
is the SR Policy 2 tuple 2nd argument the endpoint must be routing
reachable which is the endpoint is an IPv6 address on the egress PE
loopback0.  This same endpoint is used for all SR Algo’s as well and must
be routing reachable via the SRv6 forwarding plane. So technically for SR
policy using a static sid list could have a single Node SID or adjacency
SID in the middle of the path or could have endpoint SID or it could have
the endpoint SID plus the overlay service SID.  What I have found with SRv6
compression with C-SID with Next-C-SID endpoint behavior using FD.IO VPP or
Linux kernel as the head node the Next SID carrier programming requires
both the endpoint SID and overlay service SID.

Based on what I have stated above the SR policy candidate path is steering
to the SR policy endpoint loopback0 and so both the endpoint SID and the
service SID are most definitely not required.  So that should be included
as an option to exclude both the Node SID and overlay service SID.

As well processing both the Node SID and overlay SID endpoint behavior both
on the same node can be avoided by signaling PSP to POP the endpoint SID on
the PSP node so then both SIDs already have the capability of not being
processed on endpoint node egress PE if PSP is signaled.


I think this use case also definitively makes sense that I can think of is
if you have an Adj SID to the SR policy endpoint node you don’t need the
endpoint node SiD or overlay SID in the PCE computed segment list.

Also AFAIK EPE is not applicable to SRv6 since labels are not used and no
BGP-LU and no concept of LSP where all nodes must be SRv6 capable as any
vanilla IPv6 node can forward the SRv6 encapsulated packets. So you can
steer across any path of mix of capable and non capable nodes.  EPE is for
the inter domain boundary where with MPLS you have BGP-LU for inter domain
stitching but now with SR-MPLS BGP-LU stitch is replaced with EPE to build
end to end LSP inter domain path.  Not necessary for SRv6.

There was a similar situation where a SR architectural feature or
modification was brought up in PCE s and IDR and Ketan had given the
recommendation to first have a Spring related architecture draft and make
the draft only PCEP specific in PCE WG and BGP specific in IDR WG and not
related to any SR architecture modifications

https://datatracker.ietf.org/doc/draft-ietf-spring-pmtu-sr-policy/

I don’t this is a case necessarily but that situation with Linux kernel and
VPP requirements for endpoint SID and overlay service sid  and now the
growing ecosystem with SRv6 it maybe good to run it by Spring.

I think it would be good to standardize and if Linux and VPP require this
then find out from the developers, find out why but technically I don’t see
why since static SID list does not require so PCE dynamic SID list should
not require.

The major use case here is with cloud native steering that if using F3216
format for Next SID and you only have 6 next sid 16 bit slots, if you can
save 2 Next SIDs slots in the next sid carrier both the endpoint sid and
service overlay sid you can steer a total of 6 hops not including the last
hop so a total of 7 hops really which is a massive optimization.  So we
would have a bump of 2 extra hops end to end can steer a total of 7 hops
end to end without SRH which is quite incredible with F3216 next sid format.

I would recommend some of the updates I mentioned here for the draft as
well as adding in detailed comments on SRv6 compression next sid endpoint
behavior.  Also mention replace sid as it can benefit as well even with SRH
if reduces size of SRH.

Great work on this draft!


Thanks

Gyan

On Fri, Nov 8, 2024 at 9:39 AM Zafar Ali (zali) <zali=
40cisco....@dmarc.ietf.org> wrote:

> Dear authors,
>
>
>
> We presented draft-ali-pce-srv6-policy-sid-list-optimization [1] and had
> some hallway discussions of the relationship of the sid-list optimization
> in OAM probes. Specifically, an SRv6 policy's SID list may end with the
> policy endpoint's node SID, and the traffic steered (over policy) already
> ensures that it is taken to the policy endpoint. In such cases, the SID
> list can be optimized by excluding the endpoint Node SID when installing
> the policy.
>
>
>
> It would be good to add considerations for this case in
> draft-ietf-spring-stamp-srpm.
>
>
>
> [1]
> https://datatracker.ietf.org/doc/draft-ali-pce-srv6-policy-sid-list-optimization/
>
>
>
> Thanks
>
>
>
> Regards … Zafar
>
>
> _______________________________________________
> spring mailing list -- spring@ietf.org
> To unsubscribe send an email to spring-le...@ietf.org
>
_______________________________________________
spring mailing list -- spring@ietf.org
To unsubscribe send an email to spring-le...@ietf.org

Reply via email to