软件下载的流量控制方法及流量控制系统的制作方法

文档序号:7717362阅读:138来源:国知局
专利名称:软件下载的流量控制方法及流量控制系统的制作方法
技术领域
本发明涉及软件下载的流量控制方法及流量控制系统。
背景技术
用户通过登录至各个网站下载各种软件。通常把网站称之为软件下载平台。请参 阅图1,其为软件下载平台的原理结构示意图。软件下载平台包括下载服务器11和数据库 12。数据库12上至少保存有各种软件数据包,供用户进行下载。下载服务器11用于管理用 户下载软件数据包。当登录至该软件下载平台的用户非常多,且要求下载的用户也很多时, 下载服务器11就会接收到非常多的下载请求,若不对下载的请求做管理的话,会使得整个 下载速率下降,甚至会使得整个软件下载平台瘫痪。为此,下载服务器11包括下载速率控制单元111和限制连接数控制单元112。下载 速率控制单元ill用于控制下载速率,比如,限制用户下载速率、限制单个连接下载速率、 限制同一 IP下载速率。该些下载速率的控制可以只控制1个,也可以同时控制多个。艮口, 下载速率控制单元111控制单个用户连接下载速率应不超过dl,和/或单个连接的下载速 率应不超过d2,和/或同一 IP下载速率应不超过d3等。当接收到某一用户的下载请求后, 下载速率控制单元111按照预先的设定来控制其对应的速率。比如,下载速率控制单元111 只限制同一 IP地址的下载速率不能超过d3,则接收到某一用户的下载请求时,则先找到该 用户的IP地址,再判断该IP地址的下载速率是否超过预先设定的d3值,如果是,则拒绝本 次的下载请求。下载速率控制单元111还可以同时限制用户的下载速度,即当该用户的IP 地址对应的当前下载速度小于预先设定的d3值后,即使允许该用户下载软件,还需要将用 户下载软件的速率限制在预先设定的值内。限制连接数控制单元112用于控制当前并行下 载软件的连接个数不能超过预先设定的d4值。软件升级的流量控制方法如下首先,下载服务器11接收到用户的下载请求,下载请求包括要求下载的软件信 息;接着,下载服务器11的限制连接数控制单元112进一步判断当前并行下载的软件 个数是否已超过预先设定的d4值,若是,则拒绝本次下载,若否,则进行下一步操作;随后,下载服务器11的下载速率控制单元111按照预先的设定来控制其对应的速 率比如,用户所在的IP地址的下载速率是否超过预先设定的d3值,若是,则拒绝本次下 载,若否,则允许该用户的当前下载;随后,下载速率控制单元111将该用户的当前下载速率限制在预先设定的范围 内比如,该用户的用户连接下载速率应不超过dl,和/或单个连接的下载速率应不超过d2等。当然,下载服务器11还可以通过设置其它的控制单元来控制用户的下载,比如, 当用户使用的软件需要进行升级更新时,分批给用户发送升级邀请,减少并发下载的机率, 再或者,软件分版本进行升级,减少一起升级带来的下载服务器11的阻塞。
还有一点需要说明的是,当能够提供下载的软件个数不多,或占用的存储空间不 太大的情况下,数据库12可以集成到下载服务器11上,即下载服务器11的存储器上还存 储有提供给用户下载的软件。并且,当能够提供下载的软件比较多或其它情况下,下载服务 器11可以用多个物理上的服务器去实现其功能。也就是说,下载服务器11是一种逻辑上 的划分,在物理上,可以通过多个服务器去实现下载服务器11的功能。上述的软件下载平台针对用户下载时的流量控制,存在以下的缺陷现有下载流量的控制与软件下载平台当前的实时流量是没有建立关联的,这会存 在很多问题。比如,软件下载平台当前的实时流量很小,此时下载流量控制若只限制用户的 下载速率,就会出现用户在很小的下载速率的范围内进行下载,而软件下载平台的多数带 宽属于闲置状态,即,一方面软件下载平台的带宽资源存在浪费,另一方面,用户的下载速 率却很低,存在非常慢的下载效率。再比如,软件下载平台当前的实时流量很小,而此时下 载流量控制还限制了并行下载的软件个数是否已超过预先设定的d4值,若接收到用户的 下载请求,而当前的并行下载的软件个数已超过了预先设定的值,这时就会拒绝用户的当 前下载请求,这种情况下也存在资源的浪费。还有,当限制用户下载速率不能超过预先设定 的dl值,当dl值设定比较小时,容易存在当前下载的个数比较多,但是,整个下载的效率非 常慢的问题,特别是软件下载平台当前的实时流量很大时,容易存在下载中断等问题。也就是说,现今的软件升级的流量控制方式都没有与当前平台的实时流量相结 合,存在造成资源浪费、或是整体下载速率低、下载容易中断的技术问题。

