09-09-2010 05:49 PM - edited 03-04-2019 09:43 AM
Much appreciate if someone can shed some light –
In the scenario below, we have a 1Gig interface with interface bandwidth of 1G with a
• max-reserved-bandwidth 100 configured
• A nested service-policy in use.
Nested service-policy details
• Parent policy shapes to 400Mbps.
• Child policy has a VOICE-class with strict priority percent 20 example below
Policy-map parent-testing
class class-default shape average 4000000 60000 0
policy-map TESTING
class VOICE
priority percent 20
class class3
bandwidth remaining percent 40
class class2
bandwidth remaining percent 30
class class1
bandwidth remaining percent 10
class default
- Can you clarify my understanding on the behavior of this config -
1. The voice-class 20% is calculated off the parent policy – hence voice-class gets a max 20% of 400M = 80M strict priority. Policed at 80M during congestions.
2. When there is no congestion on the link– that is say Voice-class, class3, class1, default-class have NO packets in it; can Class2 scavenge upto 400Mbps ?? OR can Class2 go upto 320Mbps only (even though there is nothing in voice class)
2. During periods of high congestion, when all classes are congested to the full. Can you confirm when using “bandwidth remaining percent ” command, as per the config- if –
a.Class3 will get a guaranteed minimum 128Mbps (40% of 320Mbps)
b.Class2 will get a guaranteed minimum of 57.6 Mbps (30% of remaining [400-80-128]) OR
c.Class2 will get a guaranteed minimum of 96 Mbps (30%of 320Mbps)
d.Class1 will get a guaranteed minimum of 13.44Mbps (10% of remaining [400-80-128-57.6]) OR
e.Class1 will get a guaranteed minimum of 32Mbps (10% of 320Mbps)
3. Where does the priority percent calculates against interface bandwidth In this case ?? should the calculations not be based on the parent policy map in this case ?
Thanks.
09-09-2010 08:28 PM
Hi,
1. The voice-class 20% is calculated off the parent policy – hence voice-class gets a max 20% of 400M = 80M strict priority. Policed at 80M during congestions.2. When there is no congestion on the link– that is say Voice-class, class3, class1, default-class have NO packets in it; can Class2 scavenge upto 400Mbps ?? OR can Class2 go upto 320Mbps only (even though there is nothing in voice class)
2. During periods of high congestion, when all classes are congested to the full. Can you confirm when using “bandwidth remaining percent ” command, as per the config- if –
a.Class3 will get a guaranteed minimum 128Mbps (40% of 320Mbps)
b.Class2 will get a guaranteed minimum of 57.6 Mbps (30% of remaining [400-80-128]) OR
c.Class2 will get a guaranteed minimum of 96 Mbps (30%of 320Mbps)
d.Class1 will get a guaranteed minimum of 13.44Mbps (10% of remaining [400-80-128-57.6]) OR
e.Class1 will get a guaranteed minimum of 32Mbps (10% of 320Mbps)
3. Where does the priority percent calculates against interface bandwidth In this case ?? should the calculations not be based on the parent policy map in this case ?
1.yes
2. Class2 can use upto 400Mbps when there is no congestion.
2. I think the remaining is 'full bandwidth - PQ reserved bandwidth', so, a,c,e.
3. The priority is calculated against parent level shapper rate; do you see you got 1G*20% on your case?
Regards,
Lei Tian
09-10-2010 02:27 AM
Hi Sharor,
The "bandwidth remaining percent" command is an interesting command which does not give absolute percentage values rather it provides relative percentage values allocation. Answers to your questions inline.
-------
1. The voice-class 20% is calculated off the parent policy – hence voice-class gets a max 20% of 400M = 80M strict priority. Policed at 80M during congestions. CORRECT.
2. When there is no congestion on the link– that is say Voice-class, class3, class1, default-class have NO packets in it; can Class2 scavenge upto 400Mbps ?? OR can Class2 go upto 320Mbps only (even though there is nothing in voice class) Yes, it can.
2. During periods of high congestion, when all classes are congested to the full. Can you confirm when using “bandwidth remaining percent ” command, as per the config- if –
a.Class3 will get a guaranteed minimum 128Mbps (40% of 320Mbps) Correct
b.Class2 will get a guaranteed minimum of 57.6 Mbps (30% of remaining [400-80-128]) OR
c.Class2 will get a guaranteed minimum of 96 Mbps (30%of 320Mbps) Correct
d.Class1 will get a guaranteed minimum of 13.44Mbps (10% of remaining [400-80-128-57.6]) OR
e.Class1 will get a guaranteed minimum of 32Mbps (10% of 320Mbps) Correct
3. Where does the priority percent calculates against interface bandwidth In this case ?? should the calculations not be based on the parent policy map in this case ? Parent policy map shaper rate (in this case, 400M)
---------
Here is an interesting example.
If Voice class is using 60Mbps, then the remaining bandwidth = 400M-60M =340M. Then, other classes will get relative bandwidth out of this free bandwidth like Class 3 will get 40% of 340Mbps = 136Mbps.
Please go through the following link for detailed explanation.
http://www.cisco.com/en/US/docs/ios/12_2t/12_2t2/feature/guide/ftLLQpct.html#wp1026343
Regards...
-Ashok.
01-16-2013 11:28 AM
Thanks for the explananion.
Siddhartha
01-16-2013 06:50 PM
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
To start with, I'm unsure what your non-LLQ bandwidth allocations are as you didn't define bandwidth for class-default nor did you specify which IOS version you're using. (NB: there's some differences between pre-HQF and HQF CBWFQ.)
1. The voice-class 20% is calculated off the parent policy – hence voice-class gets a max 20% of 400M = 80M strict priority. Policed at 80M during congestions.
Correct.
2. When there is no congestion on the link– that is say Voice-class, class3, class1, default-class have NO packets in it; can Class2 scavenge upto 400Mbps ?? OR can Class2 go upto 320Mbps only (even though there is nothing in voice class)
No, not congestion on the link, congestion due to the shaper.
With your posted configuration, any of the non-LLQ classes can use the full bandwidth allowed by the shaper, 400 Mbps. (And as you described in your 1st question, so can LLQ if there's no congestion. I.e. its implicit policer only triggers when there's packets queued to the LLQ.)
2. During periods of high congestion, when all classes are congested to the full. Can you confirm when using “bandwidth remaining percent ” command, as per the config- if –
a.Class3 will get a guaranteed minimum 128Mbps (40% of 320Mbps)
b.Class2 will get a guaranteed minimum of 57.6 Mbps (30% of remaining [400-80-128]) OR
c.Class2 will get a guaranteed minimum of 96 Mbps (30%of 320Mbps)
d.Class1 will get a guaranteed minimum of 13.44Mbps (10% of remaining [400-80-128-57.6]) OR
e.Class1 will get a guaranteed minimum of 32Mbps (10% of 320Mbps)
Unsure because what class-default's percentage is undefined in your posting.
Bandwidth percentages are a bit misleading, because they are only "correct" when you allocate all 100%. Otherwise they effectively set ratios between classes. For example, ignoring class-default (i.e. zero traffic) and assuming all your non-class-default classes were congested, your LLQ gets 20%. Your other class ratios are 4:3:1 or 4/8%, 3/8% and 1/8% of the remaining 80%, or .8*4/8%, .8*3/8% and .8*1/8% of your 400 Mbps.
3. Where does the priority percent calculates against interface bandwidth In this case ?? should the calculations not be based on the parent policy map in this case ?
As your priority class is in the child policy, its priority % is against the bandwidth it believes it has, in this case the 400 Mbps. If you also defined a priority class in the parent policy, by default, it would takes its percentage from 1 Gbps. (Some or all IOS versions, I recall, [for the interface policy classes, not child policy classes] will base their percentage against the interface's bandwidth statement.)
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