【技术实现步骤摘要】
基于FPGA、CPU协同的网络算法调用方法及系统
[0001]本专利技术涉及计算机网络通信
,具体涉及一种基于FPGA、CPU协同的网络算法调用方法及系统。
技术介绍
[0002]网络算法调用是一个基础网络应用,它的运行包含一个部署于PC上的Client和一个部署于服务器上的Server以及算法引擎构成。现有服务器密码机多采用高性能网络处理器和高性能算法卡配合使用,其中网络处理器运行Server程序,负责和Client建立连接关系,完成与Client之间的数据交互;高性能算法卡主要作为算法引擎提供算法服务,常规使用PCIe的方式为网络处理器提供算法服务。
[0003]现有技术中,首先需要部署在服务器上的Server将数据接收完成,再调用算法引擎的算法服务,最后将运算后的数据传送给Client,导致整个流程路径过长,处理时延过长。同时由于需要CPU的参与,CPU的网络处理能力很容易成为制约调用性能的瓶颈。如何缩短调用流程,减少CPU的压力,提高整体的性能是亟待解决的技术问题。
技术实现思路
[00 ...
【技术保护点】
【技术特征摘要】
1.基于FPGA、CPU协同的网络算法调用方法,其特征在于,包括:FPGA接收网络数据包,FPGA对所述网络数据包的类型进行识别:若所述网络数据包为配置管理的数据报文,FPGA判断配置管理的数据报文格式是否正确,若配置管理的数据报文格式正确,FPGA将配置管理的数据报文转发到CPU;CPU接收FPGA转发的所述网络数据包,CPU对所述网络数据包的类型进行识别,若所述网络数据包为配置管理的数据报文,CPU判断配置管理的数据报文格式是否正确,若配置管理的数据报文格式正确,CPU将配置管理的数据报文和本地密码资源合成出算法参数,CPU将合成的算法参数发送到FPGA,FPGA将算法参数配置到算法中;若所述网络数据包为业务报文,FPGA判断配置管理的数据报文格式是否正确,若业务报文的格式正确,从业务报文中获取句柄,若根据句柄检索到上下文信息,FPGA从上下文表项空间中提取密钥和上下文信息进行密码运算。2.根据权利要求1所述的基于FPGA、CPU协同的网络算法调用方法,其特征在于,FPGA从上下文表项空间中提取密钥和上下文信息进行密码运算时,根据业务报文中flag标识,判断业务报文是否为最后一包,如果业务报文为最后一包,将数据包返回,并且由CPU断开业务连接,FPGA设置句柄和上下文信息处于失效状态。3.根据权利要求2所述的基于FPGA、CPU协同的网络算法调用方法,其特征在于,对FPGA中处于失效状态的句柄和上下文信息进行清除。4.根据权利要求2所述的基于FPGA、CPU协同的网络算法调用方法,其特征在于,如果业务报文非最后一包,FPGA将运算结束后的中间链变量刷新到上下文信息中;然后将数据包返回宿主机。5.根据权利要求1所述的基于FPGA、CPU协同的网络算法调用方法,其特征在于,若根据句柄未检索到上下文信息,FPGA向CPU发送密钥协商申请报文,CPU收到FPGA发送的密钥协商申请报文后开始报文协商,CPU获取业务密钥和参数信息并转发给FPGA;FPGA创建一个句柄,合成密钥信息和上下文初始化参数;将业务密钥、参数信息作为上下文信息更新到FPGA地址空间里;将句柄设置为有效标识,使句柄和上下文信息处于激活状态。6.基于FPGA、CPU协同的网络算法调用系统,其特征在于,包括FPGA处理单元和CPU处理单元;所述FPGA处理单元包括:第一数据接收模块,用于FPGA接收网络数据包;第一数据识别模块,用于FPGA对所述网络数据包的类型进行识别;第一格式判断模块,用于若所述网络数据包为配置管理的数据报文,FPGA判断配置...
【专利技术属性】
技术研发人员:祝经强,晁坤,
申请(专利权)人:江苏新质信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。