I tried it with a minimal config - two classes, each with rate: 256Kbit and
ceiling: 512Kbit and one dest. IP address in each, as well as a default
class.  Each specified machine could only pull 256Kbit maximum, either alone
or with the other downloading as well.

Output of tc -s qdisc show dev eth1:

qdisc sfq 50: quantum 1514b perturb 10sec
 Sent 7506464 bytes 4984 pkts (dropped 0, overlimits 0)
 backlog 6p

 qdisc sfq 40: quantum 1514b perturb 10sec
 Sent 4275617 bytes 2829 pkts (dropped 0, overlimits 0)
 backlog 3p

 qdisc sfq 10: quantum 1514b perturb 10sec
 Sent 287102 bytes 542 pkts (dropped 0, overlimits 0)

 qdisc htb 1: r2q 100 default 10 dcache 0
 deq_util 1/1000000 deq_rate 125 trials_per_deq 0
 dcache_hits 0 direct_packets 0
 Sent 12069183 bytes 8355 pkts (dropped 0, overlimits 15537)
 backlog 9p


Output of tc -s class show dev eth1:

class htb 1:10 root leaf 10: prio 0 rate 2Mbit ceil 2Mbit burst 15Kb cburst
4220b
 Sent 331368 bytes 678 pkts (dropped 0, overlimits 32)
 rate 107bps
 lended: 678 borrowed: 0 giants: 0 injects: 0
 tokens: 47825 ctokens: 13015

class htb 1:2 root prio 0 rate 5Mbit ceil 5Mbit burst 15Kb cburst 8151b
 Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
 lended: 0 borrowed: 0 giants: 0 injects: 0
 tokens: 19199 ctokens: 10190

class htb 1:40 root leaf 40: prio 0 rate 256Kbit ceil 512Kbit burst 15Kb
cburst 2254b
 Sent 4275671 bytes 2830 pkts (dropped 0, overlimits 0)
 rate 226bps
 lended: 2830 borrowed: 0 giants: 0 injects: 0
 tokens: 382801 ctokens: 27588

class htb 1:50 root leaf 50: prio 0 rate 256Kbit ceil 512Kbit burst 15Kb
cburst 2254b
 Sent 8214460 bytes 5467 pkts (dropped 0, overlimits 0)
 rate 546bps
 lended: 5467 borrowed: 0 giants: 0 injects: 0
 tokens: 382801 ctokens: 27588

Output of htb.init compile:

tc qdisc del dev eth1 root
tc qdisc add dev eth1 root handle 1 htb default 10 r2q 100

tc class add dev eth1 parent 1:2 classid 1:10 htb rate 2Mbit ceil 2Mbit
burst 15k
tc qdisc add dev eth1 parent 1:10 handle 10 sfq perturb 10

tc class add dev eth1 parent 1:2 classid 1:40 htb rate 256Kbit ceil 512Kbit
burst 15k
tc qdisc add dev eth1 parent 1:40 handle 40 sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst
10.0.0.20 classid 1:40

tc class add dev eth1 parent 1:2 classid 1:50 htb rate 256Kbit ceil 512Kbit
burst 15k
tc qdisc add dev eth1 parent 1:50 handle 50 sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip dst
10.0.0.150 classid 1:50

tc class add dev eth1 parent 1: classid 1:2 htb rate 5Mbit burst 15k



Gavin


----- Original Message -----
From: "Martin Devera" <[EMAIL PROTECTED]>
To: "Stef Coene" <[EMAIL PROTECTED]>
Cc: "Gavin" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Friday, April 05, 2002 1:40 PM
Subject: Re: [LARTC] htb ceiling


> > > tc qdisc add dev eth1 root handle 1 htb default 10 r2q 100
> > > tc class add dev eth1 parent 1: classid 1:2 htb rate 5Mbit burst 15k
> > > tc class add dev eth1 parent 1:2 classid 1:40 htb rate 256Kbit ceil
512Kbit
> > > burst 15k
> > > tc qdisc add dev eth1 parent 1:40 handle 40 sfq perturb 10
> > > tc filter add dev eth1 parent 1:0 protocol ip prio 100 u32 match ip
dst
> > > 10.0.0.2 classid 1:40
> > >
> > >  - this allows 10.0.0.2 to download at 256Kbit, even when it is the
only
> > > machine doing any downloading.  I can affect this speed by changing
the
> > > $rate, but changing $ceil has no effect whatsoever.
> > The ceil will prevent 10.0.0.2 to download faster then 512 kbit.  The
rate
> > will say how much 10.0.0.2 can download compare to the other classes (so
the
> > other lines are also relevant :).
>
> No Stef,
> the rate is really measured - it is used as source for DRR weight
> (here it is used relative to other classes) and to see whether we
> need to borrow from parent - here absolute value matters.
> So that the example above should work and give 512k.
>
> Gavin, did you tried with only these classes present ? (to have
> maximaly simplified configuration which exhibits it).
> If yes and it really does only 256k then post
> tc -s {qdisc,class} show dev ethXX outputs ... as usual
> devik
>
>

_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

Reply via email to