cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
907
Views
12
Helpful
12
Replies

3945 router RED question

Difan Zhao
Level 5
Level 5

Hi experts,

Here is the config on my router and I am trying to understand the drops for cs6

policy-map llq-policy

class voice-all-out

    priority 3000

    police 3000000 conform-action transmit  exceed-action drop

class class-default

    bandwidth remaining percent 90

     random-detect dscp-based

     random-detect dscp 0 32 60

!

policy-map shaper-out-30m

class class-default

    shape average 30000000

  service-policy llq-policy

!

interface GigabitEthernet0/0

service-policy output shaper-out-30m

Here is policy-map statistics on the interface Gi0/0. You can go straight to bottom part at the class-default since that's where my question is

#show policy-map int g0/0 output

GigabitEthernet0/0

  Service-policy output: shaper-out-30m

    Class-map: class-default (match-any)

      322074 packets, 349183843 bytes

      30 second offered rate 27492000 bps, drop rate 0 bps

      Match: any

      Queueing

      queue limit 64 packets

      (queue depth/total drops/no-buffer drops) 19/0/0

      (pkts output/bytes output) 322369/349567120

      shape (average) cir 30000000, bc 120000, be 120000

      target shape rate 30000000

      Service-policy : llq-policy

        queue stats for all priority classes:

          queue limit 64 packets

          (queue depth/total drops/no-buffer drops) 0/0/0

          (pkts output/bytes output) 8247/1750735

        Class-map: voice-all-out (match-any)

          8247 packets, 1750735 bytes

          30 second offered rate 82000 bps, drop rate 0 bps

          Match: ip dscp ef (46)

            8247 packets, 1750735 bytes

            30 second rate 82000 bps

          Priority: 3000 kbps, burst bytes 75000, b/w exceed drops: 0

          police:

              cir 3000000 bps, bc 93750 bytes

            conformed 8247 packets, 1750735 bytes; actions:

              transmit

            exceeded 0 packets, 0 bytes; actions:

              drop

            conformed 82000 bps, exceed 0 bps

        Class-map: class-default (match-any)

          313827 packets, 347433108 bytes

          30 second offered rate 27409000 bps, drop rate 0 bps

          Match: any

          Queueing

          queue limit 64 packets

          (queue depth/total drops/no-buffer drops) 18/0/0

          (pkts output/bytes output) 314124/347819413

          bandwidth remaining 90% (24300 kbps)

            Exp-weight-constant: 9 (1/512)

            Mean queue depth: 17 packets

            dscp     Transmitted       Random drop      Tail drop          Minimum        Maximum     Mark

                      pkts/bytes     pkts/bytes       pkts/bytes          thresh         thresh     prob

            default   314957/347941365       0/0              0/0                 32            60  1/10

            cs6          228/21186           0/0              0/0                 32            40  1/10

My problem is that I once saw the drops for cs6 in the class-default. I cleared the counter but I am sure it will drop again. Based on my understanding it is likely to be routing protocol packets. My question is that, where is the "maximum threshold 40" coming from for cs6? Is it default settings for Random Early Drop? Is there a command I can show the Min and Max thresholds for each DSCP value?

I also only see "default" and cs6 traffic here but not for other DSCP values. Is it because that the router only sees these traffic?

I am wondering if I should simply increase the Min and Max for CS6 or I should create a class for CS6 traffic. Any advice?

Thanks,

12 Replies 12

Hello
you can use these commands to see dscp wred config

show queueing random-detect
show queueing interface xxx
show interfaces
show queue interface-type xx

I cannot see cs6 in the default which is set dscp 0 min threshold to 32 and max to 60
What I don't understand at this time is the voice is llq at 3k and and policed at 3mb on a 30mb cir
And you say you see drops on the default class which looks like its currently set to 27mb but I could be wrong depending on the clock rate of your physical link which is not shown


Res
Paul

Sent from Cisco Technical Support iPad App


Please rate and mark as an accepted solution if you have found any of the information provided useful.
This then could assist others on these forums to find a valuable answer and broadens the community’s global network.

Kind Regards
Paul

Thanks Paul for your reply. The commands you provided either gave me no output or told me "the command is depracated."...

r01#show queueing random-detect

Current random-detect configuration:

r01#

r01#show queueing interface g0/0

show queueing command is depracated. Please useshow policy-map interface

r01#show queue g0/0

show queue command is depracated. Please useshow policy-map interface

The physical link is 100mbps. However the circuit provided is only 30mbps service... Thanks

Joseph W. Doherty
Hall of Fame
Hall of Fame

Disclaimer

The  Author of this posting offers the information contained within this  posting without consideration and with the reader's understanding that  there's no implied or expressed suitability or fitness for any purpose.  Information provided is for informational purposes only and should not  be construed as rendering professional advice of any kind. Usage of this  posting's information is solely at reader's own risk.

Liability Disclaimer

In  no event shall Author be liable for any damages whatsoever (including,  without limitation, damages for loss of use, data or profit) arising out  of the use or inability to use the posting's information even if Author  has been advised of the possibility of such damage.

Posting

Based on my understanding it is likely to be routing protocol packets. My question is that, where is the "maximum threshold 40" coming from for cs6? Is it default settings for Random Early Drop? Is there a command I can show the Min and Max thresholds for each DSCP value?

