Date: Sat, 20 Aug 2016 21:12:21 +0200 From: Vincenzo Maffione <v.maffione@gmail.com> To: soc-status@freebsd.org Subject: High-performance TCP/IP networking for bhyve VMs using netmap passthrough Message-ID: <CA%2B_eA9iVD1Ya0p2%2BJk7_rfTTBjRxLKcO5Coq2WZj8cb9MFsMrg@mail.gmail.com>
index | next in thread | raw e-mail
Hello Sorry for the delayed update, I've been offline for a week. Project summary ================= ptnet is a new multi-queue paravirtualized device that builds on ptnetmap to allow VMs to exchange TCP traffic at 20 Gbps, while still offering the same ptnetmap performance (10-100 Mpps) to native netmap applications. The purpose of this SOC project is to write a ptnet driver for FreeBSD and a corresponding device model for the bhyve hypervisor. Status update for week 12 and 13 =================== During these weeks I've completed the ptnet device model emulation and performed throughput tests. Results are good (~15 Gbps throughput among two VMs), and 20 Mpps with netmap (pkt-gen). I've also slightly optimized the vmm.ko support to speed up the lookup of the callback to be invoked on guest register write, using a RW lock in place of a mutex. Finally, I did bhyve code cleanup, and ported netmap and bhyve to the freebsd head, since my developments were based on 10.3-release. I prepared the documentation for the final submission in the wiki page of my project (see link below). Links: Project wiki page: https://wiki.freebsd.org/SummerOfCode2016/PtnetDriverA ndDeviceModel Code: https://svnweb.freebsd.org/socsvn/soc2016/vincenzo/head/sys/ dev/netmap/if_ptnet.c?view=markup https://svnweb.freebsd.org/socsvn/soc2016/vincenzo/head/ usr.sbin/bhyve/pci_ptnetmap_netif.c?view=markup https://svnweb.freebsd.org/socsvn/soc2016/vincenzo/head/ usr.sbin/bhyve/net_backends.c?view=markup -- Vincenzo Maffionehelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9iVD1Ya0p2%2BJk7_rfTTBjRxLKcO5Coq2WZj8cb9MFsMrg>
