10-16-2013 01:28 PM - edited 03-04-2019 09:20 PM
This is a bit long, so bear with me.
I have a strange issue, which I can't say if it is causing any problems. I've configured a hierarchical QoS policy on the hub router of our network. It has a WAN speed of 20Mbps, while the DR site has a speed of 10Mbps and the branches have speeds of either 1 or 2Mbps.
Here is a sample of the policy.
!
class-map match-all DRSITE
match access-group name DRSITE
class-map match-all BRANCH
match access-group name BRANCH
class-map match-any NETMAN_TRAFFIC
match ip dscp cs2 cs6
class-map match-any VOICE_BEARER_TRAFFIC
match ip dscp ef
class-map match-any VOICE_CONTROL_TRAFFIC
match ip dscp cs3 af31 cs5
class-map match-any BUSAPP-TRAFFIC
match access-group name BUSAPP-QOS
!
!
policy-map WAN_OUT_CHILD
class BUSAPP-TRAFFIC
bandwidth percent 20
class NETMAN_TRAFFIC
bandwidth percent 5
class VOICE_BEARER_TRAFFIC
priority percent 10
class VOICE_CONTROL_TRAFFIC
bandwidth percent 2
class class-default
fair-queue
random-detect
policy-map WAN_OUT_PARENT
class BRANCH
shape average 2000000
service-policy WAN_OUT_CHILD
class DRSITE
shape average 10000000
service-policy WAN_OUT_CHILD
!
!
interface FastEthernet0/2/1
description WAN
bandwidth 20000
ip address x.x.x.x y.y.y.y
service-policy output WAN_OUT_PARENT
!
When you view the policy-map on the WAN interface you get:
ROUTER#show policy-map interface FastEthernet0/2/1
FastEthernet0/2/1
Service-policy output: WAN_OUT_PARENT
Class-map: DRSITE (match-all)
83261031 packets, 84138264486 bytes
5 minute offered rate 7754000 bps, drop rate 16000 bps
Match: access-group name DRSITE
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 36/472741/0
(pkts output/bytes output) 82788293/83555450097
shape (average) cir 10000000, bc 40000, be 40000
target shape rate 10000000
Service-policy : WAN_OUT_CHILD
queue stats for all priority classes:
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 1173/86970
Class-map: BUSAPP-TRAFFIC (match-any)
61556822 packets, 71479804095 bytes
5 minute offered rate 6546000 bps, drop rate 8000 bps
Match: access-group name BUSAPP-QOS
52387297 packets, 63799641491 bytes
5 minute rate 6409000 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 35/461117/0
(pkts output/bytes output) 61095709/70909930937
bandwidth 20% (444 kbps)
Class-map: NETMAN_TRAFFIC (match-any)
18114 packets, 1344512 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip dscp cs2 (16) cs6 (48)
18114 packets, 1344512 bytes
5 minute rate 0 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 18114/1344638
bandwidth 5% (111 kbps)
Class-map: VOICE_BEARER_TRAFFIC (match-any)
1173 packets, 86970 bytes
5 minute offered rate 4000 bps, drop rate 0 bps
Match: ip dscp ef (46)
1173 packets, 86970 bytes
5 minute rate 4000 bps
Priority: 10% (222 kbps), burst bytes 5550, b/w exceed drops: 0
Class-map: VOICE_CONTROL_TRAFFIC (match-any)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip dscp cs3 (24) af31 (26) cs5 (40)
0 packets, 0 bytes
5 minute rate 0 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 2% (44 kbps)
Class-map: class-default (match-any)
21684921 packets, 12657028835 bytes
5 minute offered rate 1198000 bps, drop rate 6000 bps
Match: any
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops/flowdrops) 0/11624/0/0
(pkts output/bytes output) 21673297/12644087552
Fair-queue: per-flow queue limit 16
Exp-weight-constant: 9 (1/512)
Mean queue depth: 3 packets
class Transmitted Random drop Tail/Flow drop Minimum Maximum Mark
pkts/bytes pkts/bytes pkts/bytes thresh thresh prob
0 21673297/12644087552 8453/9243609 3171/3697674 20 40 1/10
1 0/0 0/0 0/0 22 40 1/10
2 0/0 0/0 0/0 24 40 1/10
3 0/0 0/0 0/0 26 40 1/10
4 0/0 0/0 0/0 28 40 1/10
5 0/0 0/0 0/0 30 40 1/10
6 0/0 0/0 0/0 32 40 1/10
7 0/0 0/0 0/0 34 40 1/10
Class-map: BRANCH (match-all)
1294528 packets, 631316533 bytes
5 minute offered rate 13000 bps, drop rate 0 bps
Match: access-group name BRANCH
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/369/0
(pkts output/bytes output) 1294159/630935778
shape (average) cir 2000000, bc 8000, be 8000
target shape rate 2000000
Service-policy : WAN_OUT_CHILD
queue stats for all priority classes:
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
Class-map: BUSAPP-TRAFFIC (match-any)
515203 packets, 502176478 bytes
5 minute offered rate 5000 bps, drop rate 0 bps
Match: access-group name BUSAPP-QOS
45164 packets, 17853778 bytes
5 minute rate 3000 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/298/0
(pkts output/bytes output) 514905/501880273
bandwidth 20% (400 kbps)
Class-map: NETMAN_TRAFFIC (match-any)
17768 packets, 1317256 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip dscp cs2 (16) cs6 (48)
17768 packets, 1317256 bytes
5 minute rate 0 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 17768/1317256
bandwidth 5% (100 kbps)
Class-map: VOICE_BEARER_TRAFFIC (match-any)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip dscp ef (46)
0 packets, 0 bytes
5 minute rate 0 bps
Priority: 10% (200 kbps), burst bytes 5000, b/w exceed drops: 0
Class-map: VOICE_CONTROL_TRAFFIC (match-any)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip dscp cs3 (24) af31 (26) cs5 (40)
0 packets, 0 bytes
5 minute rate 0 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 2% (40 kbps)
Class-map: class-default (match-any)
761557 packets, 127822799 bytes
5 minute offered rate 5000 bps, drop rate 0 bps
Match: any
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops/flowdrops) 0/71/0/0
(pkts output/bytes output) 761486/127738249
Fair-queue: per-flow queue limit 16
Exp-weight-constant: 9 (1/512)
Mean queue depth: 0 packets
class Transmitted Random drop Tail/Flow drop Minimum Maximum Mark
pkts/bytes pkts/bytes pkts/bytes thresh thresh prob
0 761486/127738249 71/84550 0/0 20 40 1/10
1 0/0 0/0 0/0 22 40 1/10
2 0/0 0/0 0/0 24 40 1/10
3 0/0 0/0 0/0 26 40 1/10
4 0/0 0/0 0/0 28 40 1/10
5 0/0 0/0 0/0 30 40 1/10
6 0/0 0/0 0/0 32 40 1/10
7 0/0 0/0 0/0 34 40 1/10
You can see that the bandwidth value of the BRANCH policy (shown in blue) shows the correct value with respect to the target shape rate. For example, 20% of 2Mbps is 400kbps.
However, the bandwidth value of the DRSITE policy (shown in red) shows the incorrect value. The target shap rate is 10Mbps, so 20% should be 2000kbps. Instead it shows as 444kbps.
Why is this so? And is this a problem?
Sachin
Solved! Go to Solution.
10-17-2013 03:58 AM
Sachin,
We just ran into this. It seems that the post-HQF IOS > 12.4(20)T doesn't calculate the bandwidth correctly (I should say it calculates differently) unless you put the bandwidth statement under the default class. Try adding "bandwidth 10000" and "bandwidth 2000" under the class default and leave the shaper and service policy commands. I'd be curious to see if you get the correct calculations like we did when Cisco did this. At first I thought it was a hack, but it has to do with the way Cisco changed up qos.
class DRSITE
shape average 10000000
bandwidth 10000
service-policy WAN_OUT_CHILD
Also, I was looking at your Branches policy and it looks correct. You have 2Mb shaped...should it be 20?
HTH,
John
*** Please rate all useful posts ***
10-17-2013 03:58 AM
Sachin,
We just ran into this. It seems that the post-HQF IOS > 12.4(20)T doesn't calculate the bandwidth correctly (I should say it calculates differently) unless you put the bandwidth statement under the default class. Try adding "bandwidth 10000" and "bandwidth 2000" under the class default and leave the shaper and service policy commands. I'd be curious to see if you get the correct calculations like we did when Cisco did this. At first I thought it was a hack, but it has to do with the way Cisco changed up qos.
class DRSITE
shape average 10000000
bandwidth 10000
service-policy WAN_OUT_CHILD
Also, I was looking at your Branches policy and it looks correct. You have 2Mb shaped...should it be 20?
HTH,
John
*** Please rate all useful posts ***
10-17-2013 02:49 PM
Thanks John. That worked nicely. Needed to tweak my policies a bit, but now it's reporting to correct values.
And the branches are shaped to 2Mbps.
Sachin
10-22-2013 02:15 PM
I know this is already solved but after reading this post I checked one of my hub routers out of curiosity and it had the same behavior and adding the bandwidth command fixed the issue. However it only affected one of the classes under the parent policy, all the others were calculated just fine. Does anyone know why it only affects some classes and not all?
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