NVME-oF IP 设计7 :设计扫盲5

QP、WR、CQ、MR 等核心概念

RDMA 通信模型中涉及多个核心组件,其中包括队列对(QP)、工作请求(WR)、完成队列(CQ)以及内存区域(Memory Region,MR)等概念,这些组件共同构成了RDMA数据传输机制的基础。

(1)Queue Pair(QP)

QP是RDMA通信的核心结构,由发送队列(SQ)和接收队列(RQ)组成。SQ用于存放待发送的工作请求,而RQ用于存放接收缓冲区描述信息。RDMA通信双方通过QP实现数据交换,每个QP对应一个独立的通信连接。QP在初始化过程中需要经过多个状态转换,例如RESET、INIT、RTR(Ready to Receive)以及RTS(Ready to Send)等状态,当QP进入RTS状态后即可开始数据传输。

(2)Work Request(WR)

WR是RDMA操作的基本执行单元,用于描述一次数据传输请求。每个WR中包含操作类型、数据地址、数据长度以及远端内存地址等信息。根据操作类型的不同,WR可以分为SEND、RECV、READ和WRITE等多种类型。应用程序通过向SQ或RQ提交WR来发起数据传输操作。

(3)Completion Queue(CQ)

CQ用于存储通信操作完成后的结果。当RNIC执行完一个WR后,会在CQ中生成一个完成条目(Completion Queue Entry,CQE)。CQE中包含WR的执行状态、数据长度以及标识信息。应用程序可以通过轮询CQ或等待中断通知来获取CQE,从而判断对应的WR是否执行成功。

(4)Memory Region(MR)

MR是RDMA可访问的内存区域。在RDMA通信过程中,应用程序需要将内存注册为MR,RNIC才能够访问该内存空间。内存注册过程会生成本地密钥(Local Key,LKey)和远程密钥(Remote Key,RKey),其中LKey用于本地访问权限控制,而RKey用于远程节点访问权限验证。通过这种机制,RDMA可以在保证安全性的前提下实现远程内存访问。

上述组件共同构成了RDMA的通信基础,使RNIC能够独立完成数据传输操作。

B站已给出之前的相关性能演示视频,如想进一步了解,请搜索B站用户:专注与守望

https://www.bilibili.com/video/BV1f6mbBeEiH/?spm_id_from=333.337.search-card.all.click\&vd_source=c355545d27a44fe96188b7caefeda6e7

相关推荐
木子n15 小时前
车载以太网与SOME/IP服务化通信实战-01.从字节到服务:SOME/IP报文解析与四通道开销账
网络·网络协议·tcp/ip·车载以太网·some/ip
Knight_AL8 小时前
基于 Netty 实现的 WebSocket 服务端
网络·websocket·网络协议
沫璃染墨10 小时前
从零入门计算机网络系列(一):计算机网络初识——从网络发展史到TCP/IP协议》
linux·网络·网络协议·tcp/ip·计算机网络
是个西兰花10 小时前
TCP套接字编程实战:从服务器搭建到多进程处理
服务器·网络协议·tcp/ip
gwf21611 小时前
RDMA事件与异步通知机制:CMA事件与设备事件深度解析
驱动开发·linux内核·rdma·rdma_cm·异构计算·异步事件·cve分析
Da Da 泓14 小时前
谈谈HTTP
网络·网络协议·http
要吃这碗饭14 小时前
YouTube 数据抓取出现 429/403 错误?2026 反爬机制拆解与爬虫选型指南
网络·爬虫·网络协议
YumiProxy14 小时前
代理IP自动切换实战:会话保持与请求头配置避坑指南
服务器·网络·网络协议·tcp/ip·ip
花间相见15 小时前
【计算基础|网络02】HTTP 原理:报文结构、方法语义与状态码
网络·网络协议·http
Multipath71217 小时前
无人载具的高可靠低时延聚合组网方案
网络·网络协议·安全·udp·智能路由器