RoCE、IB和TCP简介及相关技术背景
以太网: 始于1973年,迄今为止最流行和成功的网络生态系统,普遍适用于计算机之间的互联
Infiniband: 始于1999年,性能最佳的网络系统,专为高性能应用场景设计。
RoCE:始于2010年,由IBTA发布,将IB RDMA特性移植到以太网上,可以在以太网的基础上,实现性能的显著提升。
RoCE、IB和TCP等网络的基本知识及差异对比
RoCE、IB和TCP/IP是分布式存储网络中常用的协议,它们在网络通信和数据传输方面有一些显著的区别。让我们详细对比一下它们的特点。
RDMA和TCP/IP
面对高性能计算、大数据分析等IO高并发、低时延应用,现有TCP/IP软硬件架构不能满足应用的需求,这主要体现在传统的TCP/IP网络通信是通过内核发送消息,这种通信方式存在很高的数据移动和数据复制的开销。RDMA(RemoteDirect Memory Access)技术全称远程直接内存访问,就是为了解决网络传输中服务器端数据处理的延迟而产生的。如图 ,RDMA技术能直接通过网络接口访问内存数据,无需操作系统内核的介入。这允许高吞吐、低延迟的网络通信,尤其适合在大规模并行计算机集群中使用。
RDMA和传统TCP/IP通信比较
RDMA的种类
目前有三种RDMA网络,分别是Infiniband、RoCE(RDMA over Converged Ethernet)、iWARP。其中,Infiniband是一种专为RDMA设计的网络,从硬件级别保证可靠传输 ,技术先进,但是成本高昂。 而RoCE 和 iWARP都是基于以太网的RDMA技术,这使高速、超低延时、极低CPU使用率的RDMA技术得以部署在目前使用最广泛的以太网上。
如图2所示,RoCE协议有RoCEv1和RoCEv2两个版本,RoCEv1是基于以太网链路层实现的RDMA协议(交换机需要支持PFC等流控技术,在物理层保证可靠传输),而RoCEv2是以太网TCP/IP协议中UDP层实现,引入IP解决了扩展性问题。
RDMA网络种类
在InfiniBand 和RoCEv2 方案中,因为绕过了内核协议栈,相较于传统TCP/IP 网络,时延性能会有数十倍的改善。在同集群内部一跳可达的场景下,InfiniBand 和RoCEv2 与传统IP 网络的端到端时延在实验室的测试数据显示,绕过内核协议栈后,应用层的端到端时延可以从50us(TCP/IP),降低到5us(RoCE)或2us (InfiniBand)。
- 低时延
分布式训练系统的整体算力并不是简单的随着智算节点的增加而线性增长,而是存在加速比,且加速比小于1。存在加速比的主要原因是:在分布式场景下,单次的计算时间包含了单卡的计算时间叠加卡间通信时间。因此,降低卡间通信时间,是分布式训练中提升加速比的关键,需要重点考虑和设
- 大带宽
在完成计算任务后,智算集群内部的计算节点需要将计算结果快速地同步给其他节点,以便进行下一轮计算。
- 稳定运行
由于计算量比较大,分布式训练任务有可能需要数天或数周。在训练期间如果出现网络不稳定的问题,会影响整个训练任务的进度。因为网络故障导致的故障域通常会比较大,轻则需要回退到上一个分布式训练的断点进行重训,重则可能要将整个任务从0 开始重训。因此,网络稳定性对分布式训练任务十分重要。
- 大规模
随着数据并行和模型并行技术的不断完善和提升,分布式训练中可以使用千卡或万卡规模的GPU 来缩短整体训练时长。这就需要智算网络能够具备支持大规模GPU 服务器集群的能力,并且能具备较强的扩展性,以应对未来更大规模GPU。集群的业务需求。
- InfiniBand 网卡
支持InfiniBand 网卡的厂家以NVIDIA 为主。下图是当前常见的InfiniBand 网卡。InfiniBand 网卡在速率方面保持着快速的发展。400Gbps 的HDR 已经实现了规模化的商用部署.
- RoCE 网卡
支持RoCE 网卡的厂家比较多,主流厂商为NVIDIA、Intel、Broadcom。数据中心服务器网卡主要以PCIe 卡为主。RDMA 网卡的端口PHY 速率一般是50Gbps 起,当前商用的网卡单端口速率已达400Gbps。
- RoCE和InfiniBand比较
InfiniBand | iWARP | RoCE | |
性能 | 最好 | 稍差(受TCP影响) | 与InfiniBand相当 |
成本 | 高 | 中 | 低 |
稳定性 | 好 | 差 | 较好 |
交换机 | IB交换机 | 以太网交换机 | 以太网交换机 |
由表所示三种RDMA网络的特点总结如下:
- InfiniBand: RDMA,从硬件级别保证可靠传输,提供更高的带宽和更低的时延。但是成本高,需要支持IB网卡和交换机。
- RoCE:基于 Ethernet 做 RDMA,消耗的资源比 iWARP 少,支持的特性比 iWARP 多。可以使用普通的以太网交换机,但是需要支持RoCE的网卡。
- iWARP:基于TCP的RDMA网络,利用TCP达到可靠传输。相比RoCE,在大型组网的情况下,iWARP的大量TCP连接会占用大量的内存资源,对系统规格要求更高。可以使用普通的以太网交换机,但是需要支持iWARP的网卡。
分布式存储中常用的网络协议
- IB:在高性能计算(HPC)领域有广泛的应用。
- RoCE:常用于存储后端网络。
- TCP/IP:常用于业务网络。
本文暂时没有评论,来添加一个吧(●'◡'●)