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

[portsorch]: Support LAG MTU configuration #581

Merged
merged 1 commit into from
Aug 21, 2018
Merged

Conversation

stcheng
Copy link
Contributor

@stcheng stcheng commented Aug 17, 2018

  • LAG MTU configuration is now on stage

  • By default, the MTU of port channel based router interface is 9100.

  • If a new MTU is applied to the port channel via configuration
    database, this new MTU will be used 1) to the netdev in the kernel
    via ip command; 2) to all the member netdevs in the kernel via teamd;
    3) to the port channel based router interface MTU; 4) to all the
    member port MTU.

  • Remove the libnl MTU from teamsyncd

  • Refactor test_interface.py tests. Each one test is independent from
    the other test. The switch will be cleaned up at the end of the test.

Signed-off-by: Shu0T1an ChenG shuche@microsoft.com

- LAG MTU configuration is now on stage

- By default, the MTU of port channel based router interface is 9100.

- If a new MTU is applied to the port channel via configuration
  database, this new MTU will be used 1) to the netdev in the kernel
  via ip command; 2) to all the member netdevs in the kernel via teamd;
  3) to the port channel based router interface MTU; 4) to all the
  member port MTU.

- Remove the libnl MTU from teamsyncd

- Refactor test_interface.py tests. Each one test is independent from
  the other test. The switch will be cleaned up at the end of the test.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
@stcheng
Copy link
Contributor Author

stcheng commented Aug 17, 2018

note: port channel member manipulation is not part of this pull request. MTU changes associated with membership changes will be in the future pull requests.

@lguohan
Copy link
Contributor

lguohan commented Aug 19, 2018

can you fix the test failure?

@stcheng
Copy link
Contributor Author

stcheng commented Aug 20, 2018

the test failure is due to the old docker-vs
the old docker-vs doesn't have the portmgrd causing this test to fail
since sonic-net/sonic-buildimage#1908 is merged, the new docker-vs should be able to run and pass all the tests

vector<FieldValueTuple> member_fvs;
FieldValueTuple member_fv("mtu", mtu);
member_fvs.push_back(member_fv);
m_appPortTable.set(member, member_fvs);
Copy link
Collaborator

Choose a reason for hiding this comment

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

If the port mtu is overwritten by the lag mtu value, what happens when the port is removed from lag later? Is it handled?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

my earlier notes in this pull request says that this won't cover the MTU changes associated with the port channel membership changes. i'll go and cover those cases when i add the support for configuring port channel memberships

Copy link
Contributor Author

Choose a reason for hiding this comment

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

this pull request will focus only on the MTU configurations with out changing the members of the port channels

Copy link
Collaborator

Choose a reason for hiding this comment

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

Oh ok, didn't notice the notes.

dvs.runcmd("teamd -k -t" + interface)
time.sleep(1)

def add_port_channel_members(self, dvs, interface, members):
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we also have a test case to remove_port_channel_members?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

will add this along with port channel membership configuration changes

@sonic-net sonic-net deleted a comment from lguohan Aug 21, 2018
@sonic-net sonic-net deleted a comment from lguohan Aug 21, 2018
Copy link
Contributor

@jipanyang jipanyang left a comment

Choose a reason for hiding this comment

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

Looks good to me.

@stcheng stcheng merged commit 9f645e5 into sonic-net:master Aug 21, 2018
@stcheng stcheng deleted the mtu branch August 21, 2018 18:21
oleksandrivantsiv pushed a commit to oleksandrivantsiv/sonic-swss that referenced this pull request Mar 1, 2023
* [meta] Flush fdb entries after flush api success
* [meta] Use correct fdb entry type
* [meta] Use correct enum values for fdb entry
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.

4 participants