[LARTC] Huge system load using HTB
Andy Furniss
andy.furniss@dsl.pipex.com
Thu, 07 Oct 2004 14:33:56 +0100
Szymon Miotk wrote:
> Hi!
>
> I have some problems with htb performance.
>
> THE SETUP:
> I have a network with 3 ISP uplinks and 1 local network uplink.
> There are about 1700 clients.
> I was shaping their bandwidth with HTB using iptables mangling in a manner:
>
> tc class add dev $DEV parent 1:10 classid 1:${CLASS_ID} htb rate \
> 16kbit ceil 512kbit burst 2kb prio 2 quantum 1500
> tc qdisc add dev $DEV parent 1:${CLASS_ID} handle ${CLASS_ID}: \
> sfq perturb 10
> tc filter add dev $DEV parent 1: protocol ip prio 17 u32 \
> match ip dst "$IP" flowid 1:${CLASS_ID}
> iptables -A "$CHAIN_NAME" -t mangle -s "$IP" -j MARK --set-mark $CLASS_ID
>
> I use iptables subchains, so that every chains contains 32 entries.
>
> I have recently upgraded from RedHat 9.0 to Fedora Core 2. I cannot turn
> back to RH9, because I had other problems with that.
> I use kernel 2.6.8-1.521 (the problem was the same with original
> kernel). I didn't recompile it.
>
> THE PROBLEM:
> When I load my rules the system load jumps to 100%.
> I was testing it and I am certain that HTB does the mess.
> The server with all iptables rules (including mangling) works well with
> load about 3%.
> But just as I turn HTB on it starts to crawl.
> The chart can be found here:
> http://mtower.mlyniec.gda.pl/~spam/tst.png
>
> It's fairly strong machine (P4 2.8 with HT, 1 GB RAM) and it worked with
> that setup quite well for half a year (system load never exceeded 30-40%).
>
> I guess I haven't noticed something or the kernel has the bug.
>
> Anybody clues?
I had to patch 2.6.8.1 to get it working .
http://www.linuxhq.com/kernel/v2.6/9-rc2/net/sched/sch_api.c
Andy.