TSO is a hardware feature whereas GSO is a software feature. In the sense, TSO needs "the device" to break the frame into MTU sized segments. BUT, GSO is a strategy followed by kernel to avoid processing smaller packets throughout the stack. Refer this: http://blogs.gnome.org/markmc/2008/05/28/checksums-scatter-gather-io-and-segmentation-offload/ <<< GSO is a generalisation of this in the kernel. The idea is that you delay segmenting a packet until the latest possible moment. In the case where a device doesn’t support TSO, this would be just before passing the skb to the driver. If the device does support TSO, the unsegmented skb would be passed to the driver. <<< On Wed, Nov 19, 2014 at 11:40 AM, Varun Sharma <vsdssd@xxxxxxxxx> wrote: > Hi, > > I have basic question about gso(generic segmentation offload) vs > tso(TCP segmentation offload) > > 1. How both are different to each other? > > 2. If both are ON using ethtool which one is perform segmentation gso or tso ? > > > Regards > varun > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@xxxxxxxxxxxxxxxxx > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies