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

staticd: Add support for SRv6 Static SIDs #16894

Merged
merged 15 commits into from
Jan 20, 2025

Conversation

Yubin-Li
Copy link

@Yubin-Li Yubin-Li commented Sep 23, 2024

SRv6 is already supported in IS-IS and BGP. In this PR we extend staticd to support static allocation for SRv6 SIDs.

CLI example:

segment-routing
  srv6
    static-sids:
      sid fcbb:bbbb:1:fe01::/64 locator LOC1 behavior uDT4 vrf Vrf1

Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the rebase PR needs rebase label Sep 23, 2024
@donaldsharp
Copy link
Member

This should be broken up in to a bunch of smaller commits, with detailed explanations of what each commit is doing and why. Additionally I see white space changes that make it even harder to figure out what is going on. They should be removed.

@donaldsharp
Copy link
Member

Additionally this is not going to be even looked at until we have a topology test as well as documentation for the new functionality

@zice312963205 zice312963205 force-pushed the project-phoenixwing-ysj branch from 113f49b to 9d52e4a Compare November 23, 2024 14:18
@frrbot frrbot bot added the zebra label Nov 23, 2024
@Yubin-Li Yubin-Li changed the title add CLI about locator, related funcs and KERNELBYPASS flag on dplane_ctx Add CLI about locator and related funcs Nov 25, 2024
@frrbot frrbot bot added documentation libfrr tests Topotests, make check, etc labels Nov 27, 2024
@github-actions github-actions bot added size/XL and removed size/L labels Nov 27, 2024
@GaladrielZhao GaladrielZhao force-pushed the project-phoenixwing-ysj branch 3 times, most recently from 2c51a1d to 64739c5 Compare November 27, 2024 09:32
@zice312963205
Copy link
Contributor

LGTM

@pguibert6WIND
Copy link
Member

ci:rerun

@pguibert6WIND
Copy link
Member

The code is ok to me. lets wait last change about yang description field before turning on approval.
thanks

Copy link
Contributor

@zice312963205 zice312963205 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

This commit adds datastructures and helper functions required to support SRv6 in staticd.

* List of locators
* List of SIDs
* Data structure to represent an SRv6 SID
* Functions to allocate/deallocate an SRv6 SID
* Functions to allocate, deallocate and lookup a locator
* Function to initialize/Cleanup SRv6

Signed-off-by: Yuqing Zhao <[email protected]>
This commit moves DEFAULT_SRV6_IFNAME from isis_srv6.h to srv6.h
because there are other daemons that might want to use it (e.g. staticd).

Signed-off-by: Yuqing Zhao <[email protected]>
Add Northbound APIs to create/modify/destroy an SRv6 SID

Signed-off-by: Yuqing Zhao <[email protected]>
Add the srv6 static sids configuration and
show running-config sections in static.rst.

Signed-off-by: Yuqing Zhao <[email protected]>
@GaladrielZhao GaladrielZhao force-pushed the project-phoenixwing-ysj branch from 41f7b84 to f56a773 Compare January 18, 2025 10:30
@GaladrielZhao
Copy link
Contributor

The code is ok to me. lets wait last change about yang description field before turning on approval. thanks

@pguibert6WIND Thanks very much. We pushed the code with the required changes.

Copy link
Contributor

@cscarpitta cscarpitta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@pguibert6WIND pguibert6WIND merged commit 084ebc9 into FRRouting:master Jan 20, 2025
11 checks passed
lguohan pushed a commit to sonic-net/sonic-buildimage that referenced this pull request Jan 21, 2025
The FRR CLI to support SRv6 Static SIDs has been merged in FRR mainline in this PR (FRRouting/frr#16894). The CLI has been ported into SONiC mainline in this PR (#21380).
This PR verifies the SRv6 Static SIDs configured by the above FRR CLI. It verifies that the block and node parts of the configured SID matches block and node parts of the locator it belongs to. The PR computes the parameters that will be installed with the SID into APPL DB. The changes in this PR will be also added into FRR mainline.

Signed-off-by: Carmine Scarpitta <[email protected]>
BYGX-wcr pushed a commit to BYGX-wcr/sonic-buildimage that referenced this pull request Jan 21, 2025
The FRR CLI to support SRv6 Static SIDs has been merged in FRR mainline in this PR (FRRouting/frr#16894). The CLI has been ported into SONiC mainline in this PR (sonic-net#21380).
This PR verifies the SRv6 Static SIDs configured by the above FRR CLI. It verifies that the block and node parts of the configured SID matches block and node parts of the locator it belongs to. The PR computes the parameters that will be installed with the SID into APPL DB. The changes in this PR will be also added into FRR mainline.

Signed-off-by: Carmine Scarpitta <[email protected]>
mssonicbld added a commit to mssonicbld/sonic-buildimage-msft that referenced this pull request Jan 22, 2025
The FRR CLI to support SRv6 Static SIDs has been merged in FRR mainline in this PR (FRRouting/frr#16894). The CLI has been ported into SONiC mainline in this PR (sonic-net/sonic-buildimage#21380).
This PR verifies the SRv6 Static SIDs configured by the above FRR CLI. It verifies that the block and node parts of the configured SID matches block and node parts of the locator it belongs to. The PR computes the parameters that will be installed with the SID into APPL DB. The changes in this PR will be also added into FRR mainline.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants