一种非结构化数据传输系统的制作方法

文档序号:12729692阅读:365来源:国知局

本发明属于数据传输领域,尤其涉及一种非结构化数据传输系统。



背景技术:

非结构化数据库是指其字段长度可变,并且每个字段的记录又可以由可重复或不可重复的子字段构成的数据库,用它不仅可以处理结构化数据(如数字、符号等信息)而且更适合处理非结构化数据(全文文本、图像、声音、影视、超媒体等信息)。非结构化数据成为重要的数据类型,针对非结构化数据的研究发展到各个技术领域;非结构化数据包括以下几个类型:文本:在掌握了元数据结构时,机器生成的数据,如传感器等就一定能够进行解译。当然,流数据中有一些字段需要更加高级的分析和发掘功能。交互数据:这里指的是社交网络中的数据,大量的业务价值隐藏其中。人们表达对人、产品的看法和观点,并以文本字段的方式存储。为了自动分析这部分数据,我们需要借助实体识别以及语义分析等技术。你需要将文本数据以实体集合的形式展现,并结合其中的关系属性。图像:图像识别算法已经逐渐成为了主流。此外,这些技术也会产生实体,尽管获取关系以及舆情分析更加具有挑战性。音频:目前有许多研究是针对于解译音频流数据的内容,并能够判断说话者的情绪。然后在利用文本分析技术对这部分数据进行分析。视频:毫无疑问,视频是最具挑战性的数据类型。图像识别技术可以对每一帧图像进行抽取,当然,要真正做到对视频内容进行分析还需要技术的进一步发展。而视频中又包括音频,可以用上述的技术进行解译。非结构化数据的传输无疑是当前的一个热点方向。

现有技术中的采用的非结构化数据传输方法没有考虑到非结构化数据的特性来针对性的设置适应性的数据传输方式,作为和用户最贴近的数据类型,不能在数据传输中考虑用户的需求,对结构化数据安全性考虑不够深入等;基于上述诸多问题,现在亟需一种新的非结构化数据传输系统,能够实现将任何两点之间的各种类型的文件进行采集传输,能够接收指定任务的方式进行数据传输,能够基于用户需求实现不同服务质量值的数据传输,能够实现任意两点数据之间的安全传输,适应性的解决结构化数据的传输。



技术实现要素:

为了解决现有技术中的上述问题,本发明采用的技术方案如下:一种非结构化数据传输系统,其特征在于,该系统包括:多个发送端,多个传输节点,码本服务器,接收端;发送端和码本服务器,码本服务器和接收端之间均采用加密传输通道或安全传输通道进行通信连接;

发送端用于接收用户下达的非结构化数据传输任务,用户可以通过设置的方式对任务下达传输偏重信息;还用于将任务拆分为多个子任务;每个子任务负责对一组非结构化数据进行数据加密、校验、压缩和发送;发送端还用于从边缘传输节点获取可用数据传输路径及其相关参数;选择合适的数据传输路径进行数据传输;其中传输偏重信息中包含用户对本次非结构化数据传输的需求信息或要求信息;

传输节点包含边缘传输节点和中间传输节点,边缘传输节点基于发送端的请求获取到达接收端的可用数据传输路径并将可用数据传输路径及其相关参数返回给发送端;数据传输路径上包含1个或者多个传输节点,该包含的传输节点为边缘传输节点或中间传输节点或其组合;

码本服务器用于管理码本和密钥相关计算公式;该码本和密钥相关计算公式定期的被更新;还用于关联的保存加密相关参数;

接收端用于接收发送端发送的非结构化数据数据包,获取码本和密钥相关计算公式,计算密钥值,完成对同一任务对应的所有子任务对应的非结构化数据的接收、校验、解密,对这些非结构化数据进行拼接组合,存储拼接后的非结构化数据组合,然后对发送端发送接收完成消息。

进一步的,发送端为用户移动终端、个人计算机、智能家居节点、物联网节点。

进一步的,发送端支持全量数据传输模式,接受用户指定并创建全量数据传输任务进行全量数据的处理和传输。

进一步的,发送端在进行数据传输之前进行数据的预处理,将过期数据以及临时数据删除。

进一步的,发送端定期的进行特定数据的发送,该特定数据是用户指定的需要定期传输的数据。

进一步的,接收端为用户使用的移动终端设备,用户通过移动终端设备定期的接收发送端发送的数据。

