Behaviour of Default Class with Class Based Shaping
Chris, thanks!!!
This is clear now and I guess the point I made in my second post (enclosed) about being careful with the wording regarding the default-class was not out of place!
PAlex
——————————————-
“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”
—————————————————–
Out of curiosity I have repeated the same tests on frame-relay traffic-shaping and on a plain serial link. In every case is you do not set the set the reservation for the default-class explicitely it does not get its share of bandwidth.
I have not seen this discussed in the archive. Yet, I believe it is a critical point:
At the exam if they told you give 50% to class 1 and 20% for class2 and the rest to the default-class I’d think they would give you 0 for the task if you did not configure it explicitely. Because if you did not, the class default would not get it share of bandwidth !!!
Also if they said give 50% to class 1 and 20% and said nothing about the class-default, I’d think if you put an explicit reservation for class default you could also get a 0 because you would have configured the router to behave differently (default-class is getting to bandwidth during congestion time when it should not) !!!!
I think not being clear on this issue could result in a loss of point in the entire Qos section, so I am awaiting for some reaction from the group.
It could be that I am digging too much , or that what I have said is platform specific and cannot be repoduced (which I doubt ), in this case, I will be happy to be corrected.
Thanks
—– Original Message —– From: Chris Lewis To: Pierre-Alex Cc: ccielab@groupstudy.com ; Petr Lapukhov Sent: Wednesday, June 14, 2006 5:28 PM Subject: Re: Findings: Behaviour of Default Class with Class Based Shaping
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 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”
Category: CCIE Study
























