8月24日,Meta 在官方工程博客发布了 MetaRoCE——一个从零设计的 RDMA 传输协议,目标是让 AI 训练和推理集群跑在普通以太网上。据报道,Meta 将通过开放计算项目(OCP)贡献完整的协议规范、参考软件实现和合规测试套件。

这个热点在讲什么?

先解释背景。分布式 AI 训练里,几千上万张 GPU 要做 all-reduce、all-to-all 这类集合通信,网络速度直接决定训练速度,最慢的一条链路会拖垮整个任务。传统做法是 RoCE(RDMA over Converged Ethernet),但它有个前提:网络必须"无损"。为了无损,交换机要开 PFC(优先级流控),一旦队列满了就暂停上游,结果就是队头阻塞、链路利用率上不去、规模一大各种诡异问题。

MetaRoCE 的核心思路据报道就一句话:网络只看包,NIC 才看得到意图。把智能从交换机端搬到网卡端,不再要求网络无损,而是默认网络会丢包,靠传输层自己兜住。

它做了几件和传统 RDMA 不一样的事:

  • 原生乱序交付:包被撒到多条路径上,乱序到达是常态;每个包自带目的地,到了直接写进最终内存位置,不需要重排缓冲,也就没有队头阻塞;
    • 原生多路径:每条连接有多条逻辑路径,用不同的 UDP 源端口做 ECMP 熵,网卡随时能把流量从坏路径挪走,一条链路拥塞只影响它自己那条路径;
    • 容损设计:不用 PFC、不用 pause 帧,用 256 位选择性确认精确重传丢的那个包。据报道,1% 丢包率下吞吐还能维持约 86%,10% 的极端丢包也不至于瘫掉,是"优雅降级"而不是"直接崩溃";
    • 双向拥塞控制:发送端用 ECN 驱动的 AIMD,接收端回传带宽分配提示,incast 一两个 RTT 就能收敛;
    • 兼容性:现有 RDMA Verbs API 和软件栈不用改就能跑,底层换血但上层无感。
      Meta 称已在 AMD Pensando 可编程网卡上实现 MetaRoCE,在 64 节点 AMD GPU 集群上跑 RCCL 集合通信,和 RoCEv2 直接对比:吞吐更高、流完成时间更低;4 平面和 8 平面拓扑下 4000 条并发连接,吞吐随平面数线性扩展;模拟平面故障时流量自动恢复,不用应用介入、不用运维干预。

变了什么,没变什么?

变的是"网络要不要为 AI 让步"这个思路。以前是网络堆无损特性、堆专用设备来迁就 RDMA;现在是协议迁就现实——以太网就是会丢包,那就设计一个不怕丢包的传输层。这背后其实是生态之争:AI 集群网络到底走 InfiniBand 还是以太网。Meta 一直站以太网这边,这次把传输层也开源,拉着整个产业链一起做标准。

没变的是:上层应用不用动。Verbs 接口还在,集合通信库照跑,这对开发者是好事——不用重新学一套 API。

对普通开发者和运维的实用建议:

  1. 现在能动手吗?能,但别指望立刻上线。 据报道,规范正式发布、DPDK 优化版参考实现和生产级合规框架要等到今年 10 月的 OCP Global Summit。目前可以先关注 OCP 仓库里的规范草案和 libsoftmetaroce 参考实现——它用标准 UDP socket 就能在普通 Linux 上跑完整传输栈,不需要专用硬件。比如可以这样理解它的多路径思想(概念演示,Python 标准库即可运行):
import socket

# 概念演示:UDP 源端口即路径标识(ECMP entropy)
# MetaRoCE 中网卡用不同源端口区分多条逻辑路径,可随时切换
for src_port in (40000, 40001, 40002, 40003):
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        s.bind(("0.0.0.0", src_port))
            s.sendto(b"allreduce-chunk", ("10.0.0.8", 5001))
                s.close()
                ```
2. **做训练和网络运维的**:先别急着推翻现有 RoCE 网络,等 10 月规范出来、看到真实设备的合规测试结果再评估。Meta 的数据来自 64 节点小集群加模拟故障场景,大规模生产验证还需要时间。
3. 3. **做网卡、交换机、云平台的**:这正是介入窗口。开源规范加合规套件意味着"照着做就能互通",后续生态大概率往这个方向长。
4. 4. **坑在哪**:每路径的 256 位选择性确认这类状态,在网卡上实现成本不低,固定功能网卡能不能做到、做到什么程度,要等各家产品说话;而且它目前主要覆盖数据中心内部场景,跨地域长距离、存储 incast 这些,Meta 自己说还在继续做。
从 RoCE 到 MetaRoCE,本质上是"让以太网当 AI 的网络底座"这条路线在传输层落地的关键一步。开源之后谁能快速跟进、谁能把成本做下来,可能比协议本身更值得关注。

你觉得 AI 集群网络最终会收敛到 InfiniBand 还是以太网?评论区聊聊。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