一种基于多协作者的局域网下载装置及方法

文档序号:7986863阅读:127来源:国知局
一种基于多协作者的局域网下载装置及方法
【专利摘要】本发明公开了一种基于多协作者的局域网下载装置及方法,其中所述装置包括主下载模块以及多个从属下载模块,主下载模块包括任务调度单元以及数据接收单元,从属下载模块包括命令接收单元、数据下载单元以及数据传输单元。其中,主下载模块以及多个从属下载模块位于同一局域网的多台设备上;任务调度单元将下载资源的任务划分为若干子任务;命令接收单元接收子任务,数据下载单元从服务器下载构成资源的各部分数据;数据传输单元将上述各部分数据发送至数据接收单元,数据接收单元将上述各部分数据拼接成资源。本发明将一个下载任务划分为多个子任务,邀请同一局域网中的其它设备同时执行,在单机带宽受限的情况下,提高了下载速度。
【专利说明】—种基于多协作者的局域网下载装置及方法
【技术领域】
[0001]本发明涉及分布式【技术领域】,尤其涉及一种基于多协作者的局域网下载装置及方法。
【背景技术】
[0002]随着互联网的不断发展,互联网中的内容页越来越丰富,下载软件的出现,极大地促进了数据在互联网上广泛传播和共享。同时,为方便管理和维护,网络管理员通常会设置局域网内单台计算机的最大带宽,这样就会导致局域网用户在下载数据时遇到如下情况:局域网对外带宽(网络运营商提供的带宽)空闲,但是单机下载带宽却受限;另外,即使单机可充分利用局域网对外带宽,但在这种情况下下载软件会占用当前计算机较多的资源,如增大处理器、网络、系统输入输出等模块的负担,严重影响用户同时处理其他作业的效率。

【发明内容】

[0003]本发明旨在解决上述现有技术中存在的问题,提出一种基于多协作者的局域网下载装置及方法。
[0004]本发明一方面提出了一种基于多协作者的局域网下载装置,该装置包括主下载模块以及多个从属下载模块,所述主下载模块包括任务调度单元以及数据接收单元,所述从属下载模块包括命令接收单元、数据下载单元以及数据传输单元。其中,所述主下载模块以及多个从属下载模块位于同一局域网的多台设备上;所述任务调度单元获取所述资源的地址列表,所述地址列表包含了所述资源所属服务器的地址;所述任务调度单元将下载所述资源的任务划分为若干子任务,并将所述若干子任务分配给所述多个从属下载模块;所述命令接收单元接收所述子任务,所述数据下载单元根据所述子任务从服务器下载构成所述资源的各部分数据;所述数据传输单元将上述各部分数据发送至所述数据接收单元,所述数据接收单元将上述各部分数据拼接成所述资源。
[0005]本发明另一方面提出了一种基于多协作者的局域网下载方法,该方法包括以下步骤:获取所述资源的地址列表;将下载所述资源的任务划分为若干子任务;将所述若干子任务分配给同一局域网中的多台设备执行;所述多台设备分别下载构成所述资源的各部分数据;将上述各部分数据拼接成所述资源。
[0006]本发明提出的一种基于多协作者的局域网下载装置及方法在局域网对外带宽空闲、单机对外带宽被限定的情况下,将一个下载任务划分为多个子任务,邀请同一局域网中的其它设备同时执行该多个子任务,以协作的方式进行下载,避免了局域网对单机带宽的限定,有效地提高了下载速度。同时,每个协作设备都采用轻量级进程,只占用较少的设备资源,不影响用户进行其他操作。
【专利附图】

