[c-nsp] LLQ not utilizing reserved bandwidth & packet drops in Nested policy-map (2 level hierarchial policymap)
Velimir Filipov
vfilipov at evolink.com
Mon Feb 24 04:42:33 EST 2014
Hello Arun,
What kind of traffic are you flowing through the priority class ?
I can see that there are b/w exceed drops.
You should consider the following things:
1) priority class is using police action on the packets that exceed the configured bandwidth
2) priority class will drop packets reaching over the configured bandwidth no matter what, even if you don't have any traffic in the other classes at a given time.
Maybe you are wondering why it is like that.
The point is that actually the priority traffic should NOT try to overcome the reserved bandwidth for it.
So when you configure priority class, you should pick such value that would be enough for the priority traffic in any occasions.
Priority class is intended to be used for benign traffic such as voice.
So the question is what happens when you try to push TCP traffic in a priority class.
Well actually I didn't run tests to see what actually happens, but here is what I think.
As you know, TCP is trying to get as much throughput as possible. So in fact when your burst is smaller, interval of 200ms, packets are getting dropped way too often, which is degrading the TCP session performance a lot. As far as I know, each time packet is dropped, the window size is halved.
When you increase the burst respectively the time interval to 2s, the packet drops are less and you are able to extract more out of a single tcp session.
Priority class is used to guarantee latency of benign traffic with a well known capacity.
If you want to guarantee bandwidth for a TCP traffic, then you should NOT use priority class, but a regular bandwidth guarantee class, which is using shaping action on the packets, which in fact is far more well-intentioned to the TCP sessions.
Hope you find that information helpful.
Best regards.
Monday, February 24, 2014, 9:37:07 AM, you wrote:
Hi Velimir - Please find the full configuration of ACL, Class map and policy map
C2800-R6-CPE1#sh class-map
Class Map match-all EF (id 1)
Match access-group name EF
Class Map match-all DATA1 (id 2)
Match access-group name DATA1
Class Map match-all DATA2 (id 3)
Match access-group name DATA2
Class Map match-all DATA3 (id 4)
Match access-group name DATA3
Class Map match-all DATA4 (id 5)
Match access-group name DATA4
Class Map match-any class-default (id 0)
Match any
C2800-R6-CPE1#sh ip acce
C2800-R6-CPE1#sh ip access-lists
Extended IP access list DATA1
10 permit ip any host 172.9.0.10 (56100 matches)
Extended IP access list DATA2
10 permit ip any host 10.20.0.10 (18579 matches)
Extended IP access list DATA3
10 permit ip any host 124.7.227.17
Extended IP access list DATA4
10 permit ip any host 124.7.227.19
Extended IP access list EF
10 permit ip host 10.10.1.2 host 119.227.3.159 (125370 matches)
C2800-R6-CPE1#
C2800-R6-CPE1#sh policy-map child-out1
Policy Map child-out1
Class EF
priority 50 (%) 16000
Class DATA1
bandwidth 20 (%)
Class DATA2
bandwidth 10 (%)
Class DATA3
bandwidth 10 (%)
C2800-R6-CPE1#
C2800-R6-CPE1#sh policy-map parent-out
Policy Map parent-out
Class class-default
Average Rate Traffic Shaping
cir 128000 (bps)
service-policy child-out1
Service-policy output: parent-out
Class-map: class-default (match-any)
199999 packets, 45317308 bytes
30 second offered rate 0 bps, drop rate 0 bps
Match: any
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/2631/0
(pkts output/bytes output) 197368/47497736
shape (average) cir 128000, bc 512, be 512
target shape rate 128000
Service-policy : child-out1
queue stats for all priority classes:
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/2631/0
(pkts output/bytes output) 122667/19466406
Class-map: EF (match-all)
125298 packets, 18630200 bytes
30 second offered rate 0 bps, drop rate 0 bps
Match: access-group name EF
Priority: 50% (64 kbps), burst bytes 19200, b/w exceed drops: 2631
The router uses the "shape average CIR" value used in parent policy map when percentage is used in child policy map. Please see the above output where in class-map EF has 64kbps when 50% of parent CIR 128Kbps is configured. Tried changing the bandwidth command under the interface to 128K but still the issue persists.
Hi Jeya - The issue is LLQ should be able to burst till 64kbps during no congestion which is not happening with default burst size of 1600 bytes (200ms). Only when the burst size is changed to 16000bytes (2s), i am able to burst till 64Kbps.
On Fri, Feb 21, 2014 at 2:44 PM, Jeyamurali Sivapathasundaram <sjeyamurali at gmail.com> wrote:
Hi Arun
When no congestion, you can use more than 16K for LLQ or any of the other classes. This is default behaviour.
Jey
On Thu, Feb 20, 2014 at 2:27 PM, Arun Kumar <narain.arun at gmail.com> wrote:
Hi,
I think this issue is quite old but I could not get any conclusive
explanation.
Below is the configuration:
C2800-R6-CPE1#sh policy-map parent-out
Policy Map parent-out
Class class-default
Average Rate Traffic Shaping
cir 128000 (bps)
service-policy child-out1
C2800-R6-CPE1#sh policy-map child-out1
Policy Map child-out1
Class EF
priority 50 (%) 16000
Class DATA1
bandwidth 20 (%)
Class DATA2
bandwidth 10 (%)
Class DATA3
bandwidth 10 (%)
C2800-R6-CPE1#
In the above configuration, parent policy has 128Kbps and Child has 4
Classes with Class EF is LLQ with priority of 50% bandwidth (burst size is
default 1600bytes), class DATA1 with 20%, class DATA2 with 10% and class
DATA3 with 10%.
With the above configuration, I could not able to push beyond 16Kbps of
traffic on class EF (LLQ). When the burst size is increased to 16000 bytes,
I am able to push around 60Kbps.
Wanted to understand this is the expected behavior of LLQ in Nested policy
map or I am missing something.
thanks in advance
_______________________________________________
cisco-nsp mailing list cisco-nsp at puck.nether.net
https://puck.nether.net/mailman/listinfo/cisco-nsp
archive at http://puck.nether.net/pipermail/cisco-nsp/
--
Best Regards,
Jey S.
Network Engineer
London
More information about the cisco-nsp
mailing list