QoS - LLQ with undefined priority bandwidth

Unanswered Question
Apr 22nd, 2010
User Badges:


I got a router interface configuration regarding LLQ and a concern came...

For the strict priority queue, there is only the command priority, without bandwidth amount.

I want to calculate the amount of available bandwidth for other classes when using bandwidth remaining command. If I do not know the bandwidth for priority queue, how can I calculate for others?

I saw also that there is a policy applied on priority queue. It makes sense, since the bandwidth defined for priority queue is a self policed (it is the nature of priority queue) and it is not configured, the police limits the traffic for priority queue, avoiding starvation.

class VOICE
    priority   <------- no definition for bandwidth
   police 2000000 215000 215000 conform-action set-dscp-transmit ef exceed-action drop violate-action drop

By default, 25% is reserved.

Priority queue bandwidth is subtracted from the 75%.

The rest is available for other queues/classes

If I have a 1 mbps bandwidth... I will have 750 K available for QoS

If I define a police of 250 k on priority queue for normal burst and 350 k for exceeded, from my point of view, I will have dedicated a 350 k for priority queue and not 250. This is my thought because of the nature of priority queue (if there is traffic enough to use 300 K, it will not be policed until get 350 K).

My questions are:

When not defining the bandwidth for the priority queue, what is its limit?

If using police on priority queue, what will be the bandwidth available for other classes - will be the result of a subtration from the exceed value or the normal burst?

Thanks in advance!

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Calin Chiorean Mon, 04/26/2010 - 01:40
User Badges:
  • Silver, 250 points or more

On which router are you testing which allow you to set the command priority without any value?!

R3-C2811(config-pmap-c)#priority ?
  <8-2000000>  Kilo Bits per second
  percent      % of total bandwidth

% Incomplete command.

% Incomplete command.

Next, I read somewhere on Cisco pages, that you should avoid using the priority and police command in LLQ due to the fact the priority has it's own internal policer (http://www.cisco.com/en/US/tech/tk543/tk757/technologies_tech_note09186a0080103eae.shtml)

For your second question, police is used to guarantee a maximum amount of bandwidth, not a minimum. So, when it will transmit the packet the in the respective queue up to the police limit with the permission to burst for a certain amount of time. The rest of the classes will use the full available bandwidth, when the priority class with police is not utilized.

E.g. you have 8Mbps, you police in the priority class up to 1 Mbps, but you don't have any traffic in the priority queue, then the rest of the classes can use up to 8Mbps.

I hope I was clear enough.

ronaldobf Tue, 04/27/2010 - 21:13
User Badges:

The equipment is the following:

Router 7300 (NSE100)

Cisco IOS Software, 7300 Software (C7300-IS-M), Version 12.2(33)SB3, RELEASE SOFTWARE (fc1)

Regarding the second question... I know how police works for non-priority queues. I was actually trying to understand about the police applied to the priority queue when it has no explicit bandwidth defined. I also have readed about the Cisco recomendations to not use police on priority queue, etc...

Since all other classes are depending on the priority queue to define its minimum bandwidth guarantee (if using the remaining bandwidth command), I was not sure if the other classes (AF) will calculate properly the remaining bandwidth since there is no defined bandwidth for priority queue.

Police is used to limit traffic up to the bandwidth defined on the police statement... On my case, exceeded action is drop and violation is drop. Both at the same rate so I know that for the priority queue, I will have 3000000 bps (375000 bytes) available for it.

The point is:

How will the other classes calculate the bandwidth available for the class (if using "remaining" command)  if there is no priority bandwidth defined?

Does it use the police for the priority?

Will the other classes have available bandwidth for the calculation process to guarantee minimum bandwidth if there is no priority bandwidth defined on priority class?


I have an interface which has the police-map  POLICY-TEST applied to outbound traffic.

The interface has the maximum reserved badwidth set to 100 so I am using 100% for QoS (not 75% as default).

The interface has 10 mbps of bandwidth. What will be the available bandwidth for priority queue ( I mean, the bandwidth available regardless of the police).

What will be the minimum available bandwidth for the WEB class??? 0% or 375000 - 60%

I know that the police will limit the traffic to 375000, but the question is: the other classes will be aware of it to calculate correctly the remaining bandwidth?

class-map match-any VOICE
  match ip dscp ef

class-map match-any WEB
  match ip dscp af31

policy-map POLICY-TEST

  class VOICE
   police 3000000 375000 375000 conform-action set-dscp-transmit ef exceed-action drop violate-action drop

class WEB
    bandwidth remaining percent 60

That's the point


czoeller Fri, 10/15/2010 - 19:28
User Badges:

ronaldobf ,

Hello - I ran into this a while ago too. I Ended up calling TAC on it.  I didn't get the best of answers, but it is an out there 'nerd' question too.

The story, more or less, as it was told to me in the case was is this:

1.) Using the priority command in this way is only available in distributed routers (7200,7300,etc).

2.) If you only put the priority command, you must then manually police the queue to control its bandwidth usage, like you showed in your example.

3.) The  use of "bandwidth remaining percent" is based on based on the available bandwidth minus the policed rate minus the available bandwidth(75% of link BW by default).

I'm not sure I totally buy that answer for 3.), but you will probally have to get to a developer inside TAC to get the real answer.

The way to see what is happening is to do a "show policy-map interface".  This should show you the actual bandwidth that has been set by the "bandwidth remaining percent" command.

For me, when I do this on the production boxes I have available that are configured in this way, I personally can't figure out where the value are coming from. Its not coming from the values where one would expect - in my case the bandwidth command on an ATM sub-interface of a POS interface.   In my case, it appears that the bandwidth remaining percent' setting is being derived from 2Mb instead of the 65Mb set using the "bandwidth" command on the sub-interface where the policy-map is applied. The physical ATM interface is set at 155Mb.

When I play with this in GNS3 the numbers get weirder.

If I use the 'priority' command in the traditional way, I  everything works as expected and is well documented.

I am quessing that you are seeing this configuration on a  router managed by a rather large service provider.

Sorry, I couldn't have been more Help


milan.kulik Sat, 10/16/2010 - 02:46
User Badges:
  • Red, 2250 points or more

Hi Calin,

ad "I read somewhere on Cisco pages, that you should avoid using the priority and police command in LLQ due to the fact the priority has it's own internal policer."

Correct, but don't forget this internal policer is active only in congestion times.

So if you want to police the priority class traffic any time (which might be useful), you need to configure an explicit policer for the priority class.

This second policer can permit a little higher bandwidth, e.g.

So in your example you can permit 2 Mbps for the priority class in no-congestion time while the internal policer would permit 1 Mbps only in congestion time.




This Discussion

Related Content