GSO(Generic Segmentation Offload)

GSO(Generic Segmentation Offload)
对于GSO(Generic Segmentation Offload)、TSO,UFO这三个东西理解的一直不是很透彻,它们的具体原理是什么,相互之间的区别是什么?期盼高手解惑

作者: ppb0320   发布时间: 2008-12-16



QUOTE:
原帖由 ppb0320 于 2008-12-16 09:49 发表
GSO(Generic Segmentation Offload)
对于GSO(Generic Segmentation Offload)、TSO,UFO这三个东西理解的一直不是很透彻,它们的具体原理是什么,相互之间的区别是什么?期盼高手解惑



UFO - 不明飞行物

作者: Solaris12   发布时间: 2008-12-16

GSO就是针对普通的IP分片
TSO是针对TCP的,UFO是针对UDP的。

通常长度大于MTU的数据包是在系统中进行分片和校验和计算的。

Intel的部分网卡芯片可以通过硬件芯片来进行分片和校验和计算处理,效率较高。

其他的网卡芯片应该也能支持,但是我只熟悉intel的。

[ 本帖最后由 ShadowStar 于 2008-12-16 12:48 编辑 ]

作者: ShadowStar   发布时间: 2008-12-16



QUOTE:
原帖由 ShadowStar 于 2008-12-16 12:42 发表
GSO就是针对普通的IP分片
TSO是针对TCP的,UFO是针对UDP的。

通常长度大于MTU的数据包是在系统中进行分片和校验和计算的。

Intel的部分网卡芯片可以通过硬件芯片来进行分片和校验和计算处理,效率较高。 ...




叫法有很多,还有叫LSO的。

不过一般说到TSO都会关联到网卡支持的一种硬件offload的技术。

而GSO在Linux里的实现似乎是个纯软件的实现,通过推迟分片来达到大包性能提高的目的,可以不需要硬件支持,

http://www.linuxfoundation.org/en/Net:GSO

作者: Solaris12   发布时间: 2008-12-16

学习了,长见识了,呵呵

作者: emmoblin   发布时间: 2008-12-16

那这个是专门针对网卡发包的吧?
对于收包来说,没有什么gso,对吗?

作者: donotgiveup   发布时间: 2011-01-19