QP服务类型

确认:(仅在RC QP中)只有在响应方成功写入消息之后,才会将ack数据包发送回请求方。 如果请求者未发送确认,它将根据QP的属性重新发送邮件。 如果没有来自QP的确认(或否定),它将报告存在错误(超过重试次数)。

如果响应方发生任何类型的错误(保护,资源等),则将向请求方发送一个确认,并报告存在错误。

译自:https://www.rdmamojo.com/2013/06/01/which-queue-pair-type-to-use/

可靠连接(RC)QP

一个RC QP以可靠的方式连接到了一个RC QP(即发送和接收消息)。 可以确保消息最多从一次请求者传递到响应者一次,而且顺序没有损坏。 支持的最大消息大小最大为2GB(取决于支持的RDMA设备属性,该值可能会更低)。 RC QP支持发送操作(无立即),RDMA写操作(无立即),RDMA读操作和原子操作(取决于原子操作中的RDMA设备支持级别)。

如果消息大小大于路径MTU,则在发送数据的一侧将其分段,然后在接收器的一侧进行重组。

一旦响应者确认消息已被读/写到其内存,请求者就认为消息操作已完成。

一旦将消息读/写到其(本地)内存,响应者就​​认为消息操作已完成。

不可靠的连接(UC)QP

一个UC QP正在以一种不可靠的方式连接(即发送和接收消息)到一个UC QP。 无法保证对方会收到邮件:损坏或乱序的数据包会被静默丢弃。 如果数据包被丢弃,则它所属的整个消息都将被丢弃。 在这种情况下,响应者不会停止,而是继续接收传入的数据包。 包的顺序不能保证。 支持的最大消息大小最大为2GB(此值可能会更低,取决于支持的RDMA设备属性)。 RC QP支持发送操作(无立即)和RDMA写操作(无立即)。

如果消息大小大于路径MTU,则在发送数据的一侧将其分段,然后在接收器的一侧进行重组。

一旦所有消息发送到结构,请求者就认为消息操作已完成。

响应器以正确的顺序接收到完整的消息并将其写入其(本地)内存后,它便认为消息操作已完成。

不可靠的数据报(UD)QP

一个QP可能以一种不可靠的方式以单播(一对一)或多播(一对多)的方式向任何其他UD QP发送和接收消息。 无法保证对方会收到邮件:损坏或乱序的数据包会被静默丢弃。 包的顺序不能保证。 支持的最大消息大小是最大路径MTU。 UD QP仅支持发送操作。

一旦(一个数据包)消息发送到结构,请求者就认为消息操作已完成。

一旦收到完整的消息并将数据写入其(本地)内存,响应器便认为消息操作已完成。

选择正确的QP类型

选择正确的QP类型对于应用程序的更正和可伸缩性至关重要。

如果满足以下条件,则应选择RC QP:

  • 需要面料的可靠性
  • 交换矩阵大小不大或群集大小不大,但并非所有节点都将流量发送到同一节点(一个受害者)

RC QP的几种用途可以是:RDMA上的FTP或RDMA上的文件系统。

如果满足以下条件,则应选择UC QP:

  • 不需要结构的可靠性(即可靠性根本不重要,或者由应用程序负责)
  • 交换矩阵大小不大或群集大小不大,但并非所有节点都将流量发送到同一节点(一个受害者)
  • 大消息(超过路径MTU)正在发送

UC QP的一种用途是:RDMA上的视频。

如果满足以下条件,则应选择UD QP:

  • 不需要结构的可靠性(即可靠性根本不重要,或者由应用程序负责)
  • 结构的大小很大,所有节点和每个节点都将消息发送到结构中的任何其他节点。 UD是解决可伸缩性问题的最佳解决方案之一。
  • 需要多播消息

UD QP的一种用途是:RDMA语音。

摘要

下表描述了每种QP传输服务类型的特征:

Metric UD UC RC
Opcode: SEND (w/o immediate) Supported Supported Supported
Opcode: RDMA Write (w/o immediate) Not supported Supported Supported
Opcode: RDMA Read Not supported Not supported Supported
Opcode: Atomic operations Not supported Not supported Supported
Reliability No No Yes
Connection type Datagram (One to any/many) Connected (one to one) Connected (one to one)
Maximum message size Maximum path MTU 2 GB 2 GB
Multicast supported Not supported Not supported

你可能感兴趣的:(QP服务类型)