On Wed, Jan 13, 2016 at 3:51 PM, Ramu Ramamurthy <srama...@linux.vnet.ibm.com> wrote: > > Problem: > --------- > > We are running centos 7.2 (ovs-kernel module from distribution) with OVS > 2.3.1. > > Large tcp frames (> 30Kbytes gro'd) are coming into a vxlan-tunnel port and > switched by an ovs-bridge onto a veth port > > vxlan-tunnel--(gro'd tcp frames sized > 30K)-->OVS-bridge--(frames sized > 1448)-->veth port > > As the ovs transmits onto the veth port, the frames are getting segmented > into 1448 byte sized packets. All the offload settings are at default on the > veth port (gso on, gro on, tso on) > > We expect that the OVS can transmit the frame without segmentation onto the > veth port. But, due to segmentation, the performance suffers.
I think the problem is that tunnel decapsulation (in all cases, not just VXLAN, and not just with OVS) doesn't appear to strip off the GSO type that indicates that it is a tunnel frame. As a result, the veth (which didn't support tunnel GSO until 3.13) sees this as a tunnel frame rather than just a TCP frame and forces software segmentation. The issue isn't with OVS code, so I would recommend that you submit a patch to upstream Linux. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev