1.一种基于FPGA设备的网络定义存储方法,其特征在于,包括以下步骤:
步骤S101、用户服务器为每个用户创建用户主进程,并为每个用户的每个待存储数据创建用户子进程;
步骤S102、每个所述用户子进程向对应的用户主进程申请唯一密钥,所述用户主进程将所述每个待存储数据拆分为若干子数据;
步骤S103、每个所述用户子进程向对应的用户主进程申请空闲的FPGA密钥存储寄存器,并将所述用户子进程的唯一密钥写入该FPGA密钥存储寄存器;
步骤S104、每个所述用户子进程向对应的用户主进程申请空闲的FPGA数据存储寄存器,并将对应的所述子数据、密钥的保存位置和处理逻辑信息写入对应的FPGA数据存储寄存器;
步骤S105、当所述用户子进程完成该FPGA数据存储寄存器的写入操作后,立即用阻塞方式读该FPGA数据存储寄存器;FPGA根据从FPGA数据存储寄存器中读出的子数据、密钥的保存位置和处理逻辑信息,取出所述待存储数据所对应的唯一密钥和子数据,并根据处理逻辑信息对所述子数据进行逻辑处理,输出N个子子数据,其中,N为正整数;将所述N个子子数据写入该FPGA数据存储寄存器;
步骤S106、把所述N个子子数据分别上传到N个网络存储服务器,所述用户子进程通知用户主进程释放相应的FPGA数据存储寄存器和FPGA密钥存储寄存器;
步骤S107、结束所述用户子进程和用户主进程。
2.根据权利要求1所述的一种基于FPGA设备的网络定义存储方法,其特征在于,所述的处理逻辑包括加密、加扰和加冗余。
3.根据权利要求1所述的一种基于FPGA设备的网络定义存储方法,其特征在于,所述的N个为至少3个。
4.根据权利要求1所述的一种基于FPGA设备的网络定义存储方法,其特征在于,所述用户进程、用户子进程的调度、以及所述FPGA密钥存储寄存器和所述FPGA数据存储寄存器的申请和释放,都由所述用户服务器统一调度。
5.一种基于FPGA设备的网络定义读取方法,其特征在于,包括以下步骤:
步骤S201、用户服务器为每个用户创建用户主进程,并为每个用户的每个待读取数据创建用户子进程;
步骤S202、每个所述用户子进程从用户服务器中读出每个待读取数据所对应的唯一密钥和该数据对应的N个子子数据在网络存储服务器上的存储位置信息,所述用户子进程根据所述存储位置信息,下载该存储位置上的N个子子数据;
步骤S203、每个所述用户子进程向对应的用户主进程申请空闲的PFGA密钥存储寄存器,并将步骤S202中所述待读取数据所对应的唯一密钥写入该FPGA密钥存储寄存器;
步骤S204、每个所述用户子进程向对应的用户主进程申请空闲的FPGA数据存储寄存器,并将步骤S202中下载的N个子子数据、密钥存储位置和处理逻辑信息写入该FPGA数据存储寄存器;
步骤S205、当所述用户子进程完成该FPGA据存储寄存器的写入操作后,立即用阻塞方式读FPGA数据存储寄存器;FPGA根据从FPGA数据存储寄存器中读出的待读取数据所对应的唯一密钥在FPGA密钥存储寄存器中的位置以及处理逻辑信息,取出待读取数据所对应的唯一密钥以及子子数据,按照所述处理逻辑信息对子子数据进行逻辑处理,输出子数据,并把所述子数据写入FPGA数据存储寄存器;
步骤S206、所述用户子进程通过阻塞方式读出步骤S205的FPGA数据存储寄存器中的子数据,并把该子数据返还给用户,所述用户子进程通知用户主进程释放相应的FPGA数据存储寄存器和FPGA密钥存储寄存器;
步骤S207、结束所述用户子进程和用户主进程。
6.根据权利要求5所述的一种基于FPGA设备的网络定义读取方法,其特征在于,所述的处理逻辑包括去冗余、去扰和解密。
7.根据权利要求5所述的一种基于FPGA设备的网络定义读取方法,其特征在于,所述的N个为至少3个。
8.根据权利要求5所述的一种基于FPGA设备的网络定义读取方法,其特征在于,所述用户进程、用户子进程的调度、以及所述FPGA密钥存储寄存器和所述FPGA数据存储寄存器的申请和释放,都由所述用户服务器统一调度。
9.一种基于FPGA设备的网络定义存储系统,包括:用户服务器和N个网络存储服务器,所述用户服务器配置有FPGA、CPU和内存,所述FPGA配置有寄存器,所述寄存器包括FPGA数据存储寄存器和FPGA密钥存储寄存器,所述FPGA数据存储寄存器用于读写待处理子数据,所述FPGA密钥存储寄存器用于读写密钥,所述用户服务器配置有CPU和内存,其特征在于,所述系统采用权利要求1至4任意一项所述的一种基于FPGA设备的网络定义存储方法。