Skip to content
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

Merged
merged 2 commits into from
Nov 13, 2023
Merged

Conversation

cscarpitta
Copy link
Contributor

@cscarpitta cscarpitta commented Sep 13, 2023

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

Repo PR title State
sonic-swss [orchagent]: Extend the SRv6Orch to support the programming of the L3Adj GitHub issue/pull request detail

Signed-off-by: Carmine Scarpitta <[email protected]>
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.
Copy link
Contributor

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.

Copy link
Contributor

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.

Copy link

@ahsalam ahsalam Oct 20, 2023

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!

@zhangyanzhao
Copy link
Collaborator

@shuaishang
Copy link

@cscarpitta
SRv6Orch need to handle the scenarios that nexthop is not exist or re-created:

  1. when configure L3Adj, the nexthop is not exist. (e.g. when system reboot, L3Adj is configured but nexthop is not exist yet)
  2. nexthop is removed/added because of neighbour down/up

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]>
@cscarpitta
Copy link
Contributor Author

@shuaishang Thanks for the comment. We added a callback to handle neighbor "up" / "down" events, as discussed during the community review.

@ahsalam
Copy link

ahsalam commented Oct 11, 2023

This PR has been reviewed in Routing WG weekly meeting - Thursday, September 28, 2023.

Here is the summary of agreement reached during the call

image

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

@ahsalam
Copy link

ahsalam commented Oct 14, 2023

@kperumalbfn could you please help and review this PR?
This feature is tracked for 202311 release.
@zhangyanzhao

@eddieruan-alibaba
Copy link
Contributor

This proposal has been reviewed in routing WG.

https://lists.sonicfoundation.dev/g/sonic-wg-routing/wiki/34965

Current version looks good to me.

@eddieruan-alibaba eddieruan-alibaba self-requested a review October 25, 2023 17:06
Copy link
Contributor

@eddieruan-alibaba eddieruan-alibaba left a 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.

@ahsalam
Copy link

ahsalam commented Oct 30, 2023

Hi @zhangyanzhao @kperumalbfn

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 ?

@zhangyanzhao zhangyanzhao merged commit af0d369 into sonic-net:master Nov 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: DeferredForNextRelease
Status: Done
Development

Successfully merging this pull request may close these issues.

6 participants