【RDMA】HCA卡的MTU仅仅对IPOIB有效,对RDMA没有速度提升? |IPoIB 和IBoE(ROCE、iWARP )的区别

目录

IPoIB(IP over InfiniBand)

IPoIB 和IBoE(ROCE、iWARP )的区别


HCA:在Infiniband/RoCE规范中,将RDMA网卡称为HCA,全称为Host Channel Adapter。(https://blog.csdn.net/bandaoyu/article/details/125234262?spm=1001.2014.3001.5501

HCA卡的MTU仅仅对IPOIB有效,对RDMA没有速度提升---- 存疑,未验证!

另外的几个知识点:
1. HCA卡的MTU查看方式:ifconfig -a

2.HCA卡connect mode 也仅仅适用于IPOIB.

参考网址:
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/sec-Configuring_the_Subnet_Manager.html

原文链接:https://blog.csdn.net/msdnchina/article/details/71703080

IPoIB(IP over InfiniBand)

9.6. 配置 IPoIB Red Hat Enterprise Linux 7 | Red Hat Customer Portal (中文,翻译有误)

13.8. Configuring IPoIB Red Hat Enterprise Linux 7 | Red Hat Customer Portal  (英文)

IPoIB(IP over InfiniBand) 的角色是在 InfiniBand RDMA 网络顶层提供 IP 网络模拟层。

这样就可以让现有应用程序无需修改即可在 InfiniBand 网络(非IP网络?)中运行。但那些应用程序的性能相比原本使用 RDMA 通讯编写的应用程序要低。对一些应用程序来说,如果不需要修改,使用 RDMA 通讯,性能降级是可以接受的。IPoIB 可让那些不那么主要的应用程序在网络中以其原有形式运行。

因为 iWARP 和 RoCE/IBoE 网络实际上是在其 IP 链接层顶层附带 RDMA 层的 IP 网络,他们不需要 IPoIB。因此,内核会拒绝在 iWARP 或 RoCE/IBoE 设备中创建任何 IPoIB 设备。

可将 IPoIB 设备配置为以数据报或连接模式运行。不同之处在于 IPoIB 层尝试在通讯另一端机器中打开的队列对类型。在数据报模式中会打开不可靠、断开连接的队列对;而在连接模式中会打开可靠且连接的队列对。

使用数据报模式时( datagram mode,不可靠、断开的队列对不允许大于 InfiniBand 链接层 MTU 的数据包通过。IPoIB 层会在要传输的 IP 数据包顶部添加一个 4 字节的 IPoIB 标头。因此,IPoIB MTU 必须比 InfiniBand 链接层小 4 字节。因为在 InfiniBand 链接层 MTU 一般为 2048 字节,则数据报模式中的 IPoIB 设备则通常为 2044 字节。

Design and Performance Evaluation of IPoIB Gateway | Semantic Scholar

使用连接模式时(connected mode,可靠且连接的队列对类型允许大于 InfiniBand 链接层 MTU 的信息通过,同时在两端均采用主机适配器处理数据包片段并将其组合。这样使用连接模式时不会对通过 InfiniBand 适配器发送的 IPoIB 信息有大小限制,但是IP数据包size字段仅具有16bit,因此最大字节数只能为 65535。最大允许的 MTU 实际比65535小,因为65535同时要给不同 TCP/IP 标头分配尺寸。因此,连接模式中获得 IPoIB MTU 最大为 65520,这样可保证为所有需要的 TCP 标头提供足够的空间。

连接模式选项通常有较高性能,但也会消耗更多的内核内存。因为大多数系统考虑的是性能而不是用内存消耗,因此连接模式是最常用的用户模式。

但如果将系统配置为连接模式,它必须可以使用数据报模式发送多播流量(InfiniBand 交换机及结构无法使用连接模式传递多播流量),且可以在与未配置连接模式的主机通讯时返回数据报模式。管理员应意识到如果他们要运行发送多播数据的程序,且那些程序要以接口中的最大 MTU 发送多播数据,则需要将该接口配置为数据报操作,或者使用将多播程序配置为将其发送数据包大小限制在数据报允许的数据包范围内的其他方法。


链接:https://www.jianshu.com/p/b2b94a4d5ff6

2012 workshop wed_ethernet_servicesoveri_poibInfiniBand架构和技术实战总结_架构师技术联盟-CSDN博客

2012 workshop wed_ethernet_servicesoveri_poib

相比原生RDMA IPoIB 大概有20%的性能下降。

RDMA 在 随机的小的读方面带来的利益大在写方面带来的利益就就比较小了。 

debian - IPoIB (IP over InfiniBand) vs. RDMA performance - Server Fault

IPoIB 和IBoE(ROCE、iWARP )的区别

IPoIB 就是使得使用IP通信的程序可以不需要修改就能在 InfiniBand RDMA 网络设备上通信?

IBoE 就是使得 在IP网络中也能使用IB 接口和IB协议进行通信?

IPoIB(IP over InfiniBand) 的角色是在 InfiniBand RDMA 网络顶层提供 IP 网络模拟层。

这样就可以让现有应用程序无需修改即可在 InfiniBand 网络(非IP网络?)中运行。但那些应用程序的性能相比原本使用 RDMA 通讯编写的应用程序要低。对一些应用程序来说,如果不需要修改,使用 RDMA 通讯,性能降级是可以接受的。IPoIB 可让那些不那么主要的应用程序在网络中以其原有形式运行。

IPoIB是InfiniBand的上层协议之一

InfiniBand为不同类型的用户提供了不同的上层协议,并为某些管理功能定义了消息和协议。InfiniBand主要支持SDP、SRP、iSER、RDS、IPoIB和uDAPL等上层协议。

  • SDP(SocketsDirect Protocol)是InfiniBand Trade Association (IBTA)制定的基于infiniband的一种协议,它允许用户已有的使用TCP/IP协议的程序运行在高速的infiniband之上。
  • SRP(SCSIRDMA Protocol)是InfiniBand中的一种通信协议,在InfiniBand中将SCSI命令进行打包,允许SCSI命令通过RDMA(远程直接内存访问)在不同的系统之间进行通信,实现存储设备共享和RDMA通信服务。
  • iSER(iSCSIRDMA Protocol)类似于SRP(SCSI RDMA protocol)协议,是IB SAN的一种协议 ,其主要作用是把iSCSI协议的命令和数据通过RDMA的方式跑到例如Infiniband这种网络上,作为iSCSI RDMA的存储协议iSER已被IETF所标准化。
  • RDS(ReliableDatagram Sockets)协议UDP 类似,设计用于在Infiniband 上使用套接字来发送和接收数据。实际是由Oracle公司研发的运行在infiniband之上,直接基于IPC的协议。
  • IPoIB(IP-over-IB)是为了实现INFINIBAND网络与TCP/IP网络兼容而制定的协议,基于TCP/IP协议,对于用户应用程序是透明的,并且可以提供更大的带宽,也就是原先使用TCP/IP协议栈的应用不需要任何修改就能使用IPoIB。
  • uDAPL(UserDirect Access Programming Library)用户直接访问编程库是标准的API,通过远程直接内存访问 RDMA功能的互连(如InfiniBand)来提高数据中心应用程序数据消息传送性能、伸缩性和可靠性。

其中IPoIB

The role of IPoIB is to provide an IP network emulation layer on top of InfiniBand RDMA networks. 

Because both iWARP and RoCE/IBoE networks are actually IP networks with RDMA layered on top of their IP link layer, they have no need of IPoIB. As a result, the kernel will refuse to create any IPoIB devices on top of iWARP or RoCE/IBoE RDMA devices.

IPoIB Limitations

IPoIB solves many problems for us. However, compared to a standard Ethernet network interface, it has some limitations:

  • IPoIB supports IP-based application only (since the Ethernet header isn't encapsulated).
  • SM/SA must always be available in order for IPoIB to function.
  • The MAC address of an IPoIB network interface is 20 bytes.
  • The MAC address of the network interface can't be controlled by the user.
  • The MAC address of the IPoIB network interface may change in consecutive loading of the IPoIB module and it isn't persistent (i.e. a constant attribute of the interface).
  • Configuring VLANs in an IPoIB network interface requires awareness of the SM to the corresponding P_Keys.

Non-standard interface for managing VLANs.

InfiniBand 与Intel Omni-Path Architecture - allcloud - 博客园

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RDMA(Remote Direct Memory Access)是一种数据传输技术,它允许主机之间直接访问彼此的内存,而无需通过操作系统的介入。RDMA可以显著提高数据传输效率和降低处理延迟,常用于高性能计算、存储网络和数据中心等领域。ROCE(RDMA over Converged Ethernet)和Iwarp都是基于RDMA技术的协议,但有一些区别: 1. ROCE(RDMA over Converged Ethernet):ROCE是一种在以太网上实现RDMA的协议。它利用以太网的物理层和数据链路层,通过使用特殊的以太网帧格式和扩展头部来实现RDMA功能。ROCE可以在现有以太网基础设施上实现低延迟、高带宽的数据传输,并且与以太网交换机和路由器兼容。 2. Iwarp:Iwarp是一种在TCP/IP网络上实现RDMA的协议。它通过在TCP/IP协议栈中添加额外的RDMA支持来实现数据直接存取。Iwarp协议需要在操作系统内核中进行实现,因此需要特定的驱动程序和软件支持。由于基于TCP/IP协议,Iwarp可以在现有的IP网络基础设施上使用。 在ROCE和Iwarp之间选择时,需要考虑以下因素: - 兼容性:ROCE和Iwarp在不同的网络基础设施上有不同的兼容性要求。ROCE需要支持特殊的以太网帧格式和扩展头部,而Iwarp需要特定的驱动程序和软件支持。 - 性能:ROCE和Iwarp在性能上可能有所不同。ROCE在以太网上实现RDMA,可以提供较低的延迟和较高的带宽。而Iwarp基于TCP/IP协议,可能受到TCP协议的限制,性能可能相对较低。 - 配置和管理:ROCE和Iwarp在配置和管理方面也有所不同。ROCE可以利用现有的以太网基础设施,配置相对简单。而Iwarp需要特定的驱动程序和软件支持,可能需要额外的配置和管理工作。 最终选择ROCE还是Iwarp取决于具体的应用需求、网络环境以及设备兼容性等因素。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值