RE: QOS and custom queueing(to CBWFQ)

From: Scott Morris (swm@emanon.com)
Date: Sun Jun 29 2003 - 12:02:14 GMT-3


Not exactly....

Per:
http://www.cisco.com/en/US/tech/tk39/tk48/technologies_tech_note09186a00
800fe2c1.shtml

In Cisco IOS Software Releases 12.1T and 12.2, the
max-reserved-bandwidth and the bandwidth percent commands are NOT
related. The bandwidth percent command is a relative percentage of
available bandwidth. The following example helps explain this:

Interface bandwidth = 1000 kbps
max reserved bandwidth = 75% default

The priority (PQ) can be configured with a value of up to 75% or 750
kbps.

The bandwidth percent command uses a ratio DERIVED FROM 1000 kbps - PQ
bandwidth specified in priority statements.

The max-reserved-bandwidth command does not affect the bandwidth
percentage, and the specified values in bandwidth percent commands can
sum to higher than 75%.

In addition, in these releases, the bandwidth percent command is used as
follows:

"bandwidth percent" is an absolute percentage.

"bandwidth percent remaining" allows you to dictate what percentage of
unused bandwidth can be used by a class, rather than leaving it up to
calculated weightings, and so on.

The max reserved bandwidth command specifies the amount of bandwidth
being allocated to fancy queueing. How this command affects bandwidth
allocations varies slightly with the Cisco IOS Release.

If you exceed the max reserved bandwidth (for priority), then it
changes:

Cisco IOS Software Releases 12.1T and 12.2

In Cisco IOS Software Releases 12.1T and 12.2, the percentages that you
define in your classes are a percentage of the max reserved bandwidth
value, rather than the full interface or VC bandwidth. The following is
an example using a T1 physical link and a class named "Gold Class" with
a priority percent 81 command.

max_reserve_bw = .75 * 1544 = 1158

Gold Class = .81 * 1158 = 937.98

HTH,

Scott

-----Original Message-----
From: nobody@groupstudy.com [mailto:nobody@groupstudy.com] On Behalf Of
SHARMA,MOHIT (HP-Germany,ex1)
Sent: Saturday, June 28, 2003 2:19 PM
To: 'Brian McGahan'; 'John Matijevic'; ccielab@groupstudy.com
Subject: RE: QOS and custom queueing(to CBWFQ)

Hi Brian,John,

Thanx a lot really for the explanatiion.

I deduct from this, that my solution for turning John's custom queue to
CBWFQ is wrong, as it will just allocate the b/w caclulating on the
''relative bandwitdh".
Would it then be safe to say, that in cases like this we should use the
bandwdth command and not the bandwidth percent?

Just recieved John's mail also, and it seems that both the views are
quite conflicting, should we use the byte-count or the percentage? I
guess byte-count would be a safer bet. But then how can we get the
bandwidth amount to be allocated for each queue, in CBWFQ classes? I
know I m asking too much, but would it be possible for you, to take
John's custom queue as an example and illustrate how we can do the
conversion, I guess a lot of people would be curious by now and all of
us would be really grateful :-)

Thanks as always,

Smiles,

Mohit

-----Original Message-----
From: Brian McGahan [mailto:brian@cyscoexpert.com]
Sent: Saturday, June 28, 2003 7:34 PM
To: 'SHARMA,MOHIT (HP-Germany,ex1)'; 'John Matijevic';
ccielab@groupstudy.com
Subject: RE: QOS and custom queueing(to CBWFQ)

Mohit,

        The 'bandwidth percent' command does a relative bandwidth
reservation based on the current available bandwidth of that interface.
Available bandwidth is calculated as follows:

Available_Bandwidth = (Configured_Bandwidth *
max-reserved-bandwidth/100) - (LLQ - RTP - RSVP)

        First take the 'bandwidth' statement configured on the interface
and multiply by the percentage that is reservable. By default,
max-reserved-bandwidth is 75. Then, subtract any bandwidth reserved by
priority queues, including the low latency queue (LLQ), real time
protocol (RTP), or resource reservation protocol (RSVP). The available
bandwidth value can be seen when you 'show queue [interface]':

R1#sh queue fa0/0 | in Available
     Available Bandwidth 75000 kilobits/sec

        Here we see a FastEthernet interface with no prior reservations.
