Re: [LARTC] Limiting upstream trafic with classes that borrow bandwith

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Javier Miguel Rodr¨ªguez wrote:
> 
>         Hello
> 
>         I have a DSL connection, 256 kbits downstream, 128 kbits upstream
> 
>         I am using cbq-init script to shape bandwith
> (ftp://ftp.equinox.gu.net/pub/linux/cbq)
> 
>         I have two upstream connections I want to shape: rsync+ssh with only ONE
> remote host, and qmail mail server with all the internet
> 
>         What I want is this:  I have 128 kbits upstream.  These are the rules
> 
>         *Web, ftp, telnet, icq trafic are MORE important for me than rsync or qmail
>         * If have upstream spare bandwith, I want rsync+ssh (or qmail) to fullfit
> it.
>         * Rsync+ssh trafic is more important than qmail trafic, but I want qmail
> should have a guaranted 56 Kbit upstream rate
> 
>         So, for example, if total upstream bandwith is 128 kbits:
> 
>         * No web trafic, no qmail trafic -> rsync+ssh should have 128 kbits upstream
>         * No web trafic, no rsync+ssh trafic ---> qmail should have 128 kbits
>                                                                       upstream
>         * Rsync+ssh AND qmail---> 72 kbits rsync, 56 kb qmail
>         * Web or ftp trafic and rsync+ssh ---> web: 128 kbits, rsync:0
>         * Web and qmail ------------------------> 72 kbits web, 56 kbits qmail
>         * Web, qmail and rsync ---------------> 72 kbits web, 56 kbits qmail, 0 rsync
> 
>         By now, the only thing I have been able to achieve is limiting ssh and mail
> upstream to 56kbits each :-(
I'm working on an example like this.  I still have to test it.   Take a
look at my website for details.

I will try to give a CBQ inplementation for you setup :

web  qmail  ssh
---------------
     56     72
128         0
72   56
72   56     0

possible CBQ implementation :

CBQ root qdisc 10mbit
CBQ Class BandWidtj 10mbit 256kbit BOUNDED
CBQ qdisc BW 256kbit
  CBQ class BW 256kbit rate 56 kbit : QMAIL
  CBQ class BW 256kbit rate 72 kbit : WEB and SSH and Rsync
   Here you can choose : you can take a prio qdisc so WEB will have
allways have 100% OR you can take a CBQ Qdisc and 2 classes so ssh and
rsync will have a small bandwidth and will not starve:
     CBQ qdisc BW 72kbit
        CBQ class BW 72kbit rate 56 kbit : WEB
        CBQ class BW 72kbit rate 6 kbit : SSH : This class will allways
have a little bit BW

Now create some filter, attach them to the different qdiscs and put the
traffic in the classes where they belong.  This should work.

-- 

Stef

More QOS info : http://users.belgacom.net/staf/



[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux