一种在高速智能网卡/DPU内节约DMA通道资源方法和装置制造方法及图纸

技术编号:34495941 阅读:31 留言:0更新日期:2022-08-10 09:15
本发明专利技术一种在高速智能网卡/DPU内节约DMA通道资源方法和装置,对进入智能网卡/DPU的网络报文进行解析;将解析后的网络报文进行匹配;得到队列号;将队列号结合端口号、标识符、随机数和校验码形成元数据;在网络报文的尾部添加元数据;并将网络报文通过PCIe/DMA传输给软件层;软件层识别到网络报文中元数据后,通过标识符、端口号、队列号和随机数进行验算,并将验算结果与校验码进行比较;若验算结果与校验码一致,提取出元数据中的端口号和队列号;若验算结果与校验码不一致,标识为无队列报文,送入默认队列;将网络报文送入指定CPU的指定队列。在高速智能网卡/DPU内用单个通道来实现对应的多个端口及多个队列;节省芯片内的逻辑资源,节省CPU资源,降低成本。降低成本。降低成本。

【技术实现步骤摘要】
一种在高速智能网卡/DPU内节约DMA通道资源方法和装置


[0001]本专利技术涉及智能网卡/DPU
,特别涉及一种在高速智能网卡/DPU内节约DMA通道资源方法和装置。

技术介绍

[0002]随着5G及IoT等技术的应用及网络的部署,网络吞吐量及接入量大幅增加,网络报文处理的压力汇聚到了服务器端,随着带宽的增加,25GbE,到100GbE,网络需要多个CPU核参与处理,这就不得不影响CPU正在处理的业务,用智能网卡来协助CPU处理网络报文可以释放CPU资源。而DPU(数据处理单元)为智能网卡的升级版,可以在智能网卡基础上也同时卸载了网络及存储负荷,让CPU可以参与更多业务。
[0003]现有的高速智能网卡/DPU通过PCIe/DMA的方式来与主机进行数据交互,支持1

4个端口,每个端口支持多个队列,如果在网卡芯片内实现,多个端口需要有DMA对应的多个通道来一一对应支持,同时为了支持多个队列,需要在高速智能网卡/DPU内实现多队列的转发,多个DMA通道及多队列的转发会占用网卡/DPU芯片内的逻辑资源,增加逻辑复本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种在高速智能网卡/DPU内节约DMA通道资源方法,其特征在于,具体包括如下步骤:S1、对进入智能网卡/DPU的网络报文进行解析;S2、将解析后的网络报文进行匹配;得到队列号;将队列号结合端口号、标识符、随机数和校验码形成元数据;S3、在网络报文的尾部添加元数据;并将网络报文通过PCIe/DMA传输给软件层;S4、软件层识别到网络报文中元数据后,通过标识符、端口号、队列号和随机数进行验算,并将验算结果与校验码进行比较;S5、若验算结果与校验码一致,则提取出元数据中的端口号和队列号,将网络报文送入指定CPU的指定队列;若验算结果与校验码不一致,则标识为无队列报文,送入默认队列。2.如权利要求1所述的一种在高速智能网卡/DPU内节约DMA通道资源方法,其特征在于,步骤S2中端口号为1个字节,通过网络报文进入智能网卡/DPU的端口序号所决定。3.如权利要求1所述的一种在高速智能网卡/DPU内节约DMA通道资源方法,其特征在于,步骤S2中标识符为3个字节,通过用户自定义获得;所述随机数为2个字节,通过系统随机生成。4.如权利要求1所述的一种在高速智能网卡/DPU内节约DMA通道资源方法,其特征在于,步骤S2中校验码的计算方式如下:S21、系统准备256个素数;S22、用标识符、端口号、队列号和随机数的8个字节,根据每个字节中的值,取对应的素数,得到8个素数;S23、将所得到的8个素数进行左移,按位加运算,具体公式如下:R=(R<<1)+V;其中R的初始值是第一个素数,V的初...

【专利技术属性】
技术研发人员:阎燕唐青松
申请(专利权)人:浙江锐文科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1