From: gypsy <gypsy@iswest.com>
To: lartc@vger.kernel.org
Subject: Re: [LARTC] HTB performance improvement
Date: Thu, 06 Dec 2007 19:10:39 +0000 [thread overview]
Message-ID: <4758492F.3E3F252F@iswest.com> (raw)
In-Reply-To: <685F1926C37B1846BE64D0033B46AF97E34D1D@els00wmx04.elsag.it>
> Koblensky Mingyur wrote:
>
> Hi all !
> i'm looking at the performance of the HTB algorithm/implementation
> because i would like more packets/sec !!
> this is the scenario of the performance test:
>
> i'm using an embedded system with:
> SPEED CPU: 399,999 MHz
> RAM: 128 MByte
> FLASH: 16 MByte
> EEPROM: 8Kbyte
> PROCESSOR MPC8272
>
> 1) with none qos configuration (system conf) i've obtained: TX
> 29940 packets/sec RX 29948.98 packets/sec with 2 packets lost
> 2) with only system conf + iptables marking support TX/RX
> 24950 packets/sec, 8 packets lost
> 3) with only system conf + u32 support TX/RX
> 29950 packets/sec, 5 packets lost
> 4) with only system conf + HTB with iptables mark classifier TX/RX
> 13000 packets/sec, 0 packets lost
> 5) with only system conf + HTB with u32 classifier TX/RX
> 19290 packets/sec, 0 packets lost
>
> tc qdisc add dev eth0.2 root handle 1: htb
> tc class add dev eth0.2 parent 1: classid 1:1 htb rate 100000000 ceil
> 100000000 burst 1000000 quantum 1600
> tc class add dev eth0.2 parent 1:1 classid 1:10 htb prio 1 rate
> 70000000 ceil 70000000 burst 1000000 quantum 1600
> tc class add dev eth0.2 parent 1:1 classid 1:11 htb prio 2 rate
> 10000000 ceil 10000000 burst 1000000 quantum 1600
> tc class add dev eth0.2 parent 1:1 classid 1:12 htb prio 3 rate
> 10000000 ceil 10000000 burst 1000000 quantum 1600
First, your quantum is wrong. Think of HTB as a NIC. You are sending
packets out via that "NIC", and those packets must be 1600 bytes big
before being sent. Since a "normal" packet is up to 1500 bytes, you're
making HTB take part of the next packet before it can send.
Your burst is also huge enough to swamp the interrupt controller.
Consider 16K or 32K instead.
Unless you get complaints during the load of the above, do not specify
any quantum, or specify the quantum HTB sets for rates that do not
complain.
The next likely reason for you to be at "half spped" is that HTB is
using the wrong clock. Which clock and what speed are kernel version
dependent.
Part of what I snipped referred to 10/100 ethernet. Normally that will
not trigger any, but be sure that when you run a 'tc -s class ls dev
$IFE' (where IFE is the correct interface) that "giants" are always
zero.
--
gypsy
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
next prev parent reply other threads:[~2007-12-06 19:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-06 9:17 [LARTC] HTB performance improvement Koblensky Mingyur
2007-12-06 19:10 ` gypsy [this message]
2007-12-07 6:10 ` gypsy
2007-12-07 12:48 ` Andy Furniss
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4758492F.3E3F252F@iswest.com \
--to=gypsy@iswest.com \
--cc=lartc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.