一种在文件传输系统中提升文件校验速度的方法技术方案

技术编号:39752409 阅读:16 留言:0更新日期:2023-12-17 23:50
本发明专利技术公开一种在文件传输系统中提升文件校验速度的方法

【技术实现步骤摘要】
一种在文件传输系统中提升文件校验速度的方法


[0001]本专利技术涉及文件传输
,尤其涉及一种在文件传输系统中提升文件校验速度的方法


技术介绍

[0002]目前的文件传输系统中,大多文件完整性校验采用
md5、xxhash
单种文件校验模式

文件完整性校验是指在文件传输前和文件传输后进行校验保证文件正确

现有文件检验的方法包括:
[0003]1.
简单校验,通过对比传输端的文件和接收端的文件的名称

大小

最后修改时间戳,如果一致认为是同一个文件

优点是非常快,缺点是进行了文件修改,但当文件大小和时间戳依然一致时则无法检查出来

[0004]2.64

xxhash
校验,速度比较快

内存占用低

对磁盘性能要求不是很高,在磁盘性能比较高的情况下,面对大文件无法达到磁盘性能的上限

[0005]3.64

xxhash
校验分块校验,将大文件切分成多块,分别处理每个小块,然后结果逐一对各个小块的结果进行对比,缺点是较为占用计算资源

[0006]进一步地,目前的文件传输系统中,大多数的文件传输系统文件哈希计算都是放在服务器本地

随着科技的发展,网络带宽越来越大,数据量在短时间吞吐量也随之猛增

>当服务器出现短时间接收大量数据这种情况的时候,由于文件的哈希计算时很耗磁盘资源和
cpu
资源的,必然会导致服务器资源不够用,从而降低整体速度,严重还会导致磁盘响应过慢
、cpu
占用过高,如果采用的是挂载网络盘,还会导致计算哈希占用网卡资源,从而导致网络速度整体变慢,没有充分的使用资源

[0007]因此,现有技术存在缺陷,需要改进


技术实现思路

[0008]本专利技术要解决的技术问题是:提供一种在文件传输系统中提升文件校验速度的方法,充分利用资源,提升文件检验速度

[0009]本专利技术的技术方案如下:提供一种在文件传输系统中提升文件校验速度的方法,包括以下步骤

[0010]S1
:传输端与接收端建立网络传输通道

[0011]S2
:传输端向接收端传送将要发送的文件
A
的名称

大小以及最后修改时间

[0012]S3
:接收端查看其本地是否存在文件
A。
[0013]若不存在文件
A
,直接跳过校验阶段然后对文件
A
进行传输,传输结束后,进入步骤
S4。
[0014]若存在文件
A
,对接收端的文件
A
与传输端的文件
A
进行简单校验;所述简单校验为对文件
A
的大小以及最小的修改时间进行校验;判断是否一致;若一致,文件
A
上传结束;传输端对下一个文件
A
进行传输,进入步骤
S2
;若不一致,传输端上传文件
A
,接收端将接收到
的文件
A
替换掉本地已有的文件
A
,进入步骤
S4。
[0015]S4
:若文件
A
的大小超过
1GB
,传输端和接收端则采用
64

xxhash
校验进行分块校验;文件
A
的大小超过
1GB
,采用分块校验,能够更快的对文件
A
校验完,提升校验速度

若文件
A
的大小范围为
64KB

1GB
,传输端和接收端采用
64

xxhash
校验进行校验;若文件
A
小于
64KB
,传输端和接收端采用简单校验,小于
64KB
的文件采用简单校验,因为小于
64KB
的小文件通常会在一个网络包中传递过去,很难出现错误,所以进行简单的校验即可

[0016]S5
:若传输端与接收端校验一致,文件
A
传输成功,传输端对下一个文件
A
进行传输,进入步骤
S2
;若传输端与接收端校验不一致,文件
A
传输不成功,进入步骤
S2
,对文件
A
重新进行传输

[0017]S6
:当所有的文件
A
传输成功后,结束传输

[0018]本方案根据文件的大小来选择不同的检验方法,能够极大的提升文件的检验速度,同时具有非常高的可靠性

通过传输端和接收端之间进行校验能力的协商,在不同的文件大小,给每一个传输的文件提供最优校验方法

[0019]进一步地,在步骤
S3
中,接收端检索文件
A
的名称来判断本地是否有文件
A。
[0020]进一步地,在步骤
S1
中,还包括:文件开始传输前,传输端向接收端传送传输端的计算资源信息;所述计算资源信息包括:
CPU
并发线程的数量

内存大小

磁盘性能响应时间

[0021]进一步地,
64

xxhash
校验进行分块校验为将文件
A
分成
n
个小块,前
n
‑1个小块的大小为
64MB
,第
n
个小块小于或等于
64MB
,然后逐一对各个小块的进行
xxhash
校验

[0022]进一步地,当采用
64

xxhash
校验时,采用由若干哈希计算节点和至少一个哈希管理节点组成的哈希计算系统来实现

[0023]进一步地,所述哈希计算系统的创建包括以下步骤
。SS1
:计算节点启动时,读取计算节点自身的配置,设置最大并行计算哈希任务数量,并根据配置的
ip、
端口通过网络连接哈希管理节点,在哈希管理节点上进行注册
。SS2
:哈希管理节点将哈希计算节点加入到计算节点的列表中,记录最大并行哈希计算任务数量,等待请求端发送哈希计算请求;所述请求端为传输端或接收端

[0024]进一步地,采用哈希计算系统本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种在文件传输系统中提升文件校验速度的方法,其特征在于,包括以下步骤:
S1
:传输端与接收端建立网络传输通道;
S2
:传输端向接收端传送将要发送的文件
A
的名称

大小以及最后修改时间;
S3
:接收端查看其本地是否存在文件
A
;若不存在文件
A
,直接跳过校验阶段然后对文件
A
进行传输,传输结束后,进入步骤
S4
;若存在文件
A
,对接收端的文件
A
与传输端的文件
A
进行简单校验;所述简单校验为对文件
A
的大小以及最小的修改时间进行校验;判断是否一致;若一致,文件
A
上传结束;传输端对下一个文件
A
进行传输,进入步骤
S2
;若不一致,传输端上传文件
A
,接收端将接收到的文件
A
替换掉本地已有的文件
A
,进入步骤
S4

S4
:若文件
A
的大小超过
1GB
,传输端和接收端则采用
64

xxhash
校验进行分块校验;若文件
A
的大小范围为
64KB

1GB
,传输端和接收端采用
64

xxhash
校验进行校验;若文件
A
小于
64KB
,传输端和接收端采用简单校验;
S5
:若传输端与接收端校验一致,文件
A
传输成功,传输端对下一个文件
A
进行传输,进入步骤
S2
;若传输端与接收端校验不一致,文件
A
传输不成功,进入步骤
S2
,对文件
A
重新进行传输
。2.
根据权利要求1所述的一种在文件传输系统中提升文件校验速度的方法,其特征在于,还包括:
S6
:当所有的文件
A
传输成功后,结束传输
。3.
根据权利要求1所述的一种在文件传输系统中提升文件校验速度的方法,其特征在于,在步骤
S3
中,接收端检索文件
A
的名称来判断本地是否有文件
A。4.
根据权利要求1所述的一种在文件传输系统中提升文件校验速度的方法,其特征在于,在步骤
S1
中,还包括:文件开始传输前,传...

【专利技术属性】
技术研发人员:肖水伟高斌邹琼周双全
申请(专利权)人:深圳市瑞云科技股份有限公司
类型:发明
国别省市:

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

1