前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >聚众群殴 IB 网络,超以太网联盟携 45 名新成员走向 v1.0 规范!

聚众群殴 IB 网络,超以太网联盟携 45 名新成员走向 v1.0 规范!

作者头像
用户6874558
发布2024-03-22 17:48:13
6820
发布2024-03-22 17:48:13
举报
文章被收录于专栏:云深知网络 可编程P4君

前言

超以太网联盟 (UEC) 继续朝着 v1.0 版本规范集迈进。规范将为从业者提供数据中心网络技术最新的创新性部署方法,可以更好地服务于人工智能和高性能计算工作负载。由于 UEC 保留了现有的 AI 框架和 HPC 库 API,因此预计现有工作负载无需任何更改即可迁移到 UEC。

正如 UEC 1.0 Overview white paper 中所述,UEC 致力于改造以太网上的 RDMA(远程直接内存访问)操作来优化 AI 和 HPC 工作负载。UEC Transport (UET) 通过多种创新来实现这一目标,这些创新可实现更高的网络利用率和更低的尾部延迟,这两个因素对减少 AI 和 HPC 作业完成时间至关重要。

随着AI模型和HPC工作负载规模地不断增长,集群规模也越来越大,因此网络性能日益成为限制性因素。此外,网络在功耗和总体 TCO 中的占比持续上升,因此对 UEC 网络技术的不大投资将带来快速的投资回报。

UEC 协议栈

概述:UEC 遵循我们熟知的分层方法,从广泛部署的 AI 框架和 HPC 库,到 libfabric 和 *CCL 库,再到 UEC 传输 (UET) 和以太网。所有网工都很了解这种方法,UEC并且保留了以太网的所有软件和工具。这些 UEC API 还可以推动互操作性,同时为供应商差异化提供了空间。

UEC 栈简化了网络软件并提高了性能。通过选择 libfabric 作为其北向 API,UEC 软件栈可以集成到使用 libfabric 的现有框架中。 UEC 软件栈的两个关键方面值得关注:

  1. RDMA 操作经过优化后可以更好地匹配工作任务的预期、最大限度地降低硬件复杂性并减少状态。
  2. 超以太网传输 (UET) 提供多种传输服务,增强 RDMA 硬件并实现 UEC 1.0 白皮书中规定的关键目标。

白皮书中描述的一些关键功能包括:

  • 多路径报文喷发
  • 灵活排序
  • “最先进的”易于配置的拥塞控制机制
  • 端到端遥测
  • 多种传输收发服务
  • 交换机卸载(比如在网集合)
  • 与传输协同设计的安全优先原则
  • 以太网链路和物理层增强功能(可选)

多路径数据包喷发:UET 通过数据包喷发提供多路径数据包传送和细粒度负载平衡,每个流可以同时使用到达目的地的所有路径,实现所有网络路径的均衡使用,并不是依靠简单的 ECMP 哈希来选择网络链路,而是通过在实时拥塞管理的指引下协调选择端点和交换机之间整个结构中的路径来避免负载不平衡。这种细粒度的负载平衡可以提高网络利用率并减少尾部延迟。

灵活的排序:UEC 协议栈提供了一个 libfabric API,允许应用程序对特定工作负载的消息和报文排序提出要求,并指导 UET 选择适当的传输服务。例如,由许多数据报文组成的 AI 集合可以被视为“批量传输”,其中应用程序只需要关心给定消息的最后部分何时到达目的地。然而,用于改善负载均衡的多路径可能会导致数据包接收乱序。有些技术使用简单的重排缓冲区来消除乱序,从而增加了成本、延迟、复杂性和功耗。相比之下,UET 提供了一种创新的解决方案,将多路径、灵活排序和拥塞控制相结合,从而高效实现接收端无需重排缓冲区。UET 在逐包的基础上使用直接数据放置(Direct Data Placement比如零复制)是实现高效方案的机制之一。

