[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] Fwd: ClickOS / Xen optimizations release

Joao and his colleagues at NEC have been working on a much more optimized Netfront interface for Xen, which is detailed in their NSDI 2014 paper [1].  Joao sent on instructions about the protocol so we can implement in Mirage, which should be of interest to the folk working on high-performance networking.

I've captured these notes in https://github.com/mirage/mirage/issues/240, and CCed Joao to this email if anyone has any followup questions.

Begin forwarded message:

Basically the original netfront just contains feature testing, basically checking for feature-netmap

and bypasses the netfront calls to this file over here (with a each correspondent call on a proper prefix/suffix):

The ring data structures are simpler than the Xen I/O rings:

Right now we are looking towards being mainstream, so the implementation (mostly backend) will be under a lot of development until the Xen Hackaton. That means giving support to all netmap-supported drivers (and not only ixgbe) and supporting other OSes (FreeBSD as driver domain).

The installation will always remain the same:

$ make KSRC=/path-to-linux-source prepare
$ make KSRC=/path-to-linux-headers
$ rmmod xen-netback
$ insmod ../netmap/LINUX/netmap_lin.ko
$ insmod ../netmap/LINUX/ixgbe/ixgbe.ko
$ insmod ./xen-netback/xen-netback.ko

Finally, some performance numbers: 

Our tests show TCP at 10Gbit/s packet I/O without offloadings (835 Kpps) , with numbers shown with iperf. UDP forwarding goes up to 8.2 Mpps (using netmap pkt-gen).

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.