Skip to content

[teammgrd]: Create unique LACP key for port-channel#1660

Merged
lguohan merged 2 commits intosonic-net:masterfrom
DavidZagury:unique_lacp_key_bug_4009
May 5, 2021
Merged

[teammgrd]: Create unique LACP key for port-channel#1660
lguohan merged 2 commits intosonic-net:masterfrom
DavidZagury:unique_lacp_key_bug_4009

Conversation

@DavidZagury
Copy link
Copy Markdown
Contributor

@DavidZagury DavidZagury commented Mar 3, 2021

What I did
Fix sonic-net/sonic-buildimage#4009

When a member port is added to port-channel, create a unique LACP key.
When adding a member port to port-channel set the LACP key to a unique number.
The number is extracted from the port-channel name and will be the number at the end of the port-channel name with an additional digit at the beginning in order to make sure that this number will be unique in the system.

Why I did it
If LACP key is not set, then the peer will not be able to distinguish the ports which are connected to different port-channels, as it will receive the LACP key as 0 for all the ports from different port-channels.

How I verified it
I configure a SONiC switch to have two port-channels and on a second switch, I created one port-channel for both links between the switches.
On the second switch only one of the ports comes up in the PO and the other one stayed down.

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012

@DavidZagury
Copy link
Copy Markdown
Contributor Author

/AzurePipelines run

@azure-pipelines
Copy link
Copy Markdown

Commenter does not have sufficient privileges for PR 1660 in repo Azure/sonic-swss

@DavidZagury DavidZagury force-pushed the unique_lacp_key_bug_4009 branch 3 times, most recently from 29fe875 to 33d2483 Compare March 4, 2021 17:49
@lguohan lguohan requested a review from judyjoseph March 5, 2021 04:50
Comment thread cfgmgr/teammgr.cpp
Comment thread tests/test_portchannel.py
@dprital
Copy link
Copy Markdown
Collaborator

dprital commented Mar 5, 2021

@lguohan - please keep in mind that the fix for this issue (#4009) arrive with this PR and additional PR:
sonic-net/sonic-utilities#1473

@lguohan
Copy link
Copy Markdown
Contributor

lguohan commented Mar 5, 2021

thank you. commented on 1473 pr.

Comment thread cfgmgr/teammgr.cpp Outdated
Comment thread cfgmgr/teammgr.cpp
@DavidZagury DavidZagury force-pushed the unique_lacp_key_bug_4009 branch 4 times, most recently from b3a3868 to 1f7a4fa Compare March 7, 2021 17:43
@liat-grozovik liat-grozovik changed the title [teammgrd]:Create unique LACP key for port-channel [teammgrd]: Create unique LACP key for port-channel Mar 10, 2021
@liat-grozovik
Copy link
Copy Markdown
Collaborator

@ judyjoseph any comments on this PR? can you please explain why the recent mentioned PR is related and how you would like to move forward with this one?

Comment thread tests/test_portchannel.py Outdated
Comment thread cfgmgr/teammgr.cpp
@lguohan
Copy link
Copy Markdown
Contributor

lguohan commented Mar 16, 2021

i have concerns on the sleeps in the test, code looks good to me. please add yang model as well in sonic-buildimage repo.

@DavidZagury DavidZagury force-pushed the unique_lacp_key_bug_4009 branch from 92ed8ca to 06bfed4 Compare April 21, 2021 15:18
Copy link
Copy Markdown
Contributor

@judyjoseph judyjoseph left a comment

Choose a reason for hiding this comment

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

LGTM, will wait for all reviewers.

@liat-grozovik
Copy link
Copy Markdown
Collaborator

@lguohan any further feedback?

@lguohan lguohan merged commit 295061c into sonic-net:master May 5, 2021
@lguohan
Copy link
Copy Markdown
Contributor

lguohan commented May 5, 2021

this looks like a new feature, not sure why needs backport.

lguohan pushed a commit to sonic-net/sonic-buildimage that referenced this pull request May 7, 2021
)

To update the yang model to support the new key interduced in sonic-net/sonic-swss#1660
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-buildimage that referenced this pull request May 23, 2021
carl-nokia pushed a commit to carl-nokia/sonic-buildimage that referenced this pull request Aug 7, 2021
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
Fix issue - sonic-net/sonic-buildimage#4009

When a member port is added to port-channel, create a unique LACP key.
When adding a member port to port-channel set the LACP key to a unique number.
The number is extracted from the port-channel name and will be the number at the end of the port-channel name with an additional digit at the beginning in order to make sure that this number will be unique in the system.

Why I did it
If LACP key is not set, then the peer will not be able to distinguish the ports which are connected to different port-channels, as it will receive the LACP key as 0 for all the ports from different port-channels.

How I verified it
I configure a SONiC switch to have two port-channels and on a second switch, I created one port-channel for both links between the switches.
On the second switch only one of the ports comes up in the PO and the other one stayed down.
EdenGri pushed a commit to EdenGri/sonic-swss that referenced this pull request Feb 28, 2022
…anox switches (sonic-net#1660)

- What I did
Enhance the way techsupport collects dumps provided by SAI and do not keep them in the filesystem once the techsupport is created.

- How I did it
Create a temporary directory once techsupport script is executed, gather all files SAI dumps created, add them to the tech support and remove the temporary directory and files.
Remove direct call to FW trace collection as it is done now by SAI dump

- How to verify it
Run techsupport, verify newly created files are part of it including mlxtrace which is no longer called directly by the techsupport script.
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.

[teamd]: different portchannels configured with same LACP key

6 participants