ā06-29-2024 02:47 AM
hi, some packet output drop occurs on c9300 switch interface. I want to increase softmax-multiplier. Can anyone please advise what the default value of this parameter is ? If increasing it to 1200, any impact to other interfaces?
the command : qos queue-softmax-multiplier 1200
Can reset back to the default value by removing the command " no " this command? Thanks in advance.
ā06-29-2024 03:08 AM
qos queue-softmax-multiplier 1200 <<- you can use 1200 for 9300 there is no issue at all
MHM
ā06-29-2024 03:24 AM - edited ā06-29-2024 04:07 AM
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:2 - 1800
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 6 200 7 800 19 475 0 0 3 2400
1 1 5 0 8 1200 19 712 8 300 3 2400 <<- this default value but it can change from SW to other, when you use command it will multiply by number you add divide by 100 i.e. it will multiply by 12
2 1 5 0 6 0 0 0 0 0 3 2400
3 1 5 0 6 0 0 0 0 0 3 2400
4 1 5 0 6 0 0 0 0 0 3 2400
5 1 5 0 6 0 0 0 0 0 3 2400
6 1 5 0 6 0 0 0 0 0 3 2400
7 1 5 0 6 0 0 0 0 0 3 2400
ā06-29-2024 03:46 AM - edited ā06-29-2024 12:02 PM
Only saw @MHM Cisco World after I posted my reply.
". . . you can use 1200 for 9300 there is no issue at all"
Unfortunately, not always true.
In your referenced Cisco Tech Note document (Troubleshoot Output Drops on Catalyst 9000 Switches ), you'll find:
"This a common configuration used as a quick method to resolve output drops. In Image 4, this configuration applies to all non-priority queues across all interfaces. The buffer allocation itself assumes that the micro-bursts does not happen, on all ports, on the switch at the same time. If micro-bursts happen in random moments, the shared buffer can dedicate additional buffer units to absorb them."
Take special note, in the above, of the word "assumes".
In this Cisco Tech Note, Understand Queue Buffer Allocation on Catalyst 9000 Switches, we also find:
"A system defined base buffer multiplier (not user configurable, 4x or 400%) - while this is applied by default, there are some circumstances where its removed so its important to understand this 4x value exists to predict the allocation algorithm"
Notice regarding changing the default is for "some circumstances", not all.
ā06-29-2024 04:00 AM
Hi @MHM Cisco World @Joseph W. Doherty , the output when I run the show command. The value of softmax is 2000?
DATA Port:32 GPN:33 AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 256 - 263
DrainFast:Disabled PortSoftStart:5 - 3000
----------------------------------------------------------
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 4 0 12 2000 19 1187 8 500 5 4000
1 1 4 0 5 0 0 0 0 0 5 4000
2 1 4 0 5 0 0 0 0 0 5 4000
3 1 4 0 5 0 0 0 0 0 5 4000
4 1 4 0 5 0 0 0 0 0 5 4000
5 1 4 0 5 0 0 0 0 0 5 4000
6 1 4 0 5 0 0 0 0 0 5 4000
7 1 4 0 5 0 0 0 0 0 5 4000
ā06-29-2024 03:57 AM
Thanks @Joseph W. Doherty @MHM Cisco World for your kind advice. If 1200 is not default value and increase it to 1200 from default without any issue, then why don't set default to 1200 if there is only benefit without any issue? A bit confusing!
ā06-29-2024 04:12 AM - edited ā06-29-2024 04:14 AM
the red color 1200 and 800(this only for priority traffic Queue it not use for other traffic ) is default value in my example after it multiply by 1200/100=12 it will be 14400 and 9600
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:2 - 1800
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 6 200 7 800 19 475 0 0 3 2400
1 1 5 0 8 1200 19 712 8 300 3 2400 <<- this default value but it can change from SW to other, when you use command it will multiply by number you add divide by 100 i.e. it will multiply by 12
2 1 5 0 6 0 0 0 0 0 3 2400
3 1 5 0 6 0 0 0 0 0 3 2400
4 1 5 0 6 0 0 0 0 0 3 2400
5 1 5 0 6 0 0 0 0 0 3 2400
6 1 5 0 6 0 0 0 0 0 3 2400
7 1 5 0 6 0 0 0 0 0 3 2400
9300#show platform hardware fed switch active qos queue config interface gigabitEthernet 1/0/48
Asic:0 Core:0 DATA Port:47 GPN:48 LinkSpeed:0x1
AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 376 - 383
DrainFast:Disabled PortSoftStart:3 - 14400
DTS Hardmax Softmax PortSMin GlblSMin PortStEnd
----- -------- -------- -------- -------- ---------
0 1 6 200 9 9600 2 600 0 0 1 15000
1 1 5 0 10 14400 2 900 1 450 1 15000 <<- after use command multiply by 1200/100=12
2 1 5 0 6 0 0 0 0 0 1 15000
3 1 5 0 6 0 0 0 0 0 1 15000
4 1 5 0 6 0 0 0 0 0 1 15000
5 1 5 0 6 0 0 0 0 0 1 15000
6 1 5 0 6 0 0 0 0 0 1 15000
7 1 5 0 6 0 0 0 0 0 1 15000
in your case since you have one priority Queue config it default is 2000 (which same as example I share if you sum 1200 +800=2000)
when you use command
qos queue-softmax-multiplier 1200
the softmax value will be 24000
MHM
ā06-29-2024 05:15 AM
thanks @MHM Cisco World , in your case, it looks like the default value is 100, right? my question is why default value is 100, not 1200 if there is no issue with set to 1200?
ā06-29-2024 05:34 AM
If you dont have any output drop keep defualt 100 if you have change it to 1200.
Why 1200 not defualt becuase this softmax is reduce the total memory of SW' but if you have output drop and have free memory cisco give us option to increase softmax by 1200.
MHM
ā06-29-2024 06:01 AM
thanks @MHM Cisco World . can you please test and advise whether can reset to default using "no" command? I don't have spare 9300, thanks
ā06-29-2024 06:07 AM
Sorry I dont have this platform' I think Mr. @balaji.bandi have this platform if I am correct.
Goodluck
MHM
ā06-29-2024 06:08 AM
"If you dont have any output drop keep defualt . . ."
Concur.
". . . if you have change it to 1200."
I would add, continue monitoring.
"Why 1200 not defualt becuase this softmax is reduce the total memory of SW' but if you have output drop and have free memory cisco give us option to increase softmax by 1200."
Not exactly. It's a bit more complicated, I believe.
Also understand, in any particular case, both Cisco's default, or the maximum, might not be the optimal setting.
So much about performance tuning isn't taught. For example, many consider zero drops the ideal, but that's not always true. I mention this because if a 1200 setting eliminates all drops, you can worsen the network.
ā06-29-2024 05:42 AM
"If 1200 is not default value increase it to 1200 from default without any issue, then why don't set default to 1200 if there is only benefit without any issue? A bit confusing!"
Possibly the confusion was caused by the first reply ( @MHM Cisco World 's), which didn't note any risk.
Although TAC (and others) often recommend 1200, Cisco's documentation describes the conditions it can work well for, but if not those conditions, it can be adverse. Cisco doesn't emphasize the adverse or the adverse can be very adverse, a very unpleasant surprise.
The default setting tries to avoid such unpleasant surprises at the expense of optimal performance most of the time.
Another aspect of QoS often not taught, one size doesn't fit all and it needs on-going monitoring (much as you monitor links for load, interfaces for errors, etc.)
ā06-29-2024 05:50 AM
Possibly the confusion was caused by the first reply ( @MHM Cisco World 's), which didn't note any risk.
You always suggest 1200 even for 3000 series sw and I reject this' and recommend 400 not 1200' and now you say 1200 for 9000 is wrong !!!!
Please read more about softmax.
The 1200 is list by cisco doc. And it have some little limitation but it sure solution for output drop.
MHM
ā06-29-2024 06:38 AM
"You always suggest 1200 even for 3000 series sw and I reject this' and recommend 400 not 1200' and now you say 1200 for 9000 is wrong !!!!"
Correct, I do often recommend 1200 to mitigate drops. However, where have I've written using 1200 is wrong?
This particular OP asked if using 1200 can impact other interfaces. The answer is yes, and it can be an adverse impact.
"Please read more about softmax."
What specifically would you like to read?
I've read quite a bit about C9k QoS, think I understand softmax, and other "quirks" of their architecture. (BTW, IMO, huge improvement in Cisco documentation within this subject area!)
"The 1200 is list by cisco doc."
Yep, and so?
"And it have some little limitation . . ."
Which is?
". . . but it sure solution for output drop."
Not always, and even when it is, that's not always a good thing. Understand, the Cisco device feature documentation doesn't often delve (especially deeply) into how QoS, or other, features should be used.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide