传输数据的校验方法、存储介质技术

技术编号:24293235 阅读:36 留言:0更新日期:2020-05-26 20:51
本发明专利技术提供传输数据的校验方法、存储介质,方法包括:将待传输数据拆分成两个以上的数据包体,并创建对应的第一片段对象,将第一片段对象存入第一链表,第一片段对象包括对应的数据包体及其包体校验值、第一片段对象对应第一链表的索引值;依据待传输数据的校验值和第一片段对象的总数,计算得到对应第一链表的第一哈希值;依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值;分别发送第一哈希值和各个第一片段对象对应的第二哈希值至数据接收端。本发明专利技术实现分布式数据传输下传输效率的提升,同时又能确保传输数据完整性。

Verification method and storage medium of transmission data

【技术实现步骤摘要】
传输数据的校验方法、存储介质
本专利技术涉及数据传输领域,具体涉及传输数据的校验方法、存储介质。
技术介绍
按照传统的数据传输方式,由于一些网络原因的问题,导致设备与设备之间传输大文件时容易因某个设备连接不稳定产生传输中断以及连接断开。为了解决组网传输的问题,可以使用数据分包传输的方式来解决,但是分包后的数据如何进行存储和校验,一直是一个难题。其中一种方式是利用一个哈希值作为获取数据的数据包的源头,这就要求了哈希值和数据包内容的对应关系。通常是将哈希值和包体内容通过MAP产生一个映射关系。但是当设备接收到一个哈希值时,如何根据当前的哈希值找出该哈希值在链表中的索引值呢?如果通过哈希值到存储哈希值的链表中去获取所在的索引内容这样的执行方式步骤会比较多。因此,有必要提供一种传输数据的校验方法、存储介质,以提高拆包数据的查询效率。
技术实现思路
本专利技术所要解决的技术问题是:提供传输数据的校验方法、存储介质,能够提高拆包数据的索引效率。为了解决上述技术问题,本专利技术采用的技术方案为:传输数据的校验方法,包括:数据发送端将待传输数据拆分成两个以上的数据包体;创建各个数据包体对应的第一片段对象,并将所述第一片段对象存入第一链表,所述第一片段对象包括对应的数据包体及其包体校验值、第一片段对象对应第一链表的索引值;依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述第一链表的第一哈希值;依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值;分别发送所述第一哈希值和各个第一片段对象对应的第二哈希值至数据接收端。本专利技术提供的第二个技术方案为:第一计算机可读存储介质,其上存储有第一计算机程序,所述第一计算机程序在被处理器执行时能实现上述传输数据的校验方法所包含的步骤。本专利技术的有益效果在于:数据包体的第一片段对象包含有其对应第一链表的索引值,以第一片段对象对应的第二哈希值作为获取对应数据包体的依据,不仅能更好的适用于具有单次数据传输量限定的不同端之间进行数据传输,使接收端能依据第二哈希值获取的索引值从第一链表快速且准确地获取对应的数据包体,同时还能依据同时获取的包体校验值判断所获取的数据包体的完整性;进一步的,接收端还能依据第一哈希值验证所同步的链表和数据整体的完整性。由此,本专利技术不仅能显著提高数据包体的获取效率;而且还具备验证所获取的单个数据包体和数据整体完整性的能力。从而具有提高数据传输效率和确保数据传输完整性的特点。附图说明图1为本专利技术传输数据的校验方法的流程示意图;图2为本专利技术实施例一的传输数据的校验方法中设备A的流程示意图;图3为本专利技术实施例一的传输数据的校验方法中设备B的流程示意图。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:依据各个第一片段对象对应的第二哈希值分次获取对应数据包体,解决单次数据传输量限制的问题;第一片段对象包含有其数据包体对应第一链表的索引值,能依据索引值快速且准确地定位到所要传输的数据包体,提高数据包体的获取效率。本专利技术涉及的技术术语解释:请参照图1,本专利技术提供传输数据的校验方法,包括:数据发送端将待传输数据拆分成两个以上的数据包体;创建各个数据包体对应的第一片段对象,并将所述第一片段对象存入第一链表,所述第一片段对象包括对应的数据包体及其包体校验值、第一片段对象对应第一链表的索引值;依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述第一链表的第一哈希值;依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值;分别发送所述第一哈希值和各个第一片段对象对应的第二哈希值至数据接收端。从上述描述可知,本专利技术的有益效果在于:能显著提升每个待传输的包体数据的获取效率;能实现对每个数据包体以及传输完成的数据整体的完整性进行准确判断。进一步的,所述依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述链表的第一哈希值,具体为:依据待传输数据的校验值、所述第一片段对象的总数以及一随机数,计算得到对应所述第一链表的第一哈希值。由上述描述可知,在第一哈希值中加入随机数,能保证第一哈希值在传输过程中的安全性,同时也能提高对待传输数据整体完整性验证的可靠性。进一步的,所述依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值,具体为:依据各个第一片段对象的包体校验值、索引值以及对应索引值的操作符,计算得到各个第一片段对象对应的第二哈希值。由上述描述可知,在第二哈希值中加入操作符,能据此判断对应的第一片段对象对应第一链表的结点位置是否位于首尾,以起到数据同步开始和结束的标识作用。进一步的,发送至数据接收端的第二哈希值为依据数据传输最大吞吐量对计算得到的第二哈希值进行压缩后得到的压缩后第二哈希值。由上述描述可知,通过对第一哈希值进行压缩,能更好的满足对单次数据吞吐量有限值要求的网络环境(如蓝牙传输)使用。进一步的,所述操作符包括开始操作符、正常发送操作符和结束操作符;所述索引值与第一链表的结点位置相对应;与第一链表的表头结点对应的索引值对应开始操作符,与第一链表的表尾结点对应的索引值对应结束操作符,与第一链表的其他结点对应的索引值对应正常发送操作符。由上述描述可知,能利用操作符标识位于链表首尾结点的第一片段对象,起到提示数据传输开始和结束的作用;同时又能确保连续性的完成整个链表的同步。进一步的,还包括:数据接收端创建第二链表;数据接收端解析当前接收到的第二哈希值,获取对应的第一片段对象的包体校验值和索引值;数据接收端创建包含所获取的包体校验值和索引值的第二片段对象,并依据所述索引值将所述第二片段对象存入第二链表;数据接收端依据所述索引值向数据发送端获取对应的第一片段对象中的数据包体;数据接收端计算所获取的数据包体的包体校验值;数据接收端对比其计算得到的包体校验值和解析得到的包体校验值;若不一致,则重新依据所述索引值向数据发送端获取对应的第一片段对象中的数据包体;若一致,则将所获取的数据包体存入所述第二片段对象,同时继续解析接收到的下一个第二哈希值,直至完成所有第二哈希值的解析;数据接收端依据所述第一哈希值验证第二链表是否与第一链表一致。由上述描述可知,在数据接收端,能依据第二哈希值快速且准确的获取对应的数据包体,同时验证所获取的数据包体的完整性;又能依据第一哈希值验证第二链表和所获取的数据整体的完整性,从而提高数据同步效率和数据同步完整性。进一步的,所述数据接收端依据所述第一哈希值验证第二链表是否与第一链表一致,具体为:数据接收端遍历第二链表,获本文档来自技高网
...

【技术保护点】
1.传输数据的校验方法,其特征在于,包括:/n数据发送端将待传输数据拆分成两个以上的数据包体;/n创建各个数据包体对应的第一片段对象,并将所述第一片段对象存入第一链表,所述第一片段对象包括对应的数据包体及其包体校验值、第一片段对象对应第一链表的索引值;/n依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述第一链表的第一哈希值;/n依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值;/n分别发送所述第一哈希值和各个第一片段对象对应的第二哈希值至数据接收端。/n

【技术特征摘要】
1.传输数据的校验方法,其特征在于,包括:
数据发送端将待传输数据拆分成两个以上的数据包体;
创建各个数据包体对应的第一片段对象,并将所述第一片段对象存入第一链表,所述第一片段对象包括对应的数据包体及其包体校验值、第一片段对象对应第一链表的索引值;
依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述第一链表的第一哈希值;
依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值;
分别发送所述第一哈希值和各个第一片段对象对应的第二哈希值至数据接收端。


2.如权利要求1所述的传输数据的校验方法,其特征在于,所述依据待传输数据的校验值和所述第一片段对象的总数,计算得到对应所述链表的第一哈希值,具体为:
依据待传输数据的校验值、所述第一片段对象的总数以及一随机数,计算得到对应所述第一链表的第一哈希值。


3.如权利要求1所述的传输数据的校验方法,其特征在于,所述依据各个第一片段对象的包体校验值和索引值,计算得到各个第一片段对象对应的第二哈希值,具体为:
依据各个第一片段对象的包体校验值、索引值以及对应索引值的操作符,计算得到各个第一片段对象对应的第二哈希值。


4.如权利要求3所述的传输数据的校验方法,其特征在于,发送至数据接收端的第二哈希值为依据数据传输最大吞吐量对计算得到的第二哈希值进行压缩后得到的压缩后第二哈希值。


5.如权利要求3所述的传输数据的校验方法,其特征在于,所述操作符包括开始操作符、正常发送操作符和结束操作符;
所述索引值与第一链表的结点位置相对应;与第一链表的表头结点对应的索引值对应开始操作符,与第一链表的表尾结点对应的索引值对应结束操作符,与第一链表的其他结点对应的索引值对应正常发送操作符。


6.如权利要求1所述的传输数据的校验方法,其特征在于,还包括:
数据接收端创建第二链表;
数据接收端解析当前接收到的第二哈希值,获取对应的第一片段对象的包体校验值和索引值;
数据接...

【专利技术属性】
技术研发人员:刘德建张雅彬张明辉杜建强上官海涛郭玉湖
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1