* [LARTC] HTB shares equally when borrowing enabled :(
@ 2002-08-31 22:59 Takács Bálint
2002-09-01 8:44 ` Stef Coene
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Takács Bálint @ 2002-08-31 22:59 UTC (permalink / raw)
To: lartc
Hi,
I'm fighting seriously with a most simple HTB setup. I'd like to share
the incoming 64kbps into 5 and 59 for two different machines under NAT.
HTB seems to hold the required limits when ceil is not set (no
borrowing), but when borrowing enabled it seems to share equally rather
then keeping the specified ratio.
My setup is below. A typical output of "tc -s -d qdisc show dev eth1"
and "tc -s -d class show dev eth1" is given. HTB seems to disobey the
specified rate (last entry: rate 40Kbit is set for 1:10 and 16466bps is
measured, while rate 472Kbit is set for 1:11 and rate 20755bps is
measured).
Setting the explicit bandwith (ceildkbps everywhere) does not work.
Playing with burst and cburst did not any change.
I've tried CBQ but it seems to do the same... :(
Please help.
Thank you,
Bálint
####################################
# add root HTB disc
run_tc qdisc add dev eth1 root handle 1: htb default 11 r2q 1
# be optimistic about input rates :)
run_tc class add dev eth1 parent 1: classid 1:1 htb rate 10mbit
# setup classes for the local nodes
run_tc class add dev eth1 parent 1:1 classid 1:10 htb rate 5kbps ceil
10mbit prio 2
run_tc class add dev eth1 parent 1:1 classid 1:11 htb rate 59kbps ceil
10mbit prio 1
# create leaves
run_tc qdisc add dev eth1 parent 1:10 sfq perturb 10
run_tc qdisc add dev eth1 parent 1:11 sfq perturb 10
# setup filtering rules : packets going to 192.168.1.2 will go into
class 1:10
run_tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip
dst 192.168.1.2 flowid 1:10
################################
# tc -s -d qdisc show dev eth1
qdisc sfq 8002: quantum 1514b limit 128p flows 128/1024 perturb 10sec
Sent 3401706 bytes 2650 pkts (dropped 0, overlimits 0)
qdisc sfq 8001: quantum 1514b limit 128p flows 128/1024 perturb 10sec
Sent 2039284 bytes 1363 pkts (dropped 0, overlimits 0)
qdisc htb 1: r2q 1 default 11 dcache 0
deq_util 1/1000000 deq_rate 5 trials_per_deq 0
dcache_hits 0 direct_packets 0
Sent 5440990 bytes 4013 pkts (dropped 0, overlimits 0)
################################
# tc -s -d class show dev eth1
class htb 1:11 parent 1:1 leaf 8002: prio 1 rate 472Kbit ceil 10Mbit
burst 2203b/8 mpu 0b cburst 14704b/8 mpu 0b quantum 60000 level 0
Sent 3284592 bytes 2545 pkts (dropped 0, overlimits 0)
rate 20755bps 15pps
lended: 2545 borrowed: 0 giants: 0 injects: 0
tokens: 28909 ctokens: 9147
class htb 1:1 root prio 0 rate 10Mbit ceil 10Mbit burst 14704b/8 mpu 0b
cburst 14704b/8 mpu 0b quantum 60000 level 3
Sent 5140628 bytes 3786 pkts (dropped 0, overlimits 0)
rate 37374bps 26pps
lended: 888 borrowed: 0 giants: 0 injects: 0
tokens: 9147 ctokens: 9147
class htb 1:10 parent 1:1 leaf 8001: prio 2 rate 40Kbit ceil 10Mbit
burst 1650b/8 mpu 0b cburst 14704b/8 mpu 0b quantum 5120 level 0
Sent 1856036 bytes 1241 pkts (dropped 0, overlimits 0)
rate 16466bps 10pps
lended: 353 borrowed: 888 giants: 0 injects: 0
tokens: -71171 ctokens: 8247
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [LARTC] HTB shares equally when borrowing enabled :(
2002-08-31 22:59 [LARTC] HTB shares equally when borrowing enabled :( Takács Bálint
@ 2002-09-01 8:44 ` Stef Coene
2002-09-02 11:24 ` Takács Bálint
2002-09-02 18:50 ` Stef Coene
2 siblings, 0 replies; 4+ messages in thread
From: Stef Coene @ 2002-09-01 8:44 UTC (permalink / raw)
To: lartc
On Sunday 01 September 2002 01:04, Takács Bálint wrote:
> Hi,
>
> I'm fighting seriously with a most simple HTB setup. I'd like to share
> the incoming 64kbps into 5 and 59 for two different machines under NAT.
> HTB seems to hold the required limits when ceil is not set (no
> borrowing), but when borrowing enabled it seems to share equally rather
> then keeping the specified ratio.
> My setup is below. A typical output of "tc -s -d qdisc show dev eth1"
> and "tc -s -d class show dev eth1" is given. HTB seems to disobey the
> specified rate (last entry: rate 40Kbit is set for 1:10 and 16466bps is
> measured, while rate 472Kbit is set for 1:11 and rate 20755bps is
> measured).
> Setting the explicit bandwith (ceil=64kbps everywhere) does not work.
> Playing with burst and cburst did not any change.
You have to put a ceil of 64kbps everywhere so class 1:10 and 1:11 share the
same 64 kbps :
run_tc class add dev eth1 parent 1: classid 1:1 htb rate ceil 64kbps
run_tc class add dev eth1 parent 1:1 classid 1:10 htb rate 5kbps ceil 64kbps
prio 2
run_tc class add dev eth1 parent 1:1 classid 1:11 htb rate 59kbps ceil 64kbps
prio 1
And if that's not working, try ceil=62kbps. You have to do this so YOU are
controlling the link and not the modem. And take sum of class = 62kbps.
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/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [LARTC] HTB shares equally when borrowing enabled :(
2002-08-31 22:59 [LARTC] HTB shares equally when borrowing enabled :( Takács Bálint
2002-09-01 8:44 ` Stef Coene
@ 2002-09-02 11:24 ` Takács Bálint
2002-09-02 18:50 ` Stef Coene
2 siblings, 0 replies; 4+ messages in thread
From: Takács Bálint @ 2002-09-02 11:24 UTC (permalink / raw)
To: lartc
Thanks Stef! The trick with setting lower maximum bandwidth works. I
convinced me that I understand now what happens :) The ISP starts to
build queues when maximal input rate is reached and releases packets
from these queues equally. Thus the prioritized connections had to wait
sometimes and it lends its guaranteed bw instead of waiting.
I had to set the ceil to as low as 50 kbps (!). My usual maximal
throughput rate is about 55 kb/sec, while my ISP says the maximal input
rate is 512 kbit/sec. I always assigned the difference to IP
administration. Now, the maximal throughput seems to not drop until
ceil is lowered below 55 kbps. Thus I assume the rates calculated by HTB
measure the REAL throughput without IP administration. Is it true?
Sometimes the maximal input rate drops (damn ISP) and it seems to enable
small "bursts" with high throughputs. Does it mean that I should to
decrease/increase the ceil when it happens? I think it depends on the
ISP queues: if they start to build, then I must. It can mean that I
can't use traffic shaping, or at least not HTB qdisc - maybe some prio
setup will do the job.
What if I try to shape the outgoing traffic? Maybe it has an effect on
incoming, too. I mean if "acknowledged" information goes back slow, I
can manipulate the ISP queues, hm?
Bálint
Stef Coene wrote:
>On Sunday 01 September 2002 01:04, Takács Bálint wrote:
>
>>Hi,
>>
>>I'm fighting seriously with a most simple HTB setup. I'd like to share
>>the incoming 64kbps into 5 and 59 for two different machines under NAT.
>>HTB seems to hold the required limits when ceil is not set (no
>>borrowing), but when borrowing enabled it seems to share equally rather
>>then keeping the specified ratio.
>>My setup is below. A typical output of "tc -s -d qdisc show dev eth1"
>>and "tc -s -d class show dev eth1" is given. HTB seems to disobey the
>>specified rate (last entry: rate 40Kbit is set for 1:10 and 16466bps is
>>measured, while rate 472Kbit is set for 1:11 and rate 20755bps is
>>measured).
>>Setting the explicit bandwith (ceildkbps everywhere) does not work.
>>Playing with burst and cburst did not any change.
>>
>You have to put a ceil of 64kbps everywhere so class 1:10 and 1:11 share the
>same 64 kbps :
>
>run_tc class add dev eth1 parent 1: classid 1:1 htb rate ceil 64kbps
>
>run_tc class add dev eth1 parent 1:1 classid 1:10 htb rate 5kbps ceil 64kbps
>prio 2
>run_tc class add dev eth1 parent 1:1 classid 1:11 htb rate 59kbps ceil 64kbps
>prio 1
>
>And if that's not working, try ceilbkbps. You have to do this so YOU are
>controlling the link and not the modem. And take sum of class = 62kbps.
>
>Stef
>
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [LARTC] HTB shares equally when borrowing enabled :(
2002-08-31 22:59 [LARTC] HTB shares equally when borrowing enabled :( Takács Bálint
2002-09-01 8:44 ` Stef Coene
2002-09-02 11:24 ` Takács Bálint
@ 2002-09-02 18:50 ` Stef Coene
2 siblings, 0 replies; 4+ messages in thread
From: Stef Coene @ 2002-09-02 18:50 UTC (permalink / raw)
To: lartc
On Monday 02 September 2002 13:24, Takács Bálint wrote:
> Thanks Stef! The trick with setting lower maximum bandwidth works. I
> convinced me that I understand now what happens :) The ISP starts to
> build queues when maximal input rate is reached and releases packets
> from these queues equally. Thus the prioritized connections had to wait
> sometimes and it lends its guaranteed bw instead of waiting.
>
> I had to set the ceil to as low as 50 kbps (!). My usual maximal
> throughput rate is about 55 kb/sec, while my ISP says the maximal input
> rate is 512 kbit/sec. I always assigned the difference to IP
> administration. Now, the maximal throughput seems to not drop until
> ceil is lowered below 55 kbps. Thus I assume the rates calculated by HTB
> measure the REAL throughput without IP administration. Is it true?
HTB measures each bit that's sended. So all ip-overhead included.
> Sometimes the maximal input rate drops (damn ISP) and it seems to enable
> small "bursts" with high throughputs. Does it mean that I should to
> decrease/increase the ceil when it happens? I think it depends on the
> ISP queues: if they start to build, then I must. It can mean that I
> can't use traffic shaping, or at least not HTB qdisc - maybe some prio
> setup will do the job.
You can use traffic shaping for the moments the traffic is not dropped. If
you know exactly how the bursts are, you can try to enable the same bursts
with htb.
> What if I try to shape the outgoing traffic? Maybe it has an effect on
> incoming, too. I mean if "acknowledged" information goes back slow, I
> can manipulate the ISP queues, hm?
It can affect incoming traffic, but I think the effect will be allmost
neglectable.
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/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2002-09-02 18:50 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-08-31 22:59 [LARTC] HTB shares equally when borrowing enabled :( Takács Bálint
2002-09-01 8:44 ` Stef Coene
2002-09-02 11:24 ` Takács Bálint
2002-09-02 18:50 ` Stef Coene
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.