多wan口的网关、实现http下载的方法及系统的制作方法_2

文档序号:9730224阅读:来源:国知局
发送模块发送该HTTP GET请求包生成模块生成的HTTPGET请求包的WAN 口接收由外网服务器发送的下载数据包,该下载数据包响应于该HTTPGET请求包生成模块生成的HTTP GET请求包且包括实际下载的数据,然后调用该修改模块;
[0031]该修改模块用于根据该记录模块记录的内网PC的HTTP GET请求包的TCP head和IP head及该response数据包的TCP head修改接收到的下载数据包的IP head和TCPhead,然后调用该发送模块将修改后的下载数据包发送至内网PC。
[0032]较佳的,η大于或等于WAN 口的数量J_HTTP GET请求包生成模块中生成η个HTTPGET请求包为:逐批生成等于或小于该网关的WAN 口的数量的HTTP GET请求包,直到生成的所有的HTTP GET请求包的Range字段表征的请求下载的内容之和等于内网PC的HTTPGET请求包请求下载的内容,且同一批次的HTTP GET请求包由该发送模块分别通过不同的WAN 口发送至外网服务器;该HTTP GET请求包生成模块中的生成η个HTTP GET请求包或为:一次性生成η个HTTP GET请求包,且该发送模块通过每个WAN 口至少发送一个该HTTPGET请求包生成模块生成的HTTPGET请求包至外网服务器。
[0033]较佳的,该HTTP GET请求包生成模块还用于将该记录模块记录的HTTP GET请求包请求下载的内容按照每个WAN 口的带宽正比例均匀分配到每个Range字段。
[0034]较佳的,该发送模块被该修改模块调用后用于将修改后的下载数据包按照修改完成的顺序逐一发送至内网PC或用于在修改后的下载数据包中筛选出Range字段连续的下载数据包一同发送至内网PC或用于待所有下载数据包修改完毕后一同发送至内网PC。
[0035]较佳的,该记录模块还用于在调用该发送模块将内网PC的HTTP GET请求包发送至外网服务器时记录该HTTP GET请求包的TCP head,还用于还在调用该发送模块将外网服务器的响应于该HTTP GET请求包的response数据包发送至内网PC时记录response数据包的 TCP head。
[0036]较佳的,该记录模块还用于在调用该发送模块将内网PC的HTTP GET请求包发送至外网服务器时记录该HTTP GET请求包的HTTP head,还用于还在调用该发送模块将外网服务器的响应于该HTTP GET请求包的response数据包发送至内网PC时记录response数据包的HTTP head。
[0037]—种HTTP下载系统,其特点是,该HTTP下载系统包括上述个优选条件任意组合的网关、外网服务器和内网PC。
[0038]在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
[0039]本发明的积极进步效果在于:本发明的多WAN 口的网关、实现HTTP下载的方法及系统在不对内网PC和外网服务器做任何改进的前提下,使得多WAN 口的网关进行下载时不受限于单个WAN 口的最大下载速度,大大提高了 HTTP下载的速度及带宽资源利用率。
【附图说明】
[0040]图1为本发明的实施例1的4WAN 口的网关实现HTTP下载的方法第一流程图。
[0041]图2为本发明的实施例1的4WAN 口的网关实现HTTP下载的方法的网关与外网服务器交互的流程图。
[0042]图3为本发明的实施例1的4WAN 口的网关实现HTTP下载的方法的网关与内网PC交互的流程图。
[0043]图4为本发明的实施例1的4WAN 口的网关的示意图。
[0044]图5为本发明的实施例1的HTTP下载系统的示意图。
[0045]图6为本发明的实施例2的4WAN 口的网关实现HTTP下载的方法的网关与外网服务器交互的流程图。
[0046]图7为本发明的实施例2的4WAN 口的网关实现HTTP下载的方法的网关与内网PC交互的流程图。
[0047]图8为本发明的实施例3的4WAN 口的网关实现HTTP下载的方法的网关与内网PC交互的流程图。
【具体实施方式】
[0048]下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0049]实施例1
[0050]一种4WAN 口的网关实现HTTP下载的方法,用于将内网PC请求下载的资源通过该网关从外网服务器下载至内网PC,其中,WAN1和WAN3的下载速度为ΙΜ/s,WAN2和WAN4的下载速度为2M/s,请求下载的资源为100M,该方法包括以下步骤,参见图1:
[0051]步骤101、内网PC生成一 HTTP GET请求包,并通过该网关的LAN 口将该HTTP GET请求包发送至该网关。该HTTP GET请求包是现有技术中内网PC下载资源所生成的HTTPGET请求包,该HTTP GET请求包的HTTP head表明了请求下载的资源,该HTTP GET请求包的IP head表明了生成该HTTP GET请求包的内网PC的IP和该HTTP GET请求包要发送到的外网服务器的IP。
[0052]步骤102、该网关记录该HTTP GET请求包的HTTP head、TCP head和IP head,尤其是包含的请求下载的内容、TCP head包括的seq、ack等字段及IP head包括的内网PC的IP和外网服务器的IP。
[0053]步骤103、该网关将该HTTP GET请求包通过该网关的WAN1 (亦可是该网关的其它任一 WAN 口)将该HTTP GET请求包发送至外网服务器。
[0054]步骤104、外网服务器接收到该HTTP GET请求包,生成一响应于该HTTP GET请求包的response数据包发送至WAN1。该response数据包是现有技术中外网服务器的常规响应,该 response 数据包的 HTTP head 包含 Content-Length 字段,Content-Length 字段的值为请求下载内容的大小。
[0055]步骤105、该网关记录该response数据包的HTTP head和TCP head,尤其是HTTPhead 的 Content-Length 字段及 TCP head 的 seq、ack 等字段。
[0056]步骤106、该网关通过该网关的LAN 口将该response数据包发送至内网PC。
[0057]步骤107、该网关生成一 RESET数据包,并通过WAN1将该RESET数据包发送至外网服务器,该RESET数据包包含IP head和TCP head等信息。此步骤就相当于通知外网服务器把之前的下载请求重置。
[0058]然后,该方法分成两个独立的流程,一个是该网关与外网服务器的交互流程,另一个是该网关与内网PC的交互流程。
[0059]其中,该网关与外网服务器的交互流程包括以下步骤,参见图2:
[0060]步骤108、该网关生成4个HTTP GET请求包,并分别通过WAN1、WAN2、WAN3和WAN4发送至外网服务器。其中,此步骤中生成的每个HTTP GET请求包分别包括一 Range字段,且每个Range字段的下载范围的大小与发送的WAN 口的下载速率成正比,具体如下:
[0061]WAN1:Range:bytes = 1-1024 ;
[0062]WAN2: Range: bytes = 1025-3072 ;
[0063]WAN3: Range: bytes = 3073-4096 ;
[0064]WAN4: Range: bytes = 4097-6144。
[0065]步骤109、外网服务器接收到步骤108发送的4个HTTP GET请求包,分别生成响应于4个HTTP GET请求包response数据包,并通过相应的WAN 口分别发送至该网关。
[0066]步骤110、外网服务器还分别生成响应于4个HTTP GET请求包的若干个下载数据包,并将该些下载数据包分别通过发送相应的HTTP GET请求包的WAN 口发送至网关。其中,每个下载数据包分别包括对应的HTTP GET请求包请求下载的资源的实际下载的数据。
[0067]该网关和外网服务器重复执行步骤108-步骤110,直至生成的所有的HTTP GET请求包的Range字段表征
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1