进一步的,该指定的数据为智能家具系统中各个节点的运行状态信息。

进一步的,该运行状态信息为工作状态信息、报警信息、资源使用量信息。

进一步的,用户在下达传输任务前需要通过鉴权,只有在鉴权通过后才能下达任务,用户通过优先、或无线的方式进行任务的下达。

进一步的,用户在下达任务时指定本次需要传输的非结构化数据。

本发明的有益效果包括:能够实现将任何两点之间的各种类型的文件进行采集传输,能够接收指定任务的方式进行数据传输,能够基于用户需求实现不同QOS值的数据传输,能够实现任意两点数据之间的安全传输,适应性的解决结构化数据的传输。

【附图说明】

此处所说明的附图是用来提供对本发明的进一步理解,构成本申请的一部分,但并不构成对本发明的不当限定,在附图中:

图1是本发明的一种非结构化数据传输系统的结构图。

【具体实施方式】

下面将结合附图以及具体实施例来详细说明本发明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。

参见附图1,是本发明所应用的一种非结构化数据传输系统,该系统包括多个发送端,多个传输节点,码本服务器,接收端;发送端和码本服务器,码本服务器和接收端之间均采用加密传输通道或安全传输通道进行通信连接;

发送端用于接收用户下达的非结构化数据传输任务,用户可以通过设置的方式对任务下达传输偏重信息;还用于将任务拆分为多个子任务;每个子任务负责对一组非结构化数据进行数据加密、校验、压缩和发送;发送端还用于从边缘传输节点获取可用数据传输路径及其相关参数;选择合适的数据传输路径进行数据传输;其中传输偏重信息中包含用户对本次非结构化数据传输的需求信息或要求信息;

传输节点包含边缘传输节点和中间传输节点,边缘传输节点基于发送端的请求获取到达接收端的可用数据传输路径并将可用数据传输路径及其相关参数返回给发送端;数据传输路径上包含1个或者多个传输节点,该包含的传输节点为边缘传输节点或中间传输节点或其组合;

码本服务器用于管理码本和密钥相关计算公式;该码本和密钥相关计算公式定期的被更新;还用于关联的保存加密相关参数;

接收端用于接收发送端发送的非结构化数据数据包,获取码本和密钥相关计算公式,计算密钥值,完成对同一任务对应的所有子任务对应的非结构化数据的接收、校验、解密,对这些非结构化数据进行拼接组合,存储拼接后的非结构化数据组合,然后对发送端发送接收完成消息;

基于上述系统,下面对本发明的一种非结构化数据传输方法进行详细说明:(1)发送端接收非结构化数据传输任务及其对应的任务优先级TaskPr;具体为:发送端从任务中获取任务优先级TaskPr,以及每个待传输数据文件名称及其存储位置;获取待传输非结构化数据的类型数目nt,为每种数据类型分别创建子任务T1~Tnt,每个子任务负责采集一种类型的非结构化数据,子任务用于基于存储位置和数据文件名称查找到相应类型的非结构化数据文件,采集该类型的非结构化数据文件,并将该类型的所有非结构化数据文件按照文件名称进行排序,将排序后的非结构化数据文件进行组合,组合后形成该类型的非结构化数据文件组合;子任务保存该子任务包含的文件名称和该文件的大小之间的对应关系;

(2)发送端计算每个子任务优先级;具体为:计算每个子任务采集的非结构化数据文件的优先级,计算每个优先级等级的文件数目,根据公式(1)计算该子任务的优先级Tpri;其中,k为第k个优先权等级,Wk为第k优先权等级对应的权重系数,PLk表示第k个优先权等级对应的文件数目;

Tpri=TaskPr×(∑Wk×PLk/∑PLk) 公式(1)

(3)按照优先级顺序分别对每个子任务进行数据传输处理;具体为:将所有子任务设置为就绪状态,并按照优先级从大到小的顺序排序,将排序后的子任务交由调度单元进行调度;调度单元为发送端内所包含的单元;

调度单元将子任务按照其优先级放入调度队列中进行统一的调度;由于调度列表是针对所有任务对应的所有子任务进行统一的调度,因此,在子任务进入调度列表后其调度顺序会发生改变,所有子任务的优先级需要和已经进入调度列表的其他子任务的优先级进行比较后重新进行排序;可以通过设置任务优先级的方式来调整该任务对应的所有子任务的优先级,当将任务的优先级设置为足够大时,可以使得该任务对应的所有的子任务均处于调度列表的前部;当系统存在子任务调度可用资源时,调度单元从调度队列头部获取第一个子任务进行调度;被调度的子任务将执行后续具体的数据传输处理;

