Intel DPDK Support for OpenVSwitch

helloworld

New Member
Aug 29, 2017
11
1
3
32
Referring to some older posts and articles, there are several ideas to implement DPDK in openvswitch in order to gain performance in network, especially when using virtual routers or other network devices like proxy's as a virtual machine.

Is there any hope or plan to implement dpdk support? I build my own packages for this, but its a real bummer when considering the reliable and consistent updates from proxmox itself, I would prefer using them as well. (instead of building them)

https://forum.proxmox.com/threads/netmap-vale-qemu.34894/#post-170977
https://pve.proxmox.com/pipermail/pve-devel/2016-May/020871.html

I'm using the lastest version of pve with Intel X710 4x10G

root@asdf:~# pveversion -v
proxmox-ve: 5.0-20 (running kernel: 4.10.17-2-pve)
pve-manager: 5.0-30 (running version: 5.0-30/5ab26bc)
pve-kernel-4.10.17-2-pve: 4.10.17-20
pve-kernel-4.10.15-1-pve: 4.10.15-15
pve-kernel-4.10.17-1-pve: 4.10.17-18
libpve-http-server-perl: 2.0-6
lvm2: 2.02.168-pve3
corosync: 2.4.2-pve3
libqb0: 1.0.1-1
pve-cluster: 5.0-12
qemu-server: 5.0-15
pve-firmware: 2.0-2
libpve-common-perl: 5.0-16
libpve-guest-common-perl: 2.0-11
libpve-access-control: 5.0-6
libpve-storage-perl: 5.0-14
pve-libspice-server1: 0.12.8-3
vncterm: 1.5-2
pve-docs: 5.0-9
pve-qemu-kvm: 2.9.0-4
pve-container: 2.0-15
pve-firewall: 3.0-2
pve-ha-manager: 2.0-2
ksm-control-daemon: 1.2-2
glusterfs-client: 3.8.8-1
lxc-pve: 2.0.8-3
lxcfs: 2.0.7-pve4
criu: 2.11.1-1~bpo90
novnc-pve: 0.6-4
smartmontools: 6.5+svn4324-1
zfsutils-linux: 0.6.5.11-pve17~bpo90
openvswitch-switch: 2.7.0-2
 
Hi,

the Problem about DPDK is OpenvSwitch need always the latest version of DPDK.
So we must if we like to support DPDK we have to build our own DPDK packages.
Debian will not dump the version in a release.
 
Hello Wolfgang,

thank you for the respond, I think there is a huge potential in dpdk in combination with network application like virtual routers or http servers. Just let me know if there is a need to test it.
 
I'm currently looking to add vhost-user support, it's a missing part too.

After, maybe able to add some kind of custom network plugin could be great (tap_plug/ unplug).

I'm also looking to add support to 6wind virtual accelerator (commercial, based on dpdk, but working with ovs and linux bridge too)
 
We have a requirement for dot1q-tunnel capabilities (essentially wrapping untagged and tagged traffic in another VLAN) but there is no current method for us to run a tap plug/unplug script to change openvswitch (ovs). The necessary components are in kernel 4.9 and later but require openvswitch 2.8 or later.

ie: I would be very interested in Proxmox either providing untagged/tagged/dot1q-tunnel port definitions for VMs or allowing us to call custom tap_plug/unplug scripts. We would need variables available in those scripts, such as VM number, associated interfaces and what VLAN they are allowed to access...
 
One problem is that Debian doesn't currently ship any openvswitch-switch-dpdk package. I think once the pkg maintainers commit this, it would be easier to support in proxmox. It's available in Ubuntu today with dpdk 2.2.0, so I'm not sure what's meant by "requires the latest DPDK".
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!