著录项信息
专利名称 | 一种下载应用软件的方法、装置及系统 |
申请号 | CN201210291514.8 | 申请日期 | 2012-08-16 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2014-02-19 | 公开/公告号 | CN103595743A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/08 | IPC分类号 | H;0;4;L;2;9;/;0;8查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 刘刚 |
代理机构 | 广州三环专利商标代理有限公司 | 代理人 | 郝传鑫 |
摘要
本申请公开了一种下载应用软件的方法、装置及系统,在客户端设置加速下载功能,该功能实际上就是加速下载软件,存储提供应用软件下载的加速源服务器地址,该加速源服务器地址实时更新。当客户端要下载应用软件时,拦截下载应用软件的下载请求后,根据所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。更进一步地,在该系统中还设置有追踪(Tracker)服务器,客户端还与该Tracker服务器建立连接,获取提供请求下载的应用软件的节点地址后,在Tracker服务器的控制下链接到这些节点后采用点对点的方式下载应用软件。这样,本发明提供的方法及系统就使得应用软件的下载速度加快并下载稳定。
一种下载应用软件的方法、装置及系统\n技术领域\n[0001] 本申请涉及互联网网络领域,特别涉及一种下载应用软件的方法、装置及系统。\n背景技术\n[0002] 随着互联网的发展,互联网服务器可以提供各种类型的应用软件,供客户端通过互联网下载使用。在通过互联网传输应用软件时,为了提高传输速度和稳定性,一般可以采用两种方式,一种为内容分发网络(CDN)方式,也就是多个服务器建立一个网络,这个网络中的服务器都可以提供同一应用软件,该网络为互联网基础之上的一层智能虚拟网络,可以根据互联网流量及各个服务器的负载状况,将客户端的获取应用软件请求定向到距离客户端距离最近且负载能力比较低的服务器上,由该服务器为客户端提供应用软件;另一种为节点对节点(P2P)方式,也就是将互联网中的每个客户端作为一个节点,每个节点都可以提供应用软件或进行应用软件的下载,当其中一个节点要下载应用软件时,可以从互联网中搜素到距离比较近且负载能力比较低的提供应用软件的节点,然后从该提供软件的节点上下载应用软件,这样,在下载应用软件的过程中,并没有依赖互联网中的几台较少服务器。\n[0003] 比如,对于苹果公司提供的客户端,其可以通过互联网到苹果公司提供的服务器上下载各种类型苹果公司的应用软件,但是,由于服务器都不在中国境内,距离中国国内的客户端,通过互联网与服务器建立连接后,由服务器传输应用软件的过程耗时比较长,这是因为,服务器与客户端的距离比较长,且由于互联网网络的环境比较复杂,从而降低了客户端下载应用软件的质量。\n[0004] 图1为现有技术提供的下载应用软件的系统结构示意图,包括:CDN、应用软件信息提供服务器、应用软件发布服务器及客户端,其中,\n[0005] 应用软件发布服务器,用于接收CDN发送的应用软件信息,发布给终端;\n[0006] 应用软件信息提供服务器,用于接收CDN发送的应用软件信息并存储,接收客户端发送的查询请求,将所请求的应用软件信息发送给客户端;\n[0007] CDN,用于接收客户端发送的下载请求,将所请求的应用软件发送给客户端;\n[0008] 客户端,用于向应用软件信息提供服务器发送查询请求,接收应用软件信息提供服务器发送的应用软件信息;向CDN发送下载请求,接收CDN发送的应用软件。\n[0009] 客户端采用图1的系统进行应用软件的下载,速度比较慢,这是因为客户端与CDN之间距离较远,且由于互联网网络的环境比较复杂,降低了客户端下载应用软件的质量。另外,CDN是由多个服务器组成的,当客户端要下载应用软件时,CDN需要采用域名服务系统(DNS)域名解析分配给该客户端下载应用软件的具体服务器,然后将该客户端连接到该服务器上,进行下载,这样也会导致CDN处理时间比较长,影响了下载速度。\n[0010] 采用图1的系统,客户端在下载应用软件时,都会通过本地DNS连接到CDN上请求解析分配所使用的服务器,这时CDN就会根据客户端所使用的DNS的IP地址确定所使用的服务器,然后将该客户端连接到该服务器上,进行下载。对于国内的客户端,DNS的IP地址一般是自动获得的,且高度集中相同,这样做的结果就是CDN会得到大量来自同一DNS的IP地址的下载请求,CDN就会采用同一服务器为客户端提供下载应用软件服务。\n[0011] 为了解决这个问题,可以采用两种方式解决。\n[0012] 第一种方式,在CDN和客户端之间设置代理服务器,该代理服务器预先缓存一些应用软件,当客户端要下载应用软件时,与代理服务器建立连接,如果该代理服务器已经缓存了要下载的应用软件,就直接下载,如果该代理服务器没有缓存要下载的应用软件,就由代理服务器和CDN建立连接,从CDN下载要下载的应用软件后,提供给客户端下载。由于代理服务器和客户端的距离比较近,减少了一些路由步骤,从而使得下载应用软件的步骤加快,但是这都是在代理服务器设置位置及数量比较妥当的情况,当代理服务器设置位置及数量不当的情况,访问速度下降也会时常发生。\n[0013] 第二种方式,修改客户端的主机(host)配置文件,由于host标识了本地客户端的唯一标识,通过修改host标识文件,就可以使得客户端修改所在的DNS,然后通过修改后的DNS与CDN中下载速度比较快的服务器之间直接建立连接,从而提高下载应用软件的速度。\n[0014] 采用以上两种方式提高客户端下载应用软件的速度各有缺点,采用第一种方式进行下载,增加代理服务器并不能保证下载应用软件的速度提高;采用第二种方式修改客户端的host配置文件,需要使用客户端的用户有一定的计算机技能且在修改期间也无法连接到CDN进行应用软件的下载,下载速度也无法提高。\n发明内容\n[0015] 有鉴于此,本发明实施例提供一种下载应用软件的方法,该方法能够使得应用软件的下载速度加快且下载稳定。\n[0016] 本发明实施例提供一种下载应用软件的装置,该装置能够使得应用软件的下载速度加快且下载稳定。\n[0017] 本发明实施例还提供一种下载应用软件的系统,该系统能够使得应用软件的下载速度加快且下载稳定。\n[0018] 根据上述目的,本发明实施例是这样实现的:\n[0019] 一种下载应用软件的方法,该方法包括:\n[0020] 存储提供应用软件下载的加速源服务器地址;\n[0021] 获取下载应用软件的下载请求;\n[0022] 根据所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。\n[0023] 一种下载应用软件的客户端,该装置包括:存储单元、重定向单元及收发单元,其中,\n[0024] 存储单元,用于存储提供应用软件下载的加速源服务器地址;\n[0025] 收发单元,用于获取下载应用软件的下载请求;\n[0026] 重定向单元,用于根据存储单元所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。\n[0027] 一种下载应用软件的系统,该系统包括:客户端、加速源服务器及加速查询服务器,其中,\n[0028] 加速查询服务器,用于从加速源服务器获取到加速源服务器提供的应用软件信息,对应加速源服务器地址存储;\n[0029] 加速源服务器,用于存储应用软件,接收所述客户端获取并发送的携带应用软件信息的下载请求,根据该请求携带的应用软件信息将所请求的应用软件发送给客户端;\n[0030] 所述客户端,用于获取携带应用软件信息的下载请求后,根据所存储的提供应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,接收所请求的应用软件。\n[0031] 从上述方案可以看出,本发明实施例在客户端设置加速下载功能,该功能实际上就是加速下载软件,存储提供应用软件下载的加速源服务器地址,该加速源服务器地址实时更新。当客户端要下载应用软件时,拦截下载应用软件的下载请求后,根据所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。更进一步地,在该系统中还设置有追踪(Tracker)服务器,客户端还与该Tracker服务器建立连接,获取提供请求下载的应用软件的节点地址后,在Tracker服务器的控制下链接到这些节点后采用点对点的方式下载应用软件。这样,本发明实施例提供的方法及系统就使得应用软件的下载速度加快并下载稳定。\n附图说明\n[0032] 图1为现有技术提供的下载应用软件的系统结构示意图;\n[0033] 图2为本发明实施例提供的下载应用软件的方法流程图;\n[0034] 图3为本发明实施例提供的下载应用软件的系统结构示意图;\n[0035] 图4为本发明实施例提供的下载应用软件的客户端结构示意图。\n具体实施方式\n[0036] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。\n[0037] 本发明实施例为了使得应用软件的下载速度加快且下载稳定,在客户端设置加速下载功能,该功能实际上就是加速下载软件,实时或定时获取应用软件下载的加速源服务器地址。当客户端要下载应用软件时,拦截下载应用软件的下载请求后,根据所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。由于客户端能够准确地获取加速源服务器地址,所以可以提高下载速度并保证稳定下载应用软件。\n[0038] 在本发明实施例中,客户端设置的加速下载功能实际上就是加速下载软件,在客户端安装该加速下载软件实现。在下载应用软件的系统中增加由加速接口服务器、加速逻辑服务器及管理员接口服务器组成的加速查询服务器。\n[0039] 在管理员接口服务器中存储提供应用软件下载的加速源服务器地址及对应的下载速度。客户端实时或定时向加速接口服务器提交应用软件查询及客户端的下载速度的信息,该加速接口服务器将应用软件查询信息及客户端的下载速度的信息发送加速逻辑服务器。由加速逻辑服务器从管理员接口服务器获取到应用软件下载的加速源服务器地址,根据客户端的下载速度信息及获取到应用软件下载的加速源服务器地址的下载速度,确认将符合客户端的下载速度信息的所获取到应用软件下载的加速源服务器地址,并通过加速接口服务器反馈给客户端。由客户端对符合客户端的下载速度信息的所获取到应用软件下载的加速源服务器地址的加速源服务器进行连接检测,检测方式为ping方式和测试网络带宽,将连接检测通过的加速源服务器的加速源服务器地址进行存储。\n[0040] 在下载应用软件的系统中,还包括了加速源服务器,对应应用软件标识存储了应用软件,所存储的应用软件为客户端将本地的应用软件上传的,且在存储应用软件后,将所具有的应用软件信息同步到管理员入口服务器存储。\n[0041] 在客户端设置的加速下载功能实际上就是修改客户端的底层分层服务提供程序(LSP),LSP是客户端与下载应用软件的系统中的其他实体通信的网际协议接口,修改后就可以实时或定时按照上述方式获取到加速源服务器地址并存储,后续获取到下载请求,重定向到加速源服务器上。\n[0042] 在本发明实施例中的系统中还设置有Tracker服务器,在Tracker服务器中存储了应用软件信息与提供该应用软件的节点地址,客户端还与该Tracker服务器建立连接,客户端获取提供请求下载的应用软件的节点地址后,在Tracker服务器的控制下链接到这些节点后采用点对点的方式下载应用软件。客户端可以实时或定时向Tracker服务器上报其具有的应用软件信息,Tracker服务器接收到后对应节点地址存储应用软件信息。\n[0043] 在本发明实施例中,应用软件信息包括应用软件标识。\n[0044] 在本发明实施例中,客户端可以将从加速源服务器和从节点同时下载应用软件的方式结合,这样,进一步提高下载应用软件的速度和稳定性。\n[0045] 在本发明实施例中的系统中还包括图1所示的CDN、应用软件信息提供服务器、应用软件发布服务器,客户端可以向应用软件信息提供服务器发送查询请求,接收应用软件信息提供服务器发送的应用软件信息;向CDN发送下载请求,接收CDN发送的应用软件。\n[0046] 图2为本发明实施例提供的下载应用软件的方法流程图,其具体步骤为:\n[0047] 步骤201、客户端存储提供应用软件下载的加速源服务器地址;\n[0048] 在该步骤中,所存储提高应用软件下载的加速源服务器地址可以实时或定时更新;\n[0049] 步骤202、客户端获取下载应用软件的应用请求;\n[0050] 步骤203、客户端根据所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。\n[0051] 在该方法中的步骤201中,客户端存储提供应用软件下载的加速源服务器地址实际上为:对应不同的应用软件标识存储加速源服务器地址,所存储的加速源服务器地址可以实时更新或定时更新。\n[0052] 上述对所存储的加速源服务器地址实时更新或定时更新的过程为:\n[0053] 客户端向下载应用软件系统实时或定时发送携带应用软件标识及客户端下载速度信息的查询请求,接受下载应用软件的系统反馈的符合客户端的下载速度信息的应用软件下载的加速源服务器地址,进行检测后,从中获取到检测通过的应用软件下载的加速源服务器地址。其中,检测方式为ping方式及设定带宽检测方式相结合的方式。\n[0054] 在该方法中,加速源服务器预先存储有客户端上传的应用软件,并将应用软件信息对应加速源服务器地址,存储到下载应用软件的系统中的加速查询服务器中,以便客户端后续获取符合客户端的下载速度信息的应用软件下载的加速源服务器地址。\n[0055] 在该方法中,进一步包括:\n[0056] 步骤204、客户端与下载应用软件系统中设置的Tracker服务器建立连接,获取提供请求下载的应用软件的节点地址后,在Tracker服务器的控制下链接到这些节点后采用点对点的方式下载应用软件。\n[0057] 这时,在下载应用软件的系统中的Tracker服务器中,存储了应用软件信息与提供该应用软件的节点地址,这些应用软件信息是客户端根据所存储的应用软件实时或定时上报的。\n[0058] 在该方法中,进一步包括:\n[0059] 步骤205、客户端向应用软件信息提供服务器发送查询请求,接收应用软件信息提供服务器发送的应用软件信息;向CDN发送下载请求,接收CDN发送的应用软件。\n[0060] 图3为本发明实施例提供的下载应用软件的系统结构示意图,包括:客户端、加速源服务器及加速查询服务器,其中,\n[0061] 加速查询服务器,用于从加速源服务器获取到加速源服务器提供的应用软件信息,对应加速源服务器地址存储;\n[0062] 加速源服务器,用于存储应用软件,接收所述客户端获取并发送的携带应用软件信息的下载请求,根据该请求携带的应用软件信息将所请求的应用软件发送给客户端;\n[0063] 所述客户端,用于获取携带应用软件信息的下载请求后,根据所存储的提供应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,接收所请求的应用软件。\n[0064] 在该系统中,所述加速查询服务器,还用于接收所述客户端发送的携带应用软件信息的查询请求,将对应该请求携带的应用软件信息的加速源服务器地址发送给所述客户端;\n[0065] 所述客户端,还用于向加速查询服务器发送携带应用软件信息的查询请求,接收加速查询服务器发送的加速源服务器地址并存储。\n[0066] 在该系统中,加速源服务器,还用于接收客户端上传的应用软件并存储,将应用软件信息同步到加速查询服务器上;\n[0067] 所述客户端,还用于向加速源服务器上传应用软件;\n[0068] 加速查询服务器,还用于对应加速源服务器地址同步应用软件信息。\n[0069] 在该系统中,所述加速查询服务器中具体包括加速接口服务器、加速逻辑服务器及管理员入口服务器,其中,\n[0070] 加速接口服务器,用于接收所述客户端发送的携带应用软件信息及下载速度的查询请求,发送给加速逻辑服务器;接收加速逻辑服务器发送的符合客户端下载速度的提供下载应用软件的加速源服务器地址;\n[0071] 加速逻辑服务器,用于接收加速接口服务器转发的查询请求,从管理员入口服务器中获取到符合客户端下载速度的提供下载应用软件的加速源服务器地址,发送给加速接口服务器;\n[0072] 管理员入口服务器,用于从加速源服务器获取到加速源服务器提供的应用软件信息,对应加速源服务器地址及加速源服务器的传送应用软件速度存储;\n[0073] 所述客户端,还用于向加速接口服务器发送携带应用软件信息及下载速度的查询请求,接收符合客户端下载速度的提供下载应用软件的加速源服务器地址后,检测具有该加速源服务器地址的加速源服务器,通过后,将通过存储的加速源服务器的地址存储。\n[0074] 在这里,连接检测采用ping方式和测试网络带宽方式。\n[0075] 在该系统中,当管理员入口服务器从加速源服务器获取到加速源服务器提供的应用软件信息,对应加速源服务器地址及加速源服务器的传送应用软件速度存储时,进一步判断加速源服务器的传送应用软件速度是否在设定的下载速度内,如果是,则存储,否则,则舍弃。\n[0076] 在该系统中,进一步包括Tracker服务器,用于存储应用软件信息与提供该应用软件的节点地址;接收到携带应用软件信息的下载请求后,将对应该下载请求携带的应用软件信息的节点地址发送给所述客户端;\n[0077] 所述客户端,还用于从该Tracker服务器获取提供请求下载的应用软件的节点地址后,链接到该节点后采用点对点的方式下载应用软件。\n[0078] 在该系统中,所述客户端,还用于实时或定时向Tracker服务器上报其具有的应用软件信息,Tracker服务器接收到后对应节点地址存储应用软件信息。\n[0079] 在该系统中,节点就是下载应用软件系统中的客户端。\n[0080] 具体地,Tracker服务器包括Tracker查询服务器和Tracker应用服务器,其中,Tracker查询服务器,用于接收到携带应用软件信息的下载请求,发送给Tracker应用服务器,接收到Tracker应用服务器反馈的对应该下载请求携带的应用软件信息的节点地址,发送给所述客户端;\n[0081] Tracker应用服务器,用于存储应用软件信息与提供该应用软件的节点地址,接收到Tracker查询服务器发送的下载请求后,将对应该下载请求携带的应用软件信息的节点地址反馈。\n[0082] 在该系统中,还包括图1中的CDN、应用软件信息提供服务器、应用软件发布服务器,客户端向应用软件信息提供服务器发送查询请求,接收应用软件信息提供服务器发送的应用软件信息;向CDN发送下载请求,接收CDN发送的应用软件。\n[0083] 图4为本发明实施例提供的下载应用软件的客户端结构示意图,包括:存储单元,用于存储提供应用软件下载的加速源服务器地址;\n[0084] 收发单元,用于获取下载应用软件的下载请求;\n[0085] 重定向单元,用于根据存储单元所存储的应用软件下载的加速源服务器地址,将该下载请求重定向到加速源服务器上,进行应用软件的下载。\n[0086] 在该客户端中,所述收发单元,还用于发送携带应用软件信息的查询请求,接收符合客户端的下载速度信息的应用软件下载的加速源服务器地址,检测后,从中获取到检测通过的应用软件下载的加速源服务器地址并存储在所述存储单元中。\n[0087] 在该客户端中,所述收发单元,还用于修改底层分层服务提供程序LSP,从所述LSP接口获取下载应用软件的应用请求。\n[0088] 在该客户端中,所述收发单元,还用于上传应用软件。\n[0089] 在该客户端中,重定向单元,还用于获取提供请求下载的应用软件的节点地址后,链接到该节点后采用点对点的方式下载应用软件。\n[0090] 从上述方案可以看出,本发明实施例提供的方法及系统可以提高下载应用软件的下载速度和提高下载成功率,下载应用软件稳定,减少用户使用客户端下载应用软件时不必要的等待;不需要用户手动配置客户端的host文件,就可以自动选择下载应用软件速度最高及下载最稳定的加速源下载服务器及节点,进行应用软件的下载,解决需要人工更新host文件和下载不稳定的确定。针对应用软件的提供商服务器来说,比如苹果公司的应用软件提供服务商服务器,增加了下载应用软件的下载源,可以根据下载应用软件的环境进行加速源服务器的专门部署和优化。在下载应用软件的系统中,还引入了P2P技术,在客户端之间传输应用软件,进一步提高下载的速度和稳定性,改善用户通过客户端下载应用软件的体验度。\n[0091] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
法律信息
- 2018-10-02
- 2015-04-22
实质审查的生效
IPC(主分类): H04L 29/08
专利申请号: 201210291514.8
申请日: 2012.08.16
- 2014-02-19
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-09-05
|
2007-02-16
| | |
2
| | 暂无 |
2005-01-20
| | |
3
| |
2011-04-13
|
2010-11-26
| | |
4
| |
2011-04-20
|
2009-09-22
| | |
5
| |
2011-07-13
|
2011-03-25
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |