一种浏览器、服务器、下载系统及下载方法

文档序号:7816179阅读:188来源:国知局
一种浏览器、服务器、下载系统及下载方法
【专利摘要】本发明公开了一种浏览器、服务器、下载系统及下载方法,其中,所述方法包括:浏览器将待下载对象的统一资源定位符URL上传至服务器;所述浏览器接收由所述服务器发送的所述待下载对象的分片信息,其中,所述待下载对象的URL和所述待下载对象的分片信息的对应关系保存在所述服务器,所述待下载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下载对象的至少一个分片的下载协议与其它分片的下载协议不同;所述浏览器根据所述待下载对象的分片信息从相应服务器下载分片,所述相应服务器是指保存所述待下载对象的分片的服务器。采用本发明,能够充分利用客户端的带宽,提高下载速度,并且无需投入大量设备成本。
【专利说明】-种浏览器、服务器、下载系统及下载方法

【技术领域】
[0001] 本发明涉及数据通信领域,更具体而言,涉及一种浏览器、服务器、下载系统及下 载方法。

【背景技术】
[0002] 通常通过浏览器执行的下载采用的是HTTP (Hypertext transfer protocol,超文 本传输协议),采用这个协议下载大文件最大的问题是比较慢。
[0003] 为了提高通过浏览器进行下载的速度,现有技术之一提供了一种多线程下载方 式,但受带宽限制,这种多线程下载方式提升的下载速度有限。现有技术之二提供了建立内 容分发网络(Content Delivery Network,Q)N)服务器的方式,但部署⑶N服务器的成本很 高,并不适用于所有网络服务商。


【发明内容】

[0004] 为了解决现有技术所存在的缺陷,本发明实施方式提供一种浏览器、服务器、下载 系统及下载方法,能够充分利用客户端的宽带,有效提高下载速度。
[0005] 第一方面,本发明实施例提供了一种通过浏览器进行下载的方法,包括:
[0006] 浏览器将待下载对象的统一资源定位符(Uniform Resource Locator, URL)上传 至服务器;
[0007] 所述浏览器接收由所述服务器发送的所述待下载对象的分片信息,其中,所述待 下载对象的URL和所述待下载对象的分片信息的对应关系保存在所述服务器上,所述待下 载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下 载对象的至少一个分片的下载协议与其它分片的下载协议不同;
[0008] 所述浏览器根据所述待下载对象的分片信息从相应服务器下载分片,所述相应服 务器是指保存所述待下载对象的分片的服务器。
[0009] 可选地,在本实施例的一种实现方式中,所述待下载对象的分片信息除了包括所 述待下载对象的各分片的下载地址及下载协议之外,还包括各分片的字节范围。进一步可 选地,在该实现方式中,如果存在无法下载的分片,则所述浏览器根据该分片的字节范围和 所述待下载对象的URL向保存所述待下载对象的服务器发送用于请求所述待下载对象的 指定字节范围的下载请求;所述浏览器接收由保存所述待下载对象的服务器发送的所述指 定字节范围的内容。
[0010] 第二方面,本发明实施例提供一种通过浏览器进行下载的方法,包括:
[0011] 服务器接收由浏览器上传的待下载对象的统一资源定位符URL ;
[0012] 所述服务器根据所述待下载对象的URL确定所述待下载对象的分片信息,其中, 所述服务器保存有所述待下载对象的URL和所述待下载对象的分片信息的对应关系,所述 待下载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述 待下载对象的至少一个分片的下载协议与其它分片的下载协议不同;
[0013] 所述服务器将所述待下载对象的分片信息发送给所述浏览器。
[0014] 可选地,在本实施例的一种实现方式中,所述服务器通过以下方式保存所述待下 载对象的URL和所述待下载对象的分片信息的对应关系:所述服务器保存有第一表和第二 表;其中,第一表记录有所述待下载对象的URL和所述待下载对象的哈希值的对应关系;第 二表记录有所述待下载对象的哈希值和所述待下载对象的分片信息的对应关系。
[0015] 进一步可选地,在该实现方式中,所述服务器根据所述待下载对象的URL确定所 述待下载对象的分片信息,包括:所述服务器根据所述待下载对象的URL查找第一表,确定 所述待下载对象的哈希值;所述服务器根据所述待下载对象的哈希值查找第二表,确定所 述待下载对象的分片信息。
[0016] 可选地,在本实施例的另一种实现方式中,所述待下载对象的分片信息除了包括 所述待下载对象的各分片的下载地址及下载协议之外,还包括各分片的字节范围。
[0017] 进一步可选地,在该实现方式中,所述服务器除了保存有所述待下载对象的URL 和所述待下载对象的分片信息的对应关系之外,还保存有所述待下载对象;所述方法还包 括:所述服务器接收所述浏览器发送的用于请求所述待下载对象的指定字节范围的下载请 求;所述服务器根据所述下载请求向所述浏览器发送所述指定字节范围的内容。
[0018] 第三方面,本发明实施例提供一种浏览器,包括:
[0019] 发送模块,用于将待下载对象的URL上传至服务器;
[0020] 接收模块,用于接收由所述服务器发送的所述待下载对象的分片信息,其中,有所 述待下载对象的URL和所述待下载对象的分片信息的对应关系保存在所述服务器上,由所 述服务器根据所述待下载对象的URL确定所述待下载对象的分片信息,所述待下载对象的 分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下载对象的 至少一个分片的下载协议与其它分片的下载协议不同;
[0021] 下载模块,用于根据所述待下载对象的分片信息从相应服务器下载分片,所述相 应服务器是指保存所述待下载对象的分片的服务器。
[0022] 可选地,在本实施例的一种实现方式中,所述待下载对象的分片信息还包括各分 片的字节范围。进一步可选地,在该实现方式中,所述浏览器还包括二次下载模块,用于在 存在所述下载模块无法下载的分片时,根据该分片的字节范围和所述待下载对象的URL向 保存所述待下载对象的服务器发送用于请求指定字节范围的下载请求,并接收由保存所述 待下载对象的服务器发送的所述指定字节范围的内容。
[0023] 第四方面,本发明实施例提供一种服务器,包括:
[0024] 接收模块,用于接收由浏览器上传的待下载对象的URL ;
[0025] 存储模块,保存有所述待下载对象的URL和所述待下载对象的分片信息的对应关 系,其中,所述待下载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协 议,并且,所述待下载对象的至少一个分片的下载协议与其它分片的下载协议不同;
[0026] 查询模块,用于根据所述待下载对象的URL查询所述存储模块,以确定所述待下 载对象的分片信息;
[0027] 发送模块,用于将所述待下载对象的分片信息发送给所述浏览器。
[0028] 可选地,在本实施例的一种实现方式中,所述存储模块具体保存有第一表和第二 表,其中,第一表记录有所述待下载对象的URL和所述待下载对象的哈希值的对应关系,第 二表记录有所述待下载对象的哈希值和所述待下载对象的分片信息的对应关系;所述查询 模块具体用于,根据所述待下载对象的URL查找第一表,确定所述待下载对象的哈希值,然 后根据所述待下载对象的哈希值查找第二表,确定所述待下载对象的分片信息。
[0029] 可选地,在本实施例的另一种实现方式中,所述待下载对象的分片信息还包括各 分片的字节范围。进一步可选地,在该实现方式中,所述存储模块还保存有所述待下载对 象;所述接收模块还用于,接收所述浏览器发送的用于请求所述待下载对象的指定字节范 围的下载请求;所述发送模块还用于,将所述待下载对象的所述指定字节范围的内容发送 至所述浏览器。
[0030] 第五方面,本发明实施例提供一种服务器组,所述服务器组包括至少两个服务器, 并且所述至少两个服务器分别支持不同的下载协议;所述至少两个服务器分别保存有同一 待下载对象的部分或全部分片,并且,保存在所述至少两个服务器中的分片能够组成所述 待下载对象的完整资源。
[0031] 第六方面,本发明实施例提供一种下载系统,所述下载系统包括根据本发明实施 例第三方面或其各种实现方式的浏览器、根据本发明实施例第四方面或其各种实现方式的 服务器以及根据本发明实施例第五方面的服务器组。
[0032] 可选地,在本实施例的一种实现方式中,所述下载系统还包括用于保存所述待下 载对象的服务器。
[0033] 采用本发明的各种实施例具有以下有益效果:
[0034] 通过结合不同的下载协议对同一待下载对象进行下载,能够综合不同下载协议的 优点。例如,通过结合HTTP下载协议和BitTorrent (简称BT,俗称比特洪流、BT下载)下 载协议来下载待下载对象,能够在带宽一定的条件下有效提高下载速度,换言之,能够充分 利用客户端的带宽,并且无需投入大量设备成本。

【专利附图】

