-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add SRv6 SID L3Adj HLD #1472
Add SRv6 SID L3Adj HLD #1472
Conversation
Signed-off-by: Carmine Scarpitta <[email protected]>
doc/srv6/srv6_sid_l3adj.md
Outdated
We extend SRv6Orch to support the programming of the L3Adj associated with uA, End.X, uDX4, uDX6, End.DX4, and End.DX6 behaviors. | ||
|
||
When SRv6Orch receives a SID with the `adj` parameter set, it calls the function `neighOrch->hasNextHop()` to make sure a nexthop associated with the adjacency exists. | ||
- If the nexthop does not exist, SRv6Orch returns an error. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about ECMP? Does Fpmsyncd change(https://github.com/sonic-net/sonic-swss/pull/2515/files) handle ECMP as well? Please update accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cscarpitta Could you update the doc with ECMP for MYSID entries.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kperumalbfn Hi Kumaresh, the scope of the PR will be limited to a single L3Adj. We are doing of the required changes to support ECMP and we are targeting 202405 for the ECMP support. Thanks!
community review recording https://zoom.us/rec/share/KXIvrUaqMzYGe1rXnIwNkUrxQ6LM9rE9vqP46Xo1eQYT67kNWDEn3b9o4JyBMXWk.nkzFHaTnToC2mr7U |
@cscarpitta
You can refer to "mirrororch.cpp" which is consumer of nexthop. |
- Handle the case when a SID is installed but the neighbor associated with the SID is not yet ready - Handle the case when a neighbor is removed from the system and there are some SIDs associated to the neighbor Signed-off-by: Carmine Scarpitta <[email protected]>
@shuaishang Thanks for the comment. We added a callback to handle neighbor "up" / "down" events, as discussed during the community review. |
This PR has been reviewed in Routing WG weekly meeting - Thursday, September 28, 2023. Here is the summary of agreement reached during the call ![]() https://lists.sonicfoundation.dev/g/sonic-wg-routing/message/106 We updated the HLD and the code PR as per the above agreement. @venkatmahalingam, since you there in the Routing WG weekly meeting, could you please review and help to merge the HLD and the code PR? Thanks |
@kperumalbfn could you please help and review this PR? |
This proposal has been reviewed in routing WG. https://lists.sonicfoundation.dev/g/sonic-wg-routing/wiki/34965 Current version looks good to me. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It has been reviewed in Routing WG.
All the comments of this PR has been addressed. It has been reviewed in Routing WG. Eddie has approved the PR. Could we merge the PR ? |
This HLD describes the extensions of SRv6Orch required to support the programming of the L3Adj associated with SRv6 uA, End.X, uDX4, uDX6, End.DX4, and End.DX6 behaviors.
The document that describes the HLD is available here:
https://github.com/cscarpitta/SONiC/blob/srv6_sid_l3adj/doc/srv6/srv6_sid_l3adj.md