sonic-net / SONiC

Landing page for Software for Open Networking in the Cloud (SONiC) - https://sonic-net.github.io/SONiC/
2.16k stars 1.1k forks source link

SRv6 Policy HLD #1707

Open eddieruan-alibaba opened 3 weeks ago

linux-foundation-easycla[bot] commented 3 weeks ago

CLA Signed

The committers listed above are authorized under a signed CLA.

eddieruan-alibaba commented 3 weeks ago

https://github.com/eddieruan-alibaba/SONiC/blob/eruan-srv6p/doc/srv6/srv6_policy.md

HLD link

BorisH2018 commented 6 days ago

Hi, Eddie , here are few more comments additionally to those which I made on Thursday's call.

1) Binding SID (BSID) is not ,mentioned at all in the HLD. RFC 9256 (SR Policy Architecture) 6.1 says: "Each candidate path MAY be defined with a BSID." So in forwarding plane BSID can be mapped into an another Segment List (NHG). IMO, this functionality is quite important. Will it be included in some later version?

2) FRR SRv6 Policy Configuration section

  1. Add "ipv6-address" as segment type for segment list for SRv6. Currently, FRR CLI only has "mpls" and "nai" as the segment type.

May be would be better to say explicitly that Type B segment type (item 4. RFC 9256) is supported in FRR)?

3) HLD mentions BFD, why can't we also use S-BFD?

4) I also have not seen in configuration the discriminator of CP (2.5, RFC 9256). Is it in roadmap? 5) Also to align with RFC 9256, would be better to mention that HLD currently focuses on explicit CPs. 6) Forwarding information NHG's schema "Zebra maintains a SRv6 Policy NHG in two levels. The first level is for ECMP over multiple polices, and the second level is for ECMP over multiple candidate paths." -> It is not clear, why do we need ECMP over multiple policies? Do you mean a composite CP (2.2 RFC 9256) ? It is quite rare implementation case and would be good to clarify it. Also according to the configuration a 1st level of an ECMP is an ECMP over SLs.

Thank you.

SY, Boris