Re: Thoughput

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Marek Kierdelewicz wrote:
>> 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@xxxxxxxxxxxxxxx
> http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
>
>

I have made some research in this area on new Xeon 5130 with 4 NIC's
and been able to achieve throughput  about  1.5 Gbit  bidirectional
traffic using one processor
bonding 2 external NIC's to catalyst 3750 ether channel .
My server has 8000 tc rules and 2000 ipset rules .
Also it is possible to use CPU set to achieve better irq balancing
over multiple CPUs if you find software for Linux.
Average packet size was 476 byte ...
I have set irqs in the fowling way.
------------------------------------
|       core1       |    core2    |
------------------------------------
          |                      |
eth0 eth2            eth1 eth3
This was the optimal solution ...



_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux