Thursday, July 12, 2012

FreeBSD: Netmap

High speed network, big data technology are related terms, they are developed to meet the challenge of application demand today. We always see a lot of works for Linux regarding high speed network(10G and up) but not so much on BSD side. I reported FreeBSD ringmap in my previous blog post, Robert Watson has also implemented zero copy bpf buffers for FreeBSD. And thanks to the friends in #snort-gui, I just found netmap that is going to be part of FreeBSD 10, it seems promising to me and thanks Luigi and his team for the effort to improve the performance of network stack.

Right now there's nothing much we can do to test netmap, however if you want to try it out, you can basically download the images from the netmap website and play around with them, or install FreeBSD Current using the snapshot image which you can find here - http://pub.allbsd.org/FreeBSD-snapshots/

Here are few steps I did after FreeBSD current is installed -

shell>cd /usr/src/sys/modules/netmap
shell>make
shell>kldload ./netmap.ko
shell>kldstat
shell>ls -la /dev/netmap
shell>dmesg

Everything is there but you need to play around with them, so download -

http://info.iet.unipi.it/~luigi/netmap/20120608-netmap.tgz

After untar it, you can start play around with the pkt-gen and other binaries provided in there. Currently netmap is still under development and testing, hopefully when it reaches stable stage, we will be able to see a lot of network security monitoring tools ported to work with netmap since it will be in native FreeBSD system. For most of the detail stuffs, do check out the presentation slide and other information in netmap website.

Cheers ;]

6 comments:

Anonymous said...
This comment has been removed by a blog administrator.
Anonymous said...

Should libpcap be modified to take advantage of this? Or does it work out of the box?

C.S.Lee said...

hi Anonymous,

I suggest you check out these two links, they explain about application(openvswitch,click) porting to use netmap -

http://info.iet.unipi.it/~luigi/netmap/slides.html

http://info.iet.unipi.it/~luigi/netmap/20110729-rizzo-infocom.pdf

They implemented something called netmapcap which emulates similar libpcap functions to allow people to port the app.

osopolis said...
This comment has been removed by a blog administrator.
osopolis said...

Hi.

I am running FreeBSD as a router (10Gbit in a datacenter enviroment)

Does Netmap help to improve packet forwarding? Will it ever do?

Cheers,
osopolis

Marco said...

Hello,

Have you or someone installed netmap on Ubuntu or debian?

Regards
Marco