Re: Findings: Behaviour of Default Class with Class Based

From: Chris Lewis (chrlewiscsco@gmail.com)
Date: Wed Jun 14 2006 - 12:28:48 ART


This behavior is as expected. Unless a class is assigned a bandwidth, it
will not take any under congestion conditions. Configuring a bandwidth
statement only assures a minimum, not a maximum of bandwidth consumed. This
is in contrast to the priority statement that has a congestion aware policer
built in and does limit the class to the configured rate during congestion.

Chris

On 6/14/06, Pierre-Alex <paguanel@hotmail.com> wrote:
>
> Hi Group,
>
> Some interesting finding that have I believe have some huge repercusions
> ..
>
> If you are told to reserve on a subinterface or dlci : 50% for class1,
> 20 %
> for class2 and the rest for the default-class, you HAVE to set the
> reservation
> for the default-class in HARD, because it won't take the 30% by itself.
>
> It is a suprising behaviour. Have any of you noticed the same thing?
>
> I have enclosed the experiment and results below:
>
>
> ================
>
> DIAGRAM
>
> R1----fastethernet -- R2 ---ser 0/0.204 (pt2pt) ----frame-relay--- ---ser
> 0/0.402 (pt2pt)---R4---loopback0
>
> R1 is sending pings to R4 loopback 0 .
>
>
> ================
>
> Configuration on R2
>
>
> ! r2
> int ser 0/0
> encaps frame
> no shut
>
> no frame inverse-arp
>
> int ser 0/0.204 point
> frame int 204
> ip addr 10.2.4.2 255.255.255.0
> class 204
> !
>
>
>
> map-class frame-relay 204
> service-policy out WRED
>
>
> policy-map WRED
> class class-default
> shape average 128000 12000 0
> service-policy CBWQF
>
>
>
> policy-map CBWQF
> class class1
> bandw percent 50
> class class2
> band percent 20
> class class-default
>
>
> class-map class1
> match access-group 101
>
>
> class-map class2
> match access-group 102
>
> access-list 101 permit ip any any prec 5
> access-list 102 permit ip any any prec 3
>
> =========
>
>
>
> Experiment 1:
>
> From R1 ping R4 loopback at line rate with default precendence.
>
>
> Result1:
>
> Class-map: class-default (match-any)
> 36523 packets, 54748732 bytes
> 30 second offered rate 1169000 bps, drop rate 1042000 bps
> Match: any
>
>
> 1169000 - 1042000 = 127000 bps of traffic is transmitted.
>
> Finding 1:
>
> All of the bandwith is used by Class 1.
>
>
> Experiment 2:
>
> From R1 ping R4 loopback at line rate with default precendence.
> From R1 ping R4 loopback at line rate with precendence 5.
>
> Normally R1 should use half of the bandwidth and the rest should be used
> by
> the default-class
>
>
> Result 2:
>
>
> Service-policy : CBWQF
>
> Class-map: class1 (match-all)
> 20648 packets, 31054592 bytes
> 30 second offered rate 1162000 bps, drop rate 1036000 bps
> Match: access-group 101
> Queueing
> Output Queue: Conversation 25
> Bandwidth 50 (%)
> Bandwidth 64 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 20707/31143328
> (depth/total drops/no-buffer drops) 63/18349/0
>
> Class-map: class2 (match-all)
> 0 packets, 0 bytes
> 30 second offered rate 0 bps, drop rate 0 bps
> Match: access-group 102
> Queueing
> Output Queue: Conversation 26
> Bandwidth 20 (%)
> Bandwidth 25 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 0/0
> (depth/total drops/no-buffer drops) 0/0/0
>
> Class-map: class-default (match-any)
> 78392 packets, 117650535 bytes
> 30 second offered rate 1172000 bps, drop rate 1168000 bps
> Match: any
>
>
> Class1: 1162000 - 1036000 = 126 000 bps
> Class-default: 1172000 - 1168000 = 4 bps
>
> Finding 2:
>
> Class-default get basically nothing even though Class 2 is not using its
> share
> of bandwidth !!!
>
> The unused 50% is not realocated to the default class.
>
>
> Experiment 3:
>
>
> From R1 ping R4 loopback at line rate with default precendence.
> From R1 ping R4 loopback at line rate with precendence 5.
> From R1 ping R4 loopback at line rate with precendence 3
>
>
> Results 3:
>
>
> Class-map: class1 (match-all)
> 75760 packets, 113943040 bytes
> 30 second offered rate 1157000 bps, drop rate 1063000 bps
> Match: access-group 101
> Queueing
> Output Queue: Conversation 25
> Bandwidth 50 (%)
> Bandwidth 64 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 75800/114003200
> (depth/total drops/no-buffer drops) 64/67650/0
>
> Class-map: class2 (match-all)
> 10154 packets, 15271616 bytes
> 30 second offered rate 1132000 bps, drop rate 1095000 bps
> Match: access-group 102
> Queueing
> Output Queue: Conversation 26
> Bandwidth 20 (%)
> Bandwidth 25 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 10312/15509248
> (depth/total drops/no-buffer drops) 64/9922/0
>
> Class-map: class-default (match-any)
> 134013 packets, 201213148 bytes
> 30 second offered rate 1167000 bps, drop rate 1167000 bps
> Match: any
>
>
> Class1: 94 000 bps
>
> Class2: 37 000 bps
>
> Class default 0 bps
>
>
> Findings 3:
>
> When class2 traffic kicks in it takes 20% of the reserved bandwidth (25600
> bps) + a proportion of the bandwidth that the class-default should
> logically
> have but does not get as discovered in Finding 2.
>
> Class 1 takes 50% of the reserved bandwidth (64000) + a proportion of the
> bandwidth that the class-default should logically have but does not get as
> discovered in Finding 2.
>
>
>
>
> Experiment 4:
>
> Setting bandwidth in HARD for default class:
>
> policy-map CBWQF
> class class1
> bandw percent 50
> class class2
> band percent 20
> class class-default
> band percent 30
>
>
> Result4:
>
>
>
> Class-map: class1 (match-all)
> 231594 packets, 348317376 bytes
> 30 second offered rate 1158000 bps, drop rate 1094000 bps
> Match: access-group 101
> Queueing
> Output Queue: Conversation 25
> Bandwidth 50 (%)
> Bandwidth 64 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 231657/348412128
> (depth/total drops/no-buffer drops) 64/211023/0
>
> Class-map: class2 (match-all)
> 165866 packets, 249462464 bytes
> 30 second offered rate 1153000 bps, drop rate 1128000 bps
> Match: access-group 102
> Queueing
> Output Queue: Conversation 26
> Bandwidth 20 (%)
> Bandwidth 25 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 165936/249567744
> (depth/total drops/no-buffer drops) 64/160960/0
>
> Class-map: class-default (match-any)
> 291588 packets, 437818250 bytes
> 30 second offered rate 1167000 bps, drop rate 1129000 bps
> Match: any
> Queueing
> Output Queue: Conversation 27
> Bandwidth 30 (%)
> Bandwidth 38 (kbps) Max Threshold 64 (packets)
> (pkts matched/bytes matched) 25013/37614916
> (depth/total drops/no-buffer drops) 64/24080/0
>
>
>
> Class1: 1158000 - 1094000 = 64000 (50%)
>
> Class2: 1153000 - 1128000 = 25 000 (19,53%)
>
>
> Class default: = 38 000 ( = 29,6%)
>
> This works as required : "Assign 50% for class1, 20 % for class2 and the
> rest
> for the default-class"
>
> _______________________________________________________________________
> Subscription information may be found at:
> http://www.groupstudy.com/list/CCIELab.html



This archive was generated by hypermail 2.1.4 : Sat Jul 01 2006 - 07:57:32 ART