This is an old revision of the document!
Test setup:
- The test consisted in running the netperf tcp stream test through the wrap board, to see how much traffic it can sustain/forward/nat with different software setup.
- The network was setup to make all the requests and replies pass through the wrap board, while netserver and netperf where running on the desktop.
- Socket sizes: -s = -S = 57344.
- Desktop: PentiumD 920 (2×2.8Ghz), 2Gb RAM - FreeBSD-HEAD/amd64.
- Wrap: AMD Geode (486 clone 233Mhz), 128MB RAM, 10/100 sis nics (DP83816 PCI) [http://www.pcengines.ch/wrap.htm details here].
- World and kernel for the wrap board were compiled with -O1 (except in the gcc optimization tests).
- A tarball containing test results, gnuplot files and plots is available [http://people.freebsd.org/~piso/wrap-exp/wrap-exps.tgz here].
http://people.freebsd.org/~piso/wrap-exp/wrap-exp.png
Legend:
- 4.x: FreeBSD 4.11/i386
- 7.x: FreeBSD HEAD/i386 (30/12/2006)
- fwd: net.inet.ip.forwarding=1
- ffwd: net.inet.ip.fastforwarding=1
- poll-1x: device polling activated for sis0
- poll-2x: device polling activated for sis0 and sis1
- nod: net.isr.direct=0 (7.x default: net.isr.direct=1)
- natd: divert socket + natd
- ipfwnat: ipfw nat
- O0: -O0 (no optimization)
- O1: -O1
- O2: -O2 -fno-strict-aliasing
- Os: -Os (implies -fno-strict-aliasing)
http://people.freebsd.org/~piso/wrap-exp/4vs7.png
http://people.freebsd.org/~piso/wrap-exp/4vs7-forwarding-polling.png
http://people.freebsd.org/~piso/wrap-exp/4vs7-fastforwarding-polling.png
http://people.freebsd.org/~piso/wrap-exp/4vs7-polling-complete.png
http://people.freebsd.org/~piso/wrap-exp/7-directvsnodirect.png
http://people.freebsd.org/~piso/wrap-exp/4vs7-nat.png
http://people.freebsd.org/~piso/wrap-exp/7-opt-complete.png