智能网卡最新进展:第5层协议卸载
(二)Xilinx篇
(三)Intel篇
(四)不服篇
(五)用户篇
(六)赛道篇
(七)存储篇
简介:ASPLOS是计算机系统结构领域的顶级国际会议,涉及体系结构、硬件、编程语言、编译器、操作系统和网络等多个方向,尤其重视不同方向之间的交叉。ASPLOS一直属于中国计算机学会(CCF)推荐的A类国际会议。2021年的ASPLOS大会 Distinguished paper award获得者来自于Nvidia/Mellanox的网卡团队。
摘要:
CPU经常将网络相关的处理任务,比如数据包分拆和校验卸载到网卡上处理,这样可以释放宝贵的CPU周期,所以利用网卡进行卸载有多种优势。
但是,它们的适用性通常仅限于4层协议以下(TCP和更低层的协议),而对于建立在TCP之上的第5层协议(layer-5 protocols:L5Ps)则不适用。这种限制是由于我们称之为 "卸载依赖 "的错误特性造成的,它决定了L5P的卸载还需要卸载底层的≤4层协议和相关功能,TCP, IP, 防火墙等。
注:在TCP之上的第五层网络协议(L5P)是一种常见的、应用广泛的协议。包括:1)传输安全(TLS)加密协议,该协议通过https为浏览器等提供安全通信;2)NVMe-TCP等存储协议,该协议允许系统将远程磁盘驱动器用作本地块设备;3)远程过程调用(RPC)协议,比如Thrift和gRPC;4)key-value 存储协议,比如Memcached和MongoDB。
L5P卸载的依赖性阻碍了创新,因为这意味着复杂的、不断变化的底层协议需要硬连接来实现。
我们提出了 "自主网卡卸载",它消除了卸载的依赖性。自主卸载设计了一个轻量级的软件设备架构,可以加速L5P但不需要将整个≤4层的TCP/IP协议栈移植到NIC中。
注:自主卸载的基本思路是让L5P和网卡在对中间TCP/IP堆栈透明的情况下共同处理L5P消息(可能包括多个TCP段)。当发送消息时,L5P代码 "跳过 "执行卸载的操作,从而将 "错误的 "字节从堆栈传递给网卡。然后由NIC执行上述被跳过的操作,从而在链路上发送正确的信息。在反方向,在对TCP/IP协议栈无感知的情况下,由NIC而不是L5P来解析传入的消息,并同样执行卸载的操作。
自主卸载解决的一个主要挑战是如何应对失序的数据包。我们对两个L5P进行了自主卸载。
(i) NVMe-over-TCP零拷贝和CRC计算;
(ii) https认证、加密和解密;
我们的自主卸载将吞吐量提高了3.3倍,而且它们的CPU消耗和延迟分别降至0.4倍和0.7倍。
并非所有的L5P都可以自动卸载。NVIDIA在最新一代的Mellanox ConnectX ASIC网卡中实现了TLS自动卸载,包括TLS认证、加密和解密功能;NVM-TCP自主卸载将在下一个模型中发布,支持接收端的数据放置(因此用于零拷贝)和两端的CRC计算和验证。
相关文章
- LibreOffice 7.5 发布:漂亮的新应用图标和酷炫功能
- elementary OS 7 发布
- Windows 应用兼容层 Wine 8.1 发布:默认启用“Windows 10”前缀
- 微软正测试新功能:当 Windows 11 有新的小组件可用时会提醒通知
- 解析分布式存储选型和应用九个典型问题
- ClickHouse在自助行为分析场景的实践应用
- Chrome DevTools 远程调试安卓网页的原理
- Uni-app + Vue3 页面如何跳转及传参?
- 微软证实系统还原点会损坏 Windows 11 22H2 版本应用程序
- 巧用 Transition 实现短视频 APP 点赞动画
- 初学者试试,HarmonyOS应用开发者基础认证
- 媒体实测微软 Windows 开发工具包 2023:存在不兼容 HDR 显示器、某些应用无法运行等问题
- 快速了解Navigator API SetAppBadge
- 微软 Windows 11 Dev 预览版 Build 25276 发布,应用兼容问题对话框 UI 改进
- 基于Next.js、Prisma、Postgres和Fastfy构建全栈APP
- 开始菜单搜索框变圆角,微软 Windows 11 Beta 预览版 22621.1095 和 22623.1095 发布
- 2022-2023 十大应用开发趋势
- 观远数据发布业内首部《移动BI白皮书》,深入业务数字化场景重新定义移动BI
- Windows 10 学院:不借助第三方工具如何卸载 Windows 10 预装应用
- 正处高质量发展期,我国大数据产业突破1.3万亿元