On Thu, 15 Aug 2024 17:50:19 +0200
Laurent Vivier <lvivier(a)redhat.com> wrote:
This series of patches adds vhost-user support to
passt
and then allows passt to connect to QEMU network backend using
virtqueue rather than a socket.
With QEMU, rather than using to connect:
-netdev stream,id=s,server=off,addr.type=unix,addr.path=/tmp/passt_1.socket
we will use:
-chardev socket,id=chr0,path=/tmp/passt_1.socket
-netdev vhost-user,id=netdev0,chardev=chr0
-device virtio-net,netdev=netdev0
-object memory-backend-memfd,id=memfd0,share=on,size=$RAMSIZE
-numa node,memdev=memfd0
The memory backend is needed to share data between passt and QEMU.
Performance comparison between "-netdev stream" and "-netdev
vhost-user":
By the way, I attached a quick patch adding vhost-user-based tests to
the usual throughput and latency tests.
UDP doesn't work (I didn't look into that at all), TCP does.
Complete/fixed patch attached. The only part of UDP that's not working
is actually over IPv6 -- it works over IPv4.
--
Stefano