一种下载资源文件的方法和装置制造方法及图纸

技术编号:24334009 阅读:28 留言:0更新日期:2020-05-29 21:17
本发明专利技术公开了一种下载资源文件的方法和装置,属于数据传输技术领域。所述方法应用于对等网络中的客户端,所述方法包括:接收目标资源文件的下载请求,确定所述目标资源文件的数据块下载顺序;根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度;基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块。采用本发明专利技术,既可以保证资源文件的下载效率,又可以提高对等网络中优质节点的资源利用率。

A method and device for downloading resource files

【技术实现步骤摘要】
一种下载资源文件的方法和装置
本专利技术涉及数据传输
,特别涉及一种下载资源文件的方法和装置。
技术介绍
P2P(端对端,peer-To-peer)技术是一种基于对等网络进行数据传输的通讯技术,建立了一种客户端对客户端的直接通信机制,在对等网络中,每一节点既作为客户端,又充当其它节点的服务端。为了减轻CDN节点的负载压力,同时节省CDN流量成本,目前已在CDN系统的基础上引入基于对等网络的资源文件的数据块传输方案。CDN服务方可以预先在对等网络中分布式部署大量性能良好的设备作为超级节点,或者将一些网络质量、设备性能等各方面较好的客户端选取作为超级节点,超级节点可以预先从CDN服务器下载并存储资源文件的数据块。这样,当需要获取某一资源文件时,客户端可以向Tracker服务器请求节点列表,Tracker服务器可以向客户端反馈已存储有相应资源文件的节点(可以包括普通节点、超级节点和/或CDN节点)的节点信息。从而,客户端可以选取部分节点并与之建立数据连接,从而从这些节点处获取其上存储的资源文件的数据块。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题:客户端在同时通过CDN节点、超级节点和普通节点下载资源文件的数据块前,往往根据到各个节点间网络线路的带宽状态来选取节点。这样,一方面,如果被选取的节点上的资源文件不完整,则会大大影响资源文件的下载效率;另一方面,客户端大概率选取CDN节点或超级节点下载资源文件,这样,会导致CDN节点和超级节点负载过高,而大量的普通节点长期闲置,对等网络的资源利用率较低。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种下载资源文件的方法和装置。所述技术方案如下:第一方面,提供了一种下载资源文件的方法,所述方法应用于对等网络中的客户端,所述方法包括:接收目标资源文件的下载请求,确定所述目标资源文件的数据块下载顺序;根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度;基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块。第二方面,提供了一种下载资源文件的装置,所述装置应用于对等网络,所述装置包括:下载准备模块,用于接收目标资源文件的下载请求,确定所述目标资源文件的数据块下载顺序;下载调整模块,用于根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度;下载控制模块,用于基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块。第三方面,提供了一种客户端,所述客户端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的下载资源文件的方法。第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的下载资源文件的方法。本专利技术实施例提供的技术方案带来的有益效果是:本专利技术实施例中,接收目标资源文件的下载请求,确定目标资源文件的数据块下载顺序;根据数据块下载顺序和目标资源文件的数据块消费进度,实时调整目标资源文件的各个数据块的下载优先度;基于调整后的各个数据块的下载优先度,通过多个网络质量不同的下载途径下载目标资源文件的数据块。这样,客户端在利用P2P技术下载资源文件时,为不同的数据块配置不同的下载优先度,再以下载优先度为标准,选用不同网络质量的下载途径同时下载资源文件,从而可以对各个下载途径的数据下载过程进行有效控制,既可以保证资源文件的下载效率,又可以提高对等网络中优质节点的资源利用率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种对等网络的架构示意图;图2是本专利技术实施例提供的一种下载资源文件的方法流程图;图3是本专利技术实施例提供的一种设置下载优先级的原理示意图;图4是本专利技术实施例提供的一种设置下载优先级的原理示意图;图5是本专利技术实施例提供的一种下载资源文件的装置结构示意图;图6是本专利技术实施例提供的一种客户端的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。本专利技术实施例提供了一种下载资源文件的方法,该方法可以应用于对等网络中的客户端,并具体由安装在客户端上的SDK辅助程序执行。其中,对等网络可以包括大量节点,每个节点都可以作为数据下载方(即客户端),利用P2P技术从其它节点处以数据块的形式下载资源文件,同时也可以作为数据提供方(即服务端),利用P2P技术将已存储的资源文件以数据块的形式提供给其它节点,对等网络中的节点可以是CDN节点、超级节点或者普通节点;客户端可以同时与多个服务端建立数据连接,并支持从多个服务端处同时下载资源文件的数据块;SDK辅助程序可以是独立于P2P下载程序之外的辅助程序,用于获取P2P下载程序的资源文件的下载请求,并基于本实施例公开的方法下载相应的资源文件。对等网络中还可以包括配置服务器和Tracker服务器,其中,配置服务器主要用于记录并对外提供Tracker服务器的网络地址,而本申请中,配置服务器还可以用于存储资源文件的下载配置信息,下载配置信息至少可以包括资源文件的数据块信息,并视情况还可以包括资源文件的最低消费速率和各个下载途径对应的数据缓存容量。资源文件的数据块信息可以是资源文件的数据块的总数和大小,以及各个数据块在资源文件中对应的数据位置;资源文件的最低消费速率可以是资源文件的提供方设置的,在下载资源文件时P2P下载程序所需的数据块的获取速度下限;一个下载途径下可以存在多个网络质量相同或相近的数据连接,不同下载途径按照网络质量的不同而区分,客户端可以同时通过多个下载途径下的多个数据连接,从其它节点下载资源文件的数据块;下载途径对应的数据缓存容量可以是资源文件的提供方设置的,表示客户端通过不同下载途径下载的数据块所对应的存储空间的大小,而不同的资源文件,相同下载途径对应的数据缓存容量的大小也可以不同。本实施例中以下载途径包括从CDN节点下载、从超级节点下载和从普通节点下载(可以依次简称为CDN途径、P2SP途径和P2P途径)三种下载途径为例进行说明,不同下载途径间主要以网络质量的不同作为主要的区分方式,而下载途径为两种、四种或更多种的情况下的处理与之类似,不再一一针对性地进行说明。对等本文档来自技高网
...

