【RDMA】9. RDMA之Queue Pair

原文:https://zhuanlan.zhihu.com/p/195757767

Queue Pair

我们曾经在3. RDMA基本元素一文中简单的介绍了QP的概念,本文将更深入的讲解一些关于QP的细节。

基本概念回顾

首先我们来简单回顾下关于QP的基础知识:

根据IB协议中的描述,QP是硬件和软件之间的一个虚拟接口。QP是队列结构,按顺序存储着软件给硬件下发的任务(WQE),WQE中包含从哪里取出多长的数据,并且发送给哪个目的地等等信息。

QP的概念

每个QP间都是独立的,彼此通过PD隔离,因此一个QP可以被视为某个用户独占的一种资源,一个用户也可以同时使用多个QP。

QP有很多种服务类型,包括RC、UD、RD和UC等,所有的源QP和目的QP必须为同一种类型才能进行数据交互。

虽然IB协议将QP称为“虚拟接口”,但是它是有实体的:

  • 硬件上,QP是一段包含着若干个WQE的存储空间,IB网卡会从这段空间中读取WQE的内容,并按照用户的期望去内存中存取数据。至于这个存储空间是内存空间还是IB网卡的片内存储空间,IB协议并未做出限制,每个厂商有各自的实现
  • 软件上,QP是一个由IB网卡的驱动程序所维护的数据结构,其中包含QP的地址指针以及一些相关的软件属性。

QPC

5. RDMA基本服务类型一文中,我们曾经提到过QPC全称是Queue Pair Context,用于存储QP相关属性。驱动程序里面是有储存QP的软件属性的,既然我们可以在软件里储存QP的属性,为什么还要用使用QPC呢?

这是因为QPC主要是给硬件看的,也会用来在软硬件之间同步Q

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值