有RoCE,是否存在RoIB?
简单直接的回答是:不存在一个与RoCE完全对等、且被业界广泛认可的“RoIB”标准或协议。
但是,问题背后有一个非常合理的逻辑:既然有基于以太网的RDMA(RoCE),那么是否也应该有基于InfiniBand的RDMA?答案是:有,而且它比RoCE更早出现,它就是InfiniBand本身。
下面我们来详细解释一下这其中的关系和区别。
1. 核心概念澄清:RoCE vs. InfiniBand
首先,我们需要理解这两个术语的本质:
- InfiniBand (IB): 这是一种完整的网络体系结构。它不仅仅是一种传输协议,而是从物理层(线缆、连接器)、链路层、网络层到传输层的一整套规范。它天生就为高性能计算和低延迟通信设计,其核心特性之一就是原生支持RDMA。 关键点: 在InfiniBand网络中,RDMA是其内置的、原生的功能。你不需要一个叫“RoIB”的东西,因为使用IB网络就意味着你在使用RDMA。
- RoCE (RDMA over Converged Ethernet): 这是一项技术标准,它的目标是将RDMA的功能“嫁接”到我们更熟悉的以太网之上。 RoCE有两个主要版本: RoCEv1: RDMA运行在数据链路层(L2)。这意味着通信只能在同一个以太网广播域内(同一个VLAN)进行,无法跨路由器。 RoCEv2: RDMA运行在网络层(L3)。它通过UDP/IP封装RDMA数据包,因此可以像普通IP流量一样跨子网路由。这是目前更主流和实用的版本。 关键点: RoCE是在现有以太网基础设施上实现RDMA的“变通方案”或“扩展”。
2. 为什么没有“RoIB”?
现在我们可以回答核心问题了:
- 逻辑冗余: “RoCE”这个名字是相对于其底层网络而言的——“over Converged Ethernet”。对于InfiniBand来说,RDMA是它的“母语”,是其定义的一部分。因此,“RDMA over InfiniBand”这个说法本身是多余的,就像说“TCP over IP”一样奇怪(TCP就是在IP之上运行的)。我们通常直接称其为“InfiniBand”或“使用IB的RDMA”。
- 历史和发展顺序: InfiniBand架构和相关标准(包括其原生RDMA)最早在1999年左右由InfiniBand Trade Association制定。 RoCE标准则是由IBTA在2010年后才推出,目的是为了利用已经广泛部署的以太网基础设施,降低部署RDMA的成本和复杂性。
- 术语使用习惯: 在工业界和学术界,当人们讨论RDMA时,通常会明确区分两种部署方式: 使用原生InfiniBand网络 使用基于以太网的RoCE网络 他们不会创造一个“RoIB”来指代前者,因为这不符合命名惯例,也造成了不必要的混淆。
类比帮助理解
我们可以用一个比喻来理解:
- InfiniBand 就像一辆为F1比赛专门设计的赛车。它的发动机、底盘、轮胎都是为了极致的速度和操控而从头设计的。在这辆赛车上开车,自然就能体验到极致性能(原生RDMA)。
- 以太网 就像我们日常使用的普通公路和城市交通系统。它通用、便宜、到处都是。
- RoCE 就像是给一辆普通的家用轿车(以太网)安装了一套顶级的氮气加速系统(RDMA),让它能偶尔在赛道上跑出接近赛车的成绩,但它仍然受限于家用轿车本身的底子(以太网的特性,如PFC流控、拥塞管理等问题)。
你不会把那辆F1赛车叫做“带氮气的家用车”,因为它从根本上就是不同的东西。同样,我们也不需要一个“RoIB”来称呼F1赛车。
总结
| 特性 | InfiniBand (IB) | RoCE (RDMA over Converged Ethernet) |
|---|---|---|
| 本质 | 完整的网络体系结构 | 在以太网之上实现RDMA的协议 |
| RDMA地位 | 原生、内置的核心功能 | 通过协议模拟/扩展的功能 |
| 底层网络 | InfiniBand网络 | 以太网(需要无损配置,如DCB/PFC) |
| 是否需要“RoX” | 否,直接使用IB即可 | 是,需要明确指明“over Ethernet” |
| 等价说法 | 使用IB的RDMA 或直接叫 InfiniBand | RoCEv1 或 RoCEv2 |
所以,结论是:不存在“RoIB”,因为您需要的功能(RDMA)已经内置于InfiniBand之中。当您选择InfiniBand时,您就已经在使用最原生的RDMA了。

浙公网安备 33010602011771号