[ovs-dev] [PATCH v3] ovs-tcpdump: Improve performance with dummy interface
Gaëtan Rivet
grive at u256.net
Mon Nov 1 21:16:10 UTC 2021
On Wed, Oct 27, 2021, at 17:48, Mike Pattrick wrote:
> Currently the ovs-tcpdump utility creates a virtual tunnel to send
> packets to. This method functions perfectly fine, however, it can
> greatly impact performance of the monitored port.
>
> It has been reported to reduce packet throughput significantly. I was
> able to reproduce a reduction in throughput of up 70 percent in some
> tests with a simple setup of two hosts communicating through a single
> bridge on Linux with the kernel module datapath. Another more complex
> test was configured for DPDK and the usermode datapath. This test
> involved a data path going from a VM, through a port into one OVS
> bridge, out through a network card which could be DPDK enabled for the
> relevant tests, in to a different network interface, then into a
> different OVS bridge, through another port, and then into a virtual
> machine.
>
> Using the dummy driver resulted in the following impact to performance
> compared to no ovs-tcpdump. Due to intra-test variance and fluctuations
> during the first few seconds after installing a tap; multiple samples
> were taken over multiple test runs. The first few seconds worth of
> results were discarded and then results were averaged out.
>
> Original Script
> ===============
> Category Impact on Throughput
> Kernel datapath - 65%
> Usermode datapath - 26%
> DPDK datapath - 37%
>
> New Script
> ==========
> Category Impact on Throughput
> Kernel datapath - 5%
> Usermode datapath - 16%
> DPDK datapath - 29%
>
> Signed-off-by: Mike Pattrick <mkp at redhat.com>
The code looks good to me and the performance improvements are welcome, thanks.
Acked-by: Gaetan Rivet <grive at u256.net>
--
Gaetan Rivet
More information about the dev
mailing list