目录

文章目录

  • 目录
  • 网络功能卸载
  • TSO(TCP Segmentation Offload)
  • GSO(Generic Segmentation Offload)
  • LRO(Large Receive Offload)
  • GRO (Generic Receive Offload)

网络功能卸载

为适应高速网络,现代网卡中普遍卸载了部分 L3-L4 层的处理逻辑(e.g. 校验和计算、传输层分片重组等),来减轻 Host CPU 的处理负担。甚至有些网卡(e.g. RDMA 网卡)还将整个 L4 层的处理都卸载到硬件上,以完全解放 Host CPU。得益于这些硬件卸载技术,Host OS 的网络协议栈处理才能与现有的高速网络相匹配。

TSO(TCP Segmentation Offload)

TSO(TCP Segmentation Offload):是一种利用网卡对大数据包进行分片,从而减小 CPU 负荷的一种技术。

  • TSO off 和 GSO off:

  • TSO on:

GSO(Generic Segmentation Offload)

GSO(Generic Segmentation Offload):是一种延缓分片技术。它比 TSO 更通用,原因在于它不需要硬件的支持就可以进行分片。

其过程是:首先查询网卡是否支持 TSO 功能,如果硬件支持 TSO 则使用网卡的硬件分片能力执行分片;如果网卡不支持 TSO 功能,则将分片的执行,延缓到了将数据推送到网卡的前一刻执行。

  • TSO off and GSO on:一个大的网络包直到进入网卡前的最后一步才进行了分片。

LRO(Large Receive Offload)

LRO(Large Receive Offload):将网卡接收到的多个数据包合并成一个大的数据包,然后再传递给网络协议栈处理的技术。这样提系统接收数据包的能力,减轻 CPU 负载。

  • LRO off and GRO off

  • LRO on:数据一进入网卡立刻进行了合并。

GRO (Generic Receive Offload)

GRO (Generic Receive Offload):是 LRO 的软实现,GRO 的合并条件更加的严格和灵活。

  • GRO on

SmartNIC/DPU — TSO、GSO、LRO、GRO 卸载技术相关推荐

  1. 网络协议栈TSO/UFO/GSO/LRO/GRO/RSS特性

    作者 QQ群:852283276 微信:arm80x86 微信公众号:青儿创客基地 B站:主页 https://space.bilibili.com/208826118 参考 网卡多队列技术与RSS功 ...

  2. TCP TSO/GSO初步探索

    参考:https://blog.csdn.net/quqi99/article/details/51066800            https://www.ibm.com/developerwor ...

  3. linux 网卡gso,linux内核网络协议栈学习笔记:关于GRO/GSO/LRO/TSO等patch的分析和测试...

    TSO,全称是TCP Segmentation Offload,我们知道通常以太网的MTU是1500,除去TCP/IP的包头,TCP的MSS (Max Segment Size)大小是1460,通常情 ...

  4. TSO/GSO GRO/LRO 从入门到精通

    目录 概念介绍 功能与用途 使用场景 在协议栈各个层次如何实现 参考资料 一.概念介绍: TSO/GSO TSO 是(TCP segmentation offload )的缩写,主要把TCP分段这个o ...

  5. SmartNIC/DPU — Overview

    目录 文章目录 目录 SmartNIC/DPU 的发展历史 Smart NIC DPU 以数据为中心的计算架构 SmartNIC/DPU 的发展历史 传统 NIC(网络接口卡)是一个 PCIe 设备, ...

  6. linux tso gso关系,1.3.1 TSO/GSO

    1.3.1  TSO/GSO TSO是通过网络设备进行TCP段的分割,从而来提高网络性能的一种技术.较大的数据包(超过标准1518B的帧)可以使用该技术,使操作系统减少必须处理的数据数量以提高性能.通 ...

  7. DPU智能网卡OVS全卸载方案

    私有云和通信服务提供商正在改造其基础设施,以实现超规模公共云提供商的灵活性和效率.这种转变基于两个基本原则:分解和虚拟化. 分解将网络软件与底层硬件分离.服务器和网络虚拟化通过使用 hyperviso ...

  8. 移动边缘计算卸载技术笔记(二)

    2.2 MEC部署方案 MEC 的服务是由拥有计算和存储功能的 MEC服务器提供的. 4G网络中的部署方案: SCC 部署方案:SCC 部署根据 SCM 部署方式的不同,可分为 2 种情况. (小基站 ...

  9. 边缘计算那些事儿--边缘卸载技术

    0 背景 前面笔者有对边缘计算系统做过一次综述,从本文开始,笔者将重点解读边缘计算技术栈,首先介绍的是边缘计算卸载技术.所谓卸载技术,即将终端或者云端的计算任务卸载到边缘侧,通过综合判断性能.能耗.时 ...

最新文章

  1. js设计模式——3.观察者模式
  2. 基本数据类型与字符串之间的转换
  3. oracle游标特点,oracle游标应用 sys_refcursor 和 cursor比较
  4. Windows下python的配置
  5. matlab polyfit次数上限_新年重磅福利!全国21座城市酒店、民宿不限次数免费住!1000+景区免费玩!...
  6. MySQL通过Binlog恢复数据
  7. html5妇女节游戏,适合妇女节玩的小游戏
  8. java 实现pdf 转图片_java实现pdf转图片pdf
  9. VBlog 静态页面 动态博客
  10. golang解决数据库中null值的问题
  11. 更换持续集成工具,从 Travis 到 Github Actions
  12. 平板电脑触摸屏行业研究及十四五规划分析报告
  13. 电厂GPS北斗时钟同步(卫星时间同步系统)组成及配置
  14. linux php安装xsl扩展,11.32 php扩展模块安装
  15. 如何组织大型软件项目的投标
  16. 线控红外探测器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  17. 2021-07-21技术丨音响系统噪音新解及抑制
  18. ROM、RAM、DRAM、SRAM和FLASH的区别
  19. ICMP flood(ICMP洪水攻击)
  20. matlab如何画箱式图,科学网-如何绘制箱线图(Box- Whisker Chart)-陆绮的博文

热门文章

  1. 反汇编引擎Capstone
  2. 网络监控工具ntopng
  3. Arduino可穿戴教程ArduinoIDE新建编辑源文件
  4. linux中流设备_Linux设备驱动子系统终极弹
  5. Logistics回归数据集(testSet.txt)《机器学习实战》【美】Peter Harrington python3.6+pycharm完美实现代码
  6. [脑海成像]科学家利用动态电极绕过眼睛直接刺激大脑,在盲人脑海画出字母
  7. J2SE基础常见面试题目
  8. 英伟达新卡皇3090Ti:功耗飙至450W换来性能涨11%
  9. 2021年Python十佳ML库大盘点,国产选手GitHub半年获5k+star,第一名是升级版NumPy
  10. SpaceX再送4人上太空,马斯克保证这次飞船厕所不会漏了