Hi,
machine: AMD K6 200 MHz
Linux distribution: Mandrake 8.1
kernel: compiled 2.4.21
applied this:
#define PSCHED_CLOCK_SOURCE PSCHED_CPU in file
linux/include/net/pkt_sched.h bevore compiled the kernel
(described on http://www.docum.org/stef.coene/qos/faq/cache/40.html)
bandwitch on eth0: 128kbit
The most simple configuration - 122kbit guaranted for WWW (sport 80) and
6kbit for the rest.
tc qdisc del root dev eth0
tc qdisc add dev eth0 root handle 1:0 htb default 3
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 128kbit ceil 128kbit
tc class add dev eth0 parent 1:1 classid 1:2 htb rate 122kbit ceil
128kbit quantum 30500
tc class add dev eth0 parent 1:1 classid 1:3 htb rate 6kbit ceil
128kbit quantum 1500
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip sport
80 0xffff flowid 1:2
I make a test:
I send an email - it goes to default class 1:3. Then (during email is
sent) I get e big file through www. What happen? WWW rate is 30-70kbit.
So it doesn't keep his guaranted rate 122kbit. It lends his rate for
SMTP. When SMTP stops sending his packets, WWW gets 100%.
In real, I've got the more complicated configuration (64 kbit for www,
40kbit for pop3, 6kbit for smtp 12kbit for others), but the problem
remains: www doesn't get hit minmal rate. Extremally it gets < 30kbit!
It works only "ceil". If I set ceil for a class (for example 1:3) - it
is respected. 1:3 doesn't get more than set in ceil.
So, HTB doesn't work for me at all!
WHAT'S UP?
Could it be, that my rates are small? (6kbit). Does HTB work good for
bandwitch <=128kbit?
Did I something wrong?
Some sugestions?
thanks in advance
Sergiusz