On Saturday 28 September 2002 12:01, Vladimír Třebický
wrote:> Hi,
>
> I have little problem with ESFQ. I set root qdisc cbq on eth1 (which is on
> LAN side of network), then 1:1 cbq class with exact bandwidth and its two
> child - cbq 1:10 and cbq 1:20 with 1:1''s bandwidth divided. I also
set two
> ESFQ perturb 10 hash dst on those two classes. But when someone starts to
> download with 100 threads, he has much more bandwith than someone with only
> one. I understand that this is exactly what esfq should solve, so I think
> that somewhere on my side is mistake :-( This is my configuration:
>
> tc qdisc add dev eth0 root handle 1: cbq bandwidth 10Mbit avpkt 1000 cell 8
>
> tc class add dev eth0 parent 1: classid 1:1 cbq bandwidth 10Mbit rate 256
> Kbit weight 2.56 Kbit prio 1 allot 1514 cell 8 maxburst 20 avpkt 1000
> isolated
>
> tc class add dev eth0 parent 1:1 classid 1:10 cbq bandwidth 10Mbit rate 32
> Kbit weight 3.2 Kbit prio 1 allot 1514 cell 8 maxburst 18 avpkt 100
> isolated tc class add dev eth0 parent 1:1 classid 1:20 cbq bandwidth 10Mbit
> rate 224 Kbit weight 2.24 Kbit prio 2 allot 1514 cell 8 maxburst 2 avpkt
> 1500 bounded
>
> tc qdisc add dev eth0 parent 1:10 handle 10: esfq perturb 10 hash dst
> tc qdisc add dev eth0 parent 1:20 handle 20: esfq perturb 10 hash dst
>
> iptables -t mangle -A PREROUTING -m length --length 0:500 -j MARK
> --set-mark 3
> iptables -t mangle -A PREROUTING -m length --length ! 0:500 -j
> MARK --set-mark 4
>
> tc filter add dev eth0 parent 1: protocol ip handle 3 fw flowid 1:10
> tc filter add dev eth0 parent 1: protocol ip handle 4 fw flowid 1:20
>
> Thank you very much for answer,
You have to make class 1:1 bounded so it can not get more bandwidth than
it''s
rate.
And remove all isolated parameters. They are not working. In fact, if you
add a isolated parameter to class 1:10 and 1:20 then these class will get
more bandwidth then the parent allows even if the parent is bounded. I think
it''s a bug in cbq (more info on
http://www.docum.org/stef.coene/qos/tests/cbq/classes.html).
tc qdisc add dev eth0 root handle 1: cbq bandwidth 10Mbit avpkt 1000 cell 8
tc class add dev eth0 parent 1: classid 1:1 cbq bandwidth 10Mbit rate 256
Kbit weight 2.56 Kbit prio 1 allot 1514 cell 8 maxburst 20 avpkt 1000
bounded
tc class add dev eth0 parent 1:1 classid 1:10 cbq bandwidth 10Mbit rate 32
Kbit weight 3.2 Kbit prio 1 allot 1514 cell 8 maxburst 18 avpkt 100
tc class add dev eth0 parent 1:1 classid 1:20 cbq bandwidth 10Mbit rate 224
Kbit weight 2.24 Kbit prio 2 allot 1514 cell 8 maxburst 2 avpkt 1500
Stef
--
stef.coene@docum.org
"Using Linux as bandwidth manager"
http://www.docum.org/
#lartc @ irc.oftc.net
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/