Linux Advanced Routing and Traffic Control list
 help / color / mirror / Atom feed
From: Marek Kierdelewicz <marek@piasta.pl>
To: lartc@vger.kernel.org
Subject: Re: [LARTC] Thoughput
Date: Thu, 25 Jan 2007 14:40:16 +0000	[thread overview]
Message-ID: <20070125154016.2a45cd30@localhost> (raw)
In-Reply-To: <006f01c73fdc$30f4c0d0$92de4270$@eu>

> Hi,

Hi

> I am after a feel of the throughput capabilities for TC and Iptables
> in comparison to dedicated hardware. I have heard talk about 1Gb+
> throughput with minimal performance impact using 50ish TC rules and
> 100+ Iptables rules.

More important than bandwidth is packets per seconds. Calculate your
average packet size (measure bandwith and packets in some time window
and calculate per second values).

It's not the number of rules (tc or firewall) that matter most but
thier composition. You should use hashing tc filters when possible and
"set" iptables module (instead of many iptables rules) to offload cpu. 

If you don't need connection tracking (NAT and stuff) - disable it.

> Is there anyone here running large throughput / large
> configurations, and if so, what sort of figures?

You can easily achieve 600k pps on AMD 64 x2 5200 with mean 70% cpu
utilization at peek hours. You must bind irqs of nics to different
cores (look in /proc/irq/NUM/smp_affinity) to achieve symmetric load
of both cores (sometimes its difficult).

Similar speed can be achieved with Xeon 3,2GHz with HT (the old one).
I havn't tested new Xeons in the network field and I'm curious myself
how would they manage.

One can put more cores and more nics into the box and achieve even
more throuput. Problem is balancing load between the cores. Your setup
will be as effective as most used core.
I think that using Cisco EtherChannel (and any other bonding/trunking
technique that allows round robin traffic distribution between
physical links) would allow the ideal distribution of load between
cores. Has anyone tried this?

cheers,
Marek Kierdelewicz
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

  reply	other threads:[~2007-01-25 14:40 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-24 17:22 [LARTC] Thoughput Dan
2007-01-25 14:40 ` Marek Kierdelewicz [this message]
2007-02-02  9:32 ` Ivan Vladimirov

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=20070125154016.2a45cd30@localhost \
    --to=marek@piasta.pl \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox