暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Ultra Ethernet 规范更新

Andy730 2024-09-08
465

核心内容

  • 软件层面:UET协议基于libfabric v2.0 APIs,支持多种操作类型,并引入了新的Deferrable Send操作以提高效率。
  • UET协议:UET协议集成了远程直接内存访问(RDMA)和瞬时连接,显著降低了连接建立延迟。
  • UET的可扩展性与性能:UET在最佳努力网络和无丢包网络中表现出色,提供三种配置文件以满足不同的AI和HPC需求。
  • 拥塞控制机制:UET采用优化的负载均衡和拥塞控制方案,以确保AI和HPC工作负载的高效传输。
  • 网络内集体操作(INCs):INCs是一种重要的硬件加速标准协议,旨在提高网络性能和效率。
  • 安全性:UET集成了多种安全特性,包括认证、授权和机密性,以保护数据传输。
  • 链路层的新特性:链路层重试(LLR)的引入旨在增强高带宽密度环境中的数据传输可靠性。

-----

随着Ultra Ethernet Consortium(UEC)迈向1.0规范的进展,许多细节已经得到了明确。我们现已准备好分享即将发布的突破性Ultra Ethernet标准的初版内容。  

Ultra Ethernet不仅仅涵盖单一功能或特性。虽然Ultra Ethernet Transport(UET)协议是UEC工作的核心,但UET对其他层进行了优化,以提升人工智能(AI)和高性能计算(HPC)工作负载的性能。Ultra Ethernet通过跨多个层的调优,增强了AI和HPC工作负载的处理能力。

本文将介绍以下领域的一些新进展:  
  • 软件  

  • 传输层  

  • 拥塞控制  

  • 网络内集体通信(INCs)  

  • 安全性  

  • 链路层  

Ultra Ethernet 软件API  

UET的软件基于libfabric v2.0 API,并进行了扩展以支持新的UET协议。为了确保从规范到产品的完整定义和平滑过渡,UEC正在开发能够运行在标准网络接口卡(NIC)上的UET参考代码。此代码确保了网络的正确操作,并证明UET与libfabric API高度契合。  

在libfabric层支持多种操作,包括常见的Send、Write和Read操作。这些操作还提供了“Rendezvous”变体,即发送方和接收方交换缓冲区信息,以确保在发送方传输之前,接收方已准备好相应的缓冲区。  

支持标记(tagged)和非标记(untagged)操作。非标记操作使用熟悉的发送/接收语义,缓冲区按顺序消耗。标记操作允许通信双方使用“标签”来标识缓冲区,无需像读写语义那样预先交换地址信息。  

UET引入了一种新的发送操作类型,称为可延迟发送(Deferrable Send),这是一种乐观的Rendezvous操作,假定目的地已准备好缓冲区,从而避免了缓冲区可用性检查所需的往返延迟。如果缓冲区不可用,接收方可在缓冲区可用时继续发送操作,从而减少对发送方定时器的依赖。  

UET  

UET采用远程直接内存访问(RDMA)机制,凭借其出色的性能,能够通过硬件直接将数据从网络传输至主机或加速器内存,称为直接数据放置(direct data placement)。这种方式绕过了操作系统内核,确保了最低的延迟和最高的性能。UET采用了从头设计的RDMA传输协议,以满足不断发展的AI和HPC工作负载的苛刻需求。  

UET消除了连接建立的延迟并最小化了持久连接状态。通信的每个节点之间不需要维持连接状态,连接资源池可以在所有活跃端点之间共享。因此,UET采用了临时连接的方式,无需在传输前进行握手来建立连接,并且可以在事务结束时丢弃连接状态。在UET中,通信双方可以在传输开始时建立连接状态,并在事务结束后丢弃这些状态。  

消除连接建立时间和减少连接状态的存储至关重要,原因包括:
  • 可扩展性:在高速路径中存储连接状态的需求限制了集群的规模。  
  • 延迟:传统协议在数据传输前需要进行连接握手,增加了延迟,这对AI推理和高性能计算(HPC)工作负载尤为重要。  
  • 成本:在硬件中维护大规模状态表在芯片面积和功耗方面代价高昂。  

UET被设计为在尽力而为的网络上良好运行,这些网络可能由于拥塞或链路错误而丢包。在这种网络上操作对现代网络和数据中心至关重要,因为它有助于可扩展性,并且避免了配置和运行无损网络的需求。  

然而,UET在使用优先级流量控制(PFC)以确保仅在确认有可用缓冲区空间时才将数据包传输到链路伙伴的无损网络上也表现优异。为避免无损网络中的网络死锁,并在无损和尽力而为网络中优先处理延迟敏感的控制流量,UET采用了两种流量类别(TC)。UET的可靠性机制仔细地将数据包映射到不同的流量类别和队列中,以避免无损环境中请求和响应之间的死锁。  

为了实现优化的实现方案,Ultra Ethernet 提供了三种不同的配置档案:
  1. AI Base:针对核心AI应用场景,包括分布式推理和训练。  
  2. AI Full:为AI应用场景增加了功能,例如可延迟发送(Deferrable Send)、精确匹配的标记发送和扩展的原子操作。  
  3. HPC:包括高级标记语义、更多原子操作以及为超出AI应用的HPC工作负载提供完整的Rendezvous支持。  

这些配置档案确定了UET规范中定义的完整功能集的子集,并设计为满足不同用例的需求,同时在功能性和实现的权衡之间做出适当的选择。

UET 拥塞控制  