【附图说明】
[0035] 图1是根据本发明实施例的一种通过浏览器进行下载的方法的流程示意图;
[0036] 图2是根据本发明实施例的一种通过浏览器进行下载的方法的流程示意图;
[0037] 图3是根据本发明实施例的一种浏览器的方块示意图;
[0038] 图4是根据本发明实施例的一种浏览器的方块示意图;
[0039] 图5是根据本发明实施例的一种服务器的方块示意图;
[0040] 图6是根据本发明实施例的一种下载系统的方块示意图;
[0041] 图7是根据本发明实施例的一种下载系统的方块示意图。

【具体实施方式】
[0042] 以下结合附图和【具体实施方式】对本发明的各个方面进行详细阐述。其中,众所周 知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所 描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人 员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可 以容易理解,本文所述和附图所示的各实施方式中的模块或单元或步骤可以按各种不同配 置进行组合和设计。
[0043] 图1是根据本发明实施例的一种通过浏览器进行下载的方法的流程示意图,参照 图1,所述方法包括:
[0044] 100 :浏览器将待下载对象的URL上传至服务器,例如,通过HTTP协议上传。
[0045] 102 :服务器根据待下载对象的URL确定待下载对象的分片信息,并将待下载对象 的分片信息发送给浏览器。
[0046] 在本实施例中,服务器保存有待下载对象的URL和待下载对象的分片信息的对应 关系,待下载对象的分片信息包括待下载对象的各分片的下载地址及下载协议,并且,待下 载对象的至少一个分片的下载协议与其它分片的下载协议不同。
[0047] 在本实施例中,各分片的下载协议可以是诸如HTTP、BitTorrent、文件传输协议 (File Transfer Protocol, FTP)之类的主流下载协议,也可以是诸如eMule(电驴)之类 的非主流下载协议,或者其它的下载协议。本发明对此不做具体限制。
[0048] 104 :浏览器根据待下载对象的分片信息从相应服务器下载分片,所述相应服务器 是指保存待下载对象的分片的服务器。
[0049] 例如,浏览器根据分片下载地址从HTTP文件服务器下载支持HTTP协议的分片,从 BitTorrent服务器下载支持BitTorrent协议的分片,从而完成对待下载对象的下载。
[0050] 可选地,在完成104之后,可以像现有技术(例如,参考多线程下载技术)那样对 分片进行组合,得到完整的资源。
[0051] 优选地,在本实施例的一种实现方式中,待下载对象的分片支持至少两种具有 互补特性的下载协议,例如,采用HTTP下载协议的下载方式对带宽要求较高,而采用 BitTorrent下载协议的下载方式对带宽要求较低,这两种下载方式在带宽需求方面具有互 补性。
[0052] 采用本发明实施例提供的下载方法,由于结合不同的下载协议对同一待下载对象 (例如,软件)进行下载,能够综合不同下载协议的优点。例如,通过结合HTTP下载协议和 BitTorrent下载协议(可以结合至少两种下载协议而不仅限于两种)来下载待下载对象, 能够在带宽一定的条件下有效提高下载速度,换言之,能够充分利用客户端的带宽,并且无 需投入大量设备成本。
[0053] 图2是根据本发明实施例的一种通过浏览器进行下载的方法的流程示意图,参照 图2,所述方法包括:
[0054] 200 :浏览器将待下载对象的URL上传至第一服务器。
[0055] 202 :第一服务器根据待下载对象的URL确定待下载对象的分片信息,并将待下载 对象的分片信息发送给浏览器。
[0056] 在本实施例中,待下载对象的分片信息除了包括待下载对象的各分片的下载地址 及下载协议之外,还包括各分片的字节范围。
[0057] 在本发明的各种实施例中,可以按照预设的分片规则(例如,预设的字节范围)将 待下载对象分为多个预设大小的分片。例如,在一种具体场景中,可以由专门的文件处理服 务器从现有的文件服务器获取下载资源,之后对每个下载资源进行分片处理,在分片处理 过程中记录各分片的字节范围并将各分片的字节范围保存至第一服务器,在分片完成后将 得到的分片保存至下文提及的"相应服务器"。
[0058] 204 :浏览器根据待下载对象的分片信息从相应服务器下载分片,所述相应服务器 是指保存待下载对象的分片的服务器。具体而言,浏览器可根据分片信息中的下载地址和 下载协议从相应服务器下载分片。
[0059] 206 :如果存在无法下载的分片,则浏览器根据该分片的字节范围和待下载对象的 URL从第二服务器下载该分片的内容,其中,第二服务器是指保存所述待下载对象的服务 器,即,第二服务器保存有待下载对象的完整资源,因此,第二服务器能根据浏览器的请求 提供相应字节范围的内容。
[0060] 可选地,在本实施例的一种实现方式中,浏览器根据无法下载的分片的字节范围 和待下载对象的URL向第二服务器发送用于请求待下载对象的指定字节范围的下载请求; 然后接收由第二服务器发送的所述指定字节范围的内容。
[0061] 在本实施例中,第一服务器可以集成第二服务器的功能,所述"相应服务器"也可 以集成第二服务器的功能,当然,第二服务器也可以是独立于第一服务器和所述"相应服务 器"之外的服务器。
[0062] 在一种具体实现方式中,以第二服务器支持HTTP下载协议为例,当存在无法下载 的分片时,浏览器向第二服务器发送包含该分片的字节范围的HTTP请求(S卩,在HTTP请求 中增加 range字段,将无法下载的分片的字节范围作为该range字段所请求的字节范围) 来从第二服务器获取相应的内容。
[0063] 可选地,在本实施例的一种实现方式中,在执行204的过程中,如果浏览器接收到 相应服务器返回的错误响应(例如表示客户端错误的响应、表示服务器错误的响应等),则 执行206。本领域技术人员应当理解,很多原因可能导致分片无法下载,例如分片资源丢失、 服务器故障、网络故障等等,本发明对此不做限制。
[0064] 采用本实施例所提供的方法,除了具有图1所示实施例的优点之外,还能在分片 下载出现问题时,根据浏览器发送的请求从第二服务器下载指定字节范围的内容,保证了 下载成功率。
[0065] 可选地,在图1或图2所示实施例中的一种实现方式中,服务器通过以下方式保存 待下载对象的URL和待下载对象的分片信息的对应关系:服务器保存有第一表和第二表, 其中,第一表记录有待下载对象的URL和待下载对象的哈希(Hash)值的对应关系,第二表 记录有待下载对象的哈希值和待下载对象的分片信息的对应关系。
[0066] 下面对第一表和第二表进行举例说明。第一表如下表所不:
[0067]

