一种数据传输的方法及WAP设备与流程

文档序号:11932026阅读:223来源:国知局
一种数据传输的方法及WAP设备与流程

本发明涉及数据传输领域,尤其涉及一种数据传输的方法及WAP设备。



背景技术:

随着4G技术的逐步普及,用户上网带宽增大,WAP设备处理及转发效率对用户上网体验的影响越来越明显。

传统的WAP设备一般运行于Linux操作系统之上,基于Socket编程开发,并使用代理模式提供上网服务,如图1所示,WAP设备收到手机的请求后转发给互联网服务提供商(Service Provider,SP),等待收到SP的完整响应后再转发给手机,无线用户通过WAP网关接入互联网,用户终端跟WAP网关之间平均时延是30ms,WAP网关跟互联网SP之间平均时延是20ms,这种处理模式在4G网络下会带来较大时延,严重影响用户上网速率。



技术实现要素:

本发明提供一种数据传输的方法及WAP设备,解决在用户上网过程中,终端、WAP设备及SP之间的数据传输存在时延较大、影响用户上网速率的问题。

为了解决上述技术问题,本发明用如下技术方案:

一种信息传输的方法,应用WAP设备,包括:

获取终端发送的数据请求消息;

根据所述数据请求消息,发送内容下发请求至服务提供商的服务器;

获取所述服务提供商的服务器根据所述内容下发请求下发的响应数据流中的第一数据;

根据所述第一数据,生成一伪确认消息并发送所述伪确认消息至所述服务提供商的服务器,使得所述服务提供商的服务器根据所述伪确认消息下发所述 响应数据流中除所述第一数据以外的第二数据。

可选地,所述获取所述服务提供商根据所述内容下发请求下发的响应数据流中的第一数据之后,所述方法还包括:

转换所述第一数据为所述终端可识别的第三数据;

将所述第三数据的大小与当前的第一拥塞窗口值进行比较;

当所述第一拥塞窗口值大于所述第三数据的大小时,发送所述第三数据至所述终端;

当所述第一拥塞窗口值小于所述第三数据的大小时,存储所述第三数据至缓存区形成待发送数据。

可选地,在所述获取终端发送的数据请求消息之前,所述方法还包括:

与所述终端建立信息传输链路;

在所述建立信息传输链路过程中,获取所述终端与所述WAP设备之间的第一信息往返时延;

根据所述第一信息往返时延计算所述第一拥塞窗口值。

可选地,所述当所述第一拥塞窗口值大于所述第三数据的大小时,发送所述第三数据至所述终端之后,所述方法还包括:

根据当前的第二拥塞窗口值,更新所述第二拥塞窗口值为一第三拥塞窗口值;

判断所述缓存区内是否存在所述待发送数据;

当所述缓存区内存在所述待发送数据时,将所述待发送数据中的优先待发送数据的大小与所述第三拥塞窗口值进行比较,所述优先待发送数据为在所述缓存区中存储时间最久的所述第二数据;

当所述第三拥塞窗口值大于所述优先待发送数据的大小时,发送所述优先待发送数据至所述终端。

可选地,所述根据当前第二拥塞窗口值,更新所述第二拥塞窗口值为一第三拥塞窗口值,具体包括:

获取所述终端根据接收到的所述第二数据发送的确认消息;

在所述获取所述终端根据接收到的所述第二数据发送的确认消息的过程中,获取当前的第二信息往返时延,记所述第二信息往返时延值为C,记所述 确认消息的大小为Y;

根据所述第二信息往返时延计算得到所述第二拥塞窗口值;

根据所述第二拥塞窗口值,计算得到所述第二拥塞窗口值与所述第一拥塞窗口值的差量值,记所述差量值为△X;

记所述第三拥塞窗口值为Cnew,根据Cnew=C+/-|△X|+Y更新所述第三拥塞窗口值。

可选地,所述当所述第一拥塞窗口值大于所述第三数据的大小时,发送所述第三数据至所述终端之后,所述方法还包括:

由所述第一拥塞窗口值减去所述第三数据的大小,更新所述第一拥塞窗口值。

