On Thu, Mar 13, 2025 at 9:49 PM Jun Wang <junwan...@cestc.cn> wrote: > > > "Jun Wang" <junwan...@cestc.cn> writes: > > >>> Hello Jun, > >>> > >>> Are the 20G, 17G, and 11G figures a speed? Or the volume of data sent? > >>> How are you measuring this? > >>> > >>> DPDK can be very sensitive to which numa node, or even core a PMD is > >>> running on. But I don't know what is causing this issue specifically. > >>> > >>> Cheers, > >>> M > >> > >> Hi Mike, > >> > >> I did a detailed comparison and found that the issue is actually with the > >> performance > >> > >> of mirror-to itself, not with virtio-user. Even when using mirror-to > >> directly, > >> > >> there is still a significant performance degradation. > > > > You mean there is some issue with the mirror-to option? Or do you mean > > that you are not expecting a slowdown when using port mirroring at all? > > Yes, the performance of mirror-to itself drops significantly—I have already > verified this. The original intention of using the DPDK virtio-user interface > for packet capture was to ensure that ovs-tcpdump in a DPDK environment > does not cause a major performance drop. However, at the moment, > it seems that combining mirror-to with the virtio-user interface does > not provide any improvement.
Hello, I tested out a few things using Aaron's patch. I created a simple test connecting a VM to a physical nic. With just iperf3 I got 5.59 Gbps. When run with a normal ovs-tcpdump this lowers to 2.52 Gbps, this is the same with the default interface creation or mirror-to and a manually created dummy interface. When I created the virtio_user interface, I saw 3.37 Gbps This performance impact is somewhat expected. If you just want a pcap and not a full tcpdump, you could also create an interface like: ovs-vsctl add-port br0 dump1 -- set interface dump1 type=dpdk -- set interface dump1 options:dpdk-devargs="net_pcap1,tx_pcap=/test.pcap" This will not allow any packet filtering or display, but will create a pcap. And if you want to filter the collection, ovs-tcpdump's --filter parameter should be used in all cases instead of tcpdump's bpf filter. Finally, you can also try something like: ovs-vsctl add-port br0 dump1 -- set interface dump1 type=dpdk -- set interface dump1 options:dpdk-devargs="eth_af_packet0,iface=dump1" This got similar performance to the virtio_user interface for me. Cheers, M > > >> ovs-tcpdump -i vh-userclient-08a1f95c-3b --mirror-to tap1 -w a.pcap > >> ovs-tcpdump -i vh-userclient-08a1f95c-3b -w b.pcap > >> > > ________________________________ > Jun Wang _______________________________________________ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss