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

—— 完 ——

相关文章
|
3天前
|
监控 网络协议 Java
Java一分钟之-Netty:高性能异步网络库
【6月更文挑战第11天】Netty是Java的高性能异步网络框架,基于NIO,以其高吞吐量、低延迟、灵活性和安全性受到青睐。常见问题包括内存泄漏、ChannelHandler滥用和异常处理不当。要规避这些问题,需正确释放ByteBuf,精简ChannelPipeline,妥善处理异常,并深入理解Netty原理。通过代码审查、遵循最佳实践和监控日志,可提升代码质量和性能。掌握Netty,打造高效网络服务。
11 2
|
4天前
|
数据采集 存储 中间件
Scrapy,作为一款强大的Python网络爬虫框架,凭借其高效、灵活、易扩展的特性,深受开发者的喜爱
【6月更文挑战第10天】Scrapy是Python的高效爬虫框架,以其异步处理、多线程及中间件机制提升爬取效率。它提供丰富组件和API,支持灵活的数据抓取、清洗、存储,可扩展到各种数据库。通过自定义组件,Scrapy能适应动态网页和应对反爬策略,同时与数据分析库集成进行复杂分析。但需注意遵守法律法规和道德规范,以合法合规的方式进行爬虫开发。随着技术发展,Scrapy在数据收集领域将持续发挥关键作用。
30 4
|
4天前
|
前端开发 JavaScript 安全
WebAssembly技术的出现为我们提供了一种全新的解决方案,开启了高性能网络应用的新时代
【6月更文挑战第10天】WebAssembly是高性能网络应用的新时代技术,它是一种虚拟机格式,允许C/C++等语言编译成二进制格式在Web浏览器中运行。具备高性能、高可移植性和良好安全性,适用于游戏开发、图形处理、计算机视觉等领域。随着技术进步,WebAssembly将支持更多语言,结合低代码平台简化开发,但需解决编译优化和安全性等问题。它正重塑Web应用的未来,开启高性能应用新时代。
14 0
|
10天前
|
网络协议 算法 程序员
网络原理(4)——TCP协议的特性
网络原理(4)——TCP协议的特性
11 1
|
10天前
|
网络协议 前端开发 Java
网络原理(3)——TCP协议的特性
网络原理(3)——TCP协议的特性
7 0
|
19天前
|
弹性计算 缓存 安全
【阿里云弹性计算】阿里云ECS与CDN结合:构建高性能全球内容分发网络
【5月更文挑战第26天】阿里云ECS与CDN结合打造高性能全球内容分发网络,通过ECS的弹性伸缩和安全可靠性,配合CDN的全球覆盖、高可用性及安全防护,提升访问速度,减轻服务器压力,优化数据传输。以WordPress为例,通过配置CDN域名和ECS,实现高效内容分发,提高系统扩展性和稳定性。此解决方案满足用户对访问速度和稳定性的高要求,为企业提供优质的云计算体验。
54 0
|
25天前
|
消息中间件 Java Linux
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
|
7天前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
25 1
|
8天前
|
负载均衡 Ubuntu Linux
Linux命令探秘:bond2team与网络绑定技术
Linux的`bond2team`是网络绑定和团队技术工具,用于组合多个网络接口以提升带宽、容错性和负载均衡。通过安装`ifenslave-2.6`,在`/etc/sysconfig/network-scripts/`或`/etc/network/interfaces`配置文件中设定接口绑定模式,如`activebackup`。它支持负载均衡、容错和热备等多种工作模式,确保网络高可用性和性能。在配置前务必备份,并重启服务使配置生效。
|
10天前
|
Linux 数据安全/隐私保护 Windows
linux 搭建cloudreve win映射网络驱动器WebDav
linux 搭建cloudreve win映射网络驱动器WebDav