一种WAP设备,包括:

第一获取模块,用于获取终端发送的数据请求消息;

第一发送模块,用于根据所述数据请求消息,发送内容下发请求至服务提供商的服务器;

第二获取模块,用于获取所述服务提供商的服务器根据所述内容下发请求下发的响应数据流中的第一数据;

生成模块,用于根据所述第一数据,生成一伪确认消息并发送所述伪确认消息至所述服务提供商的服务器,使得所述服务提供商的服务器根据所述伪确认消息下发所述响应数据流中除所述第一数据以外的第二数据。

可选地,所述设备还包括:

转换模块,用于转换所述第一数据为所述终端可识别的第三数据;

第一比较模块,将所述第三数据的大小与当前的第一拥塞窗口值进行比较;

第二发送模块,用于当所述第一拥塞窗口值大于所述第三数据的大小时,发送所述第三数据至所述终端;

存储模块,用于当所述第一拥塞窗口值小于所述第三数据的大小时,存储所述第三数据至缓存区形成待发送数据。

可选地,所述设备还包括:

建链模块,用于与所述终端建立信息传输链路;

第一计算模块,用于在所述建立信息传输链路过程中,获取所述终端与所 述WAP设备之间的第一信息往返时延;

第二计算模块,用于根据所述第一信息往返时延计算所述第一拥塞窗口值。

可选地,所述设备还包括:

第一更新模块,用于根据当前的第二拥塞窗口值,更新所述第二拥塞窗口值为一第三拥塞窗口值;

判断模块,用于判断所述缓存区内是否存在所述待发送数据;

第二比较模块,用于当所述缓存区内存在所述待发送数据时,将所述待发送数据中的优先待发送数据的大小与所述第三拥塞窗口值进行比较,所述优先待发送数据为在所述缓存区中存储时间最久的所述第二数据;

第三发送模块,用于当所述第三拥塞窗口值大于所述优先待发送数据的大小时,发送所述优先待发送数据至所述终端。

可选地,所述第一更新模块具体包括:

获取子模块,用于获取所述终端根据接收到的所述第二数据发送的确认消息;

获取子模块,用于在所述获取所述终端根据接收到的所述第二数据发送的确认消息的过程中,获取当前的第二信息往返时延,记所述第二信息往返时延值为C,记所述确认消息的大小为Y;

第一计算子模块,用于根据所述第二信息往返时延计算得到所述第二拥塞窗口值;

第二计算子模块,用于根据所述第二拥塞窗口值,计算得到所述第二拥塞窗口值与所述第一拥塞窗口值的差量值,记所述差量值为△X;

更新子模块,用于记所述第三拥塞窗口值为Cnew,根据Cnew=C+/-|△X|+Y更新所述第三拥塞窗口值。

可选地,所述设备还包括:

第二更新模块,用于由所述第一拥塞窗口值减去所述第三数据的大小,更新所述第一拥塞窗口值。

本发明的有益效果是:

上述方案,在用户终端、WAP设备、SP服务器之间进行数据请求与下发的传输过程中,通过WAP设备以伪造的确认消息对SP服务器的响应数据进 行回应,来使得服务提供商的服务器根据该伪确认消息下发在响应数据流中除第一数据以外的第二数据,降低响应到达手机的时延,从而提高用户浏览网页和下载文件的速度,提高用户上网速率,改善用户上网体验。

附图说明

图1为现有技术中网络传输的时延示意图;

图2为本发明的第一实施例中数据传输的方法的流程图;

图3为本发明的第二实施例中数据传输的方法的流程图一;

图4为本发明的第二实施例中数据传输过程的时序图;

图5为本发明的第二实施例中数据传输的方法的流程图二;

图6为本发明的第三实施例中数据传输的方法的流程图一;

图7为本发明的第三实施例中数据传输的方法的流程图二;

图8为本发明的第四实施例中数据传输方法的传输过程示意图;

图9为本发明的第五实施例中WAP设备的模块框图;

图10为本发明的第六实施例中WAP设备的模块框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

第一实施例

如图2所示,本发明公开了一种数据传输的方法,应用于WAP设备,该方法包括:

步骤S101:获取终端发送的数据请求消息。

步骤S102:根据该数据请求消息,发送内容下发请求至服务提供商的服务器。

当用户使用终端上网时,需要先向WAP网关对应的设备发送数据请求,通过WAP设备将该数据请求传达至服务提供商的服务器,及SP服务器来得 到对该数据请求的响应,促使数据下发至用户终端,其中WAP设备需要将该数据请求转换成SP服务器能识别的请求信息,即上述的内容下发请求。

步骤S103:获取服务提供商的服务器根据内容下发请求下发的响应数据流中的第一数据。

其中,该第一数据为响应数据流中的一个数据,当SP服务器接收到内容下发请求时,即可响应该请求,下发相对应的数据内容至WAP设备,进而下发至用户终端,在SP服务器下发响应数据流时,WAP设备接收该响应数据流中的第一数据。

步骤S104:根据第一数据,生成一伪确认消息并发送该伪确认消息至服务提供商的服务器。

发送伪确认消息至SP服务器可以使得SP服务器根据该伪确认消息下发响应数据流中除第一数据以外的第二数据。

当在步骤S103中,WAP设备接收到响应数据流中的第一数据之后,可以根据接收到的该第一数据,代替用户终端伪造生成一伪确认消息,将该伪确认消息发送至SP服务器,SP服务器收到该伪确认消息之后,认为该第一数据已被用户终端接收,继而接着发送响应数据流中的其他数据,即上述的第二数据。

上述方法中,在用户终端、WAP设备、SP服务器之间进行数据请求与下发的传输过程中,通过在WAP设备对SP服务器的响应数据回应伪造的确认消息,来加快SP服务器的下发数据速率,减少数据传输的时延、提高用户上网速率,改善用户上网体验。

第二实施例

如图3、图4所示,在第一实施例的基础上,进一步地,在步骤S103之后,还将该第一数据向用户终端进行发送,该向终端发送第一数据的过程可以是与步骤S104生成一伪确认消息并发送该伪确认消息至服务提供商的服务器同时进行,具体地,本发明所提供的数据传输的方法,在步骤S103之后还包括:

步骤S201:转换第一数据为终端可识别的第三数据。

其中,SP服务器下发的响应数据流中的第一数据需要经WAP设备做业务处理之后形成第三数据来被终端识别显示。

步骤S202:将第三数据的大小与当前的第一拥塞窗口值进行比较。

其中,由于拥塞窗口值可能随着网络状况而发生改变,在对第一数据转换之后,需要将转换得到的第三数据的大小与当前的该第一拥塞窗口值进行比较,来判断在此时的网络状况下的拥塞窗口值是否能通过该第三数据。

步骤S203:当第一拥塞窗口值大于第三数据的大小时,发送第三数据至终端。

当比较结果为第一拥塞窗口值大于第三数据的大小时,此时的网络状态下的拥塞窗口值允许该第三数据通过,便可将该第三数据发送至用户终端。

步骤S204:当第一拥塞窗口值小于第三数据的大小时,存储第三数据至缓存区形成待发送数据。

当比较结果为第一拥塞窗口值小于第三数据的大小时,此时的网络状态下的拥塞窗口值不能使大于该窗口值大小的第三数据通过,此时需要缓存该第三数据至缓存区,形成待发送数据。

在上述的步骤S201-S204中,WAP设备收到SP服务器的响应数据后,对该响应数据做业务处理,当当前的拥塞窗口值适合响应数据的传输时,便直接转发给手机,降低手机等待时延,若当前拥塞窗口值不适合响应数据的传输时,缓存该数据等待合适时机进行传输,可以实现在适应网络状况的情况下,尽可能的提高数据响应及传输速率。

更进一步地,WAP设备在对第一数据转换之后,需要将转换得到的第三数据的大小与当前的第一拥塞窗口值进行比较,来判断在此时的网络状况下的拥塞窗口值是否能通过该第三数据,在本实施例中,对当该第一数据为SP服务器下发的响应数据流中的首个数据时,当前的该第一拥塞窗口值的获取得到的过程做出说明。

其中,如图5所示,在获取终端发送的数据请求消息(步骤S101)之前,该数据传输的方法还包括:

步骤S301:与终端建立信息传输链路;

步骤S302:在该建立信息传输链路过程中,获取终端与WAP设备之间的第一信息往返时延;

步骤S303:根据第一信息往返时延计算第一拥塞窗口值。

当用户终端需要发送数据请求消息时,需要先与WAP设备建立数据传输链路来实现对数据请求消息的传输,在建链双方的请求与响应过程中,测算该终端与WAP设备间数据传输过程中的第一信息往返时延,根据该第一信息往返时延估算得出该第一拥塞窗口值,在链路建立成功之后,通过该链路传输数据请求信息及对请求信息的响应数据,在建链过程中估算得到的该第一拥塞窗口值即为当该首个数据从WAP设备传输至终端时的当前第一拥塞窗口值,以判断在当前拥塞窗口值下能否实现对该首个数据的传输。

更进一步地,当第一拥塞窗口值大于第三数据的大小时,发送第三数据至终端之后,该方法还包括:由第一拥塞窗口值减去第三数据的大小,更新第一拥塞窗口值。

第三实施例

本实施例中,如图6所示,在第二实施例中的步骤S203当第一拥塞窗口值大于第三数据的大小时,发送第三数据至终端之后,当前的拥塞窗口值可能已经发生了变化,还需要对当前的已经发生了变化的第二拥塞窗口值进行实时的调整,以使缓存区中存在的待发送数据能及时的进行发送。其中该数据传输的方法在步骤S203之后,还包括以下步骤:

步骤S401:根据当前的第二拥塞窗口值,更新第二拥塞窗口值为一第三拥塞窗口值。

步骤S402:判断缓存区内是否存在待发送数据。

步骤S403:当该缓存区内存在待发送数据时,将该待发送数据中的优先待发送数据的大小与第三拥塞窗口值进行比较。

其中,该优先待发送数据为在该缓存区中存储时间最久的第二数据。

步骤S404:当第三拥塞窗口值大于优先待发送数据的大小时,发送该优先待发送数据至终端。

首先获取当前的第二拥塞窗口值,调整更新该第二拥塞窗口值,得到一个新的第三拥塞窗口值,再判断此时的缓存区内是否存在待发送数据,如果存在有待发送数据,则用第三拥塞窗口值与待发送数据中的优先待发送数据的大小进行比较,如果该第三拥塞窗口值大于优先待发送数据的大小时,即表明此时可以将该优先待发送数据传输至用户终端,其中该优先待发送数据为缓存区中 被存储的时间为最久的第二数据。该过程通过对响应数据的实时转发,及对发生了变化的当前拥塞窗口值进行实时的调整,实现了在建立的信息传输链路上对数据的快速传输,加快响应转发速率,降低手机等待响应的时延,从而提高手机上网速率。

进一步地,这里对上述步骤S401根据当前第二拥塞窗口值,更新第二拥塞窗口值为一第三拥塞窗口值的具体过程展开描述,如图7所示,具体包括:

步骤S4011:获取终端根据接收到的第二数据发送的确认消息。

步骤S4012:在获取终端根据接收到的第二数据发送的确认消息的过程中,获取当前的第二信息往返时延。其中,记第二信息往返时延值为C,记该确认消息的大小为Y。

步骤S4013:根据第二信息往返时延计算得到第二拥塞窗口值。

步骤S4014:根据第二拥塞窗口值,计算得到第二拥塞窗口值与第一拥塞窗口值的差量值。其中,记该差量值为△X。

步骤S4015:记第三拥塞窗口值为Cnew,根据Cnew=C+/-|△X|+Y得到第三拥塞窗口值。

