CN102752283B - 大数据量文件的传输方法及系统 - Google Patents

大数据量文件的传输方法及系统 Download PDF

Info

Publication number
CN102752283B
CN102752283B CN201210174047.0A CN201210174047A CN102752283B CN 102752283 B CN102752283 B CN 102752283B CN 201210174047 A CN201210174047 A CN 201210174047A CN 102752283 B CN102752283 B CN 102752283B
Authority
CN
China
Prior art keywords
transmission
file
check information
receiving terminal
receiving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201210174047.0A
Other languages
English (en)
Other versions
CN102752283A (zh
Inventor
卓华
邱源峰
沈刚
彭运泽
陈勇
陶力
刘仕杰
陈锦
方炜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FUJIAN SANAO INFORMATION TECHNOLOGY Co Ltd
Original Assignee
FUJIAN SANAO INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FUJIAN SANAO INFORMATION TECHNOLOGY Co Ltd filed Critical FUJIAN SANAO INFORMATION TECHNOLOGY Co Ltd
Priority to CN201210174047.0A priority Critical patent/CN102752283B/zh
Publication of CN102752283A publication Critical patent/CN102752283A/zh
Application granted granted Critical
Publication of CN102752283B publication Critical patent/CN102752283B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种大数据量文件的传输方法及系统,其中大数据量文件的传输方法包括以下步骤:S1、在文件传输的发送端,对待发送文件进行分块处理,在生成所述发送子文件块的同时,生成所述发送子文件块的第一校验信息;S2、将所述发送子文件块及第一校验信息传输至接收端;S3、在接收端,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;S4、将所述第二校验信息与接收到的第一校验信息进行比对,并向发送端发送相应的信息;S5、发送端接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;S6、根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾。

Description

大数据量文件的传输方法及系统
技术领域
本发明涉及计算机网络领域、文件传输技术,尤其涉及媒体资产管理的大数据量文件的传输方法及系统。
背景技术
目前,媒资所管理的媒体资产一般都是数据量非常大的文件,几乎都是以G为单位的,并且资料都是很珍贵的,所以当利用网络传输这些文件时需要保证以下两点:1、要保证素材的完整性;2、由于文件的事数据量大,故而需增加文件校验。
现有技术中通常采用的文件传输方式有两种:块式传输(简称块传输)和流式传输(简称流传输)。
块传输:是指每次传输一个数据块,服务端在接收到这一完整的块的时候进行校验并将通过校验的文件写入。但块传输也存在着以下缺点:1、如果服务端在接收时发生验证通不过,则需要客户端重新开始传这一个数据块;2、如果数据块被分的太小,那么传输的总体速度不快;3、如果数据块被分的太大,则丢包时丢掉的数据块就太大了,而且校验大数据块花的时间也比较长;4、由于各子文件块在传输时不具有顺序性,接收端接收、写入数据时,各子文件块之间很容易出现位置偏移的现象,造成视频播放时模糊、卡顿、马赛克等问题。
流传输:是指客户端向服务端实时地传输文件流,服务端在接收到文件流的同时就可以开始实时地写入文件了,无须等到整个文件全部传输完毕再进行文件地写入。流传输一般用在音视频在线观看的时候,也可以用在普通文件传输的时候。但流传输无法实现断点续传,且在传输过程无法进行校验,只能在文件流传输结束后进行文件校验,这个时候如果发现文件校验不通过就只能重新开始传输了。这样既造成了时间、成本的浪费,也造成了资源的浪费。
鉴于此,有必要提出一种技术,能够省时、安全地传输媒体资产管理的大数据量文件。
发明内容
本发明主要解决的技术问题是提供一种大数据量文件的传输方法及系统,用以解决现有技术中传输大数据量文件时对时间、成本、资源造成的浪费现象。
为解决上述问题,本发明采用的一种技术方案是:提供一种大数据量文件的传输方法,包括以下步骤:
S1、在文件传输的发送端,对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
S2、将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
S3、在接收端接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
S4、将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,再次执行所述步骤S3直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息。
S5、发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
S6、根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则返回所述步骤S1,从所述文件的接收位置起对所述等待子文件块进行分块处理并生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
其中,所述步骤S1中得到所述第一校验信息具体通过以下步骤:按与接收端约定被校验的字节数,对所述发送子文件块进行MD5编码,得到所述第一校验信息;
所述步骤S3中得到所述第二校验信息具体通过以下步骤:每当接收到与发送端约定被校验的字节数的数据时,对接收到的数据进行MD5编码,得到所述第二校验信息。
其中,发送端与接收端约定被校验的字节数为4096K。
其中,所述步骤S1按照一定的比例对所述待发送文件进行分块处理。
其中,所述发送子文件块的大小范围为1M-10M。
为解决上述问题,本发明所采用的另一个技术方案是:提供一种大数据量文件的传输系统,包括:
发送端分块模块,用于对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
发送端发送模块,用于将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
接收端接收模块,用于接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
接收端比对模块,用于将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,触发所述接收端接收模块工作直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息;
发送端请求模块,用于接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
发送端判别模块,用于根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则控制所述发送端分块模块工作,从所述文件的接收位置起对所述等待子文件块进行分块处理及生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
其中,所述步发送端分块模块是采用MD5算法得到第一校验信息的;所述接收端接收模块是采用MD5算法得到第二校验信息的。
其中,所述发送端与接收端约定被校验的字节数为4096K。
其中,所述发送端分块模块按照一定的比例对所述待发送文件进行分块处理。
其中,所述发送子文件块的大小范围为1M-10M。
本发明的有益效果是:区别于现有技术中:1、采用块传输方式,如果服务端在接收时发生验证通不过,则需要客户端重新开始传这一个数据块;如果数据块被分的太小,那么传输的总体速度不快;如果数据块被分的太大,则丢包时丢掉的数据块就太大了,而且校验大数据块花的时间也比较长;由于各子文件块在传输时不具有顺序性,接收端接收、写入数据时,各子文件块之间很容易出现位置偏移的现象,造成视频播放时模糊、卡顿、马赛克等问题;2、采用流传输方式无法实现断点续传,且在传输过程无法进行校验,只能在文件流传输结束后进行文件校验,这个时候如果发现文件校验不通过就只能重新开始传输了;既造成了时间、成本的浪费,也造成了资源的浪费,且无法保证安全有效地传输媒体资产管理的大数据量文件。本发明提供一种大数据量文件的传输方法及系统,在块传输的基础上采用流传输,将两者有效地结合起来,在文件传输的开始对文件进行分块处理(块传输),将得到的发送子文件块和第一校验信息传输至接收端,发送子文件块是以流传输的形式被传输至接收端的,接收端在接收发送子文件块的同时边检验边写入。检验通过,则将接收的文件流写入到存储器;检验不通过,则终止此次文件流的传输。本发明提供的方法边接收边校验,一发生校验失败则已校验过的数据无需重传,当校验不通过时丢的数据包也比较小(只丢了“约定被检验的字节数”数据量的数据包),不会造成大量数据包白传,非常有效地解决了现有技术中浪费时间、成本、资源的问题,具有断点续传的效果,这在媒体资产管理的大数据量文件的传输过程中具有前所未有的技术效果。
进一步的,由于流传输的顺序传输的特点,传输过程中发送子文件块之间位置偏移的问题明显改善,解决了现有技术中接收端接收完全后,播放时出现的模糊、卡顿及马赛克的现象。
附图说明
图1为本发明大数据量文件的传输方法流程图;
图2为本发明一实施方式中大数据量文件的传输方法流程图;
图3为本发明一实施方式中大数据量文件的传输系统的功能模块图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
请参阅图1,本发明提供一种大数据量文件的传输方法,包括以下步骤:
S1、在文件传输的发送端,对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
S2、将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
S3、在接收端接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
S4、将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,再次执行所述步骤S3直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息。
S5、发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
S6、根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则返回所述步骤S1,从所述文件的接收位置起对所述等待子文件块进行分块处理并生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
在本申请文件中,上述方法提到的“约定被检验的字节数”是本领域技术人员在开发过程中习知的,结合本技术方案具体来说是指:对于发送端而言,发送子文件从文件头至文件尾,每隔“约定被检验的字节数”就会生成一个校验信息,最后所有的校验信息组成发送子文件的第一校验信息;对于接收端而言,接收到“约定被检验的字节数”的数据,就会生成校验信息(第二校验信息)。
下面对本申请文件提到的技术方案进行详细阐述。在文件传输的最初,本方法在发送端对待发送文件进行分块处理(也就是传统块传输时最初的处理),在得到发送子文件块的同时得到发送子文件块的校验信息(第一校验信息)。第一校验信息的具体解释以上段文字中已经说明,在此不再赘述。之后,发送端将发送子文件块和第一校验信息传输至接收端,其中,发送子文件块是以流传输的形式被传输的。当接收端接收到“约定被检验的字节数”的数据,就会生成校验信息(第二校验信息),与之前接收到的第一校验信息比对,进行校验。若校验不通过,则终止接收文件,并向发送端发送终止文件传输的信息。若校验通过,则将接收到的数据写入接收端的存储器,再次执行所述步骤S3直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息,此时整个发送子文件块被传输完毕。
当发送子文件块传输结束或由于校验不通过被迫传输停止的时候,接收端都会向发送端反馈信息,“告诉”发送端此次传输结束。发送端接收到此反馈信息后,会向接收端发送获取上一次传输终止或结束时接收端文件接收位置的请求,接收端接收到此请求后,会查看其接收文件的大小,并向发送端发送“我接收了xx大小的文件”。
发送端根据接收端返回的信息,并与本地文件(待发送文件)进行比对,判断接收端文件的接收位置是否到达本地文件的结尾。如果到达,那么发送端已经将待发送文件全部传输,此次文件传输已结束;如果未到达,那么重新开始前文所述的步骤S1,从所述文件的接收位置起对等待子文件块进行分块处理并生成相应的校验信息。
经过上述描述可以得出:无论是由于整个发送子文件块被传输完成,还是因为校验不通过造成传输停止,都会再次进行分块处理、流传输等过程,接收端已经接收并写入的数据无须再次传输,且由于接收端接收数据时是边接收边校验,当校验不通过时丢的数据包也比较小(只丢了“约定被检验的字节数”数据量的数据包),不会造成大量数据包白传,非常有效地解决了现有技术中浪费时间、成本、资源的问题,具有断点续传的效果,这在媒体资产管理的大数据量文件的传输过程中具有前所未有的技术效果。
进一步的,由于流传输的顺序传输的特点,传输过程中发送子文件块之间位置偏移的问题明显改善,解决了现有技术中接收端接收完全后,播放时出现的模糊、卡顿及马赛克的现象。
结合前文所述不难看出,本技术方案已经形成了“块传输—流传输—块传输—流传输—……”的传输方式,块传输的基础上采用流传输,将两者有效地结合起来,在文件传输的开始对文件进行分块处理(块传输),将得到的一发送子文件块和第一校验信息传输至接收端,发送子文件块是以流传输的形式被传输至接收端的,又在发送子文件块传输的过程对发送子文件块进行分块——以“约定被检验的字节数”数据量的数据包为大小,“约定被检验的字节数”数据量的数据包在传输时同样是以流传输的方式被传输。接收端在接收发送子文件块的同时边检验边写入。检验通过,则将接收的文件流写入到存储器;检验不通过,则终止此次文件流的传输。
在一具体的实施方式中,所述步骤S1中得到所述第一校验信息具体通过以下步骤:按与接收端约定被校验的字节数,对所述发送子文件块进行MD5编码,得到所述第一校验信息;
所述步骤S3中得到所述第二校验信息具体通过以下步骤:每当接收到与发送端约定被校验的字节数的数据时,对接收到的数据进行MD5编码,得到所述第二校验信息。
MD5是由RSA发明的一种消息摘要算法,为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护,具有快速和高效的特点。采用MD5对文件进行校验,能够更有效地保证文件传输时文件的有效性、完整性。当然,还可以选择采用其他如CRC算法等作为校验算法。
在一实施方式中,发送端与接收端约定被校验的字节数为4096K。也就是说,在发送端,发送子文件块每4096K的数据就会利用MD5算法对4096K的数据进行编码,生成一个校验信息,最后所有的校验信息组成了第一校验信息;在接收端,每接收到4096K的数据,就会利用MD5算法对接收到的4096K数据进行编码,得到第二校验信息,并与第一校验信息进行比对。在这里,“约定被校验的字节数”的范围是可以改变的,但由于网络、电力、时间等实际情况的因素,所选取的范围是1K-4096K。
在一实施方式中,所述步骤S1按照一定的比例对所述待发送文件进行分块处理。在这里,按照一定的比例是指针对网络、电力及待发送文件的大小等因素,对待发送文件进行分块。此比例可根据实际情况设定。
在上述的一具体的实施方式中,所述发送子文件块的大小范围为1M-10M。
请参阅图2,为本发明大数据量文件的传输方法的一具体实施方式流程图,本图是从某次传输终止或结束后开始的,即从步骤S5开始的。图2中,客户端为发送端,服务端为接收端。发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件接收位置的请求。接收端接收到此请求后,会查看其接收文件的大小,并向发送端发送“我接收了xx大小的文件”。
发送端根据接收端返回的信息,并与本地文件(待发送文件)进行比对,判断接收端文件的接收位置是否到达本地文件的结尾。如果到达,那么发送端已经将待发送文件全部传输,此次文件传输已结束;如果未到达,那么从接收端返回的文件的接收位置为起点,生成以10M为单位的发送子文件块,且以4096K为大小生成发送子文件块的MD5表,即发送子文件块每4096K的数据块就会利用MD5算法对4096K的数据进行编码,生成一个相应MD5值,最后所有的MD5值组成了MD5表(第一校验信息)。之后,将发送子文件块和MD5表传输至接收端,其中,发送子文件块是以流传输的形式被传输的。
接收端接收到4096K的数据时,对这接收到的4096K数据进行MD5编码,生成一个相应MD5值,并将这MD5值与之前接收到的MD5表进行比对。
若比对成功,则将接收到的数据写入存储器并继续“接收数据—生成MD5值—比对—……”的过程,直至发送子文件块全部被接收端接收、写入,并向发送端发送所述发送子文件块传输结束的信息。之后,再重新执行前文所述的“发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件接收位置的请求……”的过程。这里需要说明的是,如果等待子文件块的数据量不足10M,那么则把等待子文件块当成发送子文件块,再执行后续的步骤。
若比对失败,则终止接收文件,并向发送端发送终止文件传输的信息,再重新执行前文所述的“发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件接收位置的请求……”的过程。这里需要说明的是,如果等待子文件块的数据量不足10M,那么则把等待子文件块当成发送子文件块,再执行后续的步骤。
请参阅图3,本发明所采用的另一个技术方案是:提供一种大数据量文件的传输系统,包括:
发送端分块模块,用于对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
发送端发送模块,用于将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
接收端接收模块,用于接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
接收端比对模块,用于将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,触发所述接收端接收模块工作直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息;
发送端请求模块,用于接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
发送端判别模块,用于根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则控制所述发送端分块模块工作,从所述文件的接收位置起对等待子文件块进行分块处理及生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
在本申请文件中,上述方法提到的“约定被检验的字节数”是本领域技术人员在开发过程中习知的,结合本技术方案具体来说是指:对于发送端而言,发送子文件从文件头至文件尾,每隔“约定被检验的字节数”就会生成一个校验信息,最后所有的校验信息组成发送子文件的第一校验信息;对于接收端而言,接收到“约定被检验的字节数”的数据,就会生成校验信息(第二校验信息)。
下面对本申请文件提到的技术方案进行详细阐述。在文件传输的最初,发送端分块模块对待发送文件进行分块处理(也就是传统块传输时最初的处理),在得到发送子文件块的同时得到发送子文件块的校验信息(第一校验信息)。第一校验信息的具体解释以上段文字中已经说明,在此不再赘述。之后,发送端发送模块将发送子文件块和第一校验信息传输至接收端,其中,发送子文件块是以流传输的形式被传输的。当接收端接收模块接收到“约定被检验的字节数”的数据,就会生成校验信息(第二校验信息)。之后,接收端比对模块与之前接收到的第一校验信息比对,进行校验。若校验不通过,则终止接收文件,并向发送端发送终止文件传输的信息。若校验通过,则将接收到的数据写入接收端的存储器,触发所述接收端接收模块工作直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息,此时整个发送子文件块被传输完毕。
当发送子文件块传输结束或由于校验不通过被迫传输停止的时候,接收端比对模块都会向发送端反馈信息,“告诉”发送端此次传输结束。发送端接收到此反馈信息后,发送端请求模块会向接收端发送获取上一次传输终止或结束时接收端文件接收位置的请求,接收端接收到此请求后,会查看其接收文件的大小,并向发送端发送“我接收了xx大小的文件”。
发送端判别模块根据接收端返回的信息,并与本地文件(待发送文件)进行比对,判断接收端文件的接收位置是否到达本地文件的结尾。如果到达,那么发送端已经将待发送文件全部传输,此次文件传输已结束;如果未到达,则控制所述发送端分块模块工作,从所述文件的接收位置起对等待子文件块进行分块处理及生成相应的校验信息。
经过上述描述可以得出:无论是由于整个发送子文件块被传输完成,还是因为校验不通过造成传输停止,都会再次进行分块处理、流传输等过程,接收端已经接收并写入的数据无须再次传输,且由于接收端接收数据时是边接收边校验,当校验不通过时丢的数据包也比较小(只丢了“约定被检验的字节数”数据量的数据包),不会造成大量数据包白传,非常有效地解决了现有技术中浪费时间、成本、资源的问题,具有断点续传的效果,这在媒体资产管理的大数据量文件的传输过程中具有前所未有的技术效果。
进一步的,由于流传输的顺序传输的特点,传输过程中发送子文件块之间位置偏移的问题明显改善,解决了现有技术中接收端接收完全后,播放时出现的模糊、卡顿及马赛克的现象。
在一具体的实施方式中,所述步发送端分块模块是采用MD5算法得到第一校验信息的;所述接收端接收模块是采用MD5算法得到第二校验信息的。MD5是由RSA发明的一种消息摘要算法,为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护,具有快速和高效的特点。采用MD5对文件进行校验,能够更有效地保证文件传输时文件的有效性、完整性。当然,还可以选择采用其他如CRC算法等作为校验算法。
在一实施方式中,所述发送端与接收端约定被校验的字节数为4096K。也就是说,在发送端,发送子文件块每4096K的数据就会利用MD5算法对4096K的数据进行编码,生成一个校验信息,最后所有的校验信息组成了第一校验信息;在接收端,每接收到4096K的数据,就会利用MD5算法对接收到的4096K数据进行编码,得到第二校验信息,并与第一校验信息进行比对。在这里,“约定被校验的字节数”的范围是可以改变的,但由于网络、电力、时间等实际情况的因素,所选取的范围是1K-4096K。
在一实施方式中,所述发送端分块模块按照一定的比例对所述待发送文件进行分块处理。在这里,按照一定的比例是指针对网络、电力及待发送文件的大小等因素,对待发送文件进行分块。此比例可根据实际情况设定。
在上述的一具体的实施方式中,所述发送子文件块的大小范围为1M-10M。
综上所述,本发明提供一种大数据量文件的传输方法及系统,在块传输的基础上采用流传输,将两者有效地结合起来,在文件传输的开始对文件进行分块处理(块传输),将得到的发送子文件块和第一校验信息传输至接收端,发送子文件块是以流传输的形式被传输至接收端的,接收端在接收发送子文件块的同时边检验边写入。检验通过,则将接收的文件流写入到存储器;检验不通过,则终止此次文件流的传输。本发明提供的方法边接收边校验,一发生校验失败则已校验过的数据无需重传,当校验不通过时丢的数据包也比较小(只丢了“约定被检验的字节数”数据量的数据包),不会造成大量数据包白传,非常有效地解决了现有技术中浪费时间、成本、资源的问题,具有断点续传的效果,这在媒体资产管理的大数据量文件的传输过程中具有前所未有的技术效果。
进一步的,由于流传输的顺序传输的特点,传输过程中发送子文件块之间位置偏移的问题明显改善,解决了现有技术中接收端接收完全后,播放时出现的模糊、卡顿及马赛克的现象。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种大数据量文件的传输方法,其特征在于,包括以下步骤:
S1、在文件传输的发送端,对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
S2、将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
S3、在接收端接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
S4、将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,再次执行所述步骤S3直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息;
S5、发送端接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
S6、根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则返回所述步骤S1,从所述文件的接收位置起对所述等待子文件块进行分块处理并生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
2.根据权利要求1所述的大数据量文件的传输方法,其特征在于,
所述步骤S1中得到所述第一校验信息具体通过以下步骤:按与接收端约定被校验的字节数,对所述发送子文件块进行MD5编码,得到所述第一校验信息;
所述步骤S3中得到所述第二校验信息具体通过以下步骤:每当接收到与发送端约定被校验的字节数的数据时,对接收到的数据进行MD5编码,得到所述第二校验信息。
3.根据权利要求1或2所述的大数据量文件的传输方法,其特征在于,发送端与接收端约定被校验的字节数为4096K。
4.根据权利要求3所述的大数据量文件的传输方法,其特征在于,所述步骤S1按照一定的比例对所述待发送文件进行分块处理。
5.根据权利要求4所述的大数据量文件的传输方法,其特征在于,所述发送子文件块的大小范围为1M-10M。
6.一种大数据量文件的传输系统,其特征在于,包括:
发送端分块模块,用于对待发送文件进行分块处理,得到一发送子文件块和一等待子文件块,并在生成所述发送子文件块的同时,按与接收端约定被校验的字节数,生成所述发送子文件块的第一校验信息;
发送端发送模块,用于将所述发送子文件块及第一校验信息传输至接收端;其中,所述发送子文件块是以流传输的形式被传输至接收端;
接收端接收模块,用于接收所述发送子文件块的过程中,每当接收到与发送端约定被校验的字节数的数据时,生成第二校验信息;
接收端比对模块,用于将所述第二校验信息与接收到的第一校验信息进行比对;若所述第一校验信息、第二校验信息比对失败,则终止接收文件,并向发送端发送终止文件传输的信息;若所述第一校验信息、第二校验信息比对成功,则将接收到的数据写入接收端的存储器,触发所述接收端接收模块工作直至所述发送子文件块全部被写入到接收端的存储器,并向发送端发送所述发送子文件块传输结束的信息;
发送端请求模块,用于接收到接收端发送的信息后,向接收端发送获取上一次传输终止或结束时接收端文件的接收位置的请求;
发送端判别模块,用于根据接收端返回的信息,判断所述文件的接收位置是否到达待发送文件的结尾;若否,则控制所述发送端分块模块工作,从所述文件的接收位置起对等待子文件块进行分块处理及生成相应的校验信息;若是,则待发送文件已经发送完毕,文件传输结束。
7.根据权利要求6所述的大数据量文件的传输系统,其特征在于,
所述发送端分块模块是采用MD5算法得到第一校验信息的;所述接收端接收模块是采用MD5算法得到第二校验信息的。
8.根据权利要求6或7所述的大数据量文件的传输系统,其特征在于,发送端与接收端约定被校验的字节数为4096K。
9.根据权利要求8所述的大数据量文件的传输系统,其特征在于,所述发送端分块模块是按照一定的比例对所述待发送文件进行分块处理。
10.根据权利要求9所述的大数据量文件的传输系统,其特征在于,所述发送子文件块的大小范围为1M-10M。
CN201210174047.0A 2012-05-30 2012-05-30 大数据量文件的传输方法及系统 Expired - Fee Related CN102752283B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210174047.0A CN102752283B (zh) 2012-05-30 2012-05-30 大数据量文件的传输方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210174047.0A CN102752283B (zh) 2012-05-30 2012-05-30 大数据量文件的传输方法及系统

Publications (2)

Publication Number Publication Date
CN102752283A CN102752283A (zh) 2012-10-24
CN102752283B true CN102752283B (zh) 2015-05-13

Family

ID=47032183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210174047.0A Expired - Fee Related CN102752283B (zh) 2012-05-30 2012-05-30 大数据量文件的传输方法及系统

Country Status (1)

Country Link
CN (1) CN102752283B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102938791A (zh) * 2012-11-22 2013-02-20 上海文广互动电视有限公司 3d电视内容信息发送速率自适应控制的文件传输方法
CN103259797B (zh) * 2013-05-17 2016-03-23 中国联合网络通信集团有限公司 数据文件传输方法及平台
CN103488952B (zh) * 2013-09-24 2017-01-18 华为技术有限公司 文件完整性验证方法及文件处理器
CN104580158B (zh) * 2014-12-12 2018-07-31 集时通(福建)信息科技有限公司 一种分布式平台文件与内容分发方法及系统
CN104539739B (zh) * 2015-01-26 2019-03-29 浙江大学 一种文件上传的系统、方法及装置
CN105389514B (zh) * 2015-10-19 2018-01-16 浪潮集团有限公司 一种虚拟机模板的传输方法、发送端和接收端
CN105871510B (zh) * 2016-03-26 2019-05-07 深圳市中联宇航科技有限公司 一种航空数据的传输方法及装置
CN106354798B (zh) * 2016-08-26 2019-10-25 山东电力工程咨询院有限公司 一种比对scd文件发送端与接收端数据源展示方法
CN109302368A (zh) * 2017-06-19 2019-02-01 中兴通讯股份有限公司 一种文件处理方法和服务器
CN107277179A (zh) * 2017-08-10 2017-10-20 安徽声讯信息技术有限公司 一种基于数据包分享的大文件传输系统
CN111629036A (zh) * 2020-05-13 2020-09-04 贵州国卫信安科技有限公司 一种支持断点续传的红外线传输文件的方法
CN111698540A (zh) * 2020-06-23 2020-09-22 湖南国科微电子股份有限公司 视频播放方法、装置、视频播放设备及存储介质
CN112287402A (zh) * 2020-10-30 2021-01-29 南方电网科学研究院有限责任公司 一种数据完整性校验方法、系统和装置
CN112926072A (zh) * 2021-03-15 2021-06-08 上海交通大学 实时数据传输的方法、系统及文件访问并发控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1848176A1 (fr) * 2006-04-21 2007-10-24 France Telecom Procédé de transformation de données non supportées par un terminal, serveur, programme d'ordinateur et signal correspondants
CN101453751A (zh) * 2007-12-05 2009-06-10 高德软件有限公司 窄带网络环境下传输大文件数据的方法
CN101977182A (zh) * 2010-09-03 2011-02-16 中国电影科学技术研究所 一种数字电影传输方法、系统和设备
CN102281121A (zh) * 2010-06-13 2011-12-14 中兴通讯股份有限公司 一种数据文件传输和校验的方法、设备及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1848176A1 (fr) * 2006-04-21 2007-10-24 France Telecom Procédé de transformation de données non supportées par un terminal, serveur, programme d'ordinateur et signal correspondants
CN101453751A (zh) * 2007-12-05 2009-06-10 高德软件有限公司 窄带网络环境下传输大文件数据的方法
CN102281121A (zh) * 2010-06-13 2011-12-14 中兴通讯股份有限公司 一种数据文件传输和校验的方法、设备及系统
CN101977182A (zh) * 2010-09-03 2011-02-16 中国电影科学技术研究所 一种数字电影传输方法、系统和设备

Also Published As

Publication number Publication date
CN102752283A (zh) 2012-10-24

Similar Documents

Publication Publication Date Title
CN102752283B (zh) 大数据量文件的传输方法及系统
CN104539739B (zh) 一种文件上传的系统、方法及装置
CN101453478B (zh) 一种在文件传输中的完整性校验方法
CN108965484B (zh) 一种物联网数据的传输方法、系统及终端
CN106330414B (zh) 一种报文传输方法及装置
CN110995513B (zh) 物联网系统中的数据发送、接收方法、物联网设备及平台
CN107257270B (zh) 基于混合自动重传请求的数据传输方法及系统
US20110246763A1 (en) Parallel method, machine, and computer program product for data transmission and reception over a network
CN109905205B (zh) 数据发送、接收的方法及设备、数据传输方法及系统
CN101447856A (zh) 一种大容量文件传输方法
CN104348578B (zh) 数据处理的方法及装置
CN101753586A (zh) 发送数据的方法、接收数据的处理方法和装置
CN111327414A (zh) 一种区块链共识方法、系统及计算机存储介质、电子设备
CN105162868A (zh) 一种教师端与学生端之间的可靠数据传输方法
CN104661042A (zh) 一种传输流的传输方法、装置和系统
CN103259797A (zh) 数据文件传输方法及平台
CN1913531B (zh) 一种tcp/ip包头的传输方法、压缩方法和装置
US10412151B2 (en) Method and system for on-demand file repair
CN101453479A (zh) 一种快速的文件传输系统
CN109120385B (zh) 一种基于数据传输系统的数据传输方法、装置及系统
CN109688208B (zh) 一种基于fc-ae-asm消息的数据加载方法
CN104751323A (zh) 一种电子账户数据转移方法及相关设备、系统
CN107645357B (zh) 传输文件不完整的恢复方法及装置
CN102195943B (zh) 安全性信息交互方法及系统
CN103701865A (zh) 一种数据传输的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Zhuo Hua

Inventor after: Qiu Yuanfeng

Inventor after: Shen Gang

Inventor after: Peng Yunze

Inventor after: Chen Yong

Inventor after: Tao Li

Inventor after: Liu Shijie

Inventor after: Chen Jin

Inventor after: Fang Wei

Inventor before: Zhuo Hua

Inventor before: Qiu Yuanfeng

Inventor before: Chen Jin

Inventor before: Fang Wei

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: ZHUO HUA QIU YUANFENG CHEN JIN FANG WEI TO: ZHUO HUA QIU YUANFENG SHEN GANG PENG YUNZE CHEN YONG TAO LI LIU SHIJIE CHEN JIN FANG WEI

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150513

Termination date: 20170530