【技术实现步骤摘要】
数据处理的方法、网卡和服务器
本申请涉及计算机
,尤其涉及数据处理的方法、网卡和服务器。
技术介绍
在远程直接数据存取(remotedirectmemoryaccess,RDMA)技术中,发送端服务器的网卡(networkinterfacecard,NIC)可以先从缓存中获取发送队列条目(sentrequestentry,SQE),再根据SQE从内存中获取SQE对应的数据,向接收端服务器发送所述数据。在发送端服务器的网卡获取SQE之前,发送端服务器的处理器先将SQE划分为多个分段,并将所述SQE的所有分段存储到缓存中。若SQE的长度大于预设阈值,处理器可以采用门铃机制通知网卡处理SQE。例如,网卡采用直接内存存取技术(directmemoryaccess,DMA)从缓存中获取SQE的所有分段。若SQE的长度小于或等于预设阈值,处理器将存储到缓存中的SQE的所有分段发送给网卡时,可能出现乱序。为了解决乱序问题,传统技术中处理器划分多个分段过程中,按照分块顺序,每获取一个分段指令下发到处理器内部的缓存,再通过高速通用串行总线(PeripheralComponentInterconnectexpress,PCIe)报文将该分段指令发送给网卡,然后,处理器给缓存发送一个PCIeBarrier指令,清空缓存中已发送给网卡的该分段指令。以此类推,处理器按顺序再向缓存下发下一个分段指令。从而,通过PCIeBarrier的函数,保证SQE的分段指令之间的顺序。上述方法虽然克服了SQE的所有分段之间的乱序问题,但是又会造 ...
【技术保护点】
1.一种数据处理的方法,其特征在于,包括:/n网卡接收第i个外围部件互连标准PCIe报文,所述第i个PCIe报文包括第一发送队列条目SQE的第j段指令和第一地址段,所述第一地址段用于指示所述第j段指令在所述第一SQE中分段位置,其中,i为整数,i∈[1,n],j为整数,j∈[1,n],所述第一SQE按照预置大小划分为n段,n为整数,n大于或等于1;/n所述网卡将所述第j段指令存储至第一存储区域的第j个存储单元,其中,所述第一存储区域为所述网卡中用于存储所述第一SQE的存储区域,所述第一存储区域包括m个存储单元,每个存储单元用于存储所述第一SQE的一段指令,m为整数,n≤m;/n当所述第一SQE的n段指令全部存储至所述第一存储区域时,所述网卡根据所述第一存储区域中n个存储单元的指令获取所述第一SQE,以及所述第一SQE归属的队列对QP的标识和所述第一SQE在所述QP的位置标识;/n所述网卡根据所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识执行数据处理。/n
【技术特征摘要】
1.一种数据处理的方法,其特征在于,包括:
网卡接收第i个外围部件互连标准PCIe报文,所述第i个PCIe报文包括第一发送队列条目SQE的第j段指令和第一地址段,所述第一地址段用于指示所述第j段指令在所述第一SQE中分段位置,其中,i为整数,i∈[1,n],j为整数,j∈[1,n],所述第一SQE按照预置大小划分为n段,n为整数,n大于或等于1;
所述网卡将所述第j段指令存储至第一存储区域的第j个存储单元,其中,所述第一存储区域为所述网卡中用于存储所述第一SQE的存储区域,所述第一存储区域包括m个存储单元,每个存储单元用于存储所述第一SQE的一段指令,m为整数,n≤m;
当所述第一SQE的n段指令全部存储至所述第一存储区域时,所述网卡根据所述第一存储区域中n个存储单元的指令获取所述第一SQE,以及所述第一SQE归属的队列对QP的标识和所述第一SQE在所述QP的位置标识;
所述网卡根据所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识执行数据处理。
2.根据权利要求1所述的方法,其特征在于,当i=1时,在所述网卡将所述第j段指令存储至第一存储区域的第j个存储单元之前,所述方法还包括:
所述网卡判断所述第一地址段是否是所述第一存储区域所在的存储空间的地址范围内的地址;
若所述第一地址段是所述第一存储区域所在的存储空间的地址范围内的地址,所述网卡确定所述第j段指令为blueframe的数据;
若所述第一地址段不是所述第一存储区域所在的存储空间的地址范围内的地址,所述网卡确定所述第j段指令不是blueframe的数据。
3.根据权利要求1所述的方法,其特征在于,当j=1时,在所述网卡接收第i个外围部件互连标准PCIe报文之后,所述方法还包括:
所述网卡获取所述第一SQE的总长度,第1段指令包括所述第一SQE的总长度;
所述网卡比较所述第一SQE的总长度和预设阈值;
若所述第一SQE的总长度小于或等于所述预设阈值,所述网卡确定所述第一SQE的第1段指令为blueframe的数据;
若所述第一SQE的总长度大于所述预设阈值,所述网卡确定所述第一SQE的第1段指令不是blueframe的数据。
4.根据权利要求3所述的方法,其特征在于,在所述网卡将所述第j段指令存储至第一存储区域的第j个存储单元之后,所述方法还包括:
所述网卡判断所述第一SQE是否接收完成;
若所述第一SQE接收完成,生成结束符。
5.根据权利要求3-4中任一项所述的方法,其特征在于,若所述第一SQE的总长度小于或等于所述预设阈值,所述方法还包括:
所述网卡获取所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识,所述第1段指令包括所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识;
所述网卡建立所述第一SQE归属的QP的标识、所述第一SQE在所述QP的位置标识和所述第一存储区域的标识间的对应关系。
6.根据权利要求5所述的方法,其特征在于,所述网卡根据所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识执行数据处理,包括:
所述网卡根据所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识确定存储所述第一SQE的第一存储区域;
从所述第一存储区域的起始地址开始,依次读取所述第一SQE的n个分段指令;
根据所述第一SQE的n个分段指令获取并发送所述第一SQE对应的数据。
7.根据权利要求6所述的方法,其特征在于,所述网卡根据所述第一SQE归属的QP的标识和所述第一SQE在所述QP的位置标识确定存储所述第一SQE的第一存储区域,包括:
根据所述第一SQE归属的QP的标识、所述第一SQE在所述QP的位置标识和所述第一存储区域的标识间的对应关系确定存储所述第一SQE的第一存储区域。
8.根据权利要求1-7中任一项所述的方法,其特征在于,当i=1时,在所述网卡将所述第j段指令存储至第一存储区域的第j个存储单元之前,所述方法还包括:<...
【专利技术属性】
技术研发人员:陈天翔,林伟彬,侯新宇,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。