netmap, VALE and netmap pipes
wishmaster
artemrts at ukr.net
Mon Feb 17 19:06:33 UTC 2014
Thanks, prof. Luigi.
As for me, netmap-ipfw is especially interesting. Would you like add some examples for userspace bundle of ipfw and dummynet. Because not all clear in README-file.
E.g. I have classic router with 2 interfaces igb
>From README-file
s f f d
[pkt-gen]-->--[valeA]-->--[kipfw]-->--[valeB]-->--[pkt-gen]
The commands to run (in separate windows) are
### this is clear
# preliminarly, load the netmap module
sudo kldload netmap.ko
### what with vale? how i should connect real interfaces to vale switch?
# connect the firewall to two vale switches
./kipfw valeA:f valeB:f &
### it's clear
# configure ipfw/dummynet
ipfw/ipfw show # or other
### with real packets flow i think this is no needed. My mistake?
# start the sink
pkt-gen -i valeB:d -f rx
# start an infinite source
pkt-gen -i valeA:s -f tx
### it's clear
# plain again with the firewall and enjoy
ipfw/ipfw show # or other
I think one real small example will be useful for everybody.
Thanks for this great tool.
--
Cheers,
w
--- Original message ---
From: "Luigi Rizzo" <rizzo at iet.unipi.it>
Date: 17 February 2014, 12:17:33
> Hi,
> we have recently made a few extensions to netmap/VALE and put various
> pieces of code on public repositories, so i thought i'd share the
> pointers. All the code below runs with equal features and performance
> on FreeBSD and Linux, and we are trying to upstream it in the relevant
> projects if possible (as an example, QEMU recently added a netmap backend),
> at which point some of these clone repositories will become unnecessary.
>
> See http://info.iet.unipi.it/~luigi/netmap for more details.
>
> https://code.google.com/p/netmap/
> The latest netmap code for FreeBSD/Linux. It has native support
> for certain NICs; emulated netmap over unmodified drivers;
> enhanced parallelism in the VALE switch (20 Mpps/source, scaling
> up to ~50Mpps); and a new feature called "netmap pipe" that
> does zero-copy blocking I/O at over 100 Mpps.
> Other features are the ability to allocate tons of extra
> netmap buffers, and configurable sharing of memory among NICs,
> VALE ports and netmap pipes. This increases the opportunity for
> zero copy operation.
> The user API is also greatly simplified, with a naming
> scheme that permits easy access to all types of ports including
> individual NIC queues.
>
> https://code.google.com/p/netmap-libpcap
> a netmap-enabled version of libpcap. With this, basically any
> pcap client can read/write traffic at 10+ Mpps, with zerocopy
> reads and (soon) support for zerocopy writes. Whether applications
> can cope with these packet rates, of course, is another story.
>
> https://code.google.com/p/netmap-click
> a netmap-enabled version of the Click Modular Router. This
> code matches the current version of netmap, supporting all
> features (including netmap pipes).
>
> https://code.google.com/p/netmap-ipfw
> a netmap-enabled, userspace version of the ipfw firewall and
> dummynet network emulator. This version reaches 7-10 Mpps for
> filtering and over 2.5 Mpps for emulation.
>
>
> Hope you'll find it useful.
>
> cheers
> luigi
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
More information about the freebsd-net
mailing list