网络offload技术主要是针对网络数据包的分片和合并而进行优化和处理的技术,也可以在网卡实现offload技术。
1. TSO(TCP Segmentation Offload): 是一种利用网卡对要发送的大数据包进行分片,主要是利用其技术进而达到降低CPU利用率的技术。当一个大的数据包达到网卡的时候,在网卡内对要发送的数据包在发送之前分割成适合在通信双方之间传输大小的报文,然后再发送到外部网络。
2. GSO(Generic Segmentation Offload): 是一种分片延迟技术,但前提是网卡硬件要支持分片。
首先要检查网卡硬件是否支持TSO功能:
A. 支持TSO: 则利用TSO功能对大数据包进行分片;
B. 不支持TSO:则将大数据的分片, 延缓到数据包被即将发送到网卡之前分片;
3. LRO(Large Receive Offload): 将网卡接收的多个数据包,合并成一个大的数据包,然后再发送到网络协议栈处理,从而降低CPU的负载;
4. GRO(Generic Receive Offload): 则是在接收数据包是合并延迟技术;它则将接收到的多个数据包,延迟到在进入网络协议栈处理之前进行合并,然后再叫个网络协议栈进行处理;文章来源:https://www.toymoban.com/news/detail-522387.html
注:以上的网络offload技术,则需要在网卡硬件的支持基础之上实现的;其他的还有诸如在网卡上直接实现硬件的offload技术,DPDK的offload技术等,哪位大佬比较熟悉,有时间的话可以大家分享一下。文章来源地址https://www.toymoban.com/news/detail-522387.html
到了这里,关于网络offload之TSO、GSO、LRO、GRO的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!