FBSD 1GBit router?

Zaphod Beeblebrox zbeeble at gmail.com
Tue Feb 5 12:33:29 PST 2008

On Feb 5, 2008 8:00 AM, Bc. Radek Krejca <radek at ceskedomeny.cz> wrote:

>   I have FreeBSD box as router
>  FreeBSD pvt-gw.starnet.cz 6.1-RELEASE-p12 FreeBSD 6.1-RELEASE-p12 #2: Wed
> Jan 31 21:28:44 CET 2007     root at pvt-gw.starnet.cz:/usr/obj/usr/src/sys/DL360-G4
>  i386
>  But speed is only about 382 Mbit. I have following values in
>  sysctl.conf:
> net.inet.ip.fastforwarding=1
> net.inet.tcp.recvspace=262144
> net.inet.tcp.sendspace=262144
> kern.ipc.maxsockbuf=33554432

The ip.fastforwarding makes a tiny insignificant difference with the caveat
that your box won't show up on traceroutes.  Fast forwarding is "fast" by
virtue of the fact that it doesn't decrement TTL.

The other sysctl values effect traffic originating or termating at your
router --- they probably have no effect on performance.

>   I need about 600-700 Mbit. Is any chance on freebsd? Hardware is HP
>  DL360-G4, interrupt takes about 55 % of CPU. I tested it over
>  netperf and result is about 382 Mbit.

If you need large packet performance of 600-700 mbit  (large  in this case
being packets (on average) of 1000 bytes or more), then this hardware is
likely doable.  I'd do the following:

- upgrade at least to 6.3.  upgrading to 7.0 might also be better, depending
on hardware choices
- ensure your ethernet cards are on fast enough busses.  'em' (Intel Ether
Express 1000) flavor ports are my personal favorite
- enable polling (this will make a _huge_ difference by itself)
- your hardware is (likely) dual core.  Make sure every piece of hardware in
use doesn't involve any giant locks.  Under 6.x consider the mpsafenet
sysctl.  This is also a point on which 7.0 will shine.

More information about the freebsd-performance mailing list