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

[nhg]: Add support for weight in nexthop group member. #1752

Merged
merged 2 commits into from
May 26, 2021

Conversation

caizhenghui-juniper
Copy link
Contributor

What I did

  1. In fpmsyncd, parse weight field in netlink message, set APP_DB if weight is set.
  2. In routeorch, collect weight and pass weight attribute to next hop group member object.

Why I did it
In order to set weight for next hop group members. To support weighted ECMP.
How I verified it

  1. With cRPD as routing stack, configure bgp weight policy to different next hops.
  2. Bring up routes on both next hops. And send traffic to the BGP routes.
  3. Verify traffic is distributed with the portion set by weight policy.
    Details if related

1. In fpmsyncd, parse weight field in nlmsg, set APP_DB if weight is
set.
2. In routeorch, collect weight and pass weight attribute to next hop
group memeber object.
Copy link
Collaborator

@prsunny prsunny left a comment

Choose a reason for hiding this comment

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

Please add VS tests

fpmsyncd/routesync.cpp Outdated Show resolved Hide resolved
Change if_weight in routesync.cpp to avoid confusion

Signed-off-by: Zhenghui Cai <zcai@juniper.net>
@prsunny prsunny requested a review from shi-su May 26, 2021 01:46
@caizhenghui-juniper
Copy link
Contributor Author

@shi-su @prsunny could you please merge the change since it passed all checks? Thanks

@prsunny prsunny merged commit a44e651 into sonic-net:master May 26, 2021
vaibhavhd added a commit to vaibhavhd/sonic-swss that referenced this pull request Jun 23, 2021
lguohan pushed a commit that referenced this pull request Jun 23, 2021
…" (#1798)

This reverts commit a44e651.

Proper weight initialization is needed when weights are not provided:
https://github.com/Azure/sonic-swss/blob/a44e6513556cfed7de1b70690db90cc09fcef666/orchagent/routeorch.cpp#L638

Warmboot is failing on various platforms: sonic-net/sonic-buildimage#7919

The original PR needs some negative unit testcases when the weight is not present for the nexthop group.
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
* Add support for weight in nexthop group member.
1. In fpmsyncd, parse weight field in nlmsg, set APP_DB if weight is set.
2. In routeorch, collect weight and pass weight attribute to next hop group memeber object.

Signed-off-by: Zhenghui Cai <zcai@juniper.net>
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
…-net#1752)" (sonic-net#1798)

This reverts commit a44e651.

Proper weight initialization is needed when weights are not provided:
https://github.com/Azure/sonic-swss/blob/a44e6513556cfed7de1b70690db90cc09fcef666/orchagent/routeorch.cpp#L638

Warmboot is failing on various platforms: sonic-net/sonic-buildimage#7919

The original PR needs some negative unit testcases when the weight is not present for the nexthop group.
EdenGri pushed a commit to EdenGri/sonic-swss that referenced this pull request Feb 28, 2022
What I did
Recent change was done to remove call to load database global_db which expects the clients to load global_db.
[sonic-net/sonic-buildimage#8173]
The load global_db was missing in multi_asic.py which was causing "show interfaces cli" to fail.
While testing on multi-asic VS image:
How I did it
load global_db config in multi_asic.py.

How to verify it
Load multi-asic VS image with the fix.
Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants