新型AI网络:超以太网UEC
本帖最后由 hdy 于 2025-6-17 23:15 编辑在GenAI(生成式人工智能)爆发的初期,标准以太网曾大幅输给英伟达的InfiniBand。此后以太网开始收复失地,主要驱动力在于成本优势、InfiniBand的多项缺陷,以及以太网支持功能扩展和定制的能力。 亚马逊和谷歌自研的以太网方案已显著缩小性能差距(尽管仍远落后于英伟达网络方案)。此外,甲骨文和Meta等公司重金投入以太网生态,与英伟达的差距并不悬殊。 就连英伟达也承认以太网的统治地位——其Blackwell架构的Spectrum-X以太网出货量已远超Quantum InfiniBand。但若无深度定制,标准以太网性能仍难以企及。 这正是超以太网联盟(UEC)的使命:为大型AI网络制定改进标准,集结行业巨头组建强大联盟。 超以太网联盟候选版1深度评测 UEC候选版1是长达565页的技术文档,今日正式公开。这与追求简洁的Ultra Accelerator Link v1规范形成鲜明对比。UEC本质上就是复杂的,通篇阅读近乎艰涩,但结构化分析能揭示其内在逻辑。图注:UEC联盟官方资料UEC旨在为以太网网卡和交换机提供传输与流量控制层,优化超大规模数据中心网络的运行。传输层确保用户数据从源到目的地的送达,承载现代AI/HPC用户所需的所有指令;流量控制则保障数据以最优速度流动,避免拥塞并实现故障链路绕行。该方案需网卡支持UEC协议,交换机则可沿用现有以太网设备。UEC规范细致定义了设备间的互操作性标准。 UEC框架与核心模块UEC由Linux联合开发基金会(JDF)管理,本质是标准开发组织(SDO)。其以以太网为基础,整合多项现有技术标准,专为数据中心设计,目标实现1-20微秒的集群往返延迟,重点优化AI训练/推理及高性能计算(HPC)的横向扩展网络。规范强制要求网络物理层采用以太网标准,并规定交换机需支持现代以太网特性。 核心基础是开放架构接口LibFabric。掌握LibFabric即可理解UEC规范前120页内容。这一广泛采用的API标准化了网卡使用,现有插件可将其与NCCL(英伟达)、RCCL(AMD)、MPI(超级计算并行通信)、SHMEM(共享内存)等高性能网络库对接——这些正是AI/HPC超算集群的必备组件。图注:OFI官网示意图,UEC作为OFI提供商的加速网卡方案 UEC并非全新发明,而是基于既有开放标准构建互操作框架。其核心设计理念强调兼容性:不限制API在CPU/GPU上的实现方式。LibFabric通过命令队列实现数据传输、接收和完成通知,这种队列式网卡交互已有40余年历史。UEC不规定队列构建方式,但强制要求支持所有LibFabric指令:发送、接收、RDMA、原子操作等。超百页内容详述了这些指令在消息头中的封装方式,确保不同厂商网卡的兼容执行,实质是将LibFabric从CPU/GPU软件栈延伸为网卡硬件加速指令集。图注:AMD等多家厂商将支持UEC网络互操作 从LibFabric继承的关键概念是"任务"(Job)——跨多端点的协作进程组。其功能类似VXLAN,但采用UEC网卡内的架构端点(FEP)而非以太网VXLAN。单网卡可承载多个FEP,但每个FEP仅属于单一任务,仅可与同任务ID的FEP交互。可信架构服务管理任务及其FEP的生命周期,支持加密域实现流量隔离,还包含动态服务所需的灵活成员机制。这些LibFabric概念与指令均为强制组件。 UE传输层负责将LibFabric指令与数据传输至FEP,基础载体是以太网,但理想情况下需可选层支持。 数据包层(第3.2节) 规范在第3.2节数据包层展现真正创新。该部分虽未明确致谢,但明显吸收了厂商在模块化交换机领域的经验:将LibFabric消息分块为灵活路由的数据包,显式考虑可靠性与流量控制。UEC目标是将这些功能整合至传输层。数据中心极低延迟的特性要求硬件级错误恢复和流量控制来保障流畅传输。数据包虽增加头部开销(最长44字节,高频短包可优化至20字节),但实现了网卡与交换机间网络运行信息的独立交换。模块化交换机通常通过内部第二交换层处理此类信息,而UEC则依赖增强型以太网承载的网卡生成数据包。 UEC专为"胖网络"设计——FEP间存在多条等距等速路径。现代典型实现是"通道"(rail)配置:例如800GbE接口的网卡拆分为8条100G通道,在交换机机架层,每条通道连接不同交换机(如8台512×100G端口交换机),使最多512个FEP接入这8个端口。UEC网卡通过"熵值"哈希算法将消息分散到所有通道,发送方选择熵值平衡路径利用率以实现800G总吞吐。关键优势在于CPU/GPU应用无需感知复杂性,仅需通过LibFabric排队消息,网卡自动完成"通道魔法"。图注:双通道示例-粉色与黄色网络拓扑相同, SemiAnalysis 通道技术使512端口交换机(当前主流)能并行使用,相同拓扑获得倍增吞吐。重大突破在于UEC在单网卡内协调端点,使主机感知大带宽而网卡分配多路径流量。宽交换机基数对构建大集群至关重要,而一致拓扑简化网络建设与管理。UEC网卡设计支持多层交换机路由,额外优势是多路径数据包支持极速丢包重传和超快流量控制,即使应用调度欠佳或网络链路波动也能保障流畅。 第3至3.4节详细描述数据包与头部构造,部分关联LibFabric语义。以预期最低100G通道速度计算,20字节头部耗时约1.6纳秒。尽管UEC最大吞吐会略低于纯以太网理论值(模块化交换机通常用更快背板吸收包开销),但用以太网作背板的UEC通过近乎完美的流控提升了实际数据速率。 第3.5节(第219页!)深入数据包操作细节。这部分是UEC独有设计,明显借鉴模块化交换机经验,但未引用具体方案,应为共识性设计。考虑到UEC以以太网为背板(现代模块化交换机多用专有背板),这种设计合乎逻辑。 连接动态建立,无ACK开销,消息分片为数据包。单消息的所有包走相同通道(便于修复重组),但不同消息会分散于不同通道。通道选择由头部"熵值"(与真实熵无关)指导,该值代表路由选择并关联流控。 启用加密时,建立包连接会产生一定开销(强制往返ACK)。实际性能需加密基准测试,希望此开销不致过大。 丢包通过序列号推断并由特定请求重传,这对预期极低丢包率的数据中心是合理方案(否则存在更大系统问题)。 拥塞控制:UEC-CC(第3.6节) 第3.6节介绍可选的UEC-CC拥塞管理系统——采用基于时间的机制,亚500纳秒精度测量双向路径时延(需网卡时间同步)。交换机需启用ECN(显式拥塞通知),使用按流量分类设置的现代ECN变体。严重拥塞时可截断数据包,仅保留墓碑头部通知接收端——单纯丢包会延缓纠正。 该机制关键之处在于接收端FEP(每网卡一或多个)负责调控发送方。数据中心微秒级往返时延(RTT)下,发送方无ACK时可传输的数据窗口极短。接收方通过ECN标志收集多通道多流量类的丰富信息,据此决策新包许可数量,实现微秒级发送暂停,基本避免丢包。决策通过ACK和专用Credit CP指令反馈发送方。图注:多层网络端点间流控,SemiAnalysis 这些决策还能通过调整"熵容量"重新平衡路由,改变消息分散的均衡度。UEC标准化了前向纠错率和丢包报告,支持检测弱链路熵值并绕行。熵值数量预计比通道高一个数量级,使弱链路隔离对总路由容量影响最小。 关键的是,UEC-CC弃用部分流控方法:RoCE和DCQCN会降低性能(因其不能精准定位流问题);PFC(优先级流控)在交换机间必须禁用(会阻塞合法流);网卡到交换机连接中也弃用PFC(缺乏UEC-CC精度且可能过度限流);基于信用的流控同理。 传输安全子层(第3.7节)第3.7节传输安全子层技术精深,借鉴成熟方案并融入实用更新。推荐采用后量子DES加密,注重防御性操作(含随机数定期更换规则)。加密按域分配(任务内FEP子集),含支持动态服务的自适应域变体。巧妙密钥派生方案允许单密钥全域使用,每流采用独特密钥和随机数,却只需最小表空间(任务可含数万端点)。 数据中心架构需含可信组件:安全域管理实体(建立域)和含可信硬件的网卡(域接入点)。验证这些组件版本虽超出UEC范围,但存在可要求厂商支持的开放标准。 第3.8节列出第3.7节的参考文献。 其他层级 第4节(UE网络层)主要讨论可选的包截断拥塞控制功能。 第5节(UE链路层)试图通过交换机间链路级包替换和流控提升性能。这部分设计似属多余——在微秒RTT的数据中心中,接收端FEP已能基于全局流量信息做出优质流控决策,且UEC本就支持丢包绕行与修复(第6节辅助)。该节增加了无相应价值的复杂性,所幸为可选功能,预计难以普及,且必然增加测试与互操作性验证难度。 第6节(UE物理层)主要推荐采用802.3/db/ck/df标准的100G以太网多通道。简短说明指出因非官方标准未引用200G——而UALink规范已引用200G,这显然是趋势所在,UEC应瞄准而非追赶该标准。 第6.3小节探讨利用FEC(前向纠错)遥测监控链路可靠性。对网络爱好者而言虽有趣,但核心结论简单:FEC极其有效,正常初始化的数据中心链路几乎不会丢包。此内容纳入规范值得肯定。 UEC核心优势 总结采用UEC的核心理由: - 硬件加速的LibFabric- 集成现代加密的任务结构- 正确实现的数中心拥塞控制- 消除有问题的RoCE和DCQCN- 现有CCL/MPI/SHMEM/UD的开源插件 UEC注意事项 需注意:亚马逊EFA网络(使用LibFabric)的插件支持并不顺畅。虽然提供插件配置,但英伟达通常倾向其专有方案而非支持底层接口。据传EFA网卡插件性能良好,但新型UEC网卡性能待验证。 通用互操作性需验证,不仅需"能用",还要确保不同厂商端点间的性能稳定。中间网络非UEC时UEC网卡的工作表现也需测试——只要交换机支持UEC所需的ECN等最佳实践功能。 与UALink和SUE对比Ultra-Accelerator Link规范篇幅不足UEC一半,尽管同样精心编写。博通纵向扩展以太网(SUE)描述谨慎但非正式,仅20页,假定所述内容简单明了。图注:AMD/UALink资料——Ultra Accelerator Link聚焦中间层 UALink与SUE仅专注纵向扩展(类似英伟达NVLink),仅支持单交换层和最多1024端口(GPU/xPU),远逊于UEC的多交换层数万端点的横向扩展目标。三者均假设AI/HPC集群采用最大化交换机基数的通道网络。图注:博通资料——SUE瞄准单层通道交换网络 SUE和UALink自信引用200GbE链路,使UEC略显落后。UALink与UEC同样分散通道流量,但明确详述基于信用的流控。SUE则建议通过客户端软件在以太网内实现——规范更简单,效果相近。UALink将4通道绑定(如4×200)加速消息传输,而SUE/UEC假定200G通道已足够快,这是UALink价值存疑的额外复杂性。 SUE建议以太网通过PFC或优选信用流控处理流控。这在单交换层场景有效(PFC主要在此有效),而信用流控更平滑。UALink实现连接加密,SUE则简言可靠性、数据完整性和加密应由以太网提供。SUE将通道消息分散与负载均衡委托给端点软件层,这显然是专精此类软件公司的胜利。SUE和UALink均提供内存映射接口。两规范均未规定内存映射实现,但预期通过读写大型虚拟系统中对应端点的内存地址传输消息。其效率应媲美NVLink,但需插件或新底层代码(因未复制NVLink包格式)。 内存映射与主机架构 "内存映射"常称"内存语义"。通过大型虚拟地址空间为每个主机分配可识别范围,使主机处理器能用读写指令操作内存。但不包含排序与一致性等完整内存语义,无集群内缓存嗅探或智能更新。 对这些系统(含UEC)而言,数据中心的超高速与低延迟正推动端点演变为主机芯片架构的协处理器,而非通过日益陈旧的"IO总线"远程连接。端点(网卡)更像多核系统中的普通核心,简化了计算核心(流式GPU或传统CPU)发送指令及端点与主机内存交互的高效互操作。 预计SUE和UALink将以IP块形式集成至主机芯片,而非独立芯片。NVLink早已如此,英特尔Gaudi 3和微软Maia 100等芯片也以此实现以太网链接。这简化了IP块,但也要求其精简以减少在主机芯片中的占用。UEC的复杂性可能暂时体现在独立网卡,但不久应会集成至主机架构——或许以小芯片形式?
页:
[1]