发明内容
本发明的目的在于提供一种软件下载的流量控制方法,以解决现有技术中现有下 载流量的控制与软件下载平台当前的实时流量是没有建立关联的,由此导致资源浪费、下 载速率低的技术问题。本发明的另一目的在于提供一种软件下载的流量控制系统,以解决现有技术中现 有下载流量的控制与软件下载平台当前的实时流量是没有建立关联的,由此导致资源浪 费、下载速率低的技术问题。一种软件下载的控制方法,用于软件下载平台控制软件的下载,包括(1)接收用户的软件下载请求;(2)查询软件下载平台当前的实时流量信息,获得当前可用下载带宽信息;(3)判断当前可用下载带宽能否承载的本次下载,若否,则拒绝本次的软件下载请 求,若能,则进行步骤(4);(4)确定本次软件下载请求的优先级,根据优先级分配对应的带宽。最佳地,步骤( 之前还包括判断当前可用下载带宽是否小于预先设定的下载最小带宽数,若是,则直接拒绝 本次的软件下载请求,若否,则进行步骤(3)。另外,在进行优先级分配带宽时,具体实施可以为Al 预先确定各种软件下载请求类型的优先级;A2 预先确定每一优先级分配带宽的分配策略;A3 当步骤(4)接收到软件下载请求时,按照步骤Al确定的优先级,再按照步骤A2分配带宽。所述分配策略可以包括确定每一级优先级对应的分配带宽,优先级高,分配带宽 多,优先级低,分配带宽少。所述分配策略可以包括确定每一级优先级与当前可用下载带宽的关系,其为Mi =K*Qi; Mi为第i优先级对应分配的带宽,K为当前可用下载带宽,Qi为第i优先级对应的 系数,优先级高,Qi的系数值高。另外,拒绝本次的软件下载请求之前还包括进一步判断本次下载请求的下载属 性是用户手动下载还是用户自动下载,若是用户自动下载,则直接拒绝本次的软件下载请 求,若是用户手动下载,则判断手动下载预留带宽是否已用完,若是,则拒绝用户的本次下 载请求,若否,则允许下载。一种软件下载的流量控制系统,包括软件下载平台,软件下载平台进一步包括数据库,用于存储给用户下载的软件信息;流量检测服务器,用于获得软件下载平台当前的实时流量信息,计算当前可用下 载带宽;下载控制服务器,连接流量检测服务器,用于根据流量检测服务器的当前可用下 载带宽以及软件下载请求的优先级来处理当前的下载请求和/或调整当前软件下载的流 M.fn 息;下载处理服务器,连接下载控制服务器和数据库,用于在下载控制服务器的控制 下,给允许下载的当前下载请求进行下载对应软件的操作。与现有技术相比,本申请具有以下的优点首先,本申请的软件升级的流量控制方式和当前软件下载平台的实时流量相适 应,直接根据当前可用下载带宽来决定是否允许本次下载,不需要考虑连接数及用户的下 载速率,控制简单有效,本申请的下载直接根据当前的可用下载带宽来分配给用户的下载 带宽,克服了现有的软件升级过程中容易造成资源浪费的问题。其次,本申请还将下载的类型分为手动和自动,并且为手动下载的额外预留出手 动下载预留带宽,能够为一些优先级高的下载请求利用手动下载预留带宽完成下载,满足 不同下载的需求。还有,给下载分配的带宽也可以随着本平台的流量使用比率来动态分配, 达到整体带宽资源更为合理的应用。再次,本申请在拒绝本次下载请求的同时,还预先计算出下次下载请求的时间点 通知用户,不仅使得用户能够清楚获知下次比较好的下载请求时间点,而且最为重要的是, 软件下载平台能够根据合理安排下载计划,使得资源利用更为合理。


图1为软件下载平台现有的原理结构示意图;图2为本申请软件下载的控制系统的原理示意图;图3为本申请流量检测服务器的原理示意图;图4为下载控制服务器的原理示意图;图5为下载控制服务器上存储单元的原理示意图;图6为软件下载的流量控制方法的原理流程示意图。具体实施例方式以下结合附图,具体说明本申请。请参阅图2,其为本申请一种软件下载的流量控制系统的原理结构示意图。流量控 制系统包括用户终端21和软件下载平台22,用户终端21通常是通过因特网连接软件下载 平台22。再请参阅图2-图4,软件下载平台22软件下载平台进一步包括数据库31、流量检 测服务器32、下载控制服务器33和下载处理服务器34。数据库31,用于存储包括给用户下载的软件信息在内的数据。数据库21用于存储 各种数据,在本实例中,数据库31主要是用来存储各种给用户下载的软件数据。流量检测服务器32,用于获得软件下载平台22当前的实时流量信息,计算当前可 用下载带宽。其中,流量检测服务器32进一步包括流量获得单元 321 用于通过 SNMP 协议(Simple Network ManagementProtocol, 简单网络管理协议)读取各个网络接口设备的网络流量,统计出当前的网络流量。比如,流 量获得单元321可以通过MRTG(Multi Router TrafficGrapher)等软件来直观获得网络 流量信息。MRTG软件是利用SNMP协议去查询指定有SNMP协议的网络接口设备(防火墙、 路由器、交换机等),定时统计其设备的流量或负载,再将统计结果绘成统计图等直观显示 方式。这个软件可以计算出系统的包括Mail、DNS (Domain Name System,域名系统)、W^eb、 BBS、IRC (Internet Relay Chat,互联网中继聊天)等的流量信息。流量获得单元321通过 现有的软件即可获得网络接口设备的网络流量,可以统计出不同性质的流量,如用于下载 的流量数,用于Mail的流量等。下载可用带宽计算单元322:用于计算出用以软件下载的下载可用带宽信息。下 载可用带宽计算单元322连接流量获得单元321,当流量获得单元321获得当前所使用的各 种不同性质的流量情况后,下载可用带宽计算单元322可以按照预先设定的规则计算出下 载可用带宽,再计算出下载可用带宽。一种方式是检测出当前下载已占用带宽(即当前下载流量数);再将预先设定的 下载占用总带宽减去当前下载已占用带宽,得到当前可用下载带宽。还有一种方式为(1)检测出当前下载已占用带宽、系统当前总流量;(2)计算系 统当前总流量与系统所有带宽的比值,计算出流量使用比率;C3)查找下载带宽比重数表, 获得该流量使用比率对应的下载带宽比重数;下载带宽比重数表是表明不同的流量使用比 率对应的下载带宽比重数;(4)系统所有带宽乘以本次的下载带宽比重数,得到本次下载 占用总带宽;(5)本次下载占用总带宽减去当前下载已占用带宽,得到当前可用下载带宽。即预先设定的规则可以规定在不同的流量使用比率下,下载流量占总带宽的比重 数。比如,流量使用比率大于70 %时,下载流量占用的比重数为30 %,流量使用比率不大于 70%时,下载流量占用的比重数为50%。下载可用带宽计算单元322先计算出下载带宽占用比重数后,再将下载带宽占用 的比重数乘以系统所有带宽即可求出本次下载占用总带宽,后将本次下载占用总带宽减去 流量获得单元321获得的当前下载已占用带宽,得到的当前可用下载带宽。上述公开的几种计算下载可用带宽的方式,是用来举例用的。下载可用带宽计算单元322可以按照预先设定的该些规则来计算出下载可用带宽,并不局限于上述几种计算 方式。交互单元323,用于建立与下载控制服务器33的交互定时将本端获得的下载可 用带宽信息发送至下载控制服务器33,或者是接收到下载控制服务器33的查询请求后,触 发流量获得单元321工作并将下载可用带宽计算单元322计算出来的当前下载可用带宽信 息返回至下载控制服务器33。流量检测服务器32公开的上述单元通常是逻辑单元,也可以是物理单元,目前主 要是通过软件来实现。下载控制服务器33,连接流量检测服务器32,用于根据流量检测服务器32的当前 可用下载带宽来处理当前的下载请求和/或调整当前软件下载的流量信息。下载控制服务器33进一步包括接收下载请求接口单元331 用于接收用户的下载请求,从中解析出包括待下载 的软件信息、用户信息、下载类型信息的信息。当前可用流量获得单元332 用于从流量检测服务器32上获得当前下载可用带宽 信息。当前可用流量获得单元332可以定期从流量检测服务器32上获得当前下载可用带 宽信息,也可以是接收到有用户的下载请求后,再到流量检测服务器32上同步当前下载可 用带宽信息。另外,在本实例中,当前可用流量获得单元332可以将每次获得的当前下载可用 带宽信息保存在下载可用带宽记录中。还有,当前可用流量获得单元332还可以从流量检 测服务器32中获得下载已占用带宽,并将下载已占用带宽保存在下载已占用带宽记录中。可用流量判断单元333 用于判断当前下载可用带宽是否能承载本次下载。若当 前下载可用带宽为零时,是不能承载本次下载的。若当前下载可用带宽小于预先设定的下 载最小带宽数时,也是不能承载本次下载的。考虑到下载最小带宽数通常大于零,因此,判 断当前下载可用带宽为零这一步可以省略,直接判断当前下载可用带宽是否小于下载最小 带宽数。或者,没有设定下载最小带宽数时,也可以将判断当前下载可用带宽是否小于下载 最小带宽数这一步给省略。另外,可用流量判断单元333还可以先预先估算一下本次下载所占用的预期带 宽,若当前下载可用带宽小于预期带宽时,当前下载可用带宽也是不能承载本次下载的。在 计算预期带宽时,可以根据当前下载可用带宽来计算,比如,当前下载可用带宽少于设定 值,可以求得最小预期带宽,当前下载可用带宽大于某一预设值时,可以在计算出的带宽基 础上增加10%之类的预增比得到预期带宽。流量控制处理单元334:用于在当前下载可用带宽不能承载本次下载时,拒绝本 次用户的下载请求。带宽分配处理单元341 连接流量控制处理单元334,对当前下载可用带宽能承载 本次下载请求时,确定本次软件下载请求的优先级,根据优先级分配对应的带宽。可以预先 在数据库31中存储各种软件下载请求类型的优先级,并存储每一优先级分配带宽的分配 策略。分配策略可以为每一优先级对应分配的带宽数,也可以为每一级优先级与当前可用 下载带宽的关系,其为Mi = K^Qi5Mi为第i优先级对应分配的带宽,K为当前可用下载带宽, Qi为第i优先级对应的系数,优先级高,Qi的系数值高。当接收到一次下载请求时,先查询对应的优先级,后根据优先级对应的策略,就能计算出分配给本次下载请求的带宽了。流量控制处理单元3;34还可以进一步包括下载类型判断子单元335,连接可用流量判断单元333,用于当可用流量判断单元 333判断出当前下载可用带宽不能承载本次下载时,再判断本次下载请求的类型是手动下 载还是自动下载。手动下载是指在用户实时操作下完成下载,自动下载是指预先设定下载 任务后,在预先设定的时间用户终端在没有用户实时操作的情况下完成下载。通常,接收下 载请求接口单元331在解析下载请求中,包含有下载类型。自动下载处理子单元336,用于在当前下载可用带宽不能承载本次下载时,直接拒 绝本次用户的下载请求。手动下载处理子单元337,用于在当前下载可用带宽不能承载本次下载时,再查看 手动下载预留带宽,手动下载预留带宽已用完,拒绝用户的本次下载请求,否则,允许下载。允许下载子单元338,连接可用流量判断单元333和手动下载处理子单元337,用 于接收到允许下载的指令后,保存预期带宽和预期下载占用时间,并建立与下载处理服务 器34之间的交互。下次下载时间点计算子单元339,用于拒绝用户的本次下载请求之前,计算出下次 下载时间点并通知用户。计算出下次下载时间点在后续着重说明,在此就不再详细说明了。拒绝下载请求处理子单元340,用于拒绝用户,并将下次下载时间点计算子单元 339计算出来的下次下载时间一并通知用户。下载控制服务器33除了包括上述的单元之后,还包括用于存储各种数据的存储 单元(请参阅图5),比如下载可用带宽记录存储单元41,用于存储下载可用带宽记录;下载已占用带宽记录存储单元42,用于存储下载已占用带宽记录;下载软件状态表存储单元43,用于存储当前各个下载占用的带宽及剩余时间,以 及已预订出去的预期下载带宽及预期下载时间。这些存储单元还可以设定在其它服务器上,也可以设定在数据库31上。下载处理服务器34,连接下载控制服务器33和数据库31,用于在下载控制服务器 33的控制下,给允许下载的当前下载请求进行下载对应软件的操作。下载服务器34上保存 有各个软件的存储地址,当接收到下载请求被允许时,建立对应软件的存储地址与用户终 端的对应关系。在本实例中,下载处理服务器34还需要将下载的情况实时返回至下载控制 服务器33。比如,某一下载完毕或下载被中断时,将该些信息返回至下载控制服务器33,以 便下载控制服务器33修改下载软件状态表存储单元43中的内容。需要说明的是,上述的流量检测服务器32、下载控制服务器33和下载处理服务器 34可以是物理上的服务器,也可以是逻辑上的服务器。也就是说,流量检测服务器32、下载 控制服务器33和下载处理服务器34可以用一个或多个服务器来完成各自的功能,也可以 将该些功能集成在一个服务器上来完成。另外,数据库31可以是单独的物理上若干数据存 储空间组成的数据库,还可以将数据库31集成在其它服务器的存储器上。请参阅图6,其为本申请软件下载的控制方法的流程图。它用于软件下载平台控制 软件的下载,包括SllO 接收用户的软件下载请求。软件下载平台接收到用户的软件下载请求,先从10中解析出用户需下载的软件信息、用户信息、下载类型信息等。S120:查询软件下载平台当前的实时流量信息,获得当前可用下载带宽信息。流量检测服务器32根据SNMP协议可以检测到设备的流量或负载信息,由此可获 知不同性质用途的流量情况。比如,流量检测服务器32通过MRTG (Multi Router Traffic Grapher)等软件来 直观获得网络流量信息。MRTG软件是利用SNMP协议去查询指定有SNMP协议的设备(防 火墙、路由器、交换机等),定时统计其设备的流量或负载,再将统计结果绘成统计图等直观 显示方式,可以计算出系统的包括Mail、DNS (Domain Name System,域名系统)、W^eb、BBS、 IRCdnternet RelayChat,互联网中继聊天)等的流量信息。流量获得单元321通过现有 的软件即可获得网络接口设备的网络流量,可以统计出不同性质用途的流量,如用于下载 的流量数,用于Mail的流量等。流量检测服务器32可以按照预先设定的规定计算出当前可用下载带宽。比如,一 种最简单的方式是下载占用的总带宽是静态的,当前可用下载带宽为下载占用的总带宽减 去当前下载已占用带宽。考虑到下载占用的总带宽可以是动态分配的,按照现有的带宽使 用情况动态分配用于下载的总带宽。比如,当整个软件下载平台目前已使用的带宽比较少 的时候,可以多分配一些带宽用于下载,当整个软件下载平台目前已使用的带宽比较多的 时候,可以少分配一些带宽用于下载。即,下载流量占用的比重数在某一域值范围给出一对 应的下载占用带宽比重。这种方式下,先计算出下载流量占用的比重数后,再将下载流量占 用的比重数乘以总带宽即可求出下载占用的带宽,后将下载占用的带宽减去预先获得的下 载已占用带宽,得到的就是下载可用带宽。上述公开的一种计算下载可用带宽的方式,预先 设定的规则也不仅仅局限于上述这一种,可以人为设定各种规则,下载可用带宽计算单元 322可以按照预先设定的该些规则来计算出下载可用带宽。S130:当前可用下载带宽是否能承载本次下载,若否,则拒绝本次的软件下载请求 (S140),若是,则进行优先级判定,分配对应的带宽,允许下载(进行步骤S150)。判断当前下载可用带宽是否能承载本次下载可以有以下几种判断依据首先,判断当前可用下载带宽是否小于预设的下载最小带宽数,下载最小带宽数 是下载必需的最小带宽数。如是,则当前可用下载带宽肯定不能承载下次下载。如果不是, 则进一步预先估算本次下载所占用的预期带宽,若当前下载可用带宽小于预期带宽时,当 前下载可用带宽也是不能承载本次下载的。一般在估算预期带宽时,可以将当前下载可用 带宽作为一参照依据来估算预期带宽。在计算预期带宽时,可以根据当前下载可用带宽来 计算,比如,当前下载可用带宽少于设定值,可以求得最小预期带宽,当前下载可用带宽大 于某一预设值时,可以在计算出的带宽基础上增加一定数值的预增比(如10% )得到预期 带宽。当前可用下载带宽不能承载本次下载时,则进一步判断本次下载请求的下载属性 是用户手动下载还是用户自动下载,若是用户自动下载,则直接拒绝本次的软件下载请求, 若是用户手动下载,则判断手动下载预留带宽是否已用完,若是,则拒绝用户的本次下载请 求,若否,则允许下载,并将预期带宽和预期下载时间记载在下载软件状态表中。拒绝用户本次下载请求之前,先计算出下次请求下载软件的时间点后一并通知用 户。11
计算下次请求下载软件的时间点进一步包括预先计算出用户本次下载需占用的预期时间和占用的预期带宽;查找下载软件状态表,找到存在对应预期带宽及对应预期时间空闲的时间点,作 为通知该用户下次请求下载软件的时间点。计算下次请求下载软件的时间点还包括预先计算出用户本次下载需占用的预期时间和占用的预期带宽信息;参考历史的下载软件状态表,确定该用户下次请求下载软件的时间点。比如,当下载的类型是自动下载,则可以参照下载可用带宽记录存储单元和下载 已占用带宽记录存储单元的历史记录(如昨天),找到一个有空闲预期时间及空闲预期带 宽的时间点,作为下次请求下载软件的时间点,当下载的类型是手动下载,则可以直接参考 历史的下载软件状态表,找到最近的有空闲预期时间及空闲预期带宽的时间点,作为该用 户下次请求下载软件的时间点。S150:下载处理服务器给允许下载的当前下载请求确定本次软件下载请求的优先 级,根据优先级分配对应的带宽。可以预先在数据库31中存储各种软件下载请求类型的优 先级,并存储每一优先级分配带宽的分配策略。分配策略可以为每一优先级对应分配的带 宽数,也可以为每一级优先级与当前可用下载带宽的关系,其为Mi = K^Qi5Mi为第i优先级 对应分配的带宽,K为当前可用下载带宽,Qi为第i优先级对应的系数,优先级高,&的系数 值高。当接收到一次下载请求时,先查询对应的优先级,后根据优先级对应的策略,就能计 算出分配给本次下载请求的带宽了。S160 进行下载对应软件的操作,并将分配给本次下载的带宽保存至下载软件状 态表中;在下载完毕后,将下载完毕信息返回至下载软件状态表。软件下载平台还可以定期检测当前可用下载带宽值大于预先设定的带宽调整域 值,若是,则增加当前下载的带宽。当当前下载有多个时,可以将某些下载的带宽提高。比 如,将下载预先设定优先级,调整优先级高的下载对应的带宽。以上公开的仅为本申请的几个具体实施例,但本申请并非局限于此,任何本领域 的技术人员能思之的变化,都应落在本申请的保护范围内。
权利要求
1.一种软件下载的控制方法,用于软件下载平台控制软件的下载,其特征在于,包括(1)接收用户的软件下载请求;(2)查询软件下载平台当前的实时流量信息,获得当前可用下载带宽信息;(3)判断当前可用下载带宽能否承载本次下载,若否,则拒绝本次的软件下载请求,若 能,则进行步骤(4);(4)确定本次软件下载请求的优先级,根据优先级分配对应的带宽,允许下载。
2.如权利要求1所述的控制方法,其特征在于,还包括 Al 预先确定各种软件下载请求类型的优先级;A2 预先确定每一优先级分配带宽的分配策略;A3 步骤(4)中当接收到软件下载请求时,按照步骤Al先确定本次软件下载的优先级, 再按照步骤A2分配带宽。
3.如权利要求2所述的方法,其特征在于,所述分配策略包括确定每一级优先级对应的分配带宽数,优先级高,分配的带宽多,优先级低,分配的带 宽少。
4.如权利要求2所述的方法,其特征在于,所述分配策略包括 确定每一级优先级与当前可用下载带宽的关系,其为Mi = K^Qi其中,Mi为第i优先级对应分配的带宽,K为当前可用下载带宽,Qi为第i优先级对应 的系数,优先级高,Qi的系数值高。
5.如权利要求1所述的方法,其特征在于,步骤(3)之前还包括判断当前可用下载带宽是否小于预先设定的下载最小带宽,若是,则直接拒绝本次的 软件下载请求,若否,则进行步骤(3)。
6.如权利要求1或5所述的方法,其特征在于,拒绝本次的软件下载请求之前还包括 进一步判断本次下载请求的下载属性是用户手动下载还是用户自动下载,若是用户自动下载,则直接拒绝本次软件下载请求,若是用户手动下载,则判断手动下载预留带宽是否 已用完,若是,则拒绝用户的本次软件下载请求,若否,则允许下载。
7.如权利要求1或5所述的方法,其特征在于,步骤(2)进一步包括 检测出当前下载已占用带宽;将预先设定的下载占用总带宽减去当前下载已占用带宽,得到当前可用下载带宽。
8.如权利要求1或5所述的方法,其特征在于,步骤(2)进一步包括 检测出当前下载已占用带宽、系统当前总流量;计算系统当前总流量与系统所有带宽的比值,计算出流量使用比率; 查找下载带宽比重数表,获得该流量使用比率对应的下载带宽比重数; 系统所有带宽乘以本次的下载带宽比重数,得到本次下载占用总带宽; 本次下载占用总带宽减去当前下载已占用带宽,得到当前可用下载带宽。
9.如权利要求8所述的方法,其特征在于,步骤(4)还包括计算本次下载所占的预期带宽信息以及本次下载需花费的预期下载时间; 当前下载可用带宽是否不小于预期带宽,若是,则当前下载可用带宽能承载本次下载, 并将预期带宽和预期下载时间记载在下载软件状态表中。
10.如权利要求9所述的方法,其特征在于,还包括,拒绝用户本次下载请求之前,先计算出下次请求下载软件的时间点后一并通知用户。
11.如权利要求9所述的方法,其特征在于,计算下次请求下载软件的时间点进一步包括预先计算出用户本次下载需占用的预期时间和占用的预期带宽; 查找下载软件状态表,找到存在对应预期带宽及对应预期时间空闲的时间点,作为通 知该用户下次请求下载软件的时间点。
12.如权利要求9所述的方法,其特征在于,计算下次请求下载软件的时间点还包括 预先计算出用户本次下载需占用的预期时间和占用的预期带宽信息;参考历史的下载软件状态表,确定该用户下次请求下载软件的时间点。
13.如权利要求1或5所述的方法,其特征在于,还包括下载处理服务器给允许下载的当前下载请求进行下载对应软件的操作,并将分配给本 次下载的带宽保存至下载软件状态表中;在下载完毕后,将下载完毕信息返回至下载软件状态表。
14.一种软件下载的流量控制系统,包括软件下载平台,其特征在于,软件下载平台进 一步包括数据库,用于存储给用户下载的软件信息;流量检测服务器,用于获得软件下载平台当前的实时流量信息,计算当前可用下载带宽;下载控制服务器,连接流量检测服务器,用于根据流量检测服务器的当前可用下载带 宽以及软件下载请求的优先级来处理当前的下载请求和/或调整当前软件下载的流量信 息;下载处理服务器,连接下载控制服务器和数据库,用于在下载控制服务器的控制下,给 允许下载的当前下载请求进行下载对应软件的操作。
15.如权利要求14所述的系统,其特征在于,所述流量检测服务器进一步包括 流量获得单元用于通过SNMP协议读取各个网络接口设备的网络流量,统计出当前的网络流量;下载可用带宽计算单元用于计算出用于软件下载的下载可用带宽信息; 交互单元,用于建立与下载控制服务器的交互定时将本端获得的下载可用带宽信息 发送至下载控制服务器,或者是接收到下载控制服务器的查询请求后,触发流量获得单元 工作,并将下载可用带宽计算单元计算出来的下载可用带宽信息返回至下载控制服务器。
16.如权利要求14或15所述的系统,其特征在于,下载控制服务器进一步包括接收下载请求接口单元用于接收用户的下载请求,从中解析出包括待下载的软件信 息、用户信息、下载类型信息在内的信息;当前可用流量获得单元用于从流量检测服务器上获得当前下载可用带宽信息; 可用流量判断单元用于判断当前下载可用带宽是否能承载本次下载请求; 流量控制处理单元用于在当前下载可用带宽不能承载本次下载请求时,拒绝本次用 户的下载请求;带宽分配处理单元对当前下载可用带宽能承载本次下载请求时,确定本次软件下载 请求的优先级,根据优先级分配对应的带宽。
17.如权利要求16所述的系统,其特征在于,流量控制处理单元进一步还包括 下载类型判断子单元,连接可用流量判断单元,用于在当前下载可用带宽不能承载本 次下载请求时,判断本次下载请求的类型是手动下载还是自动下载; 自动下载处理子单元用于拒绝本次用户的下载请求;手动下载处理子单元,用于查看手动下载预留带宽,手动下载预留带宽已用完,拒绝用 户的本次下载请求;允许下载处理子单元用于对请求被允许的下载请求,建立与下载处理服务器的交互。
全文摘要
一种软件下载的控制方法,用于软件下载平台控制软件的下载,包括(1)接收用户的软件下载请求;(2)查询软件下载平台当前的实时流量信息,获得当前可用下载带宽信息;(3)判断当前可用下载带宽能否承载本次下载,若否,则拒绝本次的软件下载请求,若能,则进行步骤(4);(4)确定本次软件下载请求的优先级,根据优先级分配对应的带宽。本申请直接根据当前可用下载带宽来决定是否允许本次下载,不需要考虑连接数及用户的下载速率,控制简单有效,并且,本申请能够根据优先级来分配对应的带宽,达到整体资源的合理利用。
文档编号H04L12/56GK102045321SQ20091020827
公开日2011年5月4日 申请日期2009年10月23日 优先权日2009年10月23日
发明者余荣乔, 孔勇伟, 彭卫, 莫建祥, 闻波 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1