InfiniBand解释道

Dim*_*nNe 3 infiniband

任何人都能解释什么是InfiniBand吗?与以太网相比有哪些主要区别,这些差异如何使其比以太网更快?

在mellanox 的官方描述中写道

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

Infiniband是基于交换机的互连是什么意思?我找到了这个描述,但它没有解释如果几个输入要写入单个输出会发生什么,碰撞是如何解决的?

据说Infiniband还有端到端的流量控制.是否意味着没有(需要)任何其他(中间)流量控制?为什么?

Vol*_*And 7

要了解 InfiniBand 的基础知识,我建议您访问Mellanox Academy 网站,并在注册后参加 InfiniBand EssentialsInfiniBand Fundamentals课程(在技术部分)。

在我看来,“基于交换机的架构”意味着交换机是结构的一部分(见下图,我用蓝色形状显示了交换机)。

在此输入图像描述

端到端流量控制,又称为消息级流量控制,是可靠连接的一项特性(能力)。响应者可以使用它来优化其接收资源的使用。本质上,请求者不能发送请求消息,除非它有适当的信用来这样做。详细信息请参阅InfiniBand 规范。


Tgi*_*gul 7

以太网和Infiniband之间的关键区别是,它使Infiniband更快,是RDMA(远程直接内存访问).DMA(在网络中)是一种直接从NIC访问内存的操作,不涉及CPU.RDMA是相同的想法,但直接内存访问是由远程机器完成的.

更多差异:

  1. 在QP(队列对)之间进行通信而不是通道.
  2. 数据流直接进出/来自用户空间,而不是通过内核堆栈.

请求者和响应者之间的基本RDMA流程包括:

  1. 握手 - 请求者和响应者之间的交换细节(主要是分配的内存地址和访问密钥).
  2. 在请求方创建READ/WRITE/ATOMIC请求.
  3. 将请求发送给响应者.
  4. 直接访问响应方的内存.
  5. 如果READ/ATOMIC - 将从响应者的内存中读取的数据发送回请求者.

主要好处:

  1. 响应方无CPU访问 - 吞吐量仅受HW(NIC和PCI)的限制.
  2. 没有SW在响应方运行 - 允许更低的延迟(比典型的TCP/UDP延迟小约10倍).
  3. 在请求方支持"轮询模式"以完成,这意味着一旦HW完成传输,SW就立即知道.以高CPU利用率为代价,实现更低的延迟和更高的吞吐量.

有关更多信息,请参阅Infiniband规范(抱歉它很长).

相关流量协议:

  • RoCE(RDMA over Converged Ethernet),通过将Infiniband数据包与L2/L3/L4以太网报头包装在一起,实现RDMA over Ethernet结构.

  • IPoIB(IP over Infiniband),通过使用Infiniband报头包装L3/L4数据包,在Infiniband结构上实现定期网络(通过内核堆栈).

希望这可以帮助.