2000req/sec with RTL8169

Philipp Wuensche cryx-freebsd at h3q.com
Fri Mar 9 14:04:30 UTC 2007


Hi,

I administrate a FreeBSD 6-STABLE server with a RTL8169 network card
which has 64k buffer for incoming packets. We get about 2000req/sec on
our service which results in about 12-15k packets/sec in and out.
Packets are about 100-600 bytes.

After not using an SMP kernel (it locked up with interrupt) I get about
9-10k interrupts on the re0 interface which works okay until the point
where the CPU will do something else (monitoring getting triggered for
example) resulting in input errors etc. The service producing the
traffic is not very CPU hungry. Seems like the system will not do much
more using interrupt.

I tried using polling enabled with HZ=1000 set in the kernel
configuration but this leads to the system hanging after a while with
pings coming through sometimes, so it seems it gets a lot of packetloss.
Did the same with SMP enabled. Are there any sysctl setting or any hints
which I could use to get polling to work?

Unfortunally I don't have the choice to use a better network card and
the server only has remote access :-/.

greetings,
philipp





More information about the freebsd-performance mailing list