On Wednesday 12 March 2003 18:07, Ben Clewett wrote:
> I need (or would at lest live very much :) to use two Classless Queues
> in series.
>
> I can't see in the HOWTO how this is done, but guess at something like:
>
> tc qdisc add dev eth0 root handle 1: sfq (etc)
> tc qdisk add dev eth0 parent 1: tbf (etc)
>
> Am I on the right lines here?
Not really. Like Martin said, some qdiscs can contain classes (htb/cbq). You
can add a second qdisc on that classes. In fact, each leaf class contains a
qdisc. By default this is a pfifo qdisc, but you can replace it with a
classfull qdisc. And you can add a third qdisc to the classes of that second
qdisc and so on.
But each qdisc introduces a new queue so extra delays.
> I also have a small problem with TBF... From the HOWTO sec 9.2.2, it is
> surgested that a value for the 'burst' should be:
>
> "For 10mbit/s on Intel, you need at least 10kbyte buffer if you want to
> reach your configured rate!"
>
> Therefore: burst => rate * (8 / 1000)
>
> However, I find using this I get stall on ftp and other common
> protocols, when they get above the throttle rate, with low bandwidths
> (eg, 64kbit/sec). -- Or I completelly fail to understand the above
> statement...
The minimal burst is the amount of packets you can check between 2 updates.
And this depends on the internal clock used by the kernel. Say this clock
checks the rate each 1/10 second. And you have a rate of 1mbit/s. Then you
need a minimal burst of 0.1mbit. If your burst is lower, say 0.05mbit, you
only can send 0.05mbit each time your timer checks the tbf so you have a rate
of 0.5mbit/s.
> Does any person have a better method for calculating a good value for
> 'buffer' ?
No. But the bigger the buffer, the more time a packet can stay in the bufffer
so the deay can go up.
Stef
--
[EMAIL PROTECTED]
"Using Linux as bandwidth manager"
http://www.docum.org/
#lartc @ irc.oftc.net
_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/