【技术保护点】
1.一种下载资源文件的方法,其特征在于,所述方法应用于对等网络中的客户端,所述方法包括:/n接收目标资源文件的下载请求,确定所述目标资源文件的数据块下载顺序;/n根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度;/n基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块。/n

【技术特征摘要】
1.一种下载资源文件的方法,其特征在于,所述方法应用于对等网络中的客户端,所述方法包括:
接收目标资源文件的下载请求,确定所述目标资源文件的数据块下载顺序;
根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度;
基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块。


2.根据权利要求1所述的方法,其特征在于,所述下载途径包括通过CDN下载,通过超级节点下载和/或通过普通节点下载。


3.根据权利要求1所述的方法,其特征在于,所述根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度,包括:
根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及各个所述下载途径对应的数据缓存容量和网络质量,实时调整所述目标资源文件的各个数据块的下载优先度。


4.根据权利要求3所述的方法,其特征在于,所述根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及各个所述下载途径对应的数据缓存容量和网络质量,实时调整所述目标资源文件的各个数据块的下载优先度,包括:
根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及各个所述下载途径对应的数据缓存容量,实时确定各个所述下载途径对应的数据下载窗口;
根据各个所述下载途径的网络质量,为不同所述数据下载窗口内的数据块设置不同的下载优先度。


5.根据权利要求1所述的方法,其特征在于,所述根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,实时调整所述目标资源文件的各个数据块的下载优先度,包括:
根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及所述目标资源文件的最低消费速率,实时调整所述目标资源文件的各个数据块的下载优先度。


6.根据权利要求5所述的方法,其特征在于,根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及所述目标资源文件的最低消费速率,实时调整所述目标资源文件的各个数据块的下载优先度,包括:
根据所述目标资源文件的最低消费速率,设置预设的各个下载优先度对应的数据块覆盖范围;
根据所述数据块下载顺序和所述目标资源文件的数据块消费进度,以及所述数据块覆盖范围,实时调整所述目标资源文件的各个数据块的下载优先度。


7.根据权利要求1所述的方法,其特征在于,所述基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块,包括:
基于调整后的各个数据块的下载优先度,和不同所述下载途径的网络质量,确定各个下载途径对应的数据下载范围;
对于每个下载途径,通过所述下载途径下载所述数据下载范围内的数据块。


8.根据权利要求1所述的方法,其特征在于,所述基于调整后的所述各个数据块的下载优先度,通过多个网络质量不同的下载途径下载所述目标资源文件的数据块,包括:
根据各个所述下载途径的数据下载速度和所述目标资源文件的最低消费速率,设置各个下载途径对应的优先度提升阈值;
基于调整后的各个数据块的下载优先度,和不同所述下载途径的网络质量,确定各个下载途径对应的数据下载范围;

【专利技术属性】
技术研发人员:戴新颖
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海;31

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

1