cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1225
Views
0
Helpful
13
Replies

Using CBWFQ

jouk
Level 1
Level 1

I have sattellite channel 768K between two cisco (3660 and 3620). In the channel passing trafic from thee clients. I need to assign 256K to each client, but if one or two clients don't work - full 768K will using by one client.

How can i do it by using CBWFQ or another technology?

13 Replies 13

barisal
Level 1
Level 1

Hi;

There is no need to use CBWFQ in this stiuation if it is needed that each client will have only 256K statically.

Please go through committed access rate (CAR) definitions and just put these rate-limit commands under the main link either in both ways, input and output. For achieving this, you should know the IP ranges for each client so that you would be able to write down ACLs. Such as;

access-list 100 permit ip 100.100.100.0 0.0.0.255 any

and then

interface xyz

rate-limit input access-group 100 256000 32000 6400 conform-action transmit exceed-action drop

rate-limit output access-group 100 32000 2000 4000 conform-action transmit exceed-action drop

Define these rate-limits for each clients...

Baris.

Sorry,

Also the output line would be the same bantwidth..

rate-limit output access-group 100 256000 32000 64000 conform-action transmit exceed-action drop

Shell i use exceed-action transmit, if i whant to give full speed of channel to one client in case then the other clients are don't use the network?

Hi,

It totally depends on your needs. If you give exceed-action transmit, the related IPs will have chance to exceed 256K when they demand.

Regards,

Baris.

ok,

i will try to use it.

Thank you.

alfredshum
Level 1
Level 1

Cisco has the following recommendation on CBWFQ:

The sum of all bandwidth allocation on an interface cannot exceed 75 percent of the total available interface bandwidth. The remaining 25 percent is used for other overhead, including Layer 2 overhead, routing traffic, and best-effort traffic. Bandwidth for the CBWFQ class-default class, for instance, is taken from the remaining 25 percent. However, under aggressive circumstances in which you want to configure more than 75 percent of the interface bandwidth to classes, you can override the 75 percent maximum sum allocated to all classes or flows using the max-reserved-bandwidth command. If you want to override the default 75 percent, exercise caution and ensure that you allow enough remaining bandwidth to support best-effort and control traffic, and Layer 2 overhead.

Assuming the clients are on the 3660 side and assuming you follow the above recommendation and allocate 192kbps to each client:

CBWFQ configuration on 3660:

ip access-list extended 101

permit ip host a.b.c.101 any

!

ip access-list extended 102

permit ip host a.b.c.102 any

!

ip access-list extended 103

permit ip host a.b.c.103 any

!

class-map client1

match access-group 101

!

class-map client2

match access-group 102

!

class-map client3

match access-group 103

!

policy-map policy1

class client1

bandwidth 192

class client2

bandwidth 192

class client3

bandwidth 192

!

interface s0/0

description WAN

service-policy output policy1

!

CBWFQ configuration on 3620:

ip access-list extended 101

permit ip any host a.b.c.101

!

ip access-list extended 102

permit ip any host a.b.c.102

!

ip access-list extended 103

permit ip any host a.b.c.103

!

class-map client1

match access-group 101

!

class-map client2

match access-group 102

!

class-map client3

match access-group 103

!

policy-map policy1

class client1

bandwidth 192

class client2

bandwidth 192

class client3

bandwidth 192

!

interface s0/0

description WAN

service-policy output policy1

!

Hi,

You can use 100% percent for LLQ if you use "max-reserved-bandwidth 100" under the main interface. So, there is no need to hire 192K for each segment. However, by the way, above conf. is much more than you need. Sometimes, it is better to solve the issues in the easiet way. Rather than Diff.serv here, integrated serv. is better solution.

Regards,

Baris.

By using such policy for users (256K for earch other) i whant to achive dinamic bandwidth distribution than only one or two users use the network and third user don't use it. But then all three users use the network - earch of them get 256K.

How can i do these ?

It is similary to FR, then i assign CIR - bandwidth getting by the user not lower than CIR.

CBWFQ will achieve the dynamic bw distribution you require if you use bandwidth or bandwidth remaining in each class. if you specify a certain amt of kb for each class your using priority queuing and each class will NOT exceed the specified amt. this is primarily used for llq and reserved for voip (real time) traffic. exercise caution when allocating 100% of the bandwidth. you run the potential of starving the bw for your routing/L2 traffic. try max-bandwidth of 90%

clarification to my earlier post. as long as you use bandwidth and not pririoty for each class, each class can use avail bandwidth avail for cbwfq

"you can override the 75 percent maximum sum allocated to all classes or flows using the max-reserved-bandwidth command. If you want to override the default 75 percent, exercise caution and ensure that you allow enough remaining bandwidth to support best-effort and control traffic, and Layer 2 overhead."

This is from the same quote that I've mentioned. And yes "max-reserved-bandwidth" can use 100% of the bandwidth. But as Cisco said, you may not have enough remaining bandwidth to support best-effort and control traffic, and Layer 2 overhead during congestion.

Since rate-limiting the traffic will drop the packets when the CIR is exceeded, if you have applications that are sensitive to packet-loss, you'll need a queueing mechanism to handle this. Actually there're many ways to do QOS. Simple ways, easy ways, flexible ways, modular ways....

st_kannan
Level 1
Level 1

The below one is the sample config, might fulfill your requirment.

class-map match-all First

match access-group 101

class-map match-all second

match access-group 102

class-map match-all third

match access-group 103

policy-map QOS

class First

police 256000 32000 32000 conform-action set-prec-transmit 0 exceed-action set-prec-transmit 4

class second

police 256000 32000 32000 conform-action set-prec-transmit 0 exceed-action set-prec-transmit 4

class third

police 256000 32000 32000 conform-action set-prec-transmit 0 exceed-action set-prec-transmit 4

access-list 101 permit ip any

access-list 102 permit ip <2nd client ip pool> any

access-list 103 permit ip <3rd client ip pool> any

If any one of the client exceed it's BW limit it will use other client's BW if they are under utlizing.

Regards,

KANNAN.S.T.

rmv72
Level 1
Level 1

"The Low Latency Queueing feature brings strict priority queueing to Class-Based Weighted Fair Queueing (CBWFQ). Strict priority queueing allows delay-sensitive data such as voice to be dequeued and sent first (before packets in other queues are dequeued), giving delay-sensitive data preferential treatment over other traffic.

The Low Latency Queueing feature provides strict priority queueing for CBWFQ, reducing jitter in voice conversations. Configured by the priority command, Low Latency Queueing enables use of a single, strict priority queue within CBWFQ at the class level, allowing you to direct traffic belonging to a class to the CBWFQ strict priority queue. To enqueue class traffic to the strict priority queue, you configure the priority command for the class after you specify the named class within a policy map. (Classes to which the priority command is applied are considered priority classes.) Within a policy map, you can give one or more classes priority status. When multiple classes within a single policy map are configured as priority classes, all traffic from these classes is enqueued to the same, single, strict priority queue.

When you specify the priority command for a class, it takes a bandwidth argument that gives maximum bandwidth in kilobits per second (kbps). You use this parameter to specify the maximum amount of bandwidth allocated for packets belonging to the class configured with the priority command. The bandwidth parameter both guarantees bandwidth to the priority class and restrains the flow of packets from the priority class."

http://www.cisco.com/en/US/products/sw/iosswrel/ps1830/products_feature_guide09186a0080087b13.html