InfiniBand解释

19

请有人解释一下什么是InfiniBand? 它与以太网相比的主要区别是什么,这些区别如何使其比以太网更快?

在mellanox的官方介绍中写道:

介绍InfiniBand,一种基于交换机的串行I/O互连架构,运行方式为...

什么意思是InfiniBand是一种基于交换机的互连技术?我在这个说明中找到了一些信息,但它没有解释如果多个输入想写入单个输出时会发生什么,冲突如何解决?

还说InfiniBand具有端到端的流量控制。这是否意味着不需要任何其他(中间)流量控制?为什么?

3个回答

26
Ethernet和Infiniband之间的关键区别是RDMA(Remote Direct Memory Access),这使得Infiniband更快。DMA(在网络中)是一种操作,它直接从NIC(网络接口控制器)访问内存,而不涉及CPU。RDMA是同样的想法,但是远程机器执行直接内存访问。
更多区别:
1. 通信是在QPs(队列对)之间进行,而不是在通道之间进行。 2. 数据流从用户空间直接流向/来自硬件,而不是通过内核堆栈。
请求方和响应方之间的基本RDMA流程包括:
1. 握手——请求方和响应方之间交换详细信息(主要是分配的内存地址和访问密钥)。 2. 在请求方端创建READ/WRITE/ATOMIC请求。 3. 将请求发送到响应方。 4. 直接访问响应方的内存。 5. 如果是READ/ATOMIC,则将从响应方内存读取的数据发送回请求方。
主要优点:
1. 响应方没有CPU访问——吞吐量仅受硬件(NIC和PCI)限制。 2. 响应方没有运行任何软件——允许更低的延迟(比典型TCP/UDP延迟小约10倍)。 3. 支持“轮询模式”以在请求方端完成,这意味着软件在硬件传输完成后立即知道。以牺牲高CPU利用率为代价,可以实现更低的延迟和更高的吞吐量。

如需更多信息,请参考Infiniband规范(抱歉,它非常长)。

相关流量协议:

  • RoCE(以太网上的RDMA),通过将Infiniband数据包与L2 / L3 / L4以太网头进行包装实现在以太网结构上实现RDMA。

  • IPoIB(Infiniband上的IP),通过将L3 / L4数据包与Infiniband头进行包装,在Infiniband结构上实现常规网络(通过内核堆栈)。

希望这可以帮助你。


你说的'NIC'是指网络接口控制器吗? - Martin
1
@OkLetsdothis NIC == 网络接口卡 - Weipeng

7
为了学习 InfiniBand 的基础知识,建议您访问 Mellanox 学院,注册后参加“技术”栏目下的InfiniBand EssentialsInfiniBand Fundamentals课程。
在我看来,“基于交换机架构”意味着交换机是网络设备的一部分(请参见下图,蓝色形状表示交换机)。 enter image description here 端到端流控,也称消息级流控,是一种可靠连接的功能(能力)。响应者可以利用此功能优化其接收资源的使用。实质上,请求方除非具有适当的信用,否则无法发送请求消息。请参考InfiniBand 规范了解详细信息。

2

技术信息

据说InfiniBand具有端到端的流量控制。

通过一个名为子网管理器(通常称为“SM”)的守护程序来控制内部网络流量。已知的开源实现(opensm)目前支持9种不同的路由算法(最小跳数、UPDN、DNUP、Fat Tree、Torus-2QoS等)。这些算法及其不同的流量控制方法可以写许多页面。

这是否意味着没有(需要)其他(中间)流量控制?为什么?

跨网络流量通常需要一种协议,可以路由到和从InfiniBand网络和其他网络类型进行通信。LNet是一个可以实现此功能的协议的示例。

常规信息

有人能解释一下什么是InfiniBand吗?

这个问题非常广泛,因此我将尝试添加一些更一般的信息作为现有答案的补充。 未来路线图 当前有多个Infiniband世代(QDR、FDR、EDR),希望HDR在2018或2019年某个时候推出。是的,这可能很快就会过时,所以请参考路线图获取最新信息。即将推出的世代称为NDR和XDR,但当前路线图上甚至没有确定日期。
关键组织 重要组织包括Infiniband贸易协会(IBTA)和开放式织物联盟(OFA)。请参考它们的网站获取大量优秀的Infiniband信息。

1
顺便说一下,感谢您对我无用的“cat”答案进行了精细的编辑;我已经接受了您的编辑 :-) - necromancer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接