FreeBSD 5.3 Network performance tests

TM4526 at aol.com TM4526 at aol.com
Thu Nov 11 18:27:32 GMT 2004


As promised, I've tested the basic network stack for 5.3 -RELEASE
The results follow:

Hardware:

Celeron 1.7Ghz processor
Dual onboard Intel NICs, fxp driver
Intel 845G chipset
256MB Ram, 120MB allocated to the kernel.

Setup:

Traffic Generator -> FreeBSD System -> Server

The FreeBSD system is set up to route between the traffic
generator and the server on the other side. A unidirectional 
stream of ~34000 UDP packets/second (a full 100Mb/s ethernet
load) was sent through the system. The unidirecitonal flow
avoids random bus contention of return traffic, and the server
was discarding the packets.  The routing table was minimal. 

The test measures raw throughput through
a minimal system with a minimal routing table, or more 
precisely it measures the raw abilty of the kernel to move 
packets from one interface to another through the normal IP 
stack. 

Setup 1: Generic Kernel

FreeBSD 4.10: 40% interrupt usage
FreeBSD 5.3: 55% interrupt usage

Setup 2: 

The systems were stripped of all hooks, including firewalls,
gif and bpf inputs. 

FreeBSD 4.10: 35% interrupt usage
FreeBSD 5.3: 48% interrupt usage

Setup 3:

We typically use Freebsd with IPFIREWALL and 
IPDIVERT enabled. The setup had only 1 allow 
rule in the ruleset:

FreeBSD 4.10: 42% interrupt usage
FreeBSD 5.3: 58% interrupt usage


Given these results, I would conclude that the raw routing stack in
5.3 is 35-40% slower than its 4.x counterpart.

The tests are easy enough to duplicate, so there is no reason to 
question the numbers. Feel free to try it yourself. Obviously 
different Mobos and CPUs will yield different numbers, but my 
experience with this test is that the "differences" between the OS
versions are linearly similar on different systems.

TM


More information about the freebsd-questions mailing list