【权利要求】
1. 一种通过浏览器进行下载的方法,其特征在于,所述方法包括: 浏览器将待下载对象的统一资源定位符URL上传至服务器; 所述浏览器接收由所述服务器发送的所述待下载对象的分片信息,其中,所述待下载 对象的URL和所述待下载对象的分片信息的对应关系保存在所述服务器上,所述待下载对 象的分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下载对 象的至少一个分片的下载协议与其它分片的下载协议不同; 所述浏览器根据所述待下载对象的分片信息从相应服务器下载分片,所述相应服务器 是指保存所述待下载对象的分片的服务器。
2. 如权利要求1所述的方法,其特征在于,所述待下载对象的分片信息除了包括所述 待下载对象的各分片的下载地址及下载协议之外,还包括各分片的字节范围。
3. 如权利要求2所述的方法,其特征在于,所述方法还包括: 如果存在无法下载的分片,则所述浏览器根据该分片的字节范围和所述待下载对象的 URL向保存所述待下载对象的服务器发送用于请求所述待下载对象的指定字节范围的下载 请求; 所述浏览器接收由保存所述待下载对象的服务器发送的所述指定字节范围的内容。
4. 一种通过浏览器进行下载的方法,其特征在于,所述方法包括: 服务器接收由浏览器上传的待下载对象的统一资源定位符URL ; 所述服务器根据所述待下载对象的URL确定所述待下载对象的分片信息,其中,所述 服务器保存有所述待下载对象的URL和所述待下载对象的分片信息的对应关系,所述待下 载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下 载对象的至少一个分片的下载协议与其它分片的下载协议不同; 所述服务器将所述待下载对象的分片信息发送给所述浏览器。
5. 如权利要求4所述的方法,其特征在于,所述服务器通过以下方式保存所述待下载 对象的URL和所述待下载对象的分片信息的对应关系: 所述服务器保存有第一表和第二表;其中, 第一表记录有所述待下载对象的URL和所述待下载对象的哈希值的对应关系; 第二表记录有所述待下载对象的哈希值和所述待下载对象的分片信息的对应关系。
6. 如权利要求5所述的方法,其特征在于,所述服务器根据所述待下载对象的URL确定 所述待下载对象的分片信息,包括: 所述服务器根据所述待下载对象的URL查找第一表,确定所述待下载对象的哈希值; 所述服务器根据所述待下载对象的哈希值查找第二表,确定所述待下载对象的分片信 息。
7. 如权利要求4所述的方法,其特征在于,所述待下载对象的分片信息除了包括所述 待下载对象的各分片的下载地址及下载协议之外,还包括各分片的字节范围。
8. 如权利要求7所述的方法,其特征在于, 所述服务器除了保存有所述待下载对象的URL和所述待下载对象的分片信息的对应 关系之外,还保存有所述待下载对象; 所述方法还包括: 所述服务器接收所述浏览器发送的用于请求所述待下载对象的指定字节范围的下载 请求; 所述服务器根据所述下载请求向所述浏览器发送所述指定字节范围的内容。
9. 一种浏览器,其特征在于,所述浏览器包括: 发送模块,用于将待下载对象的URL上传至服务器; 接收模块,用于接收由所述服务器发送的所述待下载对象的分片信息,其中,所述待下 载对象的URL和所述待下载对象的分片信息的对应关系保存在所述服务器上,由所述服务 器根据所述待下载对象的URL确定所述待下载对象的分片信息,所述待下载对象的分片信 息包括所述待下载对象的各分片的下载地址及下载协议,并且,所述待下载对象的至少一 个分片的下载协议与其它分片的下载协议不同; 下载模块,用于根据所述待下载对象的分片信息从相应服务器下载分片,所述相应服 务器是指保存所述待下载对象的分片的服务器。
10. 如权利要求9所述的浏览器,其特征在于,所述待下载对象的分片信息还包括各分 片的字节范围。
11. 如权利要求10所述的浏览器,其特征在于, 所述浏览器还包括二次下载模块,用于在存在所述下载模块无法下载的分片时,根据 该分片的字节范围和所述待下载对象的URL向保存所述待下载对象的服务器发送用于请 求指定字节范围的下载请求,并接收由保存所述待下载对象的服务器发送的所述指定字节 范围的内容。
12. -种服务器,其特征在于,包括: 接收模块,用于接收由浏览器上传的待下载对象的URL ; 存储模块,保存有所述待下载对象的URL和所述待下载对象的分片信息的对应关系, 其中,所述待下载对象的分片信息包括所述待下载对象的各分片的下载地址及下载协议, 并且,所述待下载对象的至少一个分片的下载协议与其它分片的下载协议不同; 查询模块,用于根据所述待下载对象的URL查询所述存储模块,以确定所述待下载对 象的分片信息; 发送模块,用于将所述待下载对象的分片信息发送给所述浏览器。
13. 如权利要求12所述的服务器,其特征在于, 所述存储模块具体保存有第一表和第二表,其中,第一表记录有所述待下载对象的URL 和所述待下载对象的哈希值的对应关系,第二表记录有所述待下载对象的哈希值和所述待 下载对象的分片信息的对应关系; 所述查询模块具体用于,根据所述待下载对象的URL查找第一表,确定所述待下载对 象的哈希值,然后根据所述待下载对象的哈希值查找第二表,确定所述待下载对象的分片 信息。
14. 如权利要求12所述的服务器,其特征在于,所述待下载对象的分片信息还包括各 分片的字节范围。
15. 如权利要求14所述的服务器,其特征在于, 所述存储模块还保存有所述待下载对象; 所述接收模块还用于,接收所述浏览器发送的用于请求所述待下载对象的指定字节范 围的下载请求; 所述发送模块还用于,将所述待下载对象的所述指定字节范围的内容发送至所述浏览 器。
16. -种服务器组,其特征在于, 所述服务器组包括至少两个服务器,并且所述至少两个服务器分别支持不同的下载协 议; 所述至少两个服务器分别保存有同一待下载对象的部分或全部分片,并且,保存在所 述至少两个服务器中的分片能够组成所述待下载对象的完整资源。
17. -种下载系统,其特征在于,包括: 如权利要求9至11中任一项所述的浏览器、如权利要求12至15中任一项所述的服务 器以及如权利要求16所述的服务器组。
18. 如权利要求17所述的下载系统,其特征在于,还包括: 用于保存所述待下载对象的服务器。
【文档编号】H04L29/08GK104283955SQ201410521719
【公开日】2015年1月14日 申请日期:2014年9月30日 优先权日:2014年9月30日
【发明者】俞健 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1