cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1180
Views
0
Helpful
8
Replies

need explanation CBWFQ

jouk
Level 1
Level 1

Hello,

I need an advice in CBWFQ configuring.

Now i use the following policy:

class-map match-all VOICE_UP

  match access-group 100

class-map match-all DATA_UP_USER2

  match access-group 102

class-map match-all DATA_UP_USER1

  match access-group 101

!

!

policy-map VOICE_UP

  class VOICE_UP

   bandwidth 25

  class DATA_UP_USER1

   shape average 1536000

   bandwidth 768

  class DATA_UP_USER2

   shape average 1536000

   bandwidth 768

  class class-default

   fair-queue

!

access-list 100 permit udp host 192.168.11.207 any

access-list 100 permit udp host 192.168.11.206 any

access-list 100 permit udp host 192.168.11.110 any eq snmp

access-list 101 remark TO-USER2

access-list 101 permit ip any XXX.XXX.XXX.64 0.0.0.31

access-list 102 remark TO-USER1

access-list 102 permit ip any XXX.XXX.XXX.96 0.0.0.31

!

interface Serial4/0

service-policy output VOICE_UP

I have serial link with 1536 Kbit/sec capacity.

Using policy-map VOICE_UP traffic is divided in three classes. In the case of congestion traffic is lowering to the bandwidth specified in corresponding class.

Question 1.

What command shell i use "shape average" or "shape peak" in class configuration ?

Question 2.

How to configure CBWFQ if i need to set the different priority of traffic inside of class DATA_UP_USER1 and class DATA_UP_USER2. For example, in class DATA_UP_USER1 i need to select traffic from three different IP addresses and give them different different priorities. The same situation with DATA_UP_USER1 class.

Is it possible to give the full channel capacity (1536 Kbps) to one of subclasses in the case when there are no activity in other classes and subclasses ?

8 Replies 8

andrew.prince
Level 10
Level 10

Your config will not give you the desired results.  What are you trying to do?

What is wrong in my current config ?

Now i have three classes - for voice and two users. I have serial link with 1536 kbps capacity.

Without congestion on serial link, classes corresponding to the USER1 and USER2 can get throughput up to 1536 kbps. In case of congestion, bandwidth of every classes lowering to specified rate - bandwidth 25 kbps for class VOICE_UP, bandwidth 768 kbps for class DATA_UP_USER1 and bandwidth 768 kbps for class DATA_UP_USER2.

If there are any discrepancy in the config and сhain of my reasoning, please let me know.

To be honest it would make more sense to limit/police user traffic not shape it.  Your Voice config does not allow for priority queueing or Low Latency Interleaving in the event of large packet transfers.  You have no real need to shape as you have an interface with a specific speed - shaping/averageing is normnally used when you have a low speed link more than 1 hop away from you.  Have a look at the QoS SRND guide to get an idea.

http://www.cisco.com/univercd/cc/td/doc/solution/esm/qossrnd.pdf

HTH>

Thank you for the link.

I think it is really better to use "priority" instead of "bandwidth" in the class VOICE_UP.

But I do not understand what you mean when speaking about two other classes. Is it really no reason to use "shape average" commands ? Shall I use only "bandwidth" commands in these classes?

>shaping/averageing is normally used when you have a low speed link more than 1 hop away from you.

May you explain what you mean ?

My channel limited with 1536 kbps rate, users generate traffic with higher rate, that is the reason why I use shaping.

My channel limited with 1536 kbps rate, users generate traffic with higher rate, that is the reason why I use shaping.

In my experiance - Users will use ALL available bandwidth.  In most normal networks you have other applications that are buisness focused and require bandwidth.  Obviously Voice needs to have priority no matter what - but you do not want it to take it all.

So I personally work with the following:-

- Prioritise Voice

- Ensure network requirements - dynamic routing/management protocols (telnet/ssh/icmp) get specific amouint of bandwidth no matter what.

Users get limited to a specific amount that is reasonable.

So I would not shape/average users1/user2 traffic.  I would limit them and let their traffic fight it out while ensuring voice & network managment are OK.  So

!

policy-map VOICE_UP

  class VOICE_UP

   priority percent 25  = 384Kbs

  class class-default

   bandwidth 1024 - limits to 1mbs

HTH>

Hi Andrew,

In your config snippet you are doing LLQ but this will be triggered when there is congestion ,  wouldn't it be better to police user traffic and prioritize Voice ?

Regards.

Alain.

Don't forget to rate helpful posts.

Hi Alain,

Yes - for me it all comes down to personal preference - there are multiple ways of doing things, as you have pointed out.

Thanks,

Andrew.

I have to guarantee that USER1 and USER2 will get bandwidth not less than 755 kbps. Also I know that only one voip call may occur in my network, I use g723ar53 codec, so the bandwidth needed for call about 22 kbps (I am reserving bandwidth with redundancy - 26 kbps).

Is the following config correct ?:

policy-map VOICE_UP

  class VOICE_UP

   priority 26

  class DATA_UP_USER1

   bandwidth 755

  class DATA_UP_USER2

   bandwidth 755

class class-default

   fair-queue

!

interface Serial4/0

bandwidth 1536

max-reserved-bandwidth 100

service-policy output VOICE_UP

Channel capacity 1536 kbps = 26 kbps (class VOICE_UP) + 755 kbps (class DATA_UP_USER1) + 755 kbps (class DATA_UP_USER2)

Thanks

Review Cisco Networking for a $25 gift card