Bug 1410565 - [RFE] OVN and OVS/DPDK userspace datapath
Summary: [RFE] OVN and OVS/DPDK userspace datapath
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: openvswitch
Version: 7.3
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Kevin Traynor
QA Contact: ovs-qe
Depends On: 1333920
TreeView+ depends on / blocked
Reported: 2017-01-05 18:37 UTC by Kevin Traynor
Modified: 2017-08-28 13:15 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2017-08-28 13:15:13 UTC
Target Upstream Version:

Attachments (Terms of Use)

Description Kevin Traynor 2017-01-05 18:37:17 UTC
Description of problem:
OVN will work to some degree with OVS-DPDK and the userspace OVS datapath.

However, userspace OVS datapath conntrack is missing some features (such as IP fragmentation) and does not have NAT. It is anticipated that these will be required by the vast majority of OVN users.

This bugzilla is to identify what is missing in userspace OVS datapath to enable fully functional OVN.

Comment 3 Thiago Martins 2017-04-10 20:28:04 UTC
Hey guys,

 I have successfully deployed Ocata with Networking OVN, but, when I try to reconfigure OpenvSwitch to use DPDK, it stops working.

 After enabling OVS+DPDK, I can still create Neutron Networks, Subnets and Routers, however, when I try to plug the OVN L3 Router, into a Network, the following error appear on OVS logs:





 Here is a more detailed description about the problems I faced while trying to run OVN, with both GENEVE and Provider Networks, on top of DPDK:


 Hope it helps somehow!


Comment 4 Thiago Martins 2017-04-10 21:06:15 UTC
Worth to mention that I can easily use OpenvSwitch with DPDK on a KVM-Only hypervisor, no OpenStack.

I'm facing a hard time to integrate it with OpenStack...

My Instances have many interfaces (i.e., eth0, eth1, eth2, eth3) and mixed underlying technologies, for example:

* first 2 (eth0 and eth1), are GENEVE / VXLAN networks, being used by "Control" and "Service", where "Control" is for people to access the Instances' itself, via its Floating IP, SSH, HTTP, etc, its Security Groups are locked by default and, the "Service" is for the Instance to talk with other Instances on the same Stack, Security Groups are opened, no firewall. Doesn't need OVS+DPDK but, would be good to have it.

* latest 2 (eth2 and eth3), are Flat / VLAN Provider Networks, being used by a L2 Bridge Application running inside of the Instance, so, it is is a NFV (L2 Bridge) App. It needs OVS+DPDK at the host.

This is very easy to deploy on a KVM-Only hypervisor. Using 1 KVM with OpenvSwitch host, I can easily create 2 regular OVS bridges, and 2 DPDK-Based OVS bridges and it just works!

However, when with OpenStack, it doesn't play well... Previously, with Neutron OpenvSwitch Agent, it is all or nothing, I mean, you have to change openvsiwtch ML2 config, to make the whole thing DPDK-Based, or Kernel-Based, there is no way to use half / half.

When I moved to OVN, I was expecting to be able to use it on top of DPDK (because the docs that I found on the Internet says it works on top of ANY datapath), for both GENEVE and Provider Networks but, still no deal.

Note You need to log in before you can comment on or make changes to this bug.