高性能网络SIG月度动态:两大特性合入 Linux 主线,提供高速本地通信加速及丰富的设备信息

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

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

01 整体进展

本月高性能网络 SIG 的主要工作聚焦在 SMC 和 virtio 上。

本月关键进展:

1. SIG 推进的 virtio device stats 特性本月正式合入上游 Linux 主线,为 virtio 用户提供丰富的设备统计信息。

2. SIG 推进的 loopback-ism 特性本月正式合入上游 Linux 主线,提供了 OS 内通信的高效加速方式。

02 ANCK 内核网络

修复

ANCK 5.10 本月修复若干异常问题,主要问题包括:

  • 修复了 tcf_skbmod_dump() 中内核栈泄漏的安全问题。(PR3058)
  • 修复了构建 IPv6 PMTU时异常越界访问的问题。(PR2852)
  • 修复了在特定架构下 ndisc_send_skb() 中可能出现访问未对齐内存警告的问题。(PR2849)

ANCK 4.19 修复了__skb_datagram_iter() 统一调用导致 kmap/kunmap 性能回退的问题。(PR3050)

03 SMC

本月高性能网络 SIG 在 SMC 领域的工作,主要聚焦在推动 SMC-D loopback-ism 合入上游。

loopback-ism

SMC 内核网络协议根据底层共享内存操作方式的不同分为基于 RDMA 设备的 SMC over RDMA(SMC-R) 和基于 ISM 设备的 SMC over DMA(SMC-D)。不同于 RDMA 技术,ISM 功能目前仅在 IBM z 系列大型机上提供,用于加速 CPC 内部通信。为了使 SMC-D 普惠,高性能网络 SIG 持续与 IBM 合作,使 SMCv2 协议支持软件实现的 Emulated-ISM。loopback-ism 就是一种 Emulated-ISM,配合 SMC-D 可提供同 OS 内部(进程间/容器间)的通信加速。本月经过 v5,v6,v7 三个版本的迭代,loopback-ism 系列补丁合入上游[1]

04 virtio

本月高性能网络 SIG 在 virtio 领域的工作,主要聚焦在 virtio-net 支持 device states 和 ring resize。

Device States

Virtio-net 设备统计(device stats)是一个高效的机制,旨在提供设备在处理数据包时生成的详细统计数据,提升网络设备的运维监控能力。


过去,virtio-net 不支持获取后端设备的统计信息,从 Guest 内无法通过 ethtool -S 的方式获取到后端的统计信息,要获取到后端的异常信息,只能通过云厂商的监控系统来实现。基于 virtio-net 的设备统计方式,通过驱动的控制通道,用户可以访问 virtio 网卡提供的综合统计信息,涵盖从校验和错误、缓冲区溢出导致的数据包丢失到数据包合并处理以及设备正常处理请求等的各种情况。这些数据,特别是关于数据包丢失的信息,为用户提供了有效的故障定位和问题诊断的参考。


在之前的工作中,高性能网络 SIG 已经完成了相关的 spec 标准化工作。最新的进展是,virtio-net 设备统计正式在上游内核中得到了支持[2]

Ring Resize

Virtio-net 的 "ring resize" 特性提供了一个机制,能够让用户在运行时动态调整网卡队列的大小,优化网络性能,特别是在特定场景中可以降低延迟和减少数据包丢失。这一调整过程通过用户空间的 “ethtool -G”命令实现,使得网络配置更为灵活。该特性建立在高性能网络 SIG 先前定义的 “virtio vq reset” 功能之上。此特性正在 ANCK-5.10 上回合 review 中[3]


相关链接:

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

[2]http://lore.kernel.org/all/20240426033928.77778-1-xuanzhuo@linux.alibaba.com

[3] https://gitee.com/anolis/cloud-kernel/pulls/3110

高性能网络 SIG 主页:https://openanolis.cn/sig/high-perf-network


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

—— 完 ——

相关文章
|
25天前
|
消息中间件 Linux
Linux中的System V通信标准--共享内存、消息队列以及信号量
希望本文能帮助您更好地理解和应用System V IPC机制,构建高效的Linux应用程序。
118 48
|
1天前
2024 CCF 中国网络大会专题论坛 | 下一代超大规模高性能公共云网络 精彩回顾
2024 CCF 中国网络大会专题论坛 | 下一代超大规模高性能公共云网络 精彩回顾
|
1天前
中国网络大会专题论坛 | 下一代超大规模高性能公共云网络
中国网络大会专题论坛 | 下一代超大规模高性能公共云网络
|
22天前
|
消息中间件 Linux C++
c++ linux通过实现独立进程之间的通信和传递字符串 demo
的进程间通信机制,适用于父子进程之间的数据传输。希望本文能帮助您更好地理解和应用Linux管道,提升开发效率。 在实际开发中,除了管道,还可以根据具体需求选择消息队列、共享内存、套接字等其他进程间通信方
59 16
|
2月前
|
Linux 网络性能优化 网络安全
Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)
通过以上步骤,您可以在Linux(OpenWrt)系统中使用iptables和tc工具实现网络流量限速控制(QoS)。这种方法灵活且功能强大,可以帮助管理员有效管理网络带宽,确保关键业务的网络性能。希望本文能够为您提供有价值的参考。
108 28
|
2月前
|
网络协议 Unix Linux
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
46 11
|
2月前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
115 15
|
3月前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
286 7
|
3月前
|
数据采集 监控 安全
公司网络监控软件:Zig 语言底层优化保障系统高性能运行
在数字化时代,Zig 语言凭借出色的底层控制能力和高性能特性,为公司网络监控软件的优化提供了有力支持。从数据采集、连接管理到数据分析,Zig 语言确保系统高效稳定运行,精准处理海量网络数据,保障企业信息安全与业务连续性。
69 4