[dpdk-dev] Question about using virtio_user in OVS-DPDK
William Tu
u9012063 at gmail.com
Tue Dec 31 23:19:20 CET 2019
Hi,
I'm trying to find a faster way to communicate from userspace OVS to
kernel. So I create a virtio_user port at OVS-DPDK, and send packets
to kernel's tap device.
packets in OVS userspace -> virtio-user port -> vhost-net (kernel) ->
tap device (kernel)
As described in paper[1], figure 1 for legacy applications.
But there is no documentation about it. I tried:
1) load vhost-net
# lsmod | grep vhost
vhost_net 32768 0
vhost 57344 1 vhost_net
tap 28672 1 vhost_net
tun 57344 8 vhost_net
2) start OVS
3) create tap and attach to OVS
ip tuntap add mode tap tap0
ip link set dev tap0 up
ovs-vsctl add-port br0 tap0 -- set interface tap0 type=dpdk \
options:dpdk-devargs=vdev:net_virtio_user1,iface=tap0,path=/dev/vhost-net
So I thought this is a faster channel using virtio ring than
readv/writev to the tap fd.
But it doesn't work.
2019-12-31T22:06:39.956Z|00033|netdev|WARN|could not create netdev
tap0 of unknown type dpdk
2019-12-31T22:06:39.956Z|00034|bridge|WARN|could not open network
device tap0 (Address family not supported by protocol)
Any suggestions? Or do I understand the concept of virtio_user correctly?
[1] VIRTIO-USER: A New Versatile Channel for Kernel-Bypass Networks
Thanks
William
More information about the dev
mailing list