上述步骤中,通过在WAP设备向终端传输第二数据的过程中,终端接收到该第二数据后发送确认消息到WAP设备,WAP设备获取该确认消息并在获取的过程中获取得到当前的第二信息往返时延,并根据该第二信息往返时延计算得到该第二拥塞窗口值,此时的第二拥塞窗口值为当前的拥塞窗口值,根据该第二拥塞窗口值及第一拥塞窗口值,得出拥塞窗口值在之前时刻与当前时刻的改变值,即第二拥塞窗口值与第一拥塞窗口值间的差量值。根据该确认消息、第二信息往返时延、第二拥塞窗口值与第一拥塞窗口值间的差量值更新第二拥塞窗口值为一第三拥塞窗口值。

第四实施例

本实施例中,如图8所示,在第一实施例至第三实施例基础上,对终端、WAP设备、SP服务器三者之间的数据交互传输过程做出进一步全面性描述。

具体的,在用户终端例如是手机的上网过程中,手机在向WAP设备发送请求之前需要向WAP发送建立传输链路建链请求,该传输链路用于两者之间进行数据、信息等的传输,在建链过程中,WAP设备根据手机与WAP设备之 间的建链过程测算往返时延RTT,根据RTT实时计算并调整拥塞窗口值A。WAP设备在此链路上接收到手机的数据请求包则会将此请求包进行处理后向SP服务器请求内容;SP服务器处理该内容请求后响应该请求并向手机发送响应数据流,数据流中的响应包被WAP设备接收到,WAP设备接收到SP服务器的响应数据后,首先进行自己的业务处理,对该响应数据进行转换,还可以增加特有内容;WAP设备伪造确认包给SP服务器促使SP服务器加快响应后续内容。WAP将响应包数据内容的大小与当前拥塞窗口值进行比较,如果拥塞窗口值大于响应内容则直接将响应内容发送到手机侧并更新拥塞窗口值的大小,此时的拥塞窗口值为大于响应内容,更新拥塞窗口值的大小时,应减小该拥塞窗口值,如果拥塞窗口值小于响应内容的大小,则对响应的数据包进行缓存;当WAP设备成功地将响应内容发送到手机侧,即手机接收到WAP设备转发的响应数据包之后,手机发送确认包给WAP设备,确认包的字节数为Y,这时RTT时间有可能发生了变化,这里就会根据此时的RTT时间动态调整拥塞窗口值,即首先根据当前RTT计算出拥塞窗口值B,然后根据上次计算得到的拥塞窗口值A得出差量△X,假设此时窗口值为C,则更新当前窗口值C=C+/-|△X|+Y;再查看此链路上是否有缓存数据包,计缓存数据包大小为D,如果有则取出此链路缓存区内的链表上或队列上存放时间最久的一个缓存数据包,将其大小与当前拥塞窗口值C进行比较,如果满足C>D,则将这个数据包发送给手机,并且删除关于该数据包的缓存,最后由C=C–D更新该当前拥塞窗口值,实现SP服务器对数据请求的快速响应下发,及通过对拥塞窗口值的实时调整实现将响应数据快速地传输至用户终端,大大改善用户终端的上网速率。

第五实施例

如图9所示,本发明还公开了一种WAP设备,该WAP设备包括第一获取模块601、第一发送模块602、第二获取模块603、生成模块604。

其中,第一获取模块601,用于生成第一获取指令来获取终端发送的数据请求消息;第一发送模块602,用于生成第一发送指令来根据该数据请求消息,发送内容下发请求至服务提供商的服务器;第二获取模块603,用于生成第二获取指令来获取服务提供商的服务器根据该内容下发请求下发的响应数据流 中的第一数据;生成模块604,用于生成一生成指令来根据第一数据,生成一伪确认消息并发送该伪确认消息至服务提供商的服务器,使得服务提供商的服务器根据该伪确认消息下发响应数据流中除第一数据以外的第二数据。