拥塞处理:大规模人工智能集群和 HPC 网络具有独特的流量模式,特别是在加速卡的网络速度和带宽不断增加的情况下,需要对传统数据中心网络拥塞处理进行重大改进。具备微秒级往返时间、可以并行处理应用程序以及可以降低并协同多条流的专用 AI/HPC 网络需要基于发送端的创新拥塞控制方法。

AllReduce 和 All-to-All 等基础集合的网络优化对于减少作业完成时间至关重要。为了给这些集合提供最高的网络性能,基于多路径协调的拥塞控制对于指导数据包喷发至关重要。UET 再次提供了高效且可扩展的解决方案:例如,All-to-All 集合可能会导致接收器之前的最后一跳交换机遭受持续流量过载的 incast 事件发生。为了避免这些情况,UET 定义了一个可选的基于接收端的拥塞控制,它给发送端分配信用Credit,从而增强了基于发送端的拥塞控制。

符合 UEC 的网络可能需要同时支持不同的 libfabric 请求类型,UET 与众不同的另一个领域是它能够在某些流量被喷发而另一些流量未被喷发时执行拥塞控制。例如,当单路径和多路径流量混合进行 UET 传输服务时(如下所述)就会发生这种情况。

遥测:数据中心交换机广泛支持的 ECN 被用于拥塞处理,现在 UET 创新的端点拥塞缓解算法将进一步增强 ECN。UET 还可选支持对交换机的高级遥测进行增强,可缩短控制平面的信令时间,从而能够快速感知短时拥塞事件并做出反应。这种快速反应时间对于较高的链路速度尤其重要,因为拥塞事件可能发生得更快并且持续时间可能非常短。

这种高级遥测的一个例子是 UET 使用数据包修剪Trimming,兼容的交换机可以截断或“修剪”拥塞的数据包(而不是丢弃它),并将数据包包头和相关拥塞信息发送到接收端。该策略将有关丢失数据包的准确且及时的信息传递给接收端,从而更快地缓解基于组播的拥塞。与传统的重量级 Go-Back-N 方法相比,通过将此机制与使用选择性确认对拥塞事件进行更集中的响应的办法相结合,对拥塞和丢失的响应更快,带宽效率更高。在数据包丢失的情况下,以前的 RDMA 技术所采用的 Go-Back-N 会要求发送方重新传输可能已经在发送中甚至已经接收的长序列数据包。

多种传输交付服务:应用程序的需求决定了如何选择适当的 UET 服务。UET 提供多种不同的运输服务,包括:

  • 可靠有序传送 (ROD):ROD 按顺序传送与同一消息关联的所有数据包,并保留消息间的顺序。它专为需要消息排序(例如 MPI 的匹配排序或 OpenSHMEM put-with-signal 语义)的应用程序而设计,同时受益于 UET 的拥塞控制和安全增强功能。
  • 可靠无序传送 (RUD):RUD 旨在实现数据报文必须且仅传送到应用程序一次但可以容忍网络中的数据包重新排序(例如大型集合)的操作。RUD 的创新 AI 优化方法通过在接收端处理无序传送来实现多路径数据包喷发,无需重排缓冲区,从而实现高的网络利用率和最小的尾部延迟。
  • 幂等操作的可靠无序交付 (RUDI):RUDI 专为特大规模的应用程序而设计。这里应用程序的语义指导是,如果多次接收数据包并将其写入应用程序的缓冲区,则应用程序的最终结果不会改变(幂等性意味着多次应用操作不会改变最终结果)。因此,RUDI 允许在接收到整个消息之前将数据包多次传送到接收方。RUDI 传输服务的动机是最小化接收端所需的状态,从而实现更高的规模。它最适合批量有效负载交付等需要以最快的规模交付但需要最少的附加语义的操作。

交换机卸载(或在网集合):UEC 定义了将集合操作(例如 AllReduce)卸载到网络所需的机制。这提高了带宽利用率并最大限度地减少了某些集合操作的执行时间。集合操作的实现为许多人工智能或高性能计算工作的下一个计算阶段奠定了基础。虽然可以选择性实现,但交换机卸载可以提供应用程序级性能改进,而不仅仅是网络级改进。当 UEC v1.0 发布时,这将是首次通过以太网链路提供此类技术并对其进行标准化!

