Netmap for routers (em0 device)
dudu at dudu.ro
Fri Nov 4 16:51:04 UTC 2011
On Nov 4, 2011, at 4:06 PM, Archy Cho wrote:
> I am very happy to see freebsd could have such network performance with
> netmap ,
> since I am currently using freebsd as core routers instead of cisco.
> I tried to re-compile the freebsd 8.2 kernel to test ,
> however , I could not complete the task ( both i386 and amd64 ),
> I could only success at 9.0-RC-1.
> Here is my task and error message,
> cp /usr/src/sys/i386/conf/GENERIC /usr/src/sys/i386/conf/Netmap-Router
> echo "device netmap" >> /usr/src/sys/i386/conf/Netmap-Router
> cd /tmp/netmap/sys/
> cp -R * /usr/src/sys/
> cd /usr/src/
> patch -p < /tmp/netmap/head-netmap.diff
> echo "WITHOUT_MODULES = bge re igb" >> /etc/make.conf
> make buildkernel KERNCONF=Netmap-Router
> make installkernel KERNCONF=Netmap-Router
> -Werror ../../../dev/e1000/if_em.c -I../../../dev/e1000
> ../../../dev/e1000/if_em.c: In function 'em_setup_receive_ring':
> ../../../dev/e1000/if_em.c:4012: error: 'j' undeclared (first use in this
> ../../../dev/e1000/if_em.c:4012: error: (Each undeclared identifier is
> reported only once
> ../../../dev/e1000/if_em.c:4012: error: for each function it appears in.)
> *** Error code 1
> Stop in /usr/src/sys/i386/compile/Netmap-Router
> Any hint of error message ?
It's fairly easy to remove the offending code, AFAIK there were a few unused variable and signed vs unsigned comparisons.
> More questions ,
> I seldom facing DDOS , whatever using polling or not ,
> 1Gbps link with 64bytes packet will cause CPU 100% ,
> if a freebsd box compile with netmap ,
> could it have performance boost of routed / ipfw / pf ?
Not yet. In order to do that, ipfw or pf need to be ported to userspace. I believe that was on Luigi's agenda, though.
Good, fast & cheap: pick any two.
More information about the freebsd-current