UET引入了一种优化的负载均衡机制,克服了等价多路径(ECMP)技术的局限性。UET发送方将数据包分散到多个路径上,避免了ECMP流冲突问题,通过更加均衡地加载链路来提升性能。随后,UET发送方使用轻量级获取的实时网络拥塞信息来优化数据包分散,减少网络队列,并实现高网络利用率。如果某一路径被确定为拥塞,数据包会立即切换到另一条非拥塞路径。整个网络的拥塞信息,包括来自端点、网络中的中继节点以及特别容易受到汇聚(incast)事件影响的最后一跳的数据,都被用于优化传输。汇聚通常发生在高带宽流,例如加速器在集体操作过程中产生的瞬时拥塞,以及AI工作负载在生成大规模存储流量时。  

UET还包含了两种新设计的拥塞控制机制。  
  • 第一种是一种强大的基于发送方的拥塞控制方案,它建立在多个现有创新理念之上,并采用了针对AI和HPC工作负载优化的技术。最终实现的是一种自适应的基于窗口的方案,发送方通过协调,根据测量到的往返时间(RTT)、显式拥塞通知(ECN)标记以及数据包丢失情况调整窗口大小,避免超载接收方和网络。  
  • 第二种是可选的基于接收方的拥塞控制机制,在该机制中,发送方请求发送权限,而接收端点授予“信用”,允许发送方以不压垮接收方的方式进行传输。这种机制预计在缓解汇聚事件方面尤其有效。该机制还支持乐观传输,预先分配有限的“信用”,使得传输可以在收到接收方的授权之前立即开始。  
两种拥塞控制机制均针对AI和HPC工作负载的独特特性优化了网络性能,展现了UET的以下差异化特性:
  • 能够从“零速率”迅速提升到“线速率”,并在拥塞发生时快速回退(保留了广泛部署的加性增加/乘性减少方案,经过调整以适应AI和HPC工作负载)。
  • 在低延迟、短往返时间(RTT)环境中的优化操作,这些环境通常具有非常高速的链路,是AI和HPC网络的常见特征,而传输可能只持续少量的RTT。这要求拥塞管理高度响应,既不过于冲动也不过度活跃。
  • 对多路径传输的高效管理,采用避免拥塞路径的技术。
  • 支持网络交换机中的可选“数据包截断”功能,该功能允许在拥塞事件期间,交换机可以截断数据包而不是丢弃它们。由于数据包喷射会导致重新排序,检测丢失变得更加复杂。数据包截断为接收方和发送方提供了早期的拥塞显式指示,使得即使在重新排序的情况下也能立即进行丢失恢复,这在UET设计的低RTT环境中是关键功能。
  • 拥塞控制机制不仅解决了网络中的拥塞问题,还使得在主机内实现精确的流量控制。主机内的拥塞可能发生在接收方的内存子系统或加速器与NIC之间的内部总线(例如PCIe)上。

网络内集体通信(INCs)  

Ultra Ethernet规范中的另一个令人兴奋的功能是UET对网络内集体通信(INCs)的支持,有时也称为“交换机卸载”,即网络集体操作被卸载或在交换机中进行硬件加速。这是第一个基于以太网的此类标准!

交换机供应商、加速器/GPU设计者、系统供应商和超大规模网络运营商共同设计了UET的INC支持,作为加速器端点与参与分布式计算的相邻网络设备进行通信的标准协议。该协议轻量且适合硬件实现,考虑到了网络交换机在每秒数百太比特速率和数百个网络接口上运行时的实现约束。

UET安全性  

Ultra Ethernet从一开始就集成了安全机制,在UET中包含了身份验证、授权和机密性功能。它借鉴了IPSec和PSP*中的一些理念,例如AES-GCM的使用、密钥派生函数和重放保护。然而,UET的安全性与现有的安全协议在几个关键方面有所不同:
  • 它支持高效的组密钥机制,允许属于同一“安全域”的多个端点(通常在AI或HPC任务中会有多个参与的端点)安全通信,同时优化需要维护的状态。
  • 它支持独立的客户端-服务器密钥,允许在多个信任域中高效扩展服务器资源。
  • 所有这些都在保留UET的临时连接架构的同时实现,其优势在前文已描述。

新的链路层功能  

在链路层,UET引入了链路层重试(LLR)标准。AI服务器在许多链路上具有极高的带宽密度,而AI和HPC工作负载通常是并行处理的,其中任何表现不佳的链路都会拖慢整个系统。LLR是提高由于物理层瞬时干扰、组件间歇性故障或布线问题导致的边缘链路可靠性的重要工具。这一方法有助于避免在涉及数万或数十万个加速器的分布式计算中,整体尾部延迟受到较大影响。  

LLR是一种逐跳技术,通过链路层发现协议(LLDP)进行协商,允许在两端链路伙伴之间丢包时进行数据包重传。在LLR链路上,每个数据包在发送方的缓冲区中保持,直到接收方确认收到该数据包为止。UEC发起的LLDP扩展支持LLR参数的发现和配置。

未来展望  

依托其90多个联盟成员的创新和专业知识,UEC正在积极推进初步规范的最终确定,并推动以太网成为AI和HPC工作负载的首选网络技术。有关存储、性能调优和调试、合规性及管理方面的进一步扩展和新开发工作正在进行中,敬请期待更多更新!

*PSP安全协议的详细信息见:https://github.com/google/psp

-----

Source:Ultra Ethernet Specification Update; Ultra Ethernet Consortium; August 29, 2024


---【本文完】---

近期受欢迎的文章:

  1. 构建高效AI基础设施:网络性能优化

  2. UALink(Ultra Accelerator Link)

  3. 以太网进化:超以太网引领AI未来

  4. Omni-Path逆袭,主导超以太网?

  5. CXL联盟主席:专有互连技术与CXL



更多交流,可加本人微信

(请附中文姓名/公司/关注领域)

文章转载自Andy730,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论