安全性:UEC 传输层与传输服务共同设计安全特性,用以解决威胁模型,同时为消息完整性、保密性和重复防护提供高效且经济的解决方案。请注意,考虑到 UEC 网络可能的速度和规模,安全性可能会带来可扩展性挑战。因此,需要特别注意大规模地最小化开销和密钥管理,例如通过提供有效的组密钥机制。随着未来的数十万端点和 1.6Tb/s 链接速度时代即将到来,可扩展的密钥管理会成为一项要求。

配置文件Profile:虽然人工智能和高性能计算工作负载正在融合,但它们仍然有一些不同的要求。大多数 AI 工作负载会生成大型消息,并且对带宽敏感,而许多 HPC 工作负载依赖于消息排序,会生成非常短的消息,并且对延迟非常敏感。在 MPI(Message Passing Interface) 下,HPC 对数据包和消息顺序更加敏感。当前的人工智能推理工作负载可能比人工智能训练对延迟更加敏感。AI 所需的极限带宽需要高度优化的 NIC(网络接口卡),其中芯片尺寸、功耗和状态管理都必须考虑在内。因此,UEC 提供多种配置文件来满足不同的工作负载需求。每个配置文件都是传输服务、libfabric API 以及适合工作负载所需功能的组合。配置文件可实现产品的灵活性和优化、促进互操作性并实现供应商的差异化。

以太网层合规性:UEC 架构旨在与现有以太网交换机兼容并可互操作。但是,UEC 为改进对 AI 和 HPC 的支持指定了额外的可选扩展。例如,UET 支持链路级可靠性 (LLR)。在典型的高带宽密集环境中,人工智能部署很常见的是对尾部延迟敏感,如果一条链路性能不佳(例如,由于间歇性较高的误码率),它可能会减慢整个并行应用的速度。LLR 提供基于硬件的快速反应,缓解链路性能问题。

有损和无损网络:虽然 UET 在有损网络上提供出色的性能,利用多路径和网络遥测辅助下的改进拥塞控制,它也可设计在无损网络上运行。事实上,它使无损以太网易于调整,并避免造成拥塞扩散,而拥塞扩散一直是无损网络所关注的问题。

是什么让 UEC 设备成为 UEC 设备?

与过去二十年的行业趋势一致,UEC 的关键创新在于端点。符合 UEC 的网络必须具有支持 UET 的端点(即遵守由 UEC 配置文件之一定义和归纳的相关 UET 模式和 API)。对UEC 配置文件的支持就汇集了简化的 RDMA、零复制多路径、更高的网络利用率和降低的尾部延迟,所有这些都有助于实现最低的 AI 和 HPC 作业完成时间。

如上所述,UET 可以在现有数据中心交换机上运行,但在先进遥测和 UEC 增强型以太网、传输以及软件层的支持下,性能会更好。

不断壮大的 UEC 社区?

UEC现在是一个大联合体。截至撰写本文时,它拥有 55 家会员公司,其中 750 多名贡献者积极参与八个工作组。考虑到架构和共同发展的下一阶段,UEC 增加了四个新工作组:存储、管理、性能和调试以及合规性。这四个工作组是对现有传输、软件、链路层和 PHY 层工作组的补充。UEC 已成为人工智能和 HPC 网络领域的一支极其强大的力量,推动了以太网生态系统的大量创新。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深知网络 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • UEC 协议栈
  • 是什么让 UEC 设备成为 UEC 设备?
  • 不断壮大的 UEC 社区?
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的四七层流量分发服务,访问流量经由 CLB 可以自动分配到多台后端服务器上,扩展系统的服务能力并消除单点故障。轻松应对大流量访问场景。 网关负载均衡(Gateway Load Balancer,GWLB)是运行在网络层的负载均衡。通过 GWLB 可以帮助客户部署、扩展和管理第三方虚拟设备,操作简单,安全性强。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档