Add Consistent ECMP for vxlan tunnel HLD#2099
Open
anish-n wants to merge 9 commits intosonic-net:masterfrom
Open
Add Consistent ECMP for vxlan tunnel HLD#2099anish-n wants to merge 9 commits intosonic-net:masterfrom
anish-n wants to merge 9 commits intosonic-net:masterfrom
Conversation
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Added YANG model enhancements for VNET_ROUTE_TUNNEL, including modifications for endpoints, MAC addresses, VNIs, and new field consistent hashing buckets. Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
Signed-off-by: Anish Narsian (from Dev Box) <annarsia@microsoft.com>
3dedb81 to
b0335b4
Compare
Collaborator
|
/azp run |
|
No pipelines are associated with this pull request. |
Contributor
Author
Added, thanks |
qiluo-msft
pushed a commit
to sonic-net/sonic-buildimage
that referenced
this pull request
Dec 11, 2025
…24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes.
mssonicbld
added a commit
to mssonicbld/sonic-buildimage
that referenced
this pull request
Dec 15, 2025
<!--
Please make sure you've read and understood our contributing guidelines:
https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md
** Make sure all your commits include a signature generated with `git commit -s` **
If this is a bug fix, make sure your description includes "fixes #xxxx", or
"closes #xxxx" or "resolves #xxxx"
Please provide the following information:
-->
#### Why I did it
To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099
##### Work item tracking
- Microsoft ADO **(number only)**:
#### How I did it
Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets.
#### How to verify it
Run the tests added in this PR or build image with these changes and set the new attributes.
<!--
If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012.
-->
#### Which release branch to backport (provide reason below if selected)
<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->
- [ ] 202205
- [ ] 202211
- [ ] 202305
- [ ] 202311
- [ ] 202405
- [ ] 202411
- [ ] 202505
#### Tested branch (Please provide the tested image version)
<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->
- [ ] <!-- image version 1 -->master
- [ ] <!-- image version 2 -->
#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
--> add consistent_hashing_buckets and multi-value endpoint, vni and mac for consistent hashing support.
<!--
Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->
#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->
https://github.com/sonic-net/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md#vnet_route_tunnel
#### A picture of a cute animal (not mandatory but encouraged)
9 tasks
mssonicbld
added a commit
to sonic-net/sonic-buildimage
that referenced
this pull request
Dec 17, 2025
…24858) <!-- Please make sure you've read and understood our contributing guidelines: https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md failure_prs.log skip_prs.log Make sure all your commits include a signature generated with `git commit -s` ** If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx" or "resolves #xxxx" Please provide the following information: --> #### Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 ##### Work item tracking - Microsoft ADO **(number only)**: #### How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. #### How to verify it Run the tests added in this PR or build image with these changes and set the new attributes. <!-- If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012. --> #### Which release branch to backport (provide reason below if selected) <!-- - Note we only backport fixes to a release branch, *not* features! - Please also provide a reason for the backporting below. - e.g. - [x] 202006 --> - [ ] 202205 - [ ] 202211 - [ ] 202305 - [ ] 202311 - [ ] 202405 - [ ] 202411 - [ ] 202505 #### Tested branch (Please provide the tested image version) <!-- - Please provide tested image version - e.g. - [x] 20201231.100 --> - [ ] <!-- image version 1 -->master - [ ] <!-- image version 2 --> #### Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> add consistent_hashing_buckets and multi-value endpoint, vni and mac for consistent hashing support. <!-- Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU. --> #### Link to config_db schema for YANG module changes <!-- Provide a link to config_db schema for the table for which YANG model is defined Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md --> https://github.com/sonic-net/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md#vnet_route_tunnel #### A picture of a cute animal (not mandatory but encouraged)
NavdhaJindal
added a commit
to NavdhaJindal/sonic-buildimage-msft
that referenced
this pull request
Dec 17, 2025
…24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes.
10 tasks
hdwhdw
pushed a commit
to hdwhdw/sonic-buildimage
that referenced
this pull request
Dec 18, 2025
…onic-net#24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes. Signed-off-by: Dawei Huang <daweihuang@microsoft.com>
zjswhhh
added a commit
to Azure/sonic-buildimage-msft
that referenced
this pull request
Dec 19, 2025
…ashing (#24684) (#1900) Master PR: sonic-net/sonic-buildimage#24684 Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes. <!-- Please make sure you've read and understood our contributing guidelines: https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md ** Make sure all your commits include a signature generated with `git commit -s` ** If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx" or "resolves #xxxx" Please provide the following information: --> #### Why I did it ##### Work item tracking - Microsoft ADO **(number only)**: #### How I did it #### How to verify it <!-- If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012. --> #### Which release branch to backport (provide reason below if selected) <!-- - Note we only backport fixes to a release branch, *not* features! - Please also provide a reason for the backporting below. - e.g. - [x] 202006 --> - [ ] 201811 - [ ] 201911 - [ ] 202006 - [ ] 202012 - [ ] 202106 - [ ] 202111 - [ ] 202205 - [ ] 202211 #### Tested branch (Please provide the tested image version) <!-- - Please provide tested image version - e.g. - [x] 20201231.100 --> - [ ] <!-- image version 1 --> - [ ] <!-- image version 2 --> #### Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> <!-- Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU. --> #### Link to config_db schema for YANG module changes <!-- Provide a link to config_db schema for the table for which YANG model is defined Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md --> #### A picture of a cute animal (not mandatory but encouraged)
xwjiang-ms
pushed a commit
to xwjiang-ms/sonic-buildimage
that referenced
this pull request
Dec 22, 2025
…onic-net#24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes. Signed-off-by: xiaweijiang <xiaweijiang@microsoft.com>
prsunny
approved these changes
Jan 5, 2026
jasonbridges
pushed a commit
to jasonbridges/sonic-buildimage
that referenced
this pull request
Jan 22, 2026
…onic-net#24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes.
Contributor
|
@anish-n , can you update description with associated PRs following the HLD PR template? |
Contributor
Author
Contributor
FengPan-Frank
pushed a commit
to FengPan-Frank/sonic-buildimage
that referenced
this pull request
Mar 6, 2026
…onic-net#24684) Why I did it To support consistent ECMP for vxlan tunnels, according to specifications in sonic-net/SONiC#2099 Work item tracking Microsoft ADO (number only): How I did it Added multi-value support for endpoint, mac and vni. Added consistent_hashing_buckets. How to verify it Run the tests added in this PR or build image with these changes and set the new attributes. Signed-off-by: Feng Pan <fenpan@microsoft.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces the design to add support for consistent hashing for VXLAN tunnel endpoints, such that routes destined to tunnel endpoints can make use of consistent hashing to limit flow rehashing upon nexthop addition/removal. This will help significantly reduce protocol connection restarts as a result of nexthop changes, when tunnel endpoints have flow state