高性能网络SIG月度动态:virtio 支持 RSS 功能!virtio 标准委员会正式接受 SIG 提案

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

高性能网络 SIG(Special Interest Group)在云计算时代,软硬件高速发展,云原生、微服务等新的应用形态兴起,让更多的数据在进程之间流动,而网络则成为了这些数据流的载体,在整个云时代扮演着前所未有的重要角色。在这个万物互联的时代,云上的网络通信效率对各种服务至关重要,高性能网络兴趣组致力于利用 XDP、RDMA、VIRTIO 等新高效通信技术,结合软硬件一体化的思想,打造高性能网络协议栈,提升云计算时代数据中心应用的网络的性能。

01 整体进展

本月高性能网络 SIG 的主要工作聚焦在内核缺陷修复,SMC 和 virtio 上。

本月关键进展

1.SIG 推动的 “virtio 支持 RSS context” 的提案在本月被 virtio 标准委员会正式接收。

2.就 SMC loopback-ism 设备的用户态接口定义与 SMC 上游开发者达成一致。

02 ANCK 内核网络

修复

修复了 TCP 客户端和服务器端在同时发起握手的场景下,会概率触发内核崩溃的问题。

安全

ANCK 5.10 共修复了 5 个 CVE,预计随 ANCK 5.10.134-16.3 版本发布,包括:CVE-2024-26597,CVE-2023-51779,CVE-2024-1086,CVE-2024-24860,CVE-2024-22099。

ANCK 4.19 共修复了 4 个 CVE,预计随 ANCK 4.19.91-27 版本发布,包括:CVE-2024-26597,CVE-2023-51779,CVE-2024-1086,CVE-2024-22099。

03 SMC

本月高性能网络 SIG 在 SMC 领域的工作,主要聚焦在 loopback-ism 的实现以及参与 SMC 社区共建。

loopback-ism

本月上游 SMC 社区 Maintainer 对 loopback-ism 实现(https://lore.kernel.org/all/20240111120036.109903-1-guwen@linux.alibaba.com/)进行了反馈,主要涉及到 loopback-ism 设备的用户态接口定义。目前已通过上游开发者会议达成一致,新版本已发送至 Linux 社区邮件列表。

SMC 社区共建

本月 SIG 在 SMC 社区参与多个话题的讨论:

1)社区收到反馈 SMC-R 周期性性能回退,SIG 小组针对这个问题进行了定位与分析:https://lore.kernel.org/netdev/c9bf102b-a084-4c9a-8a19-1d884910912c@linux.alibaba.com/

2)SMC 回滚到 tcp 的过程中发生了 fasync_list 泄漏问题的修复:https://lore.kernel.org/netdev/19d7d71b-c911-45cc-9671-235d98720be6@linux.alibaba.com/

04 virtio

本月高性能网络 SIG 在 virtio 领域的工作,主要聚焦在 virtio-net 的 RSS Context 的标准化方案。

virtio-net RSS Context

RSS(接收端缩放)是一种网络技术,它能够提高多核系统中网络数据的处理效率,降低单个处理器核心的网络处理负担。RSS 通过将入站的网络流量在多个处理器核心之间分配来实现这一效果。这种分配是基于特定的算法,如散列函数,它会根据网络数据包的某些属性(如源 IP、目标 IP、源端口、目标端口等)来确定应该将数据包发送到哪个处理器核心进行进一步处理。

RSS Context 通常指的是网卡中用于实现 RSS 功能所需的上下文部分,包括硬件和软件组件。通过 RSS Context 可以实现在网卡上设置多个 RSS 组,每个 RSS 组可以自定义其散列键、间接表和队列范围的起始索引。用户可以根据网络流处理需求,将特定的 RSS context 与流处理规则结合起来,达到流量隔离,优化网络流处理的目的。

为了让 virtio 网卡支持 RSS 的功能,高性能网络 SIG 提出了“virtio-net: support the RSS context”的提案。经过八个版本的优化和改进,该提案成功被 virtio 标准委员正式接收。

相关链接:

高性能网络 SIG 主页:

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

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

—— 完 ——

相关文章
|
9天前
|
大数据 云计算
中国网络大会专题论坛 | 下一代超大规模高性能公共云网络
中国计算机学会ChinaNet上,阿里云洛神云网络将与知名学术届代表一起共话下一代超大规模高性能公共云网络的关键技术。
|
2月前
|
编解码 分布式计算 网络协议
Netty高性能网络框架(一)
Netty高性能网络框架(一)
|
23天前
|
机器学习/深度学习 算法
神经网络的结构与功能
神经网络是一种广泛应用于机器学习和深度学习的模型,旨在模拟人类大脑的信息处理方式。它们由多层不同类型的节点或“神经元”组成,每层都有特定的功能和责任。
24 0
|
2月前
|
5G 网络安全 SDN
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
65 3
|
2月前
|
负载均衡 网络协议 网络安全
设计一个高性能的网络系统
设计一个高性能的网络系统
37 2
|
1月前
|
JSON API 开发者
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
15 0
|
2月前
|
网络协议 C语言
C语言 网络编程(十三)并发的TCP服务端-以进程完成功能
这段代码实现了一个基于TCP协议的多进程并发服务端和客户端程序。服务端通过创建子进程来处理多个客户端连接,解决了粘包问题,并支持不定长数据传输。客户端则循环发送数据并接收服务端回传的信息,同样处理了粘包问题。程序通过自定义的数据长度前缀确保了数据的完整性和准确性。
|
2月前
|
网络协议 C语言
C语言 网络编程(十四)并发的TCP服务端-以线程完成功能
这段代码实现了一个基于TCP协议的多线程服务器和客户端程序,服务器端通过为每个客户端创建独立的线程来处理并发请求,解决了粘包问题并支持不定长数据传输。服务器监听在IP地址`172.17.140.183`的`8080`端口上,接收客户端发来的数据,并将接收到的消息添加“-回传”后返回给客户端。客户端则可以循环输入并发送数据,同时接收服务器回传的信息。当输入“exit”时,客户端会结束与服务器的通信并关闭连接。
|
2月前
|
C语言
C语言 网络编程(八)并发的UDP服务端 以进程完成功能
这段代码展示了如何使用多进程处理 UDP 客户端和服务端通信。客户端通过发送登录请求与服务端建立连接,并与服务端新建的子进程进行数据交换。服务端则负责接收请求,验证登录信息,并创建子进程处理客户端的具体请求。子进程会创建一个新的套接字与客户端通信,实现数据收发功能。此方案有效利用了多进程的优势,提高了系统的并发处理能力。
|
2月前
|
C语言
C语言 网络编程(九)并发的UDP服务端 以线程完成功能
这是一个基于UDP协议的客户端和服务端程序,其中服务端采用多线程并发处理客户端请求。客户端通过UDP向服务端发送登录请求,并根据登录结果与服务端的新子线程进行后续交互。服务端在主线程中接收客户端请求并创建新线程处理登录验证及后续通信,子线程创建新的套接字并与客户端进行数据交换。该程序展示了如何利用线程和UDP实现简单的并发服务器架构。