【附图说明】[0007]图1是本发明一实施例的基于多协作者的局域网下载装置结构图;
[0008]图2是本发明一实施例的基于多协作者的局域网下载方法流程图。
【具体实施方式】
[0009]为了使本发明的目的、技术方案及优点更加清晰,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0010]本发明提出的基于多协作者的局域网下载装置及方法用于从服务器下载资源。
[0011]本发明一方面提出了一种基于多协作者的局域网下载装置。图1所示的本发明一实施例的一种基于多协作者的局域网下载装置,所述装置包括主下载模块100以及多个从属下载模块(图中仅示出从属下载模块200,其余用省略号表示),所述主下载模块100包括任务调度单元101以及数据接收单元102,所述从属下载模块200包括命令接收单元201、数据下载单元202以及数据传输单元203。
[0012]其中,所述任务调度单元101根据用户所输入的需要下载的资源名称从互联网获取所述资源的地址列表,所述地址列表包含了所述资源所属服务器的IP地址。一般情况下,某一资源为互联网上多个服务器所共有,用户可通过一般的下载软件(如迅雷、快车等)从上述多个服务器上下载该资源。
[0013]所述任务调度单元101根据所述资源的大小、所述从属下载模块的个数以及所述服务器的地址将下载所述资源的任务划分为若干子任务。划分完毕后,所述任务调度单元101将所述若干子任务分配给所述多个从属下载模块,由该多个从属下载模块同时并行下载。
[0014]具体地,根据所述资源的大小、所述从属下载模块的个数以及所述服务器的地址,所述任务调度单元101从逻辑上将所述资源划分为与所述从属下载模块数量相同的若干组份,每个组份包含了所述资源的部分数据,所有组分的数据组合起来即构成完整资源数据。上述各个部分数据具有一定的大小,且相对于完整资源数据具有一定的偏移量。
[0015]所述多个从属下载模块的命令接收单元接收上述由主下载模块100分配的各个子任务,并执行该子任务对所述资源的各部分数据进行下载。以从属下载模块200为例,所述命令接收单元201接收所述主下载模块100分配给其的子任务,所述子任务中除包含所述从属下载模块200需要负责下载的数据大小、偏移量信息外,还包含了目的服务器的地址(如图中所示的服务器300)。所述数据下载单元202与所述服务器300建立连接,再从所述服务器300上下载所述从属下载模块200所负责的部分资源数据。
[0016]当所述数据下载单元202下载完毕后,所述数据传输单元203将下载完毕后的所述部分数据发送至所述数据接收单元102。当上述多个从属下载模块均对其负责的部分数据下载完毕后,所述数据接收单元102对上述各部分数据进行完整度校验,并拼接成最终完整的资源数据。
[0017]在本发明一实施例中,可以在一台设备上开启一个所述主下载模块以及一个从属下载模块,并邀请同一局域网中的其他若干设备同时开启多个从属下载模块执行各个子任务,对资源并行地下载。其中,所述设备包括但不限于计算机、智能手机、平板电脑等。
[0018]本发明另一方面公开了一种基于多协作者的局域网下载方法,如图2所示,该方法包括以下步骤,SlOO:获取资源的地址列表;S200:将下载所述资源的任务划分为若干子任务;S300:将所述若干子任务分配给同一局域网中的多台设备执行;S400:分别下载构成所述资源的各部分数据;S500:将所述各部分数据拼接成所述资源。
[0019]具体地,在步骤SlOO中,根据用户所输入的需要下载的资源名称从互联网获取所述资源的地址列表,所述地址列表包含了所述资源所属服务器的IP地址。执行此步骤的设备称为主设备,该设备包括但不限于计算机、智能手机、平板电脑等装置。一般情况下,某一资源为互联网上多个服务器所共有,用户可通过一般的下载软件(如迅雷、快车等)从上述多个服务器上下载该资源。
[0020]在步骤S200中,所述主设备根据所述资源的大小、在同一局域网中其他设备(下文称为从属设备)的数量将下载所述资源的任务划分为若干子任务。具体地,所述主设备从逻辑上将所述资源划分为与所述从属设备数量相同的若干组份,每个组份包含了所述资源的部分数据,所有组分的数据组合起来即构成为完整的资源数据。上述各部分数据具有一定的大小,且相对于完整资源数据具有一定的偏移量。
[0021]在步骤S300中,所述主设备将上述若干子任务分配给同一局域网内的多台从属设备执行。具体地,所述子任务中除包含所述各个从属设备需要负责下载的数据大小、偏移量信息外,还包含了目的服务器的地址。在步骤S400中,所述从属设备与上述服务器建立连接,再从所述服务器下载所述从属设备所负责的部分资源数据。
[0022]如步骤S500所示,当上述多个从属设备均对其负责的部分数据下载完毕后,所述从属设备将其负责的各部分数据传输至所述主设备,所述主设备对上述各部分数据进行完整度校验,并拼接成最终完整的资源数据。
[0023]本发明提出的一种基于多协作者的局域网下载装置及方法在局域网对外带宽空闲、单机对外带宽被限定的情况下,将一个下载任务划分为多个子任务,邀请同一局域网中的其它设备同时执行该多个子任务,以协作的方式进行下载,避免了局域网对单机带宽的限定,有效地提高了下载速度。同时,每个协作设备可采用轻量级进程,只占用较少的设备资源,不影响用户进行其他操作。
[0024]虽然本发明参照当前的较佳实施方式进行了描述,但本领域的技术人员应能理解,上述较佳实施方式仅用来说明本发明,并非用来限定本发明的保护范围,任何在本发明的精神和原则范围之内,所做的任何修饰、等效替换、改进等,均应包含在本发明的权利保护范围之内。
【权利要求】
1.一种基于多协作者的局域网下载装置,用于从服务器下载资源,其特征在于,包括主下载模块以及多个从属下载模块,所述主下载模块包括任务调度单元以及数据接收单元,所述从属下载模块包括命令接收单元、数据下载单元以及数据传输单元,其中, 所述主下载模块以及多个从属下载模块位于同一局域网的多台设备上; 所述任务调度单元获取所述资源的地址列表,所述地址列表包含了所述资源所属服务器的地址; 所述任务调度单元将下载所述资源的任务划分为若干子任务,并将所述若干子任务分配给所述多个从属下载模块; 所述命令接收单元接收所述子任务,所述数据下载单元根据所述子任务从服务器下载构成所述资源的各部分数据; 所述数据传输单元将上述各部分数据发送至所述数据接收单元,所述数据接收单元将上述各部分数据拼接成所述资源。
2.根据权利要求1所述的基于多协作者的局域网下载装置,其特征在于,所述服务器为多个。
3.根据权利要求1所述的基于多协作者的局域网下载装置,其特征在于,所述任务调度单元根据所述资源的大小、所述从属下载模块的个数以及所述服务器的地址将下载所述资源的任务划分为若干子任务。
4.根据权利要求1至3所述的基于多协作者的局域网下载装置,其特征在于,所述子任务包括如下信息:执行该子任务的从属下载模块需下载的数据的大小、偏移量以及该数据所属服务器的地址。
5.一种基于多协作者的局域网下载方法,用于从服务器下载资源,包括以下步骤: 步骤一:获取所述资源的地址列表; 步骤二:将下载所述资源的任务划分为若干子任务; 步骤三:将所述若干子任务分配给同一局域网中的多台设备执行; 步骤四:所述多台设备分别下载构成所述资源的各部分数据; 步骤五:将上述各部分数据拼接成所述资源。
6.根据权利要求5所述的基于多协作者的局域网下载方法,其特征在于:根据所述资源的大小、所述设备的数量将下载所述资源的任务划分为若干子任务。
7.根据权利要求5或6所述的基于多协作者的局域网下载方法,所述子任务包括如下信息:执行该子任务的设备需下载的数据的大小、偏移量以及该数据所属服务器的地址。
【文档编号】H04L12/28GK103856531SQ201210516592
【公开日】2014年6月11日 申请日期:2012年12月5日 优先权日:2012年12月5日
【发明者】熊文, 喻之斌, 须成忠, 冯圣中 申请人:中国科学院深圳先进技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1