Thanks Ilya, it works after disable tx offload, the performance is indeed very poor, about one tenth of ovs kernel. This is a very very strong warning for us, I strongly suggest ovs document should tell ovs DPDK users the truth in bold word.
For ovn, last year, the information I got is ovn can't support VXLAN, is it true so far? In my mind, GENEVE is worse than VXLAN as far as the performance is concerned. -----邮件原件----- 发件人: Ilya Maximets [mailto:[email protected]] 发送时间: 2019年7月30日 0:18 收件人: [email protected]; Yi Yang (杨燚)-云服务集团 <[email protected]> 主题: Re: [ovs-dev] How can we improve veth and tap performance in OVS DPDK? On 29.07.2019 19:07, Ilya Maximets wrote: >> Hi, all >> We’re trying OVS DPDK in openstack cloud, but a big warn makes us hesitate. >> Floating IP and qrouter use tap interfaces which are attached into >> br-int, SNAT also should use similar way, so OVS DPDK will impact on >> VM network performance significantly, I believe many cloud providers >> have deployed OVS DPDK, my questions are: >> >> 1. Do we have some known ways to improve this? > > As RedHat OSP guide suggests, you could use any SDN controller (like > OpenDayLight) or, alternatively, you could use OVN as a network provider for > OpenStack. > This way all the required functionality will be handled by the > OpenFlow rules inside OVS without necessity to send traffic over veths and > taps to Linux Kernel. > >> 2. Is there any existing effort for this? Veth in kubernetes should >> have the same performance issue in OVS DPDK case. > > It makes no sense right now to run OVS-DPDK on veth pairs in Kubernetes. > The only benefit from OVS-DPDK in K8s might be from using > virtio-vhost-user I meant virtio-user ports. > ports instead of veths for container networking. But this is not implemented. > Running DPDK apps inside K8s containers has a lot of unresolved issues right > now. > > One approach that could improve performance of veths and taps in the > future is using AF_XDP sockets which are supported in OVS now. But > AF_XDP doesn't work properly for virtual interfaces (veths, taps) yet due to > issues in Linux Kernel. > >> >> I also found a very weird issue. I added two veth pairs into ovs >> bridge and ovs DPDK bridge, for ovs case, iperf3 can work well, but >> it can’t for OVS DPDK case, what’s wrong. > > This is exactly same issue as we already discussed previously. Disable > tx offloading on veth pairs and everything will work. > > Best regards, Ilya Maximets. > >
_______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
