【infiniband】 MAD、 uMAD、Verbs、RDMACM

77 篇文章 1 订阅

MAD(Management Datagram):

MAD是InfiniBand网络中用于管理和配置的数据报文。它包含了各种类型的管理操作,如查询端口状态、配置端口参数等。MAD通常用于执行网络管理任务。

uMAD(User MAD):

uMAD是用户空间应用程序与InfiniBand子系统之间进行通信的接口。它允许应用程序发送和接收MAD消息,以执行特定的管理操作。通过uMAD,应用程序可以直接与InfiniBand网络进行交互,执行各种管理任务。

Verbs API:

Verbs是一种用于编程InfiniBand和RoCE(RDMA over Converged Ethernet)设备的API(Application Programming Interface)。它提供了一组函数和数据结构,用于创建和管理RDMA连接、发送和接收数据等操作。Verbs API是一种低级别的编程接口,允许应用程序直接操纵RDMA设备。

RDMACM(RDMA Connection Manager):

RDMACM是一个库,用于管理RDMA连接的建立、维护和关闭。它提供了一组函数,使应用程序能够发现和连接远程节点,并在需要时建立RDMA连接。RDMACM简化了RDMA连接的管理过程,使应用程序可以更方便地使用RDMA功能。

ChatGPT的对话

英文

InfiniBand is a high-speed networking technology mainly used in high-performance computing (HPC), data centers, and enterprise environments that require fast data throughput and low latency. Let's understand the terms MAD, uMAD, Verbs, and RDMACM in the context of InfiniBand.
1. **MAD (Management Datagram)**: In InfiniBand, Management Datagram (MAD) packets are used for network administration and management. These include device discovery, configuration, and diagnostics. MADs are standardized packets that can be sent over an InfiniBand network to query or control device attributes and are fundamental to the operation and maintenance of an InfiniBand fabric.
2. **uMAD (Userspace Management Datagram)**: uMAD refers to the Userspace handling of MAD packets. Userspace here means the space outside of the kernel where application software runs. uMAD libraries and tools enable applications and users to directly communicate with InfiniBand hardware to perform management tasks without needing to implement low-level kernel interactions.
3. **Verbs**: Verbs are the low-level programming interface for InfiniBand. This interface defines a set of operations that can be performed with InfiniBand hardware. InfiniBand verbs provide applications with a way to initialize network resources, establish connections, and transfer data. The term "verbs" refers to the actions or operations that are defined by the InfiniBand architecture, such as creating a queue pair (QP), posting send/receive requests, and managing completion events.
4. **RDMACM (RDMA Communication Manager)**: The RDMA Communication Manager (RDMACM) provides an abstraction for the management of RDMA (Remote Direct Memory Access) communication. It simplifies setting up connections between RDMA-capable devices, handling of connection requests, and reliable disconnection. RDMA Communication Manager operates above the Verbs API and provides a higher-level API for connection-oriented communication (such as streaming or reliable datagram service). It allows applications to establish and manage RDMA connections without getting into the detailed aspects of managing InfiniBand resources and works in both InfiniBand and iWARP (Internet Wide Area RDMA Protocol) networks.
These components work together to provide efficient and low-latency networking capabilities that are characteristic of InfiniBand technology, often used for applications like parallel computing, storage systems, and mission-critical services that require high-bandwidth and low-latency communication.

中文

