-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Port QoS & buffer changes in 0330 to master (#2239)
* 1) DSCP 46 to 5; 2) ecn config for lossless traffic; 3) ecn on by default; 4) DWRR equal weight; Signed-off-by: Wenda <[email protected]> * 1) link pg & queue 5 to lossy buffer profile; 2) ingress lossless alpha 1/8 Signed-off-by: Wenda <[email protected]> * Update the test case for qos & buffer json template Signed-off-by: Wenda <[email protected]> * Migrate a7050-qx32 and s6000 to use pg_profile lookup architecture Signed-off-by: Wenda <[email protected]> * Update pg headroom egress service pool for a7050-qx-32s, a7050-qx32, and s6000 Signed-off-by: Wenda <[email protected]> * Link queue 5 to lossy profile Signed-off-by: Wenda <[email protected]>
- Loading branch information
Showing
20 changed files
with
705 additions
and
608 deletions.
There are no files selected for viewing
129 changes: 2 additions & 127 deletions
129
device/arista/x86_64-arista_7050_qx32/Arista-7050-QX32/buffers.json.j2
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,128 +1,3 @@ | ||
{# Default values which will be used if no actual configura available #} | ||
{% set default_cable = '300m' %} | ||
{% set default_speed = '100G' %} | ||
{% set default_ports_num = 32 -%} | ||
{%- set default_topo = 't1' %} | ||
{%- include 'buffers_config.j2' %} | ||
|
||
{# Port configuration to cable length look-up table #} | ||
{# Each record describes mapping of DUT (DUT port) role and neighbor role to cable length #} | ||
{# Roles described in the minigraph #} | ||
{% set ports2cable = { | ||
'torrouter_server' : '5m', | ||
'leafrouter_torrouter' : '40m', | ||
'spinerouter_leafrouter' : '300m' | ||
} | ||
%} | ||
|
||
{%- macro cable_length(port_name) -%} | ||
{%- set cable_len = [] -%} | ||
{%- for local_port in DEVICE_NEIGHBOR -%} | ||
{%- if local_port == port_name -%} | ||
{%- if DEVICE_NEIGHBOR_METADATA[DEVICE_NEIGHBOR[local_port].name] -%} | ||
{%- set neighbor = DEVICE_NEIGHBOR_METADATA[DEVICE_NEIGHBOR[local_port].name] -%} | ||
{%- set neighbor_role = neighbor.type -%} | ||
{%- set roles1 = switch_role + '_' + neighbor_role %} | ||
{%- set roles2 = neighbor_role + '_' + switch_role -%} | ||
{%- set roles1 = roles1 | lower -%} | ||
{%- set roles2 = roles2 | lower -%} | ||
{%- if roles1 in ports2cable -%} | ||
{%- if cable_len.append(ports2cable[roles1]) -%}{%- endif -%} | ||
{%- elif roles2 in ports2cable -%} | ||
{%- if cable_len.append(ports2cable[roles2]) -%}{%- endif -%} | ||
{%- endif -%} | ||
{%- endif -%} | ||
{%- endif -%} | ||
{%- endfor -%} | ||
{%- if cable_len -%} | ||
{{ cable_len.0 }} | ||
{%- else -%} | ||
{{ default_cable }} | ||
{%- endif -%} | ||
{% endmacro %} | ||
|
||
{%- if DEVICE_METADATA is defined %} | ||
{%- set switch_role = DEVICE_METADATA['localhost']['type'] %} | ||
{%- endif -%} | ||
|
||
{# Generate list of ports if not defined #} | ||
{% if PORT is not defined %} | ||
{% set PORT = [] %} | ||
{% for port_idx in range(0,default_ports_num) %} | ||
{% if PORT.append("Ethernet%d" % (port_idx*4)) %}{% endif %} | ||
{% endfor %} | ||
{% endif -%} | ||
|
||
{% set port_names_list = [] %} | ||
{% for port in PORT %} | ||
{%- if port_names_list.append(port) %}{% endif %} | ||
{% endfor %} | ||
{% set port_names = port_names_list | join(',') -%} | ||
|
||
{ | ||
"CABLE_LENGTH": { | ||
"AZURE": { | ||
{% for port in PORT %} | ||
{% set cable = cable_length(port) -%} | ||
"{{ port }}": "{{ cable }}"{%- if not loop.last -%},{% endif %} | ||
|
||
{% endfor %} | ||
} | ||
}, | ||
"BUFFER_POOL": { | ||
"ingress_lossless_pool": { | ||
"size": "12766208", | ||
"type": "ingress", | ||
"mode": "dynamic" | ||
}, | ||
"egress_lossless_pool": { | ||
"size": "12766208", | ||
"type": "egress", | ||
"mode": "static" | ||
}, | ||
"egress_lossy_pool": { | ||
"size": "8072396", | ||
"type": "egress", | ||
"mode": "dynamic" | ||
} | ||
}, | ||
"BUFFER_PROFILE": { | ||
"ingress_lossless_profile": { | ||
"pool":"[BUFFER_POOL|ingress_lossless_pool]", | ||
"xon":"18432", | ||
"xoff":"40560", | ||
"size":"41808", | ||
"dynamic_th":"-4", | ||
"xon_offset":"2496" | ||
}, | ||
"ingress_lossy_profile": { | ||
"pool":"[BUFFER_POOL|ingress_lossless_pool]", | ||
"size":"0", | ||
"dynamic_th":"3" | ||
}, | ||
"egress_lossless_profile": { | ||
"pool":"[BUFFER_POOL|egress_lossless_pool]", | ||
"size":"0", | ||
"static_th":"12766208" | ||
}, | ||
"egress_lossy_profile": { | ||
"pool":"[BUFFER_POOL|egress_lossy_pool]", | ||
"size":"1518", | ||
"dynamic_th":"3" | ||
} | ||
}, | ||
"BUFFER_PG": { | ||
"{{ port_names }}|3-4": { | ||
"profile" : "[BUFFER_PROFILE|ingress_lossless_profile]" | ||
}, | ||
"{{ port_names }}|0-1": { | ||
"profile" : "[BUFFER_PROFILE|ingress_lossy_profile]" | ||
} | ||
}, | ||
"BUFFER_QUEUE": { | ||
"{{ port_names }}|3-4": { | ||
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]" | ||
}, | ||
"{{ port_names }}|0-1": { | ||
"profile" : "[BUFFER_PROFILE|egress_lossy_profile]" | ||
} | ||
} | ||
} |
45 changes: 45 additions & 0 deletions
45
device/arista/x86_64-arista_7050_qx32/Arista-7050-QX32/buffers_defaults_t1.j2
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
{%- set default_cable = '300m' %} | ||
|
||
{%- macro generate_port_lists(PORT_ALL) %} | ||
{# Generate list of ports #} | ||
{% for port_idx in range(0,32) %} | ||
{% if PORT_ALL.append("Ethernet%d" % (port_idx * 4)) %}{% endif %} | ||
{% endfor %} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_buffer_pool_and_profiles() %} | ||
"BUFFER_POOL": { | ||
"ingress_lossless_pool": { | ||
"size": "12766208", | ||
"type": "ingress", | ||
"mode": "dynamic" | ||
}, | ||
"egress_lossless_pool": { | ||
"size": "12766208", | ||
"type": "egress", | ||
"mode": "static" | ||
}, | ||
"egress_lossy_pool": { | ||
"size": "7582515", | ||
"type": "egress", | ||
"mode": "dynamic" | ||
} | ||
}, | ||
"BUFFER_PROFILE": { | ||
"ingress_lossy_profile": { | ||
"pool":"[BUFFER_POOL|ingress_lossless_pool]", | ||
"size":"0", | ||
"dynamic_th":"3" | ||
}, | ||
"egress_lossless_profile": { | ||
"pool":"[BUFFER_POOL|egress_lossless_pool]", | ||
"size":"0", | ||
"static_th":"12766208" | ||
}, | ||
"egress_lossy_profile": { | ||
"pool":"[BUFFER_POOL|egress_lossy_pool]", | ||
"size":"1518", | ||
"dynamic_th":"3" | ||
} | ||
}, | ||
{%- endmacro %} |
11 changes: 11 additions & 0 deletions
11
device/arista/x86_64-arista_7050_qx32/Arista-7050-QX32/pg_profile_lookup.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# PG lossless profiles. | ||
# speed cable size xon xoff threshold xon_offset | ||
40000 5m 41808 18432 40560 -3 2496 | ||
50000 5m 41808 18432 40560 -3 2496 | ||
100000 5m 41808 18432 40560 -3 2496 | ||
40000 40m 51376 18432 50128 -3 2496 | ||
50000 40m 51376 18432 50128 -3 2496 | ||
100000 40m 51376 18432 50128 -3 2496 | ||
40000 300m 51376 18432 50128 -3 2496 | ||
50000 300m 51376 18432 50128 -3 2496 | ||
100000 300m 51376 18432 50128 -3 2496 |
66 changes: 33 additions & 33 deletions
66
device/arista/x86_64-arista_7050_qx32/Arista-7050-QX32/port_config.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,33 +1,33 @@ | ||
# name lanes alias index | ||
Ethernet0 125,126,127,128 Ethernet1/1 1 | ||
Ethernet4 121,122,123,124 Ethernet2/1 2 | ||
Ethernet8 13,14,15,16 Ethernet3/1 3 | ||
Ethernet12 9,10,11,12 Ethernet4/1 4 | ||
Ethernet16 17,18,19,20 Ethernet5/1 5 | ||
Ethernet20 21,22,23,24 Ethernet6/1 6 | ||
Ethernet24 25,26,27,28 Ethernet7/1 7 | ||
Ethernet28 29,30,31,32 Ethernet8/1 8 | ||
Ethernet32 37,38,39,40 Ethernet9/1 9 | ||
Ethernet36 33,34,35,36 Ethernet10/1 10 | ||
Ethernet40 45,46,47,48 Ethernet11/1 11 | ||
Ethernet44 41,42,43,44 Ethernet12/1 12 | ||
Ethernet48 53,54,55,56 Ethernet13/1 13 | ||
Ethernet52 49,50,51,52 Ethernet14/1 14 | ||
Ethernet56 69,70,71,72 Ethernet15/1 15 | ||
Ethernet60 65,66,67,68 Ethernet16/1 16 | ||
Ethernet64 77,78,79,80 Ethernet17/1 17 | ||
Ethernet68 73,74,75,76 Ethernet18/1 18 | ||
Ethernet72 93,94,95,96 Ethernet19/1 19 | ||
Ethernet76 89,90,91,92 Ethernet20/1 20 | ||
Ethernet80 101,102,103,104 Ethernet21/1 21 | ||
Ethernet84 97,98,99,100 Ethernet22/1 22 | ||
Ethernet88 109,110,111,112 Ethernet23/1 23 | ||
Ethernet92 105,106,107,108 Ethernet24/1 24 | ||
Ethernet96 61,62,63,64 Ethernet25 25 | ||
Ethernet100 57,58,59,60 Ethernet26 26 | ||
Ethernet104 81,82,83,84 Ethernet27 27 | ||
Ethernet108 85,86,87,88 Ethernet28 28 | ||
Ethernet112 117,118,119,120 Ethernet29 29 | ||
Ethernet116 113,114,115,116 Ethernet30 30 | ||
Ethernet120 5,6,7,8 Ethernet31 31 | ||
Ethernet124 1,2,3,4 Ethernet32 32 | ||
# name lanes alias index speed | ||
Ethernet0 125,126,127,128 Ethernet1/1 1 40000 | ||
Ethernet4 121,122,123,124 Ethernet2/1 2 40000 | ||
Ethernet8 13,14,15,16 Ethernet3/1 3 40000 | ||
Ethernet12 9,10,11,12 Ethernet4/1 4 40000 | ||
Ethernet16 17,18,19,20 Ethernet5/1 5 40000 | ||
Ethernet20 21,22,23,24 Ethernet6/1 6 40000 | ||
Ethernet24 25,26,27,28 Ethernet7/1 7 40000 | ||
Ethernet28 29,30,31,32 Ethernet8/1 8 40000 | ||
Ethernet32 37,38,39,40 Ethernet9/1 9 40000 | ||
Ethernet36 33,34,35,36 Ethernet10/1 10 40000 | ||
Ethernet40 45,46,47,48 Ethernet11/1 11 40000 | ||
Ethernet44 41,42,43,44 Ethernet12/1 12 40000 | ||
Ethernet48 53,54,55,56 Ethernet13/1 13 40000 | ||
Ethernet52 49,50,51,52 Ethernet14/1 14 40000 | ||
Ethernet56 69,70,71,72 Ethernet15/1 15 40000 | ||
Ethernet60 65,66,67,68 Ethernet16/1 16 40000 | ||
Ethernet64 77,78,79,80 Ethernet17/1 17 40000 | ||
Ethernet68 73,74,75,76 Ethernet18/1 18 40000 | ||
Ethernet72 93,94,95,96 Ethernet19/1 19 40000 | ||
Ethernet76 89,90,91,92 Ethernet20/1 20 40000 | ||
Ethernet80 101,102,103,104 Ethernet21/1 21 40000 | ||
Ethernet84 97,98,99,100 Ethernet22/1 22 40000 | ||
Ethernet88 109,110,111,112 Ethernet23/1 23 40000 | ||
Ethernet92 105,106,107,108 Ethernet24/1 24 40000 | ||
Ethernet96 61,62,63,64 Ethernet25 25 40000 | ||
Ethernet100 57,58,59,60 Ethernet26 26 40000 | ||
Ethernet104 81,82,83,84 Ethernet27 27 40000 | ||
Ethernet108 85,86,87,88 Ethernet28 28 40000 | ||
Ethernet112 117,118,119,120 Ethernet29 29 40000 | ||
Ethernet116 113,114,115,116 Ethernet30 30 40000 | ||
Ethernet120 5,6,7,8 Ethernet31 31 40000 | ||
Ethernet124 1,2,3,4 Ethernet32 32 40000 |
This file contains 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
18 changes: 9 additions & 9 deletions
18
device/arista/x86_64-arista_7050_qx32s/Arista-7050-QX-32S/pg_profile_lookup.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,11 @@ | ||
# PG lossless profiles. | ||
# speed cable size xon xoff threshold xon_offset | ||
40000 5m 41808 18432 40560 -4 2496 | ||
50000 5m 41808 18432 40560 -4 2496 | ||
100000 5m 41808 18432 40560 -4 2496 | ||
40000 40m 41808 18432 40560 -4 2496 | ||
50000 40m 41808 18432 40560 -4 2496 | ||
100000 40m 41808 18432 40560 -4 2496 | ||
40000 300m 41808 18432 40560 -4 2496 | ||
50000 300m 41808 18432 40560 -4 2496 | ||
100000 300m 41808 18432 40560 -4 2496 | ||
40000 5m 41808 18432 40560 -3 2496 | ||
50000 5m 41808 18432 40560 -3 2496 | ||
100000 5m 41808 18432 40560 -3 2496 | ||
40000 40m 51376 18432 50128 -3 2496 | ||
50000 40m 51376 18432 50128 -3 2496 | ||
100000 40m 51376 18432 50128 -3 2496 | ||
40000 300m 51376 18432 50128 -3 2496 | ||
50000 300m 51376 18432 50128 -3 2496 | ||
100000 300m 51376 18432 50128 -3 2496 |
30 changes: 15 additions & 15 deletions
30
device/arista/x86_64-arista_7060_cx32s/Arista-7060CX-32S-C32/pg_profile_lookup.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,17 @@ | ||
# PG lossless profiles. | ||
# speed cable size xon xoff threshold xon_offset | ||
10000 5m 1248 2288 35776 -4 2288 | ||
25000 5m 1248 2288 53248 -4 2288 | ||
40000 5m 1248 2288 66560 -4 2288 | ||
50000 5m 1248 2288 90272 -4 2288 | ||
100000 5m 1248 2288 165568 -4 2288 | ||
10000 40m 1248 2288 37024 -4 2288 | ||
25000 40m 1248 2288 53248 -4 2288 | ||
40000 40m 1248 2288 71552 -4 2288 | ||
50000 40m 1248 2288 96096 -4 2288 | ||
100000 40m 1248 2288 177632 -4 2288 | ||
10000 300m 1248 2288 46176 -4 2288 | ||
25000 300m 1248 2288 79040 -4 2288 | ||
40000 300m 1248 2288 108160 -4 2288 | ||
50000 300m 1248 2288 141856 -4 2288 | ||
100000 300m 1248 2288 268736 -4 2288 | ||
10000 5m 1248 2288 35776 -3 2288 | ||
25000 5m 1248 2288 53248 -3 2288 | ||
40000 5m 1248 2288 66560 -3 2288 | ||
50000 5m 1248 2288 90272 -3 2288 | ||
100000 5m 1248 2288 165568 -3 2288 | ||
10000 40m 1248 2288 37024 -3 2288 | ||
25000 40m 1248 2288 53248 -3 2288 | ||
40000 40m 1248 2288 71552 -3 2288 | ||
50000 40m 1248 2288 96096 -3 2288 | ||
100000 40m 1248 2288 177632 -3 2288 | ||
10000 300m 1248 2288 46176 -3 2288 | ||
25000 300m 1248 2288 79040 -3 2288 | ||
40000 300m 1248 2288 108160 -3 2288 | ||
50000 300m 1248 2288 141856 -3 2288 | ||
100000 300m 1248 2288 268736 -3 2288 |
30 changes: 15 additions & 15 deletions
30
device/arista/x86_64-arista_7060_cx32s/Arista-7060CX-32S-D48C8/pg_profile_lookup.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,17 @@ | ||
# PG lossless profiles. | ||
# speed cable size xon xoff threshold xon_offset | ||
10000 5m 1248 2288 35776 -4 2288 | ||
25000 5m 1248 2288 53248 -4 2288 | ||
40000 5m 1248 2288 66560 -4 2288 | ||
50000 5m 1248 2288 79872 -4 2288 | ||
100000 5m 1248 2288 165568 -4 2288 | ||
10000 40m 1248 2288 37024 -4 2288 | ||
25000 40m 1248 2288 56160 -4 2288 | ||
40000 40m 1248 2288 71552 -4 2288 | ||
50000 40m 1248 2288 85696 -4 2288 | ||
100000 40m 1248 2288 177632 -4 2288 | ||
10000 300m 1248 2288 46176 -4 2288 | ||
25000 300m 1248 2288 79040 -4 2288 | ||
40000 300m 1248 2288 108160 -4 2288 | ||
50000 300m 1248 2288 131456 -4 2288 | ||
100000 300m 1248 2288 268736 -4 2288 | ||
10000 5m 1248 2288 35776 -3 2288 | ||
25000 5m 1248 2288 53248 -3 2288 | ||
40000 5m 1248 2288 66560 -3 2288 | ||
50000 5m 1248 2288 79872 -3 2288 | ||
100000 5m 1248 2288 165568 -3 2288 | ||
10000 40m 1248 2288 37024 -3 2288 | ||
25000 40m 1248 2288 56160 -3 2288 | ||
40000 40m 1248 2288 71552 -3 2288 | ||
50000 40m 1248 2288 85696 -3 2288 | ||
100000 40m 1248 2288 177632 -3 2288 | ||
10000 300m 1248 2288 46176 -3 2288 | ||
25000 300m 1248 2288 79040 -3 2288 | ||
40000 300m 1248 2288 108160 -3 2288 | ||
50000 300m 1248 2288 131456 -3 2288 | ||
100000 300m 1248 2288 268736 -3 2288 |
30 changes: 15 additions & 15 deletions
30
device/arista/x86_64-arista_7060_cx32s/Arista-7060CX-32S-Q32/pg_profile_lookup.ini
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,17 @@ | ||
# PG lossless profiles. | ||
# speed cable size xon xoff threshold xon_offset | ||
10000 5m 1248 2288 35776 -4 2288 | ||
25000 5m 1248 2288 53248 -4 2288 | ||
40000 5m 1248 2288 66560 -4 2288 | ||
50000 5m 1248 2288 90272 -4 2288 | ||
100000 5m 1248 2288 165568 -4 2288 | ||
10000 40m 1248 2288 37024 -4 2288 | ||
25000 40m 1248 2288 53248 -4 2288 | ||
40000 40m 1248 2288 71552 -4 2288 | ||
50000 40m 1248 2288 96096 -4 2288 | ||
100000 40m 1248 2288 177632 -4 2288 | ||
10000 300m 1248 2288 46176 -4 2288 | ||
25000 300m 1248 2288 79040 -4 2288 | ||
40000 300m 1248 2288 108160 -4 2288 | ||
50000 300m 1248 2288 141856 -4 2288 | ||
100000 300m 1248 2288 268736 -4 2288 | ||
10000 5m 1248 2288 35776 -3 2288 | ||
25000 5m 1248 2288 53248 -3 2288 | ||
40000 5m 1248 2288 66560 -3 2288 | ||
50000 5m 1248 2288 90272 -3 2288 | ||
100000 5m 1248 2288 165568 -3 2288 | ||
10000 40m 1248 2288 37024 -3 2288 | ||
25000 40m 1248 2288 53248 -3 2288 | ||
40000 40m 1248 2288 71552 -3 2288 | ||
50000 40m 1248 2288 96096 -3 2288 | ||
100000 40m 1248 2288 177632 -3 2288 | ||
10000 300m 1248 2288 46176 -3 2288 | ||
25000 300m 1248 2288 79040 -3 2288 | ||
40000 300m 1248 2288 108160 -3 2288 | ||
50000 300m 1248 2288 141856 -3 2288 | ||
100000 300m 1248 2288 268736 -3 2288 |
Oops, something went wrong.