By default, max-reserved-bandwidth is 75, therefore we have an available
bandwidth of 75Mbps.

        Now suppose we configure the following:

class-map match-all FTP
  match protocol ftp
!
policy-map QOS
  class FTP
   bandwidth percent 50
!
interface FastEthernet0/0
 service-policy output QOS
!

R1#sh queue fa0/0 | in Available
     Available Bandwidth 75000 kilobits/sec

        We are reserving 50% of the bandwidth on this interface for FTP.
Since the available bandwidth on the interface is 75Mbps, and we are
doing a percentage reservation, FTP is effectively guaranteed a minimum
of 37.5Mbps (50% of 75% of 100Mbps).

        If we actually want to reserve 50Mbps for FTP, we have three
options:

1. Set 'max-reserved-bandwidth' to 100

interface FastEthernet0/0
 max-reserved-bandwidth 100
 service-policy output QOS

R1#sh queue fa0/0 | in Available
     Available Bandwidth 100000 kilobits/sec

        Since 100Mbps is now available on this interface, FTP is
guaranteed 50Mbps (50% of 100Mbps).

2. Do an absolute 'bandwidth [kbps]' reservation

class-map match-all FTP
  match protocol ftp
!
policy-map QOS
  class FTP
   bandwidth 50000
!
interface FastEthernet0/0
 service-policy output QOS

R1#sh queue fa0/0 | in Available
     Available Bandwidth 25000 kilobits/sec

        'bandwidth [kbps]' is an absolute reservation, and is not based
on the available bandwidth of the interface. You can see that after
configuring 'bandwidth 50000' under the FTP class, only 25Mbps is now
available on the interface.

3. Change the configured 'bandwidth' value on the interface

        While not very practical, we can adjust the bandwidth value on
the interface so that the following would be true:

Interface_bandwidth = configured_bandwidth * max-reserved-bandwidth/100

Configured_bandwidth = interface_bandwidth * 100/max-reserved-bandwidth

interface FastEthernet0/0
 bandwidth 133334
 service-policy output QOS

R1#sh queue fa0/0 | in Available
     Available Bandwidth 100000 kilobits/sec

        While the third option is a roundabout solution, the point of
the exercise is to show that the available bandwidth is based on the
configured 'bandwidth' keyword, and not a function of the physical
interface.

HTH

Brian McGahan, CCIE #8593
Director of Design and Implementation
brian@cyscoexpert.com

CyscoExpert Corporation
Internetwork Consulting & Training
Toll Free: 866.CyscoXP
Fax: 847.674.2625

> -----Original Message-----
> From: nobody@groupstudy.com [mailto:nobody@groupstudy.com] On Behalf
Of
> SHARMA,MOHIT (HP-Germany,ex1)
> Sent: Saturday, June 28, 2003 11:49 AM
> To: 'John Matijevic'; ccielab@groupstudy.com
> Subject: RE: QOS and custom queueing(to CBWFQ)
>
> Hi John,
>
> Thanx for the same.
>
> Another one now. If you need to convert this queue into CBWFQ ( I saw
a
> post
> from yesterday, but it was not "really"followed up", but got me
thinking),
> would you put the percentage in the policy map, as 50,25, 15 and 10,
will
> this allocate 75 percent of the interface bandwith?
> I tried to implement it, but the available bandwith it shows is
7500kb, on
> a
> 10 mb interface. Quite confusing.-
> here's the config-
>
> class-map match-any kl
> match protocol telnet
> match protocol ftp
> class-map match-any hl
> match access-group 900
> match access-group 110
> class-map match-any gl
> match input-interface Ethernet0/0
> match access-group 198
>
> policy-map look
> class kl
> bandwidth percent 40
> class hl
> bandwidth percent 25
> class gl
> bandwidth percent 15
> class class-default
> bandwidth percent 10
>
> interface Ethernet0/1
> ip address 10.15.1.3 255.255.255.0
> half-duplex
> service-policy output look
> end
>
> oob-main-site#sh queueing interface e0/1
> Interface Ethernet0/1 queueing strategy: fair
> Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops:
0
> Queueing strategy: weighted fair
> Output queue: 0/1000/64/0 (size/max total/threshold/drops)
> Conversations 0/1/256 (active/max active/max total)
> Reserved Conversations 4/4 (allocated/max allocated)
> Available Bandwidth 7500 kilobits/sec
> <--------------------------------------
>
> Couls somebody please advice.
>
> Thanks,
>
> Mohit.
>
>
> -----Original Message-----
> From: John Matijevic [mailto:matijevi@bellsouth.net]
> Sent: Saturday, June 28, 2003 6:16 PM
> To: SHARMA,MOHIT (HP-Germany,ex1); ccielab@groupstudy.com
> Subject: Re: QOS and custom queueing
>
>
> OK, Here we go:
> In the example the workbook is using 10000 bytes, with 12.1 ios
version
> you
> dont have to be specific in the byte count because it will borrow from
the
> next queue to be serviced. So if you use 1000 bytes as a reference,
50%
> would be 5000 bytes for queue1, 25% would be 2500 bytes for queue2,
15% is
> 1500 for queue 3, you dont have to specify becuase the default bytes
for a
> queue is 1500 bytes, Since the calculation comes out to the same as
the
> defualt you do not need to specify.
> Sincerely,
> Matijevic
> ----- Original Message -----
> From: "SHARMA,MOHIT (HP-Germany,ex1)" <mohit.sharma@hp.com>
> To: "'John Matijevic'" <matijevi@bellsouth.net>;
<ccielab@groupstudy.com>
> Sent: Saturday, June 28, 2003 11:47 AM
> Subject: RE: QOS and custom queueing
>
>
> > Hi John,
> >
> > Could you please xplain, why is the byte count for specifically
queue 3
> is
> > missing and why 10K?
> >
> > Yu kind of got me confused with your example :-)
> >
> > Thanx,
> >
> > Mohit.
> >
> > -----Original Message-----
> > From: John Matijevic [mailto:matijevi@bellsouth.net]
> > Sent: Friday, June 27, 2003 10:22 PM
> > To: John Matijevic; ccielab@groupstudy.com
> > Subject: Re: QOS and custom queueing
> >
> >
> > Thanks all,
> > I got the answer it looks like it is based off of 10000 bytes and
with
> IOS
> > 12.1 you do not need to be specific and can user whatever number you
> want
> if
> > its not given.
> > Sincerely,
> > Matijevic
> > ----- Original Message -----
> > From: "John Matijevic" <matijevi@bellsouth.net>
> > To: <ccielab@groupstudy.com>
> > Sent: Friday, June 27, 2003 3:11 PM
> > Subject: QOS and custom queueing
> >
> >
> > > Hello Team,
> > > I have the following scenerio:
> > > queue-list 1 protocol ip 1 tcp telnet
> > > queue-list 1 protocol ip 1 tcp ftp
> > > queue-list 1 protocol ipx 2
> > > queue-list 1 protocol ip 2 list 101
> > > queue-list 1 protocol ip 3 gt 1200
> > > queue-list 1 interface Ethernet0 3
> > > queue-list 1 default 4
> > >
> > > Basically I have 4 queues and the question asks to configure
Custom
> > Queueing
> > > so that 50% of bandwidth go to que 1, 25% goes to que 2, 15% goest
to
> que
> > 3,
> > > and 10% goes to que 4.
> > > The answer is the following:
> > > queue-list 1 queue 1 byte-count 5000
> > > queue-list 1 queue 2 byte-count 2500
> > > queue-list 1 queue 4 byte-count 1000
> > > My question is how the numbers get derived in the answer? I am
> thinking
> > that
> > > they are using 10000 kilobytes as a reference, i think it may be
> because
> > since
> > > ethernet 0 is in one of the queues that its bandwidth is 10000kb,
but
> I
> am
> > not
> > > a 100% sure, I think that the default you use is 1500 bytes, and
since
> > there
> > > are 4 queues I thought it would be 6000, since they dont say the
byte
> > count of
> > > each queue. how do you come up with this? Also I think there
should
> be
> > > another que in the answer, queue-list 1 queue 3 byte-count 1500,
Could
> > someone
> > > help me clarify?
> > > Sincerely,
> > > Matijevic
> > >
> > >
> > >
>



This archive was generated by hypermail 2.1.4 : Fri Jul 04 2003 - 11:11:14 GMT-3