具体的:通过子任务的方式使得所有的数据传输任务均可以按照其优先级的顺序有序完成;对于高优先级的任务即使晚进入队列也会得到优先的处理;可以通过提高优先级的方式调整处理顺序;

(4)发送端子任务基于随机数计算数据加密密钥K1;具体为:获取随机数S1,S2,S3,基于该随机数S1~S3和该子任务数据类型从码本服务器获取码本;基于随机数S1~S3和码本,采用公式(2)计算本次数据加密密钥K1,其中,在参与计算时,用S3代表的运算替代S3;

其中,S1和S2的取值范围是1~N,S3的值为0~3之间,S3=0~3分别标识加法、乘法、减法、mod除法运算,其中N为预设值,该预设值需要定期的同时在发送端和接收端作更新;该预设值可以保存在码本服务器中;C1~Cx是从码本的位置P1~Px处获取的数据值;其中,x采用公式(3)计算得到;Pj采用(4)计算得到;Lall为码本数据的总长度;公式(4)中的除法“/”为整除,i是数据值C的编号,j为位置P的编号;

x=|N+S1+S2|-|N-S1-S2| 公式(3)

Pj=(j×P1)mod Lall 公式(4)

当码本为二进制表示时,该数据值为从位置P开始的8或16或32或64位数据值;

优选的:码本服务器根据数据类型组织,不同的数据类型对应多个码本,通过S1~S3的计算值和码本建立对应关系,该计算值可以是哈希值;码本服务器对码本进行管理,例如:定期的作更新;

(5)发送端子任务采用密钥对非结构化数据进行加密处理;具体为:判断密钥数值K1大小,根据不同密钥值采用不同的加密方式:(A)当密钥0<=K1<TK1时,采用循环移位加密方式,将非结构化数据采用左/右移动K1次的方式进行加密;(B)当密钥TK1<=K1<TK2时,采用替换方式加密,将非结构化数据的第mK1位置的非结构化数据值替换为默认值,例如None,0等值,并将替换掉的所有第mK1位置的非结构化数据值保存到替换表中,并将该替换表的数据区分的按顺序放置在非结构化数据的结尾处;优选的:区分放置为在非结构化数据的结尾处放置预设数量的特定值后再存放替换表;(C)当密钥TK2<=K1<TK3时,采用分块交换方式加密;将非结构化数据分为大小为K1的数据块,从第一个数据块开始,2个数据块分为一组,对于组内相邻的两块Block和Block+1,将Block的第一个数据值和Block+1的倒数第一个数据值作交换,将Block的第二个数据值和Block+1的倒数第二个数据值作交换,直到Block和Block+1的所有数据值均交换完毕为止;如果组内只有一个数据块,或者组内任一个数据块的大小不足K1,则不对该组作交换加密;(D)当密钥K1>=TK3时,采用填充加密方式,每隔K1个数据长度,填充预定的值序列;该预定的值序列可以是预定子序列的重复;例如:对于文本类型的非结构化数据,填充A~Z序列的重复;

在加密中使用的随机数S1,S2,S3前后均填充特殊数值序列后形成第一预设长度的特殊数据块,将该第一预设长度的特殊数据块可区分的添加在非结构化数据的头部;

其中,TK1~TK3和码本关联保存在码本服务器中;

(6)发送端子任务对加密后的非结构化数据进行数据校验处理;具体为:将加密后的非结构化数据分块,每块的大小为(S1×S2),对于大小不足(S1×S2)的数据块,数据块结尾用默认值填充,得到数据块Block1~Blockball,其中,ball为数据块的总块数;例如:对于文本数据用ASCII的最大值填充;计算每个数据块的签名值Sig1~Sigball,将该签名值的组作为该非结构化数据的校验值序列;将该校验值序列可区分的放置在该非结构化数据的头部;

单独的对随机数S1,S2,S3所在的第一预设长度的特殊数据块计算数据签名;并将该数据签名放在签名序列的第一位置;

优选的:可以替换的采用常用的数据校验算法来计算校验值,例如:MD5算法,奇偶校验算法等;可以替换的对该签名值序列计算其总的签名值Tsig作为该非结构化数据的校验值;