WAP设备接收到响应数据流中的第一数据之后,可以根据接收到的该第一数据,代替用户终端伪造生成一伪确认消息,将该伪确认消息发送至SP服务器,SP服务器收到该伪确认消息之后,认为该第一数据已被用户终端接收,继而接着发送响应数据流中的其他数据。在用户终端、WAP设备、SP服务器之间进行数据请求与下发的传输过程中,通过在WAP设备对SP服务器的响应数据回应伪造的确认消息,来加快SP服务器的下发数据速率,减少数据传输的时延、提高用户上网速率,改善用户上网体验。

第六实施例

进一步地,在第五实施例的基础上,如图10所示,该WAP设备还包括:转换模块701、第一比较模块702、第二发送模块703、存储模块704。

其中,转换模块701,用于生成一转换指令来转换第一数据为终端可识别的第三数据;第一比较模块702,用于生成第一比较指令来将第三数据的大小与当前的第一拥塞窗口值进行比较;第二发送模块703,用于生成第二发送指令来当第一拥塞窗口值大于第三数据的大小时,发送第三数据至终端;存储模块704,用于生成一存储指令来当第一拥塞窗口值小于第三数据的大小时,存储第三数据至缓存区形成待发送数据。

实现了在生成模块604根据第一数据生成一伪确认消息并发送该伪确认消息至服务提供商的服务器的同时,还将该第一数据向用户终端进行发送,在适应网络状况的情况下,尽可能的提高数据响应及传输速率。

更进一步地,该设备还包括:建链模块801、第一计算模块802、第二计算模块803。

其中,建链模块801,用于生成一建链指令来与终端建立信息传输链路;第一计算模块802,用于生成第一计算指令来在该建立信息传输链路过程中,获取终端与WAP设备之间的第一信息往返时延;第二计算模块803,用于生成第二计算指令来根据第一信息往返时延计算第一拥塞窗口值。

当用户终端需要发送数据请求消息时,需要先与WAP设备建立数据传输 链路来实现对数据请求消息的传输,在建链双方的请求与响应过程中,测算该终端与WAP设备间数据传输过程中的第一信息往返时延,根据该第一信息往返时延估算得出该第一拥塞窗口值。

相应地,该设备还包括:第一更新模块901、判断模块902、第二比较模块903、第三发送模块904。

其中,第一更新模块901,用于生成第一更新指令来根据当前的第二拥塞窗口值,更新第二拥塞窗口值为一第三拥塞窗口值;判断模块902,用于生成一判断指令来判断缓存区内是否存在待发送数据;第二比较模块903,用于生成第二比较指令来当缓存区内存在待发送数据时,将待发送数据中的优先待发送数据的大小与第三拥塞窗口值进行比较,该优先待发送数据为在缓存区中存储时间最久的第二数据;第三发送模块904,用于生成第三发送指令来当第三拥塞窗口值大于优先待发送数据的大小时,发送优先待发送数据至终端。实现了对当前的已经发生了变化的第二拥塞窗口值进行实时的调整,以使缓存区中存在的待发送数据能及时的进行发送。

可选地,第一更新模块901具体包括:第一获取子模块911、第二获取子模块912、第一计算子模块913、第二计算子模块914、更新子模块915。

第一获取子模块911,用于获取终端根据接收到的第二数据发送的确认消息;第二获取子模块912,用于在该获取终端根据接收到的第二数据发送的确认消息的过程中,获取当前的第二信息往返时延,记第二信息往返时延值为C,记该确认消息的大小为Y;第一计算子模块913,用于根据第二信息往返时延计算得到第二拥塞窗口值;第二计算子模块914,用于根据第二拥塞窗口值,计算得到第二拥塞窗口值与第一拥塞窗口值的差量值,记该差量值为△X;更新子模块915,用于记第三拥塞窗口值为Cnew,根据Cnew=C+/-|△X|+Y得到该第三拥塞窗口值。

可选地,该设备还包括:第二更新模块705,用于由第一拥塞窗口值减去第三数据的大小,更新第一拥塞窗口值。

本发明中的上述实施例中的方案既提高了SP服务器对内容下发请求的响应数据的下发速率,同时实现对不同网络状态下的拥塞窗口值进行实时调整,有效地提高数据的传输及响应速率,提高用户的上网体验度。

以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1