一种实现网络数据传输断点续传的方法及系统的制作方法

文档序号:7855096阅读:175来源:国知局
专利名称:一种实现网络数据传输断点续传的方法及系统的制作方法
技术领域
本发明涉及计算机网络技术,尤其涉及实现网络数据传输的断点续传方法及系统。
背景技术
在当今这样一个信息和网络化的社会里,计算机正在人们的工作和生活中扮演着日益重要的角色。随着互联网(Internet)的广泛普及,人们经常需要从网上下载各类文件。但由于网络带宽有限,下载较大的文件往往是一件很麻烦的事。为了避开网络流量的高峰期,人们不得不违反通常的作息规律,利用夜间、凌晨等网络相对空闲的时间来下载文件。而更让人 头疼的是,有时文件下载了一多半,却因为网络不稳定、数据传送阻塞以及所使用的系统崩溃等原因而造成断线,不得不又从头传起,由此既浪费了网络带宽,又浪费了人力财力。现有的断点续传方式是通过记录断点的位置,以用于再次传送文件。但是这种方式存在这样的问题由于通常记录的断点位置比较粗略,而且当新的断点发生时会覆盖旧的断点,因此,当真正发生断线需要断点续传时,往往因断点位置粗略而不能确切地获知应该重传的位置,造成重传的范围过大;再有,当重传过程中再次发生断线需要再次重传时,旧的断点会被新的断点覆盖而无法成功地完成重传。如果文件没有重传成功,依然不能将文件内容完整地呈现给接收者。因此,需要对现有的断点续传方式加以改进,能够精准地记录多个断点的确切位置,以保证网络数据重传的精确性、可靠性。

发明内容
本发明所要解决的技术问题是提供一种实现网络数据传输断点续传的方法及系统,能够精准地记录断点的确切位置。为了解决上述技术问题,本发明提供了一种实现网络数据传输断点续传的方法,包括接收端配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每一键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将传输的数据和元数据作为键值记录到数据机构中的各个键下。进一步地,该方法还包括接收端在网络数据传输异常时,根据数据结构中的键的键值,请求发送端重传当前未完成传输的数据块。进一步地,数据结构的键包括传输任务中各数据块的数据键和元数据键,其中元数据键包括传输任务的编号、该传输任务当前传输的数据块的序号、该数据块文件名称、该传输任务要传输的总数据量、当前要接收的数据块的容量以及当前已接收的数据块的容量中的任意多种或全部。进一步地,接收端在网络数据传输异常时,根据数据结构中的键的键值,请求发送端重传当前未完成传输的数据块,具体包括
接收端在网络数据传输结束前的任一时刻遇到数据传输异常,根据数据结构中已接收的数据块的容量和要接收的数据块的容量,确认续传断点的数据块的序号后,向发送端请求重传相应数据块的数据。进一步地,该方法还包括接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出缓存的容量大小,根据已接收的数据组织新的文件,并删除缓存中相应的数据,为下一次接收任务接收数据准备缓存空间。进一步地,该方法还包括接收端在网络数据传输过程中若遇到发送端消失不能再发送数据,根据数据结构中的所述键取出相应的键值所代表的网络数据传输的元数据,在不同的传输进度下重新组织已收到的网络数据,为用户呈现重新组织的网络数据。为了解决上述技术问题,本发明提供了一种实现网络数据传输断点续传的系统,包括通过网络连接的接收端和发送端,其中接收端,用于配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每一键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将相应的数据和元数据作为键值记录到数据机构中的各个键下;发送端,用于根据接收端的传输请求发送相应的数据块。进一步地,数据结构的键包括传输任务中各数据块的数据键和元数据键,其中元数据键包括传输任务的编号、该传输任务当前传输的数据块的序号、该数据块文件名称、该传输任务要传输的总数据量、当前要接收的数据块的容量以及当前已接收的数据块的容量中的任意多种或全部;接收端在所述网络数据传输过程中随时间的递增,以数据块为单位记录数据结构中所述键的键值。进一步地,接收端在网络数据传输结束前的任一时刻遇到数据传输异常,根据数据结构中已接收的数据块的容量和要接收的数据块的容量,确认续传断点的数据块的序号后,向发送端发送相应数据块的数据重传请求;发送端根据接收端的重传请求发送相应的数据块给接收端。进一步地,接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出缓存的容量大小,根据已接收的数据组织新的文件,并删除缓存中相应的数据,为下一次接收任务接收数据准备缓存空间。本发明通过将网络数据传输进行最小单元化,因此可在传输过程中精准地记录断点的确切位置,并呈现处于不同的接收进度的接收文件,从而保证网络数据断点续传的精确性,避免了重传过程可能出现的麻烦,可以最大化地满足用户的不同传输需求。


