高性能网络SIG月度动态:virtio技术委员会通过flow director提案,netdim调节特性正式合入上游社区

简介: 高性能网络SIG月度动态送达。

高性能网络 SIG(Special Interest Group)在这个万物互联的时代,云上的网络通信效率对各种服务至关重要,高性能网络兴趣组致力于利用 XDP、RDMA、VIRTIO 等新高效通信技术,结合软硬件一体化的思想,打造高性能网络协议栈,提升云计算时代数据中心应用的网络性能。

01 整体进展

本月,高性能网络 SIG 的工作主要集中在 virtio 和 SMC 上,取得了以下关键进展:

1. 将 ANCK 自研的 IPPROTO_SMC 方案贡献至上游社区。

2. netdim 参数列表调节特性正式合入上游社区,并回合至 ANCK。

3. 与 Nvidia、Marvell 等公司协作推进的 virtio flow director 提案获得 virtio 技术委员会通过进入 virtio 规范。

02 ANCK 通用内核网络协议栈

安全

ANCK 5.10 (PR3413) 和 ANCK 4.19 (PR3416) 本月分别修复了 CVE-2023-52628。

03 SMC

本月 SIG 在 SMC 领域的主要工作包括上游 IPPROTO_SMC 的合并以及其它优化和修复。

IPPROTO_SMC 合入上游

IPPROTO_SMC 是 SIG 为 IP 协议族新增的一种协议类型,旨在提高 SMC 与 TCP 在功能上的一致性以及减少 SMC 回退时的性能损失。本月 SIG 在推进 IPPROTO_SMC 合入上游的过程中迭代了 4 个版本,优化了相关函数定义、文件结构、和社区敲定了 IPPROTO_SMC 的数值选择,最终正式合入上游 [1]

上游其它优化与修复

  • SMC-R sndbuf/RMB 上限突破 512 KB 的优化,已合并到上游 [2],旨在大包场景下使用较大共享内存获得更好的吞吐表现。
  • 针对 SMC 回退后 sk_{snd|rcv}buf 与直接使用 TCP 时不同的问题的修复,已合并到上游 [3]

04 virtio

本月 SIG 在 virtio 领域的主要工作集中于提供中断参数列表调节通道和 flow director。

NetDIM 参数列表调节

动态中断调节(netdim)可以根据当前流量状况,自动调整网卡的中断频率,从而提高数据处理效率。然而,不同网卡对中断参数列表的需求各不相同,例如 ICE 和 IDPF 等现代网卡对各自的中断参数列表进行了自定义配置。而 netdim 在 virtio-net 网卡上性能未达预期,主要原因之一也是不合适的中断参数列表。因此,SIG 为上游社区和 ANCK-5.10.134-17.y 支持了基于用户态工具 ethtool 设置中断参数列表的方法[4],以允许用户灵活调节 netdim,从而实现最佳的网络吞吐和时延。

接收队列选择 - Flow Director

Flow director 特性使网卡能够依据数据包的 MAC、IP 和 TCP 等头部字段进行匹配,将符合规则的数据流定向到特定接收队列,或选择将其丢弃,为用户提供灵活的数据流规则配置。为了在 virtio 中支持 flow director,SIG 与 Nvidia、Marvell 等公司合作发起了一项提案 [5]。经过 12 个月和 11 个版本的迭代,这一提案已获得 virtio 技术委员会得投票通过,将随 virtio specification 1.4 发布。

相关链接:

[1]https://lore.kernel.org/netdev/1718301630-63692-1-git-send-email-alibuda@linux.alibaba.com/

[2]https://lore.kernel.org/netdev/20240603030019.91346-1-guangguan.wang@linux.alibaba.com/

[3]https://lore.kernel.org/netdev/20240531085417.43104-1-guwen@linux.alibaba.com/

[4]https://lore.kernel.org/all/20240621101353.107425-1-hengqi@linux.alibaba.com/

[5]https://lore.kernel.org/virtio-comment/20240604132903.2093195-1-parav@nvidia.com/T/#m6ccb0872045b3f92d50f94fd7dff80b5cc02c0ed

高性能网络 SIG 主页:

https://openanolis.cn/sig/high-perf-network

注:更多龙蜥 SIG 月度动态可点击这里查看。

—— 完 ——

相关文章
|
1月前
|
编解码 分布式计算 网络协议
Netty高性能网络框架(一)
Netty高性能网络框架(一)
|
1月前
|
负载均衡 网络协议 网络安全
设计一个高性能的网络系统
设计一个高性能的网络系统
35 2
|
2月前
|
负载均衡 算法 光互联
合理使用光互联产品减少万卡集群高性能网络中TOR交换机上行网络的ECMP哈希冲突
本文通过分析万卡集群高性能网络TOR层的ECMP哈希冲突,介绍如何通过使用有源光缆AOC和无源铜缆DAC分支线缆产品来减少ECMP哈希冲突的方法。
|
3月前
|
前端开发 Java 数据处理
使用Netty构建高性能的网络应用
使用Netty构建高性能的网络应用
|
3月前
|
负载均衡 安全 Cloud Native
云上负载均衡:构建高可用、高性能的网络应用架构
与云原生技术深度融合:随着云原生技术的普及和发展未来的云上负载均衡将更加紧密地与云原生技术相结合。例如与Kubernetes等容器编排平台集成实现自动化的服务发现和路由管理;与Serverless架构结合提供无缝的流量接入和请求处理能力。 安全性能提升:面对日益严峻的网络安全威胁云上负载均衡将更加注重安全性能的提升。通过引入加密传输、访问控制、DDoS防护等安全措施确保网络流量的安全性和隐私性;同时还将建立完善的安全监控和应急响应机制以应对各种安全事件和突发事件。 支持多协议和多场景:未来的云上负载均衡将支持更多种类的网络协议和应用场景以满足不同用户和业务的需求。例如支持HTTP/2、
193 0
|
4月前
|
网络协议 Java 物联网
Netty是什么?深入理解高性能网络框架
Netty是什么?深入理解高性能网络框架
306 1
|
3月前
|
前端开发 Java 数据处理
使用Netty构建高性能的网络应用
使用Netty构建高性能的网络应用
|
3月前
|
监控 网络协议 安全
如何在Java中实现高性能的网络通信
如何在Java中实现高性能的网络通信
|
4月前
|
缓存 网络协议 安全
探秘Netty:打造高性能网络通信利器
探秘Netty:打造高性能网络通信利器
107 0