cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
876
Views
22
Helpful
23
Replies

Class-based QoS & GTS Question

networknoobs
Level 1
Level 1

Hi guys, recently I've setup some test environment to simulate how the QoS can be apply in order to policing the traffic the way I want it to be. But I don't know what I done wrong, the end result doesn't seems satisfying.

Here's the scenario. RouterA connect to the server segment (FTP, HTTP etc etc), RouterB have one back-to-back cable connecting to RouterA to simulate a WAN environment and the clockrate is set at 128000. Now I want to limit the traffic to FTP for just 32k, below is my configuration.

***************************************************************

!

class-map match-all FOR_FTP

match access-group name FTP

!

!

policy-map MY-POLICY

class FOR_FTP

bandwidth 32

shape average 32000

class class-default

fair-queue

!

!

interface Serial0

bandwidth 128

ip address 10.1.1.1 255.255.255.0

service-policy output MY-POLICY

clockrate 128000

!

ip access-list extended FTP

permit ip any 172.16.1.0 0.0.0.255

!

**************************************************************

I've check the access-list, it match and then show the policy-map, and the traffic shaping is active. But when I use the STG to query the router for both 1.3.6.1.2.1.2.2.1.10.1 (input traffic) and 1.3.6.1.2.1.2.2.1.16.1 (output traffic), the graph just aint right, there's time the traffic hovering around 90kb and sometimes over 100kb. What's wrong with the configuration? I thought I configured that the traffic who match the "FTP" access-list will be shape average to only 32kbps maximum?

Any input over here? My customer just won't accept the result if he want to shape it to 32k while the graph shows more than that...sigh..

23 Replies 23

Hi Paresh,

Guess that I mistake your suggested config as "shape peak 64000", my fault, now when i use "shape average 64000" it works flawlessly. Thanks for your suggestion and patience, now another question hit in. If I have few type of application (FTP, Lotus, Java). And I'll guarantee each of them a 32k, but when I want to let them burst whenever there's free resource, I'll prefer FTP get the most priority, this is the config I could think of,

************************

policy-map SHAPE_TRAFFIC

class FOR_FTP

bandwidth 32

shape average 64000

class FOR_LOTUS

bandwidth 32

shape average 48000

class FOR_JAVA

shape average 48000

class class-default

fair-queue

************************

For example, if now there's some free resource, the above mentioned 3 type of traffic will be able to go beyond the minimum guaranteed bandwidth, which is 32k, but can I set which traffic has the most priority to go first? Since I know the guaranteed bandwidth alone is sufficient to operate the application, but since FTP user paid the most, I let FTP have the priority to go beyond the minimum bandwidth. Anything I can do to achieve this?

P/s-thanks for ur very good explanation, finally I understand how the shape peak works!!!

Hello,

maybe you should rephrase "bandwidth 32" and "shape peak 32000" to understand how to achieve your goals.

"bandwidth 32" means:"This class gets at least 32kbps on the specific interface. It can take the whole interface bandwidth in case there is no other traffic. If this class doesn´t use the ressources I´ll give the bandwidth to other traffic".

"shape peak 32000" means: "This class will never ever get more than 32 kbps - even if the interface is not used by other traffic. There are no guarantees however, that you will get 32 kbps or any bandwidth at all."

So "bandwidth" gives a minimum guarantee, "shape" gives an upper limit. What exactly would meet your requirements? In your last post it sounds to me like "bandwidth 32" without "shape" command is closer to your requirements than other way around.

Hope this helps! Please rate all posts.

Regards, Martin

Hi again,

When using a CBWFQ setup as you have here, the manner in which "free bandwidth" is divided up between your classes depends on the bandwidth configured for the class. Therefore, if you assign FTP a bandwidth of 32k , Lotus 32k and Java 48k, the ratio in which free bandwidth will be divided is 32:32:48 i.e. using such a setup, you cannot let FTP get spare bandwidth in preference to the other classes.

So I'm afraid you are stuck with this proportional bandwidth allocation among your traffic classes.

Hope that helps,

Paresh.

Hi Paresh,

Can I alter the priority separately under each class? As follow:

************************

policy-map SHAPE_TRAFFIC

class FOR_FTP

bandwidth 32

shape average 64000

priority percent 50

class FOR_LOTUS

bandwidth 32

shape average 48000

priority percent 25

class FOR_JAVA

shape average 48000

priority percent 25

class class-default

fair-queue

************************

If I done that, does that means FTP will get 50% out of the available bandwidth? If it is so, that's sort of like achieving my requirement more, since FTP still get minimum of 32k, but when there's any free bandwidth available, FTP can use 50% out of the free bandwidth the burst. While Lotus and Java sharing the remaining 50%...

Aint that can be done?

i think "bandwidth 32" and "shape average 64000" suits my goal, as I'm wanting the traffic get a minimum of 32k, while have a upper limit of 64k if there's any bandwidth available.

Thanks for your comment though, appreciate it

Hi,

Unfortunately, the priority and bandwidth commands are mutually exclusive - you can have either one or the other. I believe the bandwidth command is a better fit for your requirements.

Hope that helps - pls do rate the post if it does.

Paresh

Now I'm temporarily based on my customer site, whereby I don't have some router to do my QoS testing till next few days, there's some question I wish to clarify, as you guys know, there's some application that have the self-discovery feature, whereby in any case of network congestion, even though the application can't get enough bandwidth, it'll recover later on when there's sufficient bandwidth available, this is the type of application where I don't want to give any guarantee of minimum bandwidth. If I have the configuration as follows:

************************

policy-map SHAPE_TRAFFIC

class FOR_FTP

bandwidth 32

shape average 64000

class FOR_LOTUS

shape average 32000

class class-default

fair-queue

************************

in case of congestion, the FTP still get minimum of 32k, pls notice under the class "FOR_LOTUS" I've taken out the command "bandwidth", if that's the way, can i expect during congestion, FTP still get what it suppose to get, but Lotus does not get any guarantee bandwidth, how's the traffic that fall under class-default? Does the traffic under class-default have more priority than Lotus?

This is what I want to achieve,

i. FTP get minimum of 32k no matter how congested, while allow burst to 64k when free resource available.

ii. Lotus get maximum of 32k, if congestion happened, I don't want Lotus to get anything, traffic under class-default should have more priority than the Lotus itself, since Lotus have the self-recovery feature. Other traffic that fall under class-default are those HR traffic, Leave Application etc etc.

any idea guys? sorry as I want to try it out with the Boson Netsim my customer have, but the Netsim does not came with the CBWFQ feature and I can't do any testing with it...

Hi,

I believe the config that you have suggested will work just fine. Since you are not configuring a bandwidth statement under the FOR_LOTUS class, that means that it is not participating in CBWFQ. Which means that the class-default should be given a higher dynamic bandwidth allocation that the FOR_LOTUS class during congestion.

Having said that, I have never configured such a combination of queueing parameters myself, so I cannot say with absolute certainty that it will work but it does make sense :-)

Hope that helps - pls rate the post if it does.

Paresh

Hello,

I understand "bandwidth 32" and "shape average 64000" (target rate=64k and sustain rate = 64k)fulfil the requirement. However, looks "bandwidth 32" and "shape peak 32000" (target rate=64k and sustain rate = 32k)also achieve the same. Do I understand correctly? If that is the case, when should we use "shape average 64000" and when should we use "shape peak 32000"

thanks,

Li

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Review Cisco Networking products for a $25 gift card