I also only see "default" and cs6 traffic here but not for other DSCP values. Is it because that the router only sees these traffic?

I am wondering if I should simply increase the Min and Max for CS6 or I should create a class for CS6 traffic. Any advice?

Likely "maximum threshold 40" for CS6 is the default.  Recall it's the default maximum on most REDs.  (Also recall, min usually defaults to an increase of two packets per CS.  I.e. CS7 might be 34 40 while CS5 might be 30 40, etc.)

Hmm, surprised that show policy map didn't show all the RED stats (usually does on earlier platforms/IOSs).  Try just a show policy without reference to the interface.

As you don't want to delay the CS6 traffic, and it's likely routing protocol packets, either create a different class for it or enable FQ in class-default.  If you do the latter, also increase its min/max thresholds (as they are global to the class).

r01#show policy-map llq-policy

  Policy Map llq-policy

    Class voice-all-out

      priority 3000 (kbps)

     police cir 3000000 bc 93750

       conform-action transmit

       exceed-action drop

    Class class-default

      bandwidth remaining 90 (%)

       packet-based wred, exponential weight 9

      dscp    min-threshold    max-threshold    mark-probablity

      ----------------------------------------------------------

      default (0)   32               60               1/10

Still doesn't show me thresholds for the other DSCP values...

I think just to be safe I will create another class and put CS6 and 7 traffic in it and use "bandwidth remaining 10%" to gurantee the bandwidth. One more question, in the config there is also "police 3000000 conform-action transmit  exceed-action drop". Do I need it? If I didn't remember wrong, if I use "priority" command it will have implied policing it, is it not right?

Just being curious, to enable FQ for the class-default, I just need to put in "fair-queue" right? What commands do I use to increase the global thresholds...? Is it RED thredholds or FQ thredholds?

Thanks,

Hi Difan,

DSCP based WRED automatically setup min/max threshold for only dscp 6 traffic as 32/40....as we know this is mostly network control type of traffic.

So, you can manually configure min/max threshold for other dscp class of traffic e.g. dscp 0 - which you just did

Also, we're not seeing other class of traffic, if you're sending say dscp 3, then it will automatically show up from the show policy-map for the interface

Thanks Olayemi. So what is the default min/max threshold for other traffic...? I mean I have RED enabled globally for class-default so there must be a default value for other traffic correct? Thanks!

The default are shown below:

dscp     Transmitted       Random drop      Tail drop          Minimum        Maximum     Mark

                      pkts/bytes     pkts/bytes       pkts/bytes          thresh         thresh     prob

            default      152/10292           0/0              0/0                 20            40  1/10

            cs1          412/619648          0/0              0/0                 22            40  1/10

            cs2          244/366976          0/0              0/0                 24            40  1/10

            cs3         1161/1746144         0/0              0/0                 26            40  1/10

            cs4          188/282752          0/0              0/0                 28            40  1/10

            cs5          266/400064          0/0              0/0                 30            40  1/10

            cs6          142/11972           0/0              0/0                 32            40  1/10

            cs7         1222/1837888         0/0              0/0                 34            40  1/10

Regards

Yemi

Please rate all helpful posts and close solved questions

Thank you. So what command did you run to get this output? or do you have to have traffic for all the classes to see them?

Disclaimer

The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.

Liability Disclaimer

In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.

Posting

One more question, in the config there is also "police 3000000 conform-action transmit  exceed-action drop". Do I need it? If I didn't remember wrong, if I use "priority" command it will have implied policing it, is it not right?

LLQ does police, but only when there's congestion.  If there's no congestion, your LLQ can consume more bandwidth.  So, whether you need the policer depends on whether you want to enforce the LLQ rate all the time.

Just being curious, to enable FQ for the class-default, I just need to put in "fair-queue" right? What commands do I use to increase the global thresholds...? Is it RED thredholds or FQ thredholds?

Yup, just use fair-queue in class-default (likely on a 3945 FQ is supported in any non-LLQ class).

I was refering to the RED thresholds for CS6, which can be overridden in the manner that default is being configured in your policy.

ysalau
Level 1
Level 1

Yes, you need to have the traffic and then it will show up from the show policy-map int x/y output command

Sent from Cisco Technical Support iPhone App

Thank you. So my last question is that my priority queue has "police" command in it. I believe people put it in to prevent the queue starves others. However I believe I heard from somewhere that the priority queue itself has implied policing in it. Is it true? Is my "police" command in the queue unnecessary?

ysalau
Level 1
Level 1

Priority is just a fancy way of creating a special queue; this queue get serviced first as a latency queue and it is automatically policed only during congestion.

Priority will not police if there is no congestion; whereas Police always drop pckts that exceeds the given value - whether congestion or not

For more info:
http://www.davidsudjiman.info/2011/02/01/qos-priority-and-policing/

Priority is a conditional policer. For example, if you prioritize 48Kbps icmp traffic and there is no congestion, the traffic can utilize the unused bandwidth.

Policing is an unconditional policer. For example, if you police 48Kbps icmp traffic and there is no congestion, policing will still keep the traffic 48Kbps maximum.

Unless you want to make sure the prioritized traffic is using exact amount of bandwidth without having the option to utilize the unused bandwidth, having policing set with priority will make superfluous configuration task.

Sent from Cisco Technical Support iPhone App

Review Cisco Networking for a $25 gift card