在InfiniBand的上下文中,让我们来理解MAD、uMAD、Verbs和RDMACM这些术语。
1. **MAD (管理数据报)**:在InfiniBand中,用于网络管理和维护的数据包称为管理数据报(MAD)。这些数据报包括设备发现、配置和诊断等。MAD是标准化的数据包,可以通过InfiniBand网络发送,以查询或控制设备属性,是InfiniBand网络运营和维护的基础。
2. **uMAD (用户空间管理数据报)**:uMAD指的是在用户空间处理MAD数据包。用户空间指的是内核之外,应用软件运行的空间。uMAD库和工具使得应用程序和用户可以直接与InfiniBand硬件通信来执行管理任务,无需实施底层内核交互。
3. **Verbs**:Verbs是InfiniBand的底层编程接口。这个接口定义了可以用InfiniBand硬件执行的一系列操作。InfiniBand Verbs为应用程序提供了一种方式来初始化网络资源、建立连接和传输数据。"Verbs"一词指的是InfiniBand架构所定义的动作或操作,比如创建队列对(QP)、发布发送/接收请求以及管理完成事件等。
4. **RDMACM (RDMA通信管理器)**:RDMA通信管理器(RDMACM)为RDMA(远程直接内存访问)通信提供了抽象管理。它简化了RDMA能够设备间设置连接的过程,处理连接请求,以及可靠断开连接。RDMA通信管理器在Verbs API之上运作,并为面向连接的通信(如流服务或可靠数据报服务)提供了更高层次的API。它允许应用程序建立和管理RDMA连接,而无需深入到管理InfiniBand资源的细节,并可以在InfiniBand和iWARP(Internet Wide Area RDMA Protocol)网络中工作。
这些组件协同工作,为InfiniBand技术提供了高效和低延迟的网络能力,常用于需要高带宽和低延迟通信的应用,如并行计算、存储系统和重要任务服务等。

IPoIB用到了什么?

InfiniBand 是一种高速通信协议,主要用于高性能计算和企业数据中心。你提到的几个组件是 InfiniBand 技术栈的关键部分。IP over InfiniBand (IPoIB) 是一种在 InfiniBand 网络层之上运作的协议,它允许 IP 数据包能够在 InfiniBand 网络上传输。
1. **MAD (Management Datagram)**: 是用于 InfiniBand 网络中的管理和配置消息的数据报。IPoIB 不会直接使用 MAD,因为这些是为网络管理保留的低级命令和控制操作。
2. **uMAD (user-level MAD)**: 用户级的 MAD。IPoIB 通常不会直接使用 uMAD,因为 uMAD 主要用于应用程序层面直接与 InfiniBand 子系统进行管理交互。
3. **Verbs**: 是 InfiniBand 架构定义的低级 API,用于控制硬件来执行各种操作,如数据传输。IPoIB 会使用 Verbs API 来执行数据包的实际传输。
4. **RDMACM (RDMA Connection Manager)**:处理与远程对等端点之间建立连接所需的一系列事件和动作。虽然 RDMACM 更多地用于建立和管理 RDMA 连接,但 IPoIB 网络设备可能会利用它来处理某些底层连接管理任务。
除了你列出的这些,IPoIB 还使用了其他一些组件和技术:
- **RDMA (Remote Direct Memory Access)**: RDMA 允许在无需操作系统干预的情况下,直接从一个系统的内存复制数据到另一个系统的内存。IPoIB 可能会使用 RDMA 功能来优化数据包的传输性能。
- **InfiniBand Transport Protocols**: 如可靠连接(RC),无连接(UD)等。IPoIB 主要使用无连接的数据报模式(UD)来发送和接收 IP 数据包。
- **IPoIB Driver**: 是操作系统内核中的一个模块,它将 InfiniBand 功能映射为能够传递 IP 数据包的网络接口。
- **Multicast Support**: IPoIB 使用多播能力,这对于 IP 网络中的许多常见操作(如大规模通信或服务发现)是非常重要的。
- **Address Resolution and Handling**: IPoIB 需要处理将 IP 地址转换为 InfiniBand 地址的解析过程。
- **Subnet Manager (SM)**: 虽然不是 IPoIB 的一部分,但是子网管理器在 InfiniBand 网络中起着至关重要的角色,负责配置网络、分配地址等。IPoIB 设备需要与 SM 协作,以保持正确的网络配置和同步。
正是这些组件和技术的结合,允许 IPoIB 在 InfiniBand 网络上提供高速、可靠的 IP 通信。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

109702008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值