(19)国家知识产权局
(12)发明 专利
(10)授权公告 号
(45)授权公告日
(21)申请 号 202210791427.2
(22)申请日 2022.07.07
(65)同一申请的已公布的文献号
申请公布号 CN 114885045 A
(43)申请公布日 2022.08.09
(73)专利权人 浙江锐文科技有限公司
地址 311121 浙江省杭州市余杭区文一西
路1001号衢州海创园D座6楼
(72)发明人 阎燕 唐青松
(74)专利代理 机构 北京志霖恒远知识产权代理
有限公司 1 1435
专利代理师 戴莉
(51)Int.Cl.
H04L 69/22(2022.01)
H04L 69/06(2022.01)H04L 47/50(2022.01)
G06F 9/50(2006.01)
G06F 13/28(2006.01)
G06F 13/42(2006.01)
(56)对比文件
CN 113810791 A,2021.12.17
审查员 郝凯利
(54)发明名称
一种在高速智能网卡/DPU内节约DMA通道资
源方法和装置
(57)摘要
本发明一种在高速智能网卡/DP U内节约DMA
通道资源方法和装置, 对进入智能网卡/DP U的网
络报文进行解析; 将解析后的网络报文进行匹
配; 得到队列号; 将队列号结合端口号、 标识符、
随机数和校验码形成元数据; 在网络报文的尾部
添加元数据; 并将网络报 文通过PCIe/DMA传输给
软件层; 软件层识别到网络报文中元数据后, 通
过标识符、 端口号、 队列号和随机数进行验算, 并
将验算结果与校验码进行比较; 若验算结果与校
验码一致, 提取出元数据中的端口号和队列号;
若验算结果与校验码不一致, 标识为无队列报
文, 送入默认队列; 将网络报文送入指定CP U的指
定队列。 在高速智能网卡/DP U内用单个通道来实
现对应的多个端口及多个队列; 节省芯片内的逻
辑资源, 节省CPU资源, 降低成本 。
权利要求书1页 说明书6页 附图1页
CN 114885045 B
2022.10.04
CN 114885045 B
1.一种在高速智能网卡/DPU内节约DMA通道资源方法, 其特征在于, 具体包括如下步
骤:
S1、 对进入智能网卡/D PU的网络报文 进行解析;
S2、 通过解析网络报文得到的五元组或用户定义的字段进行匹配, 得到队列号; 将队列
号结合端口号、 标识符、 随机数和校验码形成元数据; 所述端口号为 1个字节, 通过网络报文
进入智能网卡/D PU的端口序号所决定; 所述标识符为3个字节, 通过用户自定义获得;
校验码的计算方式如下:
S21、 系统准备25 6个素数;
S22、 用标识符、 端口号、 队列 号和随机数的8个字节, 根据每个字节中的值, 取对应的素
数, 得到8个素 数;
S23、 将所 得到的8个素 数进行左移, 按位加运 算, 具体公式如下:
R= (R<<1) +V; 其中R的初始值是第一个素数, V的初始值是第二个素数, 每运算一次V的
值变成下一个素 数, 共运算7次; 最终结果即为校验码;
S3、 在网络报文的尾部添加元数据; 并将网络报文通过DMA数据搬运方式的从PCIe标准
协议接口传输给 软件层;
S4、 软件层识别到网络报文中元数据后, 通过标识符、 端 口号、 队列号和随机数进行验
算, 并将验算结果与校验码进行比较;
S5、 若验算结果与 校验码一致, 则提取出元数据中的端口号和队列号; 若验算结果与 校
验码不一致, 则标识为无队列报文, 送入默认队列;
S6、 将网络报文送入指定 CPU的指定队列。
2.如权利要求1所述的一种在高速智能网卡/DPU内节约DMA通道资源方法, 其特征在
于, 步骤S2中所述随机数为2个字节, 通过系统随机生成。
3.如权利要求1所述的一种在高速智能网卡/DPU内节约DMA通道资源方法, 其特征在
于, 步骤S4中通过 标识符、 端口号、 队列号和随机数进行验算的具体过程如下:
S41、 取与S21相同的25 6个素数;
S42、 用标识符、 端口号、 队列 号和随机数的8个字节, 根据每个字节中的值, 取对应的素
数, 得到8个素 数;
S43、 将所 得到的8个素 数进行左移, 按位加运 算, 具体公式如下:
R= (R<<1) +V; 其中R的初始值是第一个素数, V的初始值是第二个素数, 每运算一次V的
值变成下一个素 数, 共运算7次; 得到验算结果。
4.一种在高速智能网卡/DPU内节约DMA通道资源装置, 其特征在于, 包括存储器和一个
或多个处理器, 所述存储器中存储有可执行代码, 所述一个或多个处理器执行所述可执行
代码时, 用于实现权利要求1 ‑3任一项所述的一种在高速智能网卡/DPU内节约 DMA通道资源
方法。
5.一种计算机可读存储介质, 其特征在于: 其上存储有程序, 该程序被处理器执行时,
实现权利要求1 ‑3任一项所述的一种在高速智能网卡/D PU内节约DMA通道资源方法。权 利 要 求 书 1/1 页
2
CN 114885045 B
2一种在高 速智能网卡/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内实现多队列的
转发, 多个D MA通道及多队列的转 发会占用网卡/DPU芯片内的逻辑资源, 增加逻辑复杂性及
相应成本; 如果在软件层面实现, 则需要软件层面来实现报文的解析及转发, 消耗大量CPU
资源。
发明内容
[0004]本发明的目的在于提供一种在高速智能网卡/DPU内节约DMA通道资源方法和装
置, 以克服现有技 术中的不足。
[0005]为实现上述目的, 本发明提供如下技 术方案:
[0006]本发明公开了一种在 高速智能网卡/DPU内节约DMA通道资源方法, 具体包括如下
步骤:
[0007]S1、 对进入智能网卡/D PU的网络报文 进行解析;
[0008]S2、 将解析后的网络报文进行匹配; 得到队列号; 将队列号结合端口号、 标识符、 随
机数和校验码形成元 数据;
[0009]S3、 在网络报文的尾部添加元 数据; 并将网络报文通过PCIe/DMA传输给 软件层;
[0010]S4、 软件层识别到网络报文中元数据后, 通过标识符、 端口号、 队列号和随机数进
行验算, 并将验算结果与校验码进行比较;
[0011]S5、 若验算结果与校验码一致, 则提取出元数据中的端口号和队列号, 将网络报文
送入指定CPU的指定队列; 若验算结果与校验码不一致, 则标识为无队列报文, 送入默认队
列。
[0012]作为优选, 步骤S2中端口号为1个字节, 通过网络报文进入智能网卡/DPU的端口序
号所决定 。
[0013]作为优选, 步骤S2中标识符为3个字节, 通过用户自定义获得; 所述随机数为2个字
节, 通过系统随机生成;说 明 书 1/6 页
3
CN 114885045 B
3
专利 一种在高速智能网卡 DPU内节约DMA通道资源方法和装置
文档预览
中文文档
9 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共9页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 13:26:40上传分享