[ previous ] [ next ] [ threads ]
 
 From:  "Peter Parnican" <peter at procad dot sk>
 To:  "Vincent Fleuranceau" <vincent at bikost dot com>
 Cc:  <m0n0wall at lists dot m0n0 dot ch>
 Subject:  Re: [m0n0wall] shaping
 Date:  Tue, 2 Nov 2004 21:08:19 +0100
Hi, is possible with mono do shapig in local-net?  Example: I have 10 wifi 
clients in my localnet which are conected throught mono to internet.

How to control bandwidth between local wifi clients? I set them gateway - IP 
of mono, but there is no shaping in this way.

Any idea?

Peter


----- Original Message ----- 
> You need to create 4 distinct pipes (2 download + 2 upload) with (at 
> least) 8 queues and 8 rules with appropriate weight and bandwidth settings 
> (1/4 and 3/4 of total bandwidth if I understand well your situation). See 
> below:
>
> User 1:
>
> -> Pipe 1 = 3/4 of total upload bandwidth
>
>    -> Queue 1 = High Priority Upload (weight = 90)
>       ->  rules for ACK Priorization
>           + traffic you want to priorize (DNS + ...)
>
>    -> Queue 2 = Low priority Upload (weight = 10)
>       ->  default (catch-all) rule for all other traffic
>
> -> Pipe 2 = 3/4 of total download bandwidth
>
>    -> Queue 3 = High Priority Download (weight = 90)
>       ->  rules for ACK Priorization
>           + traffic you want to priorize (DNS + ...)
>
>    -> Queue 4 = Low priority Download (weight = 10)
>       ->  default (catch-all) rule for all other traffic
>
> User 2:
>
> -> Pipe 3 = 1/4 of total upload bandwidth
>
>    -> Queue 5 = High Priority Upload (weight = 90)
>       ->  rules for ACK Priorization
>           + traffic you want to priorize (DNS + ...)
>
>    -> Queue 6 = Normal priority Upload (weight = 10)
>       ->  default (catch-all) rule for all other traffic
>
> -> Pipe 4 = 1/4 of total download bandwidth
>
>    -> Queue 7 = High Priority Download (weight = 90)
>       ->  rules for ACK Priorization
>           + traffic you want to priorize (DNS + ...)
>
>    -> Queue 8 = Normal priority Download (weight = 10)
>       ->  default (catch-all) rule for all other traffic
>
>
> Of course, each rule must be linked to the corresponding queue and each 
> queue must be linked to the corresponding pipe.
>
> Nota: the problem with this type of setup is that you can't "borrow" 
> bandwidth from another pipe (because of how dummynet works), whereas you 
> can "share" bandwidth between users belonging to the the same pipe (the 
> mask parameter makes possible to share bandwidth evenly). This means: even 
> if your neighbour "consumes" nothing in his pipe, you won't be able to use 
> his 1/4 of bandwidth...
>
> As a starting point, I would suggest Adam Nelleman's Traffic shaper 
> "Manual" at:
> http://m0n0.ch/wall/list/?action=show_msg&actionargs[]=35&actionargs[]=88
>
> If there's only one user in each pipes set, I think the only thing you 
> have to care of is the the TCP ACK priorization.
>
> See: http://wiki.m0n0.ch/wikka.php?wakka=NineTwo
>
> If you don't want to create all this stuff from zero, another approach 
> would be to use the Magic Shaper Wizard to generate rules and queues for 
> you and then duplicate them into a second "set" and finally assign each 
> set of rules and queues to a different upload/download pipe pair.
>
> This can be easily done by editing the contents of the config.xml file. If 
> you do copy/paste, don't forget to re-number the rules and the queues 
> (<targetqueue> and <targetpipe> values) for the second user's set.
>
> Hope this helps...
>
> -- Vincent
>
>
>