图I为本发明的实现网络数据传输断点续传的方法实施例的流程图;图2为本发明的方法实施例中缓存数据传输信息的数据结构示意图;图3为采用本发明的方法随时间记录数据结构中各键值的示意图。
具体实施例方式以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下列举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。本发明提供的实现网络数据传输断点续传的方法实施例,其流程如图I所示,包括110:接收端配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每一键含有一个或多个键值;接收端譬如配置一个缓存服务器,并为该服务器定义个键-值数据结构,该数据结构的一实施例请参见图2,包括多个键(I m),每一个键通过一个或多个键值(I n)随网络数据传输的进行,记录网络数据传输信息。120 :接收端在网络数据传输过程中,以数据块为单位将相应的信息作为键值记录到数据机构中的各个键下。如图3所示,表示了接收端在网络数据传输过程中随时间的递增,以数据块为单位记录数据结构中各键的键值。其中,该数据结构包括传输任务中各数据块的数据键和元数据键,其中元数据键包括传输任务的编号(tnumber)、该传输任务当前传输的数据块的序号(number)、该数据块文件名称(name)、该传输任务要传输的总数据量(Mg)、当前要接收的数据块的容量(thisbig)以及当前已接收的数据块的容量(getbig)中的任意多种或全部。在网络数据传输过程中,当时间递增到Tl时刻,上述数据结构记载了任务的编号为1,当前传输数据块1,其文件名称为I. txt,要传输的总数据量为100M(兆),要接收的数据块的容量为10M,当前已接收的数据块的容量为0M(即还尚未完成数据块I数据的接收);当时间递增到T2时刻,上述数据结构记载了任务的编号为1,当前传输数据块2,其文件名称为2. txt,要传输的总数据量为100M(兆),要接收的数据块的容量为10M,当前已接
收的数据块的容量为IOM(即已完成数据块I数据的接收);......,以此类推,当时间递增
到T4时刻,上述数据结构记载了任务的编号为4,当前传输数据块4,其文件名称为4. txt,要传输的总数据量为100M(兆),要接收的数据块的容量为0M(即任务I的数据接收已全部完成),当前已接收的数据块的容量为100M(即已完成所有数据块数据的接收)。上述方法实施例还包括130:接收端在网络数据传输异常时,根据数据结构中的键值,请求发送端重传当前未完成传输的数据块。接收端例如在T2时刻前遇到数据传输异常,根据上述数据结构中的已接收的数据块1,且判断其当前已接收的数据块的容量为0,表示其尚未完成任何数据块数据的接收,则确认续传断点为数据块1,则向发送端请求重传数据块I的数据。假如在T3时刻前遇到数据传输异常,根据数据结构中的已接收的数据块2,且判断其当前已接收的数据块的容量为10M,表示其已经接收到数据块I的数据容量,则确认续传断点为数据块2,于是向发送
端请求重传数据块2的数据。......依此类推,接收端在传输结束前的任一时刻前遇到数
据传输异常,根据上述数据结构中的已接收的数据块其容量不为0,表示其已经接收到数据块n-1,则向发送端请求重传数据块n的数据。直至要接收的数据块的容量为OM为止。上述方法实施例还包括如下步骤(图I中未示):接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出缓存的大小,根据已接收的数据组织新的文件,并删除缓存服务器中相应的数据,为下一次任务接收数据准备充足的缓存空间。若判断网络传输的数据与元数据的大小总和小于缓存服务器数据结构的容量大小一个阈限,就不必删除缓存服务器中相应的数据。上述方法实施例还包括如下步骤(图I中未示): 接收端在进行网络数据传输过程中遇到发送端消失不能再发送数据后,根据上述数据结构中的键取出相应的值所代表的网络数据传输的信息,在不同的传输进度下重新组织已收到的网络数据,为用户呈现重新组织的网络数据。本发明针对上述方法实施例,相应地还提供了实现网络数据传输断点续传的系统实施例,包括通过网络连接的接收端和发送端,其中接收端,用于配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每一键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将相应的信息作为键值记录到数据机构中的各个键下;发送端,用于根据接收端的请求发送相应的数据块。在上述系统实施例中,接收端在网络数据传输异常时,根据数据结构中的键值向发送端发送重传当前未接收全的数据块的请求;发送端根据接收端的重传请求发送相应的数据块给接收端。在上述系统实施例中,数据结构的键包括传输任务中各数据块的数据键和元数据键,其中元数据键包括传输任务的编号、该传输任务当前传输的数据块的序号、该数据块文件名称、该传输任务要传输的总数据量、当前要接收的数据块的容量以及当前已接收的数据块的容量中的任意多种或全部;接收端在网络数据传输过程中随时间的递增,以数据块为单位记录数据结构中各键的键值。在上述系统实施例中,接收端在传输结束前的任一时刻前遇到数据传输异常,根据上述数据结构中的已接收的数据块的容量和要接收的数据块的容量,确认续传断点的数据块的序号后,向发送端请求重传相应数据块的数据。在上述系统实施例中,接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出缓存的大小,根据已接收的数据组织新的文件,并删除缓存服务器中相应的数据,为下一次任务接收数据准备充足的缓存空间。在上述系统实施例中,
接收端在进行网络数据传输过程中遇到发送端消失不能再发送数据后,根据上述数据结构中的键取出相应的值所代表的网络数据传输的信息,在不同的传输进度下重新组织已收到的网络数据,为用户呈现重新组织的网络数据。虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采 用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
权利要求
1.一种实现网络数据传输断点续传的方法,包括 接收端配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每ー键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将传输的数据和元数据作为键值记录到所述数据机构中的各个键下。
2.按照权利要求I所述的方法,其特征在于,还包括 所述接收端在网络数据传输异常时,根据所述数据结构中的所述键的键值,请求所述发送端重传当前未完成传输的数据块。
3.按照权利要求2所述的方法,其特征在干, 所述数据结构的键包括传输任务中各数据块的数据键和元数据键,其中元数据键包括传输任务的编号、该传输任务当前传输的数据块的序号、该数据块文件名称、该传输任务要传输的总数据量、当前要接收的数据块的容量以及当前已接收的数据块的容量中的任意多种或全部。
4.按照权利要求3所述的方法,其特征在于,所述接收端在网络数据传输异常时,根据所述数据结构中的所述键的键值,请求所述发送端重传当前未完成传输的数据块,具体包括 所述接收端在所述网络数据传输结束前的任一时刻遇到数据传输异常,根据所述数据结构中所述已接收的数据块的容量和所述要接收的数据块的容量,确认续传断点的所述数据块的序号后,向所述发送端请求重传相应数据块的数据。
5.按照权利要求3所述的方法,其特征在于,还包括 所述接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出所述缓存的容量大小,根据已接收的数据组织新的文件,并删除所述缓存中相应的数据,为所述下一次接收任务接收数据准备缓存空间。
6.按照权利要求3所述的方法,其特征在于,还包括 所述接收端在所述网络数据传输过程中若遇到所述发送端消失不能再发送数据,根据所述数据结构中的所述键取出相应的键值所代表的网络数据传输的所述元数据,在不同的传输进度下重新组织已收到的网络数据,为用户呈现重新组织的网络数据。
7.一种实现网络数据传输断点续传的系统,包括通过网络连接的接收端和发送端,其特征在于 接收端,用于配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每ー键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将相应的数据和元数据作为键值记录到所述数据机构中的各个键下; 发送端,用于根据接收端的传输请求发送相应的数据块。
8.按照权利要求7所述的系统,其特征在于,所述数据结构的键包括传输任务中各数据块的数据键和元数据键,其中所述元数据键包括传输任务的编号、该传输任务当前传输的数据块的序号、该数据块文件名称、该传输任务要传输的总数据量、当前要接收的数据块的容量以及当前已接收的数据块的容量中的任意多种或全部; 所述接收端在所述网络数据传输过程中随时间的递增,以所述数据块为单位记录所述数据结构中所述键的键值。
9.按照权利要求8所述的系统,其特征在干,所述接收端在所述网络数据传输结束前的任一时刻遇到数据传输异常,根据所述数据结构中所述已接收的数据块的容量和所述要接收的数据块的容量,确认续传断点的所述数据块的序号后,向所述发送端发送相应数据块的数据重传请求; 所述发送端根据所述接收端的所述重传请求发送相应的数据块给所述接收端。
10.按照权利要求8所述的系统,其特征在于, 所述接收端根据接收的数据量的大小,若判断下一次接收任务的总数据量会超出所述缓存的容量大小,根据已接收的数据组织新的文件,并删除所述缓存中相应的数据,为所述下一次接收任务接收数据准备缓存空间。
全文摘要
本发明披露了一种实现网络数据传输断点续传的方法及系统,其中方法包括接收端配置用于保存网络数据传输信息的缓存及其数据结构,该数据结构包括多个键,每一键含有一个或多个键值;在网络数据传输过程中,以数据块为单位将传输的数据和元数据作为键值记录到数据机构中的各个键下。本发明通过将网络数据传输进行最小单元化,因此可在传输过程中精准地记录断点的确切位置,并呈现处于不同的接收进度的接收文件,从而保证网络数据断点续传的精确性,避免了重传过程可能出现的麻烦,可以最大化地满足用户的不同传输需求。
文档编号H04L29/08GK102761614SQ20121022640
公开日2012年10月31日 申请日期2012年6月29日 优先权日2012年6月29日
发明者吕万波, 张道伟, 王旭 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1