(7)发送端子任务对非结构化数据进行压缩处理;具体为:判断该非结构化数据对应的数据类型,基于数据类型选择最优压缩算法,对该非结构化数据进行压缩;由于非结构化数据可能是多种类型的,如:全文文本、图像、声音、影视、超媒体等,每种类型都有其适应的压缩算法,采用该适应的压缩算法相比其他压缩算法能够达到较高的压缩比;预存数据类型及其对应的最优压缩算法,通过查询该对应关系获取所要采用的压缩算法;

由于子任务对应的非结构化数据类型都是一致的,因此可以一致性的选择压缩算法提高压缩效率;

(8)发送端子任务选择最优传输路径进行数据传输;具体为:将子任务对应的非结构化数据进行组包处理,获取发送端到接收端的所有数据传输路径集合;选取QOS值最高的数据传输路径对组包后形成的数据包进行数据传输;其中路径PTHi对应的QOSi值的采用公式(5)计算得到;其中,PTH_TSi为路径i的通信开销,例如:传输预定长度的数据包所需要的时间长度;PTH_SFi为路径i的安全级别,例如:该路径包含的高安全级别子路径的个数等;PTH_MSi为路径i的通信质量,例如:丢包率等;

QOSi=PTH_TSi/∑PTH_TSi+PTH_SFi/∑PTH_SFi+PTH_MSi/∑PTH_MSi 公式(5)

通过综合考量数据传输路径的服务质量,选择最优的数据传输路径进行子任务对应数据包的传输;

优选的:可替代的根据子任务偏重因子(yi,1,yi,2,yi,3)根据公式(6)计算QOSi;子任务偏重因子是一个三元组,分别用于对QOS的三个考量因素进行调整;

QOSi=yi,1×PTH_TSi/∑PTH_TSi+yi,2×PTH_SFi/∑PTH_SFi+yi,3×PTH_MSi/∑PTH_MSi公式(6)

该子任务偏重因子(yi,1,yi,2,yi,3)由任务根据用户需求来设置;例如:用户强调安全的传输数据,对于通信时间可以作出让步,此时,可以增加yi,2的值,而减小yi,1的值;

(9)接收端接收发送端发送的非结构化数据包,提取数据包中的数据,对提取的数据进行解压缩;具体的:根据压缩类型选择相应的解压缩算法对数据包进行解压缩;

(10)接收端从非结构化数据的头部获取校验值序列,从第一预设长度的特殊数据块中提取S1,S2,S3值对数据进行分块,对每个数据块进行数据校验,在数据校验完毕后,根据数据块校验失败率决定是否请求重新发送数据;当校验失败率超过第一失败阈值时,给发送端发送校验失败消息,请求发送端重新进行数据的发送;否则,丢弃失败数据块包含的数据,并对该数据所在的区域填充指定数据值;

第一失败阈值可以根据非结构化数据的类型以及用户指定来设定;例如:对于视频数据,在丢失数量较小时,对观看效果的影响可以不大,可以容忍一定程度的失败率;

优选的:首先获取第一个数据签名值及其对应的随机数S1,S2,S3所在的第一预设长度的特殊数据块,并对其进行数据校验,当校验失败时,丢弃接收到的所有数据,给发送端发送校验失败消息,请求发送端重新进行数据的发送;优选的:请求发送端重新发送第一个数据签名值及其对应的随机数S1,S2,S3所在的第一预设长度的特殊数据块;在数据量较大的情况下,丢弃所有数据造成较大的资源浪费,可以请求仅仅发送该校验失败信息;

(11)接收端根据随机数S1~S3计算数据加密密钥K1并进行解密;具体为:采用和发送端类似的方式计算加密密钥K1,基于该密钥值K1采用和发送端对应的解密方式进行解密处理;

(12)接收端对完成对同一任务对应的所有子任务对应的非结构化数据的接收、校验、解密后,对这些非结构化数据进行拼接组合,并对发送端发送接收完成消息;

本发明的一种非结构化数据传输系统,能够实现将任何两点之间的各种类型的文件进行采集传输,能够接收指定任务的方式进行数据传输,能够基于用户需求实现不同QOS值的数据传输,能够实现任意两点数据之间的安全传输。

以上所述仅是本发明的较佳实施方式,故凡依本发明专利申请范围所述的构造、特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1