On Wed, Dec 18, 2019 at 10:44:21AM +0800, yang_y_yi wrote: > Hi, William > > > I used OVS DPDK to test it, you shouldn't add tap interface to ovs DPDK > bridge if you use vdev to add tap, virtio_user is just for it, but that won't > use this receive function to receive packets.
Right. I mean if you already use OVS-DPDK, you can create tap device using s.t like ovs-vsctl -- set interface dpdk-p0 type=dpdk \ options:dpdk-devargs=vdev:net_af_packet0,iface=dpdk-p0 Then you can get better veth performance around 2.3Gbps, without your patch. William > > At 2019-12-17 02:55:50, "William Tu" <u9012...@gmail.com> wrote: > >On Fri, Dec 06, 2019 at 02:09:24AM -0500, yang_y...@163.com wrote: > >> From: Yi Yang <yangy...@inspur.com> > >> > >> Current netdev_linux_rxq_recv_tap and netdev_linux_rxq_recv_sock > >> just receive single packet, that is very inefficient, per my test > >> case which adds two tap ports or veth ports into OVS bridge > >> (datapath_type=netdev) and use iperf3 to do performance test > >> between two ports (they are set into different network name space). > >> > >> The result is as below: > >> > >> tap: 295 Mbits/sec > >> veth: 207 Mbits/sec > >> > >> After I change netdev_linux_rxq_recv_tap and > >> netdev_linux_rxq_recv_sock to use batch process, the performance > >> is boosted by about 7 times, here is the result: > >> > >> tap: 1.96 Gbits/sec > >> veth: 1.47 Gbits/sec > >> > >> Undoubtedly this is a huge improvement although it can't match > >> OVS kernel datapath yet. > >> > >> FYI: here is thr result for OVS kernel datapath: > >> > >> tap: 37.2 Gbits/sec > >> veth: 36.3 Gbits/sec > >> > >> Note: performance result is highly related with your test machine > >> , you shouldn't expect the same results on your test machine. > >> > >> Signed-off-by: Yi Yang <yangy...@inspur.com> > > > >Hi Yi Yang, > > > >Are you testing this using OVS-DPDK? > >If you're using OVS-DPDK, then you should use DPDK's vdev to > >open and attach tap/veth device to OVS. I think you'll see much > >better performance. > > > >The performance issue you pointed out only happens when using > >userspace datapath without DPDK library, where afxdp is used. > >I'm still looking for a better solutions for faster interface > >for veth (af_packet) and tap. > > > >Thanks > >William _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev