高性能网络SIG月度动态:SMC 与 IBM 就扩展协议达成一致,virtio 支持 XDP 新特性

简介: 高性能网络 SIG 在 1 月都有哪些项目进展?

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

01 本月 SIG 整体进展

1 月高性能网络 SIG 的工作在上游社区得到了积极响应,SMC、virtio 和业界相关参与方建立了持续的沟通机制。

关键进展:

  • 春节前龙蜥社区高性能网络 SIG 成员和 IBM SMC 团队相关开发人员进行了一次视频会议,讨论关于 SMC 协议扩展以及龙蜥社区高性能网络 SIG 小组在 SMC 上近期的一些工作,并建立起定期沟通机制。
  • 继 2022 年 12 月我们将 SMC loopback 和 virtio-ism 设备提交到 Linux 社区后,本月陆续得到了上游社区的反馈。针对 SMC 设备拓展,上游 Linux 社区合入了 SMC-D 和 ISM 设备的解耦修改,为后续 SMC loopback 和 virtio-ism 的支持铺平了道路。
  • SMC fallback 加速功能已开发完成,SIG 内部 review 中。fallback 加速将确保 SMC 在 fallback 回 TCP 后性能不会出现损失,弥补当前 SMC fallback 到 TCP 时短连接性能不足的问题。
  • SIG 开发的针对 virtio-net 的 xdp multi-buffer 的支持已被上游 Linux 社区接收。默认情况下,xdp 和 jumbo frame 是冲突的,本特性允许我们在使用 jumbo frame 场景下也使用 xdp。
  • SIG 提交的 virtio-net 支持 XDP socket zerocopy 功能本月已完成开发并提交到上游 Linux 社区讨论。virtio-net 之前不支持 XDP socket 的零拷贝功能,本特性使 virtio-net 完成了 XDP socket 零拷贝的支持,大幅提升 XDP Socket 的收发包性能。

02 Anolis OS

问题修复

本月 ANCK 网络方向共计修复 17 个 CVE(包含一个高危 CVE-2023-0179),覆盖 netfilter/tcp/udp/bluetooth/net.packet/proc/xen/slip 等模块,CVE 列表:CVE-2022-4378,CVE-2022-20368,CVE-2022-42895,CVE-2022-42896,CVE-2022-3564,CVE-2022-3566,CVE-2022-2588,CVE-2022-36879,CVE-2022-1966,CVE-2022-3535,CVE-2022-3524,CVE-2022-42722,CVE-2022-33741,CVE-2022-1966,CVE-2022-1204,CVE-2022-41858,CVE-2023-0179。

03 SMC

外部会议

本月与 IBM SMC 团队进行了一次视频会议,针对 SMC 协议扩展以及龙蜥社区高性能网络 SIG 小组在 SMC 上近期的一些工作进行了讨论,并建立起定期沟通机制,加强了双方的了解与合作。

SMC-D 扩展

SMC fallback 加速

加速 SMC fallback 的方案已经开发完成,该方案旨在提供一种快速、轻量回退 TCP 的能力,拓宽 SMC 的使用场景。预计下个月推送上游 Linux 社区。

04 virtio

virtio-net tunnel

背景:网络包使用 tunnel 相关技术的时候, 一般会有一个 outer header 和一个 inner header。而基于已经有 virtio-net spec 定义, 在做队列选择的时候, 会基于 outer header 进行 hash 计算。而一般情况下, tunnel 的数据包的 outer header 是固定的或相似的, 这样只会有少量的网卡队列会被选择, 无法发挥多队列网卡的优势。

Heng Qi hengqi@linux.alibaba.com 发起了 virtio_net: support inner header hash 的提案,目前针对热迁移还有一些收尾的点需要讨论(https://lists.oasis-open.org/archives/virtio-dev/202301/msg00051.html)。

virtio-net split header

背景:将数据包的 header 和 payload 进行分离,在例如零拷贝等方向具有十分重要的意义,例如 Eric 提出的零拷贝方法和 Jonathan Lemon 提出的零拷贝方法等。

Xuan Zhuo 发起了 virtio_net: support for split transport header 的提案,并和 Heng Qi 共同社区推动,目前 Nvidia 的 Parav Pandit 也提出了一些新的想法参与到这个功能的讨论中,正在讨论(https://lists.oasis-open.org/archives/virtio-dev/202301/msg00306.html)。

virtio-net multi-buffer xdp

本月 SIG 成员 Heng Qi 提交的 virtio-net 对于 xdp multi-buffer 的补丁被合入到 linux 主线(https://lore.kernel.org/all/20230114082229.62143-1-hengqi@linux.alibaba.com/)。XDP multi-buffer 允许一个 XDP ebpf 程序访问多个收方向的 buffer,而像 Jumbo frame 一类的特性,9K 的 MTU 导致一个包的大小可能会超过 1 个 PAGE,而没有 XDP multi-buffer 之前,XDP 程序只能访问一块连续的内存。因此,jumbo frame 和 XDP 存在冲突,通过 multi-buffer XDP 的支持,可以解决 jumbo frame 和 XDP 不能共存的问题。

virtio-net XDP Socket(AF_XDP) zerocopy

在完成了 per-queue reset 的 spec 及 kernel 工作的前期下, 最新版本的 virtio-net 支持 XDP socket zerocopy 的 patch set 终于提交给社区, 等社区进一步的讨论。这个特性之前在龙蜥的内核上通过其他方式完成了支持,并且基于 ExpressUDP 和 XQUIC 在阿里巴巴的入口网关大规模上线,现在我们把这个特性贡献给上游社区。关于 ExpressUDP 和 XQUIC 实践,参考 ExpressUDP

高性能网络 SIG 主页链接地址:

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

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

640 (1).png

相关文章
|
2月前
|
前端开发 网络协议 安全
【网络原理】——HTTP协议、fiddler抓包
HTTP超文本传输,HTML,fiddler抓包,URL,urlencode,HTTP首行方法,GET方法,POST方法
|
2月前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
148 3
|
3月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
91 11
|
3月前
|
监控 网络协议 网络性能优化
网络通信的核心选择:TCP与UDP协议深度解析
在网络通信领域,TCP(传输控制协议)和UDP(用户数据报协议)是两种基础且截然不同的传输层协议。它们各自的特点和适用场景对于网络工程师和开发者来说至关重要。本文将深入探讨TCP和UDP的核心区别,并分析它们在实际应用中的选择依据。
98 3
|
3月前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
179 3
|
IDE Linux 开发工具
从旧服务器迁移svn到另一台新服务器中(linux系统)|遇到诸多坑,已解决
从旧服务器迁移svn到另一台新服务器中(linux系统)|遇到诸多坑,已解决
|
9月前
|
数据挖掘 Windows
【服务器数据恢复】服务器迁移数据时数据丢失的数据恢复案例
一台安装Windows操作系统的服务器。工作人员在迁移该服务器中数据时突然无法读取数据,服务器管理界面出现报错。经过检查发现服务器中一个lun的数据丢失。
|
7月前
|
弹性计算 Linux 网络安全
使用阿里云服务器迁移中心SMC将其他云平台业务迁移至阿里云教程参考
现在越来越多的个人和企业用户选择将其他云平台或者服务商的业务迁移到阿里云,但是如何快速且安全完成迁移是很多用户比较关注的问题,我们可以选择使用阿里云提供的服务器迁移中心(Server Migration Center,简称SMC),这个产品是阿里云提供给您的迁移平台,专注于提供能力普惠、体验一致、效率至上的迁移服务,满足您在阿里云的迁移需求。本文为大家展示使用阿里云服务器迁移中心SMC将其他云平台业务迁移至阿里云的教程,以供参考。
使用阿里云服务器迁移中心SMC将其他云平台业务迁移至阿里云教程参考

热门文章

最新文章