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

[cherry-pick] [202012] Update qos config to clear queues for bounced back traffic #10608

Merged
merged 20 commits into from
Jun 2, 2022

Conversation

bingwang-ms
Copy link
Contributor

@bingwang-ms bingwang-ms commented Apr 19, 2022

This PR is to cherry-pick #10176 and #10565 to 202012 branch after resolving conflicts.

Signed-off-by: bingwang wang.bing@microsoft.com

Why I did it

This PR is to redefine DSCP_TO_DC_MAP , TC_TO_QUEUE_MAP and TC_TO_PRIORITY_GROUP_MAP table to clear queue 2 and queue 6 for bounced back traffic.
To support the extra lossless queue 2 and 6, the table pfc_enable, pfcwd_sw_enable and SCHEDULER are also updated in the template.

HLD sonic-net/SONiC#950

SKU includes

  • Arista-7050CX3-32S-C32
  • Arista-7050CX3-32S-D48C8
  • Arista-7260CX3-D108C8
  • Arista-7260CX3-C64
  • Arista-7260CX3-Q64

Changed table:

  • DSCP_TO_TC_MAP
Original Leaf Dual-ToR Why do this change
"2" : "1" "2" : "2" "2" : "1" Only change for leaf router to map DSCP 2 to TC 2 as TC 2 will be used for lossless TC
"5" : "2" "5" : "1" "5" : "1" To clear TC 2 for bounced back traffic
"6" : "1" "6" : "6" "6" : "1" Only change for leaf router to map DSCP 6 to TC 6 as TC 6 will be used for lossless TC
"33" : "1" "33" : "1" "33" : "2" Only change for Tor router.
To map DSCP33->TC 2 as we need to conserve DSCP 33 for bounced back traffic.
The tunnel level map will map TC 2 -> DSCP 33
"48" : "6" "48" : "7" "48" : "7" To clear TC 6 for bounced back traffic
  • TC_TO_PRIORITY_GROUP_MAP
Original Leaf Dual-ToR Why do this change
"2" : "0" "2" : "2" "2" : "0" Only change for leaf router to map TC 2 to PG 2 as PG 2 will be used for lossless PG
"6" : "0" "6" : "6" "6" : "0" Only change for leaf router to map TC 6 to PG 6 as PG 6 will be used for lossless PG
  • TC_TO_QUEUE_MAP
Original Leaf Dual-ToR Why do this change
"2" : "2" "2" : "2" "2" : "1" Only change for ToR router to map TC 2 to Queue 1.
As we mapped DSCP33->TC2 on ToR router, we need to remap TC2 to a lossy queue

How I did it

Define a macro for SKUs that requires remapping.

How to verify it

  1. Verified by rendering the J2 template with sonic-cfggen.
  2. Verified by UT.

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

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111

Description for the changelog

Update qos config to clear queues for bounced back traffic.

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

Signed-off-by: bingwang <wang.bing@microsoft.com>
@lguohan
Copy link
Collaborator

lguohan commented Apr 20, 2022

is there enable and disable flag?

@stephenxs
Copy link
Collaborator

stephenxs commented Apr 22, 2022

Now that there are 4 lossless queues on the ports connecting T1 and dual ToR on the egress side while 2 lossless queues on the rest ports, is there a logic to update the BUFFER_QUEUE table? For some vendor, if not all, lossless/lossy traffic requires different buffer pool and profile on the egress side.
Typically, such logic is in the buffer template on a per-device basis. However, we need to pass port_names_list_extra_queues as an argument to indicate 4 / 2 lossless queues should be applied on which ports respectively.

@bingwang-ms
Copy link
Contributor Author

is there enable and disable flag?

Yes, there will be a flag to turn on/off the feature. Please review HLD sonic-net/SONiC#982

@bingwang-ms
Copy link
Contributor Author

I don't think the change will impact T2 or above. There are 4 lossless queues in ports between T1 and ToR.

@stephenxs
Copy link
Collaborator

I don't think the change will impact T2 or above. There are 4 lossless queues in ports between T1 and ToR.

Typo. it should be T1 and ToR. I updated the original comment

@bingwang-ms
Copy link
Contributor Author

I don't think the change will impact T2 or above. There are 4 lossless queues in ports between T1 and ToR.

Typo. it should be T1 and ToR. I updated the original comment

Thanks. We already have a PR to update BUFFER_QUEUE table. Please see #10496 Thanks

bingwang-ms and others added 2 commits April 28, 2022 17:26
Signed-off-by: bingwang <wang.bing@microsoft.com>
@bingwang-ms
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

You have several pipelines (over 10) configured to build pull requests in this repository. Specify which pipelines you would like to run by using /azp run [pipelines] command. You can specify multiple pipelines using a comma separated list.

bingwang-ms and others added 5 commits April 29, 2022 16:12
Signed-off-by: bingwang <wang.bing@microsoft.com>
Signed-off-by: bingwang <wang.bing@microsoft.com>
Signed-off-by: bingwang <wang.bing@microsoft.com>
@stephenxs stephenxs requested a review from neethajohn May 7, 2022 10:25
@stephenxs
Copy link
Collaborator

@bingwang-ms can you resolve the conflict and retrigger the build? thanks.

@bingwang-ms
Copy link
Contributor Author

@bingwang-ms can you resolve the conflict and retrigger the build? thanks.

Thanks. All fixed.

@bingwang-ms
Copy link
Contributor Author

Please hold on merging this PR until the FLAG is available to turn off the feature.

qiluo-msft and others added 2 commits May 22, 2022 14:27
Signed-off-by: bingwang <wang.bing@microsoft.com>
Signed-off-by: bingwang <wang.bing@microsoft.com>
Signed-off-by: bingwang <wang.bing@microsoft.com>
Signed-off-by: bingwang <wang.bing@microsoft.com>
@bingwang-ms bingwang-ms merged commit 7ec6a60 into sonic-net:202012 Jun 2, 2022
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.

5 participants