高性能网络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 月度动态可点击这里查看。

—— 完 ——

相关文章
|
1天前
|
安全 物联网 Linux
学习Linux对网络安全的重要性
**学习Linux对网络安全至关重要:** 1. 开源操作系统广泛应用于服务器、网络设备,掌握Linux是安全专家必备技能。 2. Linux内置安全特性,如最小权限和防火墙,加上丰富的安全工具,提供强大保障。 3. 可定制性允许灵活配置,满足安全需求,开源社区提供持续更新和教育资源。 4. 学习Linux能提升攻防能力,用于系统加固和渗透测试,适应跨平台安全场景。 5. 随着云计算和物联网发展,Linux在网络安全中的角色日益关键。
10 3
|
9天前
|
Linux
【Linux】检测网络请求路径 traceroute
【Linux】检测网络请求路径 traceroute
12 0
|
11天前
|
安全 算法 Linux
探索Linux命令gpgv2:安全通信与数据验证的利器
`gpgv2`是GPG的签名验证工具,用于确保文件完整性和来源真实性。基于公钥密码学,支持多种加密算法和OpenPGP标准。通过`--verify`等参数验证签名,例如`gpgv2 --verify signature_file file`。重要注意事项包括保护私钥、定期更新密钥、验证签名来源及使用强密码。在数据安全场景中,`gpgv2`是保障信息安全的利器。
|
16天前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
33 1
|
16天前
|
监控 网络协议 Ubuntu
netstat,Linux 下的网络状态监控工具
Netstat 是 Linux 系统中的强大网络分析工具,用于查看网络配置和活动,如端口监听、网络连接和路由信息。通过基本命令 `netstat [options]` 可实现多种操作,例如 `-a` 显示所有端口,`-l` 显示监听端口,`-s` 展示协议统计信息。结合 `-p` 选项可查看占用端口的进程,而监控网络连接状态则可用 `-nt` 加 `grep ESTABLISHED` 查看已建立的连接。要深入了解和使用更多功能,可查阅 `man netstat`。
22 0
|
17天前
|
负载均衡 Ubuntu Linux
Linux命令探秘:bond2team与网络绑定技术
Linux的`bond2team`是网络绑定和团队技术工具,用于组合多个网络接口以提升带宽、容错性和负载均衡。通过安装`ifenslave-2.6`,在`/etc/sysconfig/network-scripts/`或`/etc/network/interfaces`配置文件中设定接口绑定模式,如`activebackup`。它支持负载均衡、容错和热备等多种工作模式,确保网络高可用性和性能。在配置前务必备份,并重启服务使配置生效。
|
19天前
|
Linux 数据安全/隐私保护 Windows
linux 搭建cloudreve win映射网络驱动器WebDav
linux 搭建cloudreve win映射网络驱动器WebDav
|
19天前
|
监控 网络协议 Ubuntu
Linux网络配置全攻略:解读/etc/network/interfaces文件的精髓
Linux网络配置全攻略:解读/etc/network/interfaces文件的精髓
37 1
|
20天前
|
Linux 数据安全/隐私保护 网络协议
05. 【Linux教程】网络配置
05. 【Linux教程】网络配置
20 2