Hi Matt,
We are doing some ground work for
https://storyboard.openstack.org/#!/story/2002944 regarding the StarlingX OVS-DPDK firewall driver enhancement. To better understand the requirement, we may need your help on the following question.
There are 3 security group implementations in neutron OVS-DPDK agent.
- Iptables based security group
The OVS agent and Compute service use a Linux bridge between each instance (VM) and the OVS integration bridge br-int to implement security groups. This implementation is stateful but
cause scalability and performance problems. - Openflow based security group
This implementation is stateless and based in OpenFlow 'learn action', which uses a firewall driver in networking-ovs-dpdk project.
https://github.com/openstack/networking-ovs-dpdk/blob/master/networking_ovs_dpdk/agent/ovs_dpdk_firewall.py - Openflow + conntrack based security group
This implementation is stateful, which uses a native firewall driver.
https://docs.openstack.org/newton/networking-guide/config-ovsfwdriver.html
http://docs.openvswitch.org/en/latest/tutorials/ovs-conntrack/
The requirement from the enhancement description is that we're going to adopt implementation option 2 for StarlingX OVS-DPDK security group.
Compared with option 3 which is stateful and uses a native firewall driver, what is our consideration on taking option 2 as our target?
Please kindly see the attached doc for further details. Just let me know if anything unclear. Thanks a lot!
BR,
Kailun