On Thu, Jan 16, 2020 at 9:01 AM Flavio Leitner <f...@sysclose.org> wrote: > > Abbreviated as TSO, TCP Segmentation Offload is a feature which enables > the network stack to delegate the TCP segmentation to the NIC reducing > the per packet CPU overhead. > > A guest using vhost-user interface with TSO enabled can send TCP packets > much bigger than the MTU, which saves CPU cycles normally used to break > the packets down to MTU size and to calculate checksums. > > It also saves CPU cycles used to parse multiple packets/headers during > the packet processing inside virtual switch. > > If the destination of the packet is another guest in the same host, then > the same big packet can be sent through a vhost-user interface skipping > the segmentation completely. However, if the destination is not local, > the NIC hardware is instructed to do the TCP segmentation and checksum > calculation. > > The first 2 patches are not really part of TSO support, but they are > required to make sure everything works. > > There are good improvements sending to or receiving from veth pairs or > tap devices as well. See the iperf3 results below: > > [*] veth with ethtool tx off. >
Hi Flavio, I want to test performance of namespace to namespace using veth, hoping to see TSO packets. Using below setup: iperf -c (ns0) -> veth peer -> OVS -> veth peer -> iperf -s (ns1) With current master I'm not able to see large packet size being sent. I compile ovs with --with-dpdk and, $ ovs-vsctl set Open_vSwitch . other_config:userspace-tso-enable=true At ns0 and ns1, enable tso by ethtool sg and tso on The veth driver shows # ip netns exec at_ns0 ethtool -k p0 Features for p0: Cannot get device udp-fragmentation-offload settings: Operation not supported rx-checksumming: on tx-checksumming: off tx-checksum-ipv4: off [fixed] tx-checksum-ip-generic: off tx-checksum-ipv6: off [fixed] tx-checksum-fcoe-crc: off [fixed] tx-checksum-sctp: off scatter-gather: on tx-scatter-gather: on tx-scatter-gather-fraglist: on tcp-segmentation-offload: off tx-tcp-segmentation: off [requested on] tx-tcp-ecn-segmentation: off [requested on] tx-tcp-mangleid-segmentation: off [requested on] tx-tcp6-segmentation: off [requested on] But I'm still seeing 1500 packet size, and about 1.3Gbps performance. Is there anything I'm missing? Thanks William _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev