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

QoS and max-reserved-bandwidth

williamehmke1
Level 1
Level 1

I am having trouble finding a definitive answer and could use some guideance. Max-reserved-bandwidth command no longer exists so i'm trying to figure out how to overide standard 75% limit set by Cisco to possibly 80-85% and still leave 15%-20% for overhead

Below is how i want to define my policy map but i want to base it off utilizing 85% and not 75% (in this scenario i have a 1.544Mb circuit) - the numbers in red are the ones if I can increase max-reserved-bandwidth to 85%. 

Any insight would be greatly appreciated

policy-map test

class voip

priority percent 25 (25% of 1.544Mb) = 386 kbps

class mission-critical

bandwidth remaining percent 40 (40% of 772kbps) = 308kbps - got this by 1.544*75%=1.158Mbps-.386kbps=772kbps

class interactive

bandwidth remaining percent 15 (15% of 772kbps) = 116kbps

class class-default

bandwidth remaining percent 45 (45% of 772Kbps) = 347kbps

policy-map test

class voip

priority percent 25 (25% of 1.544Mb) = 386 kbps

class mission-critical

bandwidth remaining percent 40 (40% of 926kbps) = 371kbps - got this by 1.544*85%=1.3124Mbps-.386kbps=926kbps

class interactive

bandwidth remaining percent 15 (15% of 926kbps) = 139kbps

class class-default

bandwidth remaining percent 45 (45% of 926Kbps) = 417kbps

1 Accepted Solution

Accepted Solutions

Hello

"I thought i had to leave 1% for class class-default"  -<----- My understanding it does this by default

Usually I would mark on my Lan interface then classify this traffic on my WAN
One more thing maybe apply some fair queueing on the class-default  for some degree for fairness for this traffic, it not a necessity but I forgot to mention it.



policy-map BRANCH-WAN-OUT-Child
class VOIP
set ip precedence 5
priority percent 25
class ERP-WAN
set ip precedence 4
bandwidth percent 40
class Call-control-WAN
set ip precedence 3
bandwidth percent 15
class class-default
fair queue
bandwidth remaining percent 100


 

res

Paul


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

View solution in original post

25 Replies 25

Peter Paluch
Cisco Employee
Cisco Employee

William,

On recent IOSes where the max-reserved-bandwidth command does not exist anymore, you can automatically assign up to 100% of the bandwidth declared on the interface to individual classes in your policy-map.

With the max-reserved-bandwidth still in place, the priority percent 25 referred to the 1544 Kbps, getting 386 Kbps, but the bandwidth remaining percent referred to the remaining capacity of 1544*max-reserved-bandwidth - 386 = 1544*0.75 - 386 = 772 Kbps.

Without the max-reserved-bandwidth command, the priority percent 25 will refer to the 1544 Kbps, getting 386 Kbps, and the bandwidth remaining percent 40/15/45 will refer to the remaining bandwidth of 1544-386=1158 Kbps, yielding 463.2/173.7/521.1 Kbps, respectively.

If you want to emulate the behavior of max-reserved-bandwidth 85 without actually having this command available (so the max-reserved-bandwidth is effectively 100%), you will need to tweak the percentages of the non-priority classes according to this formula:

NewPerc1 = (0.85 - 0.25) / (1 - 0.25) * 0.4 * 100% = 32%
NewPerc2 = (0.85 - 0.25) / (1 - 0.25) * 0.15 * 100% = 12%
NewPerc3 = (0.85 - 0.25) / (1 - 0.25) * 0.45 * 100% = 36%

This follows from the following:

With an arbitrary value of max-reserved-bandwidth (call it MRB) and a value of priority percent (call it PP), the bandwidth assigned to a class configured with bandwidth remaining percent BRP is

(B*MRB - B*PP) * BRP

where B stands for the bandwidth configured on the respective interface. With two different MRBs, MRB1 and MRB2, we want to achieve the same assigned bandwidth, so

(B*MRB1 - B*PP) * BRP1 = (B*MRB2 - B*PP) * BRP2

Now assume that the left side describes the behavior with MRB1 = 85% and BRP1 being 40%/15%/45%, and the right side should yield the same behavior with MRB2 = 100%. So this would yield:

(B * 0.85 - B * 0.25) * BRP1 = (B * 1 - B * 0.25) * BRP2
B * (0.85 - 0.25) * BRP1 = B * (1 - 0.25) * BRP2
(0.85 - 0.25) * BRP1 = (1 - 0.25) * BRP2
(0.85 - 0.25) / (1 - 0.25) * BRP1 = BRP2

hence the result above.

Best regards,
Peter

Peter,

thanks for your response. Just so i understand correctly there is no more 75% standard limit by Cisco in the newer IOS's therefore there i can untulize 100% of the bandwidth?

if this above statement is true, regardless of my circuit speed I can assign the percentages i have listed below to the classes within my ploicy-map and this will still allow space for L2 overhead, routing protocols updates, keepalives etc.. ?

policy-map test

class voip

priority percent 25 

class mission-critical

bandwidth remaining percent 40 

class interactive

bandwidth remaining percent 15 

class class-default

bandwidth remaining percent 45 

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 wha2tsoever (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

Pre-HQF CBWFQ didn't really reserve 25% for overhead.  What it did was it preclude "allocating" (unless you overrode with max-reserved command) more than 75% for the aggregate of the non-default classes.  Any of those classes, individually or their aggregate, could use 100% of the link capacity.  What it did guarantee was a default bandwidth dequeuing ratio of at least 25% for the default class, again assuming you didn't override the 75% max allocation default.

With HQF CBWFQ, just define whatever bandwidth percentage, for your class-default, you believe is necessary to support your "overhead" traffic.

BTW, with CBWFQ understand percentages only equal what they define when 100% is allocated, for example if you have:

policy-map x

class a

bandwidth percent 20

class class-default

bandwidth percent 20

Your two classes should have a guarantee of 50% of the bandwidth.

What CBWFQ bandwidth allocations really do, whether allocated as bps, percentages or remaining percentage, is set a relative weight for dequeuing.  Class A and class-default should get the same dequeing weight, and with just the two classes, that would result in 50/50% or 1:1 bandwidth split.

The same would be accomplished by:

policy-map y

class a

bandwidth percent 5

class class-default

bandwidth percent 5

Athough the actual weights should be less, the split is still 50/50% or 1:1.

so based on what you explained would the below example work?

policy-map BRANCH-WAN-OUT
class ShoretelQOS
set ip precedence 5
priority percent 25
class Lawson-WAN
set ip precedence 4
bandwidth percent 40
class Call-control-WAN
set ip precedence 3
bandwidth percent 15
class class-default
fair-queue
bandwidth percent 20

policy-map BRANCH-LAN-OUT
class ShoretelQOS
set ip precedence 5
priority percent 25
class Lawson-LAN
set ip precedence 4
bandwidth percent 40
class Call-control-LAN
set ip precedence 3
bandwidth percent 15
class class-default
fair-queue

bandwidth percent 20

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 wha2tsoever (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

Depends on how you define "work".  I.e. I don't know what exactly you're trying to accomplish.

Some generic comments, though.

IP Precedence is a bit old.  Is there a reason you're not using DSCP?

Rather than bandwidth percent, I would suggest bandwidth remaining percent (if your IOS supports it).

You noted your WAN is a T1, so can your WAN edge router congest its LAN facing interface.  If not, you really don't need a QoS policy on that interface.

FQ in pre-HQF can use more bandwidth than allocated for class-default.  In post-HQF FQ can be used on other classes too (and it adheres to the class bandwidth).

I see a "Lawson-LAN" being tagged with IP Precedence 4, and provided 40%.  I understand business needs but be careful elevating groups of hosts on a subnet rather than addressing real traffic service level needs.  This can come back and haunt you.

FQ often works very well.  Most traffic does okay in a class-default using it.  Reserve other classes for traffic that really, really needs to be treated separately.  For example, your LLQ for VoIP bearer traffic is fine.  Although the "book" calls for a class for your call signalling, I've found it's usually okay in class-default with FQ.  (The latter, though, creates a problem for the egress marking you're doing.  Actually, VoIP traffic should be marked by the source and validated with an ingress policy.  An ingress policy can also be used to mark, thereby leaving the egress policy to bandwidth management.)

if IP presedence is removed and the class defined only has "priorty percent ##" defined does this gaurentee the bandwidth allocated to that class? also if IP presedence is removed what "managers" priority?

What is the upside to using bandwidth remaining over bandwidth percent? How is bandwidth remaining calculated (sorry haven't had much exposure to QoS)

lastly in place of setting the LAN and WAN ERP as presedence 4 how would i go about doing what you suggested "but be careful elevating groups of hosts on a subnet rather than addressing real traffic service level needs" 

any insight is greatly appreciated

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 wha2tsoever (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

When you set IP Precedence (or DSCP), your marking the packet so later analysis only needs to look at the marking.  It doesn't directly have anything to do with how packets are treated without configuration (except for Cisco WFQ).  I.e. priority percent is how the class is treated, an IP Precedence marking might, or might not, be used to determine what traffic matches the class, but it doesn't, itself, influcence how the traffic is treated (again, except for Cisco's WFQ).

The upside to using bandwidth remaining percent is you don't need to adjust those classes relative percentages when/if you change classes w/o remaining percent.  For example, let's say you allocate 20% to LLQ and allocate all the other 80% to non-LLQ classes.  Then you determine you need to increase LLQ's allocation to 30%.  Now, you have to readjust all your other classes.  However, instead of that, if you use remaining percent, you wouldn't need to adjust your other classes.  (NB: remaining percent is allocated against 100% of the bandwidth not otherwise allocated.

e.g.:

policy-map x

class llq

priority percent 20

class a

bandwidth remaining percent 70

class class-default

bandwidth remaing percent 30

The 30 and 70 are the percentage of the 80% not allocated.

If your special LAN traffic is strictly ERP, sure you can bump its priority, but possibly better would be recognization of the ERP traffic, and bump its priority.  This precludes issues like some high volume data transfer from an "ERP host" getting priority of that traffic when it's not actually ERP traffic.

A real example of how QoS can "surprise you", I elevated/treated SSH traffic, like telnet traffic, so we would have low latency when accessing network devices across the network.  It worked great until the day SSH filled our higher priority queue, being adverse to lower class traffic and also adverse to concurrent telnet/SSH.

Additional analysis revealed the high volume flow of SSH was a SCP file transfer.  Oops, something I had overlooked, i.e. SCP and SSH looked alike.  Needless to say, I revised our QoS policy.

thanks a lot I am starting to understand things a lot better now. By using bandwidth remaining percent would i still need the  shaping policy below if my policy-map looks like this? Also note I am apllying these policies to both inside and outside interfaces

policy-map BRANCH-WAN-OUT-Child

 class VOIPQOS

  set ip precedence 5

  priority percent 25 

 class ERP-WAN

  set ip precedence 4

  bandwidth remaining percent 40 

 class Call-control-WAN

  set ip precedence 3

  bandwidth remaining percent 15 

 class class-default

  fair-queue

  bandwidth remaining percent 45 

 

policy-map BRANCH-LAN-OUT-Child

 class VOIPQOS

  set ip precedence 5

  priority percent 25 

 class Lawson-LAN

  set ip precedence 4

  bandwidth remaining percent 40 

 class Call-control-LAN

  set ip precedence 3

  bandwidth remaining percent 15 

 class class-default

  fair-queue

  bandwidth remaining percent 45 

this is the shaping statement - 1 for my outside interface and would I need 1 for my inside interface?

policy-map BRANCH-WAN-OUT-Parent

class class-default

shape average 1544000 

service policy BRANCH-WAN-OUT-Child

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 wha2tsoever (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

Yes, your bandwidth remaining percent usage looks okay.

Whether you need shaping on your outside interface depends on whether the outside interface has more physical bandwidth then what's allowed.  For example, an Ethernet hand-off with a provider bandwidth cap.  However, if the physical interface is the actaul bandwidth, such as a serial port running at 1.544 Mbps, you don't need to shape (or need a child policy).

As noted in one of my earlier posts, if your ingress from the WAN is only 1.544 Mbps, and your LAN bandwidth is Ethernet, and there's no other traffic, you don't need a LAN facing egress policy to manage egress congestion.  (NB: if you need to mark/remark packets, then you'll see need a policy for that, but for that, it might also be an ingress policy.)  Logically, it won't hurt having your LAN egress policy, but physically, it will cost you some additional CPU.

thank you, I really appreciate you taking the time to help me

Hello

in HQOS the max reserved bandwidth isn't required -by default upto 99% of the specified bandwidth can be used leaving a default 1% for the class class-default 

So to use 85% or your cir rate You can just shape that amount in your parent policy and then in your child policys set your required values for each class

res

Paul


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

Paul,

so what you are saying is I can utilize 99% and just spread that out amoungst my parent policy and child policys?  Does the total regardless of it being a parent policy or child policy need to equal 99% (see below). Would I also use the bandwidth percent command as apposed to the bandwidth remaining command

policy-map test

class voip

priority percent 25 

class mission-critical

bandwidth percent 40 

class interactive

bandwidth percent 15 

class class-default

bandwidth percent 19

Hello

Something like this--

policy-map wan-child
class voip
Priority percent 25

class mission critical
bandwith percent 40

class interactive
bandwith percent 15

class class-default
bandwith remaining percent 100

policy-map wan-parent
class class-default
shape average 1312000 (85% of 1544)
service policy wan-child

res
paul


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

paul,

I apologize for all the questions but if i follow your example and apply it to my current policies, would this be correct? where would the policy-map wan-parent come into play?

policy-map BRANCH-WAN-OUT (applied to outside interface)
class VOIP
set ip precedence 5
priority percent 25
class ERP-WAN
set ip precedence 4
bandwidth percent 40
class Call-control-WAN
set ip precedence 3
bandwidth percent 15
class class-default
bandwidth remaining percent 100

policy-map BRANCH-LAN-OUT (applied to inside interface)
class VOIP
set ip precedence 5
priority percent 25
class ERP-LAN
set ip precedence 4
bandwidth percent 40
class Call-control-LAN
set ip precedence 3
bandwidth percent 15
class class-default
bandwidth remaining percent 100

Review Cisco Networking for a $25 gift card