全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211350205.3 (22)申请日 2022.10.31 (71)申请人 新华三信息技 术有限公司 地址 310052 浙江省杭州市滨江区长河路 466号11楼 (72)发明人 杨创  (74)专利代理 机构 北京博思佳知识产权代理有 限公司 1 1415 专利代理师 杨春香 (51)Int.Cl. G06F 9/50(2006.01) G06F 9/46(2006.01) G06F 9/448(2018.01) (54)发明名称 指纹计算方法及装置 (57)摘要 本申请提供了指纹计算方法及 装置。 本实施 例中, 通过将指纹计算加载至硬件 (具体是硬件 层接入的QAT硬件加速卡) , 这就使得指纹计算不 再依赖于CP U, 可以减轻CP U的压力, 大大减少CPU 在识别重复数据这一操作上的占用率。 进一步 地, 在本实施例中, 通过已创建的指纹计算线程 可以一次性下发多个I O数据块给同一个QAT实例 进行指纹计算, 这可实现基于一个QAT实例可同 时对多个IO数据块进行指纹计算, 充分利用QAT 实例的硬件指纹计算能力。 权利要求书2页 说明书7页 附图4页 CN 115509763 A 2022.12.23 CN 115509763 A 1.一种指纹计算方法, 其特 征在于, 该 方法应用于电子设备, 包括: 通过已创建的指纹计算线程, 获得该指纹计算线程相关联的IO数据块; 所述指纹计算 线程是在应用层创建的用于参与指纹计算的线程, 所述电子设备的硬件层接入的快速辅助 技术QAT硬件加速卡具有对应的n个QAT实例, 所述n个QAT实例被 分配给已创建的m个指纹计 算线程, 每一指纹计算线程采用指 定结构体记录其被 分配的QAT实例以及该QAT实例相对应 的IO数据块信息, 每一指纹计算线程相关联的IO数据块与该指纹计算线程被分配的至少一 个QAT实例对应的至少一个IO数据块信息相对应; 通过已创建的指纹计算线程, 下发该指纹计算线程相关联的IO数据块至内核层中的 QAT驱动, 通过QAT驱动转发该IO数据块至硬件层中与该IO数据块相对应的QAT实例, 以基于 该QAT实例对接收到的IO数据块进行指纹计算; 按照异步方式获取各QAT实例对IO数据块进行指纹计算得到的IO数据块对应的指纹计 算结果; 所述异步方式是指异步于下发IO数据块的方式。 2.根据权利要求1所述的方法, 其特征在于, 所述n个QAT实例是按照均匀分配的方式分 配给已创建的m个指纹计算线程, n、 m大于1。 3.根据权利 要求2所述的方法, 其特征在于, 每一指纹计算线程被分配n/m个QAT实例; n 为m的倍数; 每一指纹计算线程采用n/m个会话软件结构体Session记录其被分配的QAT实例以及 该 QAT实例相对应的IO数据块。 4.根据权利要求1所述的方法, 其特 征在于, 该 方法之前进一 步包括: 针对待需要执行指纹计算的IO数据包, 按照均匀分配的方式分配IO数据包中的IO数据 块给各指纹计算线程; 针对每一指纹计算线程, 按照指定要求分配该指纹计算线程被分配的IO数据块给该指 纹计算线程被分配的各QAT实例; 所述指定要求至少 包括: 每一QAT实例被要求处理的IO数 据块的数量。 5.根据权利要求1所述的方法, 其特征在于, 所述通过已创建的指纹计算线程, 获得该 指纹计算线程相关联的IO数据块包括: 通过已创建的指纹计算线程, 轮询该指纹计算线程 对应的指 定结构体中还未被执行指纹计算的IO数据块信息, 获得轮询到的至少一个IO数据 块信息对应的IO数据块作为该指纹计算线程相关联的IO数据块; 在按照异步方式获取各QAT实例对IO数据块进行指纹计算得到的IO数据块对应的指纹 计算结果之后, 进一步包括: 在所述指定结构体中对已被执行指纹计算的IO数据块对应的 IO数据块信息进 行标记, 以指示被标记的IO数据块信息为已被执行指纹计算的IO数据块信 息。 6.根据权利要求1所述的方法, 其特征在于, 所述按照异步方式获取各QAT实例对IO数 据块进行指纹计算得到的IO数据块对应的指纹计算结果包括: 在设定的结果查询事件到达时, 通过已创建的指纹计算线程, 从所述硬件层获得该指 纹计算线程相关联的IO数据块被执行指纹计算得到的IO数据块对应的指纹计算结果; 所述 结果查询事件与下发IO数据块、 上层业 务处理其他事务无关。 7.一种指纹计算装置, 其特 征在于, 该装置应用于电子设备, 包括: 在应用层创建的用于参与指纹计算的m个指纹计算线程、 硬件层接入的快速辅助技术权 利 要 求 书 1/2 页 2 CN 115509763 A 2QAT硬件加速卡、 内核层中的QAT驱动; 其中, QAT硬件加速卡具有对应的n个QAT实例, 所述n 个QAT实例被分配给已创建的m个指纹计算线程; 每一指纹计算线程采用指 定结构体记录其 被分配的QAT实例以及该QAT实例 相对应的IO数据块信息; 每一指纹计算线程被用于, 获得该指纹计算线程相关联的IO数据块; 每一指纹计算线 程相关联的IO数据块与该指纹计算线程被 分配的至少一个QAT实例对应的至少一个IO数据 块信息相 对应; 以及, 下发该指纹计算线程相关联的IO数据块至内核层中的QAT驱动, 通过 QAT驱动转发该IO数据块至硬件层中与该IO数据块相对应的QAT实例, 以基于该QAT实例对 接收到的IO数据块进行指纹计算; 以及按照异步方式获取各QAT实例 对IO数据块进行指纹 计算得到的IO数据块对应的指纹计算结果; 所述异步方式是指异步于下发IO数据块的方 式。 8.根据权利要求7所述的装置, 其特征在于, 所述n个QAT实例是按照均匀分配的方式分 配给已创建的m个指纹计算线程, n、 m大于1, n 为m的倍数; 每一指纹计算线程被分配n/m个QAT实例; 每一指纹计算线程采用n/m个会话软件结构 体Session记录其被分配的QAT实例以及该QAT实例 相对应的IO数据块。 9.根据权利要求7所述的装置, 其特征在于, 所述m个指纹计算线程被按照均匀分配的 方式分配待需要执 行指纹计算的IO数据包中的IO数据块; 每一指纹计算线程, 按照指定要求分配该指纹计算线程被分配的IO数据块给该指纹计 算线程被分配的各QAT实例; 所述指定要求至少 包括: 每一QAT实例被要求处理的IO数据块 的数量。 10.根据权利要求7所述的装置, 其特征在于, 所述指纹计算线程在设定的结果查询事 件到达时, 从所述硬件层获得该指纹计算线程相关联的IO数据块被执行指纹计算得到的IO 数据块对应的指纹计算结果; 所述结果查询事件与下发IO数据块、 上层业务处理其他事务 无关。权 利 要 求 书 2/2 页 3 CN 115509763 A 3

PDF文档 专利 指纹计算方法及装置

文档预览
中文文档 14 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 指纹计算方法及装置 第 1 页 专利 指纹计算方法及装置 第 2 页 专利 指纹计算方法及装置 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 01:00:28上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。