[ovs-discuss] some questions about ovs datapath performace

Benq Wu 59466980 at qq.com
Fri Dec 9 12:17:48 UTC 2016

I'am sorry for made typo.
If we create kthreads for datapath to poll the NIC, is there still a huge difference of performance between datapath and ovs+dpdk?---------------------------------------------------------------------------------------------------------
Hi Justin, Thanks for the response. Tests for bridging (only L2 forwarding) in the article,packets processed by datapath can be sent to the NIC directly and dose not need to enter networking stack. If we create kthreads for datapath to poll the NIC, is there still a huge difference between datapath and ovs+dpdk?

------------------ 原始邮件 ------------------
发件人: "Justin Pettit";<jpettit at ovn.org>;
发送时间: 2016年12月9日(星期五) 下午4:21
收件人: "Benq Wu"<59466980 at qq.com>; 
抄送: "ovs-discuss"<ovs-discuss at openvswitch.org>; 
主题: Re: [ovs-discuss] some questions about ovs datapath performace

> On Dec 8, 2016, at 10:00 PM, Benq Wu <59466980 at qq.com> wrote:
> hello~
>   openvswitch.org/support/ovscon2014/18/1600-ovs_perf.pptx
>   <OpenVswitch Performance measurements & analysis> written by Madhu Challa, shows some tests that datapath forwarding performance is lower than ovs+dpdk. 
> Gbits / sec		1.159			9.9			1.04
> Mpps			1.72			        14.85		1.55
> 1) What is the main reason for the lower performance of datapath compared with ovs+dpdk? 

The kernel provides a number of services as the packet traverses the kernel--whether they're needed or not.  With DPDK, the packet is handed directly to userspace from the NIC, and any service that's needed on the packet needs to be written in userapce for DPDK.  Both approaches are working on improvements: the DPDK folks are adding additional services that DPDK applications can use, and the kernel folks are reducing the overhead needed to process packets.  Each approach has pluses and minuses depending on what you're trying to accomplish.

> 2) If we create some kthreads for datapath to poll the NIC,and running datapath in the kthreads, how about the performance compared with ovs+dpdk? That should not be lower than ovs+dpdk in theory, I guess.

There's a fair amount of overhead in processing the packet in the kernel as it traverses the networking stack that simply doesn't happen in DPDK due to bypassing the kernel.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20161209/45445ee1/attachment.html>

More information about the discuss mailing list