I came across a bug in IOS 12.2(53r)SE2 and it shows up in other IOS versions, where the “Total output drops” fluctuates when you use the “sh interface {interface} | inc drops” command. At first you’ll see the number of drops go down. Then it will go back up. There were times it would just reset itself back to 0. It’s best if you upgrade to the latest stable IOS. But, there is a work around. Use the “show platform port-asic stats drop {interface}” command.
First we’ll look at the “sh interface {interface} | inc drops” command. Here you will see the “Total output drops” is at 235:
SW01#sh interface gig1/0/1 | inc drops Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 235
Because this number can fluctuate because of the bug, you can use the “show platform port-asic stats drop {interface}” command to get the most accurate reading:
SW01#show platform port-asic stats drop gigabitEthernet 1/0/1 Interface Gi1/0/1 TxQueue Drop Statistics Queue 0 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 1 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 2 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 3 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 235 Queue 4 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 5 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 6 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0 Queue 7 Weight 0 Frames 0 Weight 1 Frames 0 Weight 2 Frames 0
You can see both commands are giving you the same amount of output drops. This is good but again with this bug, the first command might report a different number.
Now some important notes about using the “show platform” command above. On a stack, this command will only work if you are locally connected to the switch. Well, that’s not totally true as you’ll see below.
So usually when you connect to the stack, you will be on switch 1 by default. If you try to run that same command to get info from SW2 in the stack, you’ll get an error:
SW01#show platform port-asic stats drop gigabitEthernet 2/0/1 %Command Rejected: interface 'GigabitEthernet2/0/1' is not local port
There are two ways to do this.
1. Session Command
2. Remote Command
The “session” command will allow you to run a command from the member switch. So in our case, we want to run this command on SW2.
SW01# session 2 SW01-2#
You’ll notice there’s a dash with the switch number. That’s how you know you are able to run the command from SW2. Just type “exit” to get out of that session.
The second command is the easiest. It allows you to run Remote procedures on a switch member. You don’t have to go into a session and exit out of it. You just run the command from where you are.
remote command 2 show platform port-asic stats drop gig 2/0/1
There is one more command where you can see the output queue along with the input queue and other great info.
SW01#sh int summ *: interface is up IHQ: pkts in input hold queue IQD: pkts dropped from input queue OHQ: pkts in output hold queue OQD: pkts dropped from output queue RXBS: rx rate (bits/sec) RXPS: rx rate (pkts/sec) TXBS: tx rate (bits/sec) TXPS: tx rate (pkts/sec) TRTL: throttle count Interface IHQ IQD OHQ OQD RXBS RXPS TXBS TXPS TRTL ------------------------------------------------------------------------- Vlan1 0 0 0 0 0 0 0 0 0 * Vlan10 0 0 0 0 30000 51 2000 1 0 FastEthernet0 0 0 0 0 0 0 0 0 0 * GigabitEthernet1/0/1 0 0 0 235 469000 386 6526000 624 0 * GigabitEthernet1/0/2 0 0 0 0 0 0 28000 36 0 * GigabitEthernet1/0/3 0 0 0 0 0 0 28000 37 0 * GigabitEthernet1/0/4 0 0 0 0 1000 1 162000 46 0
If you look at the output queue OQD, you’ll see the 235.