1.一种用于处理远程直接内存访问请求的方法,其特征在于,包括:
响应于用户空间发送批量远程直接内存访问RDMA请求,在RDMA网卡中为所述批量RDMA请求分配链路;
将所述批量RDMA请求中的每个RDMA请求封装成供RDMA网卡的链路识别的描述符;
将所封装成的多个描述符的描述符物理地址构造成链表;
将所述链表的起始物理地址下发至所分配的链路,以使用所分配的链路依次读取所述链表中的描述符物理地址并对描述符物理地址对应的描述符中所封装的RDMA请求进行处理。
2.根据权利要求1所述的方法,其特征在于,所述将所封装成的多个描述符的描述符物理地址构造成链表,包括:
对所述多个描述符的描述符物理地址进行分组,得到至少一个分组;
将每个分组作为链表的节点,构造成链表。
3.根据权利要求2所述的方法,其特征在于,所述对所述多个描述符的描述符物理地址进行分组,得到至少一个分组,包括:
按照预先为每个分组设置的描述符物理地址数量,对所述多个描述符的描述符物理地址进行分组,得到至少一个分组。
4.根据权利要求2所述的方法,其特征在于,所述将所封装成的多个描述符的描述符物理地址构造成链表,还包括:
在所述链表的每个节点中记录下一个节点中描述符物理地址的数量;以及
所述方法还包括:
将所述链表中第一个节点中描述符物理地址的数量下发给所分配的链路。
5.根据权利要求1-4之一所述的方法,其特征在于,所述方法还包括:
检测所述RDMA网卡对批量RDMA请求的处理是否超时;
向所述用户空间返回用于指示正常或超时的指示信息。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
检测所述RDMA网卡是否接收到目标节点或转发节点在发生传输异常时发回的否定回答NACK包;
当接收到NACK包时,解析所述NACK包以确定异常类型,并向所述用户空间返回用于指示异常类型的指示信息。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
判断所述异常类型是否为预设异常类型;
若所述异常类型为预设异常类型,使用所述RDMA网卡进行数据重传。
8.一种用于处理远程直接内存访问请求的装置,其特征在于,包括:
分配单元,用于响应于用户空间发送批量远程直接内存访问RDMA请求,在RDMA网卡中为所述批量RDMA请求分配链路;
封装单元,用于将所述批量RDMA请求中的每个RDMA请求封装成供RDMA网卡的链路识别的描述符;
构造单元,用于将所封装成的多个描述符的描述符物理地址构造成链表;
第一下发单元,用于将所述链表的起始物理地址下发至所分配的链路,以使用所分配的链路依次读取所述链表中的描述符物理地址并对描述符物理地址对应的描述符中所封装的RDMA请求进行处理。
9.根据权利要求8所述的装置,其特征在于,所述构造单元包括:
分组子单元,用于对所述多个描述符的描述符物理地址进行分组,得到至少一个分组;
构造子单元,用于将每个分组作为链表的节点,构造成链表。
10.根据权利要求9所述的装置,其特征在于,所述分组子单元进一步用于:
按照预先为每个分组设置的描述符物理地址数量,对所述多个描述符的描述符物理地址进行分组,得到至少一个分组。
11.根据权利要求9所述的装置,其特征在于,所述构造单元还包括:
记录单元,用于在所述链表的每个节点中记录下一个节点中描述符物理地址的数量;以及
所述装置还包括:
第二下发单元,用于将所述链表中第一个节点中描述符物理地址的数量下发给所分配的链路。
12.根据权利要求8-11之一所述的装置,其特征在于,所述装置还包括:
超时检测单元,用于检测所述RDMA网卡对批量RDMA请求的处理是否超时;
返回单元,用于向所述用户空间返回用于指示正常或超时的指示信息。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
包检测单元,用于检测所述RDMA网卡是否接收到目标节点或转发节点在发生传输异常时发回的否定回答NACK包;
解析单元,用于当接收到NACK包时,解析所述NACK包以确定异常类型,并向所述用户空间返回用于指示异常类型的指示信息。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
判断单元,用于判断所述异常类型是否为预设异常类型;
重传单元,用于若所述异常类型为预设异常类型,使用所述RDMA网卡进行数据重传。