Skip site navigation (1)Skip section navigation (2)
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 Maffione


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9iVD1Ya0p2%2BJk7_rfTTBjRxLKcO5Coq2WZj8cb9MFsMrg>