[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[altq 1108] Re: still lost with cbq/hfsc
On Wed, 17 Oct 2001, Kenneth W Culver wrote:
> I have 5 users sharing a 608(dl speed) 128 (upload speed) ADSL
> connection. I want to find a way to make all 5 equally share both the
> download bandwidth and upload bandwidth but when only one person is using
> the connection, I want that person to be able to fully use the link, 2
> people using it, each person gets half the link, and so on. I also need a
> class for interactive connections (ssh, telnet, etc...) that will take
> precedence over the individual users' bandwidth limits.
> Can anyone give me an example altq.conf config using cbq or hfsc to do
> what I'm trying to do?
Kenjiro already responded to this... Anyway, here are some more
details:
First of all, you can only control outgoing traffic with ALTQ.
Hence, unless you have access to the upstream router (where your download
link comes from), I don't see how you can control the download link.
Second, to control how to share the link between your users, you
basically only need one root class (the whole link) and 5 leaf classes. To
specify fairness (i.e., non-limitation of the bandwidth in case the link
is partially or totally idle), you need to use the keyword "borrow" in
CBQ. There are sample cbq configuration
files in ALTQ_DIST/altqd/altq.conf.samples/. I don't think that using HFSC
would buy you anything for such a simple setup, and HFSC has a larger
overhead than CBQ. (Fair enough, it can do much more, but you don't need
the extra-functionality for your purposes.) Also, take a look at
ALTQ_DIST/docs/TIPS.txt and peruse the altq.conf(5) manpage.
Third, concerning your precedence order, it looks to me like you
will have to use some non-disjoint filters. That's a problem, as the last
filter will basically override the others if I'm not mistaken. See [altq
910] for something related to your question. There may be a way of using
disjoint filters for your purposes, but it's going to be pretty tedious,
since (AFAIK) ALTQ does not support negative arguments in the filter
definition at the moment (i.e., you cannot specify "traffic coming from A
to B and NOT using the port 80, and so on.). That would actually be a
quite interesting extension, as well as having support for address/port
ranges. Anybody want to do it? :-)
Hope this sheds some light,
--Nick
------------------------------------------------------------------------
Nicolas Christin nicolas@cs.virginia.edu
Multimedia Networks Group http://www.cs.virginia.edu/~nc2y
------------------------------------------------------------------------