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 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev