协同控制TCP层的方法、系统、设备、介质及通信终端与流程

文档序号:21989314发布日期:2020-08-25 19:28阅读:314来源:国知局
协同控制TCP层的方法、系统、设备、介质及通信终端与流程

本发明涉及无线通信技术领域,尤其涉及一种协同控制tcp层的方法、系统、设备、介质及通信终端。



背景技术:

tcp(transmissioncontrolprotocol,是一种面向连接的、可靠的、基于字节流的传输层通信协议)由于最初是为有线网络设计的,从而对底层是诸如lte(longtermevolution,无线数据通信技术标准)这种无线网络的适应性存在一定的局限,例如,在使用lte做动态上传或下载的过程中,tcp层无法及时感知底层的传输情况,也就不能及时根据底层的传输情况对数据收发做调整。

具体地,在使用通信终端动态上传或下载的应用场景下,底层链路质量在通信终端经过信号质量较差的站点时变差,底层上行发送或下行接收质量的变差会导致rtt(round-triptime,往返时延)的变长,但是,由于tcp层不能及时感知这些链路异常,tcp层依然按照本身的定时器及重传机制进行工作,导致了通信终端上传时上行或者下载时下行存在有大量无效的重传数据包,这些重传数据包不仅对吞吐率没有贡献,而且造成了链路负担以及空口资源浪费。

又有,底层链路质量在通信终端从信号质量较差的站点移动到信号质量较好的站点时恢复,但是,由于tcp层在之前信号质量较差的站点已经认为网络拥塞,从而,尽管底层链路质量已经恢复,tcp层由于未能及时感知底层链路质量的恢复而依然慢启动,不能及时恢复数据的快速收发,对上下行速率以及吞吐率造成了较大影响。



技术实现要素:

本发明要解决的技术问题是为了克服现有技术中tcp层无法及时感知底层传输情况的缺陷,提供一种协同控制tcp层的方法、系统、设备、介质及通信终端。

本发明是通过下述技术方案来解决上述技术问题:

一种协同控制tcp层的方法,所述方法应用于通信终端,所述方法包括:

在l2(layer2)层的当前数据传输状态参数满足预设条件时生成与所述预设条件对应的预设通知,其中,l2层包括rlc(radiolinkcontrol,无线链路控制层协议)层和mac(mediumaccesscontrol,媒体介入控制协议)层,所述数据传输状态参数用于表征l2层的数据传输质量;

根据所述预设通知将tcp层的当前数据传输状态调整为与l2层的当前数据传输质量相适配。

较佳地,所述预设条件包括用于表征l2层的数据传输质量差的第一预设条件以及用于表征l2层的数据传输质量好的第二预设条件;

所述在l2层的当前数据传输状态参数满足预设条件时生成与所述预设条件对应的预设通知的步骤包括:

在l2层的当前数据传输状态参数满足第一预设条件时生成与所述第一预设条件对应的第一预设通知;

在l2层的当前数据传输状态参数满足第二预设条件时生成与所述第二预设条件对应的第二预设通知;

所述根据所述预设通知将tcp层的当前数据传输状态调整为与l2层的当前数据传输质量相适配的步骤包括:

根据所述第一预设通知调整tcp层的当前数据传输状态以减少当前由tcp层传输的数据量;

根据所述第二预设通知调整tcp层的当前数据传输状态以增加当前由tcp层传输的数据量。

较佳地,当rlc层处于am(acknowledgemode,确认模式)模式时,在所述在l2层的当前数据传输状态参数满足预设条件时生成与所述预设条件对应的预设通知的步骤之前还包括:

判断tcp层当前用于上传数据还是下载数据;

若用于上传数据,则判断rlc层的当前缓存数据量是否大于第一阈值并且mac层的harq(hybridautomaticrepeatrequest,混合式自动重传请求)失败率是否大于第二阈值;

若大于所述第一阈值并且大于所述第二阈值,则确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第一阈值或不大于所述第二阈值,则判断rlc层的当前缓存数据量是否小于第三阈值并且mac层的harq失败率是否小于第四阈值;

若小于所述第三阈值并且小于所述第四阈值,则确定l2层的当前数据传输状态参数满足第二预设条件;

若用于下载数据,则判断rlc层的当前缓存数据量是否大于第五阈值并且mac层的harq失败率是否大于第六阈值;

若大于所述第五阈值并且大于所述第六阈值,则确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第五阈值或不大于所述第六阈值,则判断rlc层的当前缓存数据量是否小于第七阈值并且mac层的harq失败率是否小于第八阈值;

若小于所述第七阈值并且小于所述第八阈值,则确定l2层的当前数据传输状态参数满足第二预设条件;

或,

当rlc层处于um(un-acknowledgemode,非确认模式)模式时,在所述在l2层的当前数据传输状态参数满足预设条件时生成与所述预设条件对应的预设通知的步骤之前还包括:

判断rlc层当前用于上传数据还是下载数据;

若用于上传数据,则判断mac层的harq失败率是否大于第九阈值;

若大于所述第九阈值,则确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第九阈值,则判断mac层的harq失败率是否小于第十阈值;

若小于所述第十阈值,则确定l2层的当前数据传输状态参数满足第二预设条件;

若用于下载数据,则判断mac层的harq失败率是否大于第十一阈值;

若大于所述第十一阈值,则确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第十一阈值,则判断mac层的harq失败率是否小于第十二阈值;

若小于所述第十二阈值,则确定l2层的当前数据传输状态参数满足第二预设条件。

较佳地,所述根据所述第一预设通知调整tcp层的当前数据传输状态以减少当前由tcp层传输的数据量的步骤包括:

判断tcp层当前用于上传数据还是下载数据;

若上传数据,则控制tcp层停止发送数据并停止rto(retransmissiontimeout,tcp超时重传机制)定时器;

若下载数据,则控制tcp层向基站服务器发送第一ack(acknowledge,确认)数据,所述第一ack数据包括窗口大小小于第一窗口值的窗口;

所述根据所述第二预设通知调整tcp层的当前数据传输状态以增加当前由tcp层传输的数据量的步骤包括:

判断tcp层当前用于上传数据还是下载数据;

若上传数据,则控制tcp层发送数据并启动rto定时器;

若下载数据,则控制tcp层向基站服务器发送第二ack数据,所述第二ack数据包括窗口大小大于第二窗口值的窗口。

一种协同控制tcp层的系统,所述系统应用于通信终端,所述系统包括:

生成模块,用于在l2层的当前数据传输状态参数满足预设条件时生成与所述预设条件对应的预设通知,其中,l2层包括rlc层和mac层,所述数据传输状态参数用于表征l2层的数据传输质量;

调整模块,用于根据所述预设通知将tcp层的当前数据传输状态调整为与l2层的当前数据传输质量相适配。

较佳地,所述预设条件包括用于表征l2层的数据传输质量差的第一预设条件以及用于表征l2层的数据传输质量好的第二预设条件;

所述生成模块包括:

第一生成单元,用于在l2层的当前数据传输状态参数满足第一预设条件时生成与所述第一预设条件对应的第一预设通知;

第二生成单元,用于在l2层的当前数据传输状态参数满足第二预设条件时生成与所述第二预设条件对应的第二预设通知;

所述调整模块包括:

第一调整单元,用于根据所述第一预设通知调整tcp层的当前数据传输状态以减少当前由tcp层传输的数据量;

第二调整单元,用于根据所述第二预设通知调整tcp层的当前数据传输状态以增加当前由tcp层传输的数据量。

较佳地,

当rlc层处于am模式时,所述系统还包括:

第一判断模块,用于判断tcp层当前用于上传数据还是下载数据;

若用于上传数据,则调用第二判断模块,所述第二判断模块用于判断rlc层的当前缓存数据量是否大于第一阈值并且mac层的harq失败率是否大于第二阈值;

若大于所述第一阈值并且大于所述第二阈值,则调用第一确定模块,所述第一确定模块用于确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第一阈值或不大于所述第二阈值,则调用第三判断模块,所述第三判断模块用于判断rlc层的当前缓存数据量是否小于第三阈值并且mac层的harq失败率是否小于第四阈值;

若小于所述第三阈值并且小于所述第四阈值,则调用第二确定模块,所述第二确定模块用于确定l2层的当前数据传输状态参数满足第二预设条件;

若用于下载数据,则调用第四判断模块,所述第四判断模块用于判断rlc层的当前缓存数据量是否大于第五阈值并且mac层的harq失败率是否大于第六阈值;

若大于所述第五阈值并且大于所述第六阈值,则调用第三确定模块,所述第三确定模块用于确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第五阈值或不大于所述第六阈值,则调用第五判断模块,所述第五判断模块用于判断rlc层的当前缓存数据量是否小于第七阈值并且mac层的harq失败率是否小于第八阈值;

若小于所述第七阈值并且小于所述第八阈值,则调用第四确定模块,所述第四确定模块用于确定l2层的当前数据传输状态参数满足第二预设条件;

或,

当rlc层处于um模式时,所述系统还包括:

第六判断模块,用于判断rlc层当前用于上传数据还是下载数据;

若用于上传数据,则调用第七判断模块,所述第七判断模块用于判断mac层的harq失败率是否大于第九阈值;

若大于所述第九阈值,则调用第五确定模块,所述第五确定模块用于确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第九阈值,则调用第八判断模块,所述第八判断模块用于判断mac层的harq失败率是否小于第十阈值;

若小于所述第十阈值,则调用第六确定模块,所述第六确定模块用于确定l2层的当前数据传输状态参数满足第二预设条件;

若用于下载数据,则调用第九判断模块,所述第九判断模块用于判断mac层的harq失败率是否大于第十一阈值;

若大于所述第十一阈值,则调用第七确定模块,所述第七确定模块用于确定l2层的当前数据传输状态参数满足第一预设条件;

若不大于所述第十一阈值,则调用第十判断模块,所述第十判断模块用于判断mac层的harq失败率是否小于第十二阈值;

若小于所述第十二阈值,则调用第八确定模块,所述第八确定模块用于确定l2层的当前数据传输状态参数满足第二预设条件。

较佳地,所述第一调整单元包括:

第一判断子单元,用于判断tcp层当前用于上传数据还是下载数据;

若上传数据,则调用第一控制子单元,所述第一控制子单元用于控制tcp层停止发送数据并停止rto定时器;

若下载数据,则调用第二控制子单元,所述第二控制子单元用于控制tcp层向基站服务器发送第一ack数据,所述第一ack数据包括窗口大小小于第一窗口值的窗口;

所述第二调整单元包括:

第二判断子单元,用于判断tcp层当前用于上传数据还是下载数据;

若上传数据,则调用第三控制子单元,所述第三控制子单元用于控制tcp层发送数据并启动rto定时器;

若下载数据,则调用第四控制子单元,所述第四控制子单元用于控制tcp层向基站服务器发送第二ack数据,所述第二ack数据包括窗口大小大于第二窗口值的窗口。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种协同控制tcp层的方法。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种协同控制tcp层的方法的步骤。

一种通信终端,包括上述任一种协同控制tcp层的系统。

较佳地,所述通信终端支持lte通信模式和/或wcdma(widebandcodedivisionmultipleaccess,带宽码分多址)通信模式。

本发明的积极进步效果在于:本发明在l2层的当前数据传输状态参数满足预设条件时生成对应的预设通知并传输给tcp层,由此,tcp层可以及时感知l2层的当前数据传输质量,还可以根据生成的预设通知调整当前数据传输状态以与l2层的当前数据传输质量相适配,也即,tcp层可以及时根据底层的数据传输质量调整当前数据传输状态,以实现对数据收发做调整,由此,基于l2层与tcp层的协同提高了通信终端上传下载的吞吐率,提高了无线资源利用率。

附图说明

图1为根据本发明实施例1的协同控制tcp层的方法的流程图。

图2为根据本发明实施例1的协同控制tcp层的方法的具体流程图。

图3为根据本发明实施例1的协同控制tcp层的方法中步骤s121的流程图。

图4为根据本发明实施例1的协同控制tcp层的方法中步骤s122的流程图。

图5为根据本发明实施例2的协同控制tcp层的方法的部分流程图。

图6为根据本发明实施例3的协同控制tcp层的方法的部分流程图。

图7为根据本发明实施例4的协同控制tcp层的系统的模块示意图。

图8为根据本发明实施例5的协同控制tcp层的模块示意图。

图9为根据本发明实施例6的协同控制tcp层的模块示意图。

图10为根据本发明实施例7的电子设备的结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

本实施例提供一种应用于通信终端的协同控制tcp层的方法,其中,通信终端例如可以支持lte、wcdma等通信模式,参照图1,本实施例的方法包括:

s11、在l2层的当前数据传输状态参数满足预设条件时生成与预设条件对应的预设通知;

s12、根据预设通知将tcp层的当前数据传输状态调整为与l2层的当前数据传输质量相适配。

在本实施例中,l2层包括rlc层和mac层,数据传输状态参数用于表征l2层的数据传输质量,例如,数据传输状态参数可以包括但不限于rlc层的工作模式、rlc层的缓存数据量、mac层的harq失败率等,此外,在本实施例中,数据传输状态参数还可以包括rlc层的工作模式(例如,am模式与um模式)。在本实施例中,预设条件可以根据实际应用自定义设置。

具体地,在本实施例中,预设条件可以包括用于表征l2层的数据传输质量差的第一预设条件以及用于表征l2层的数据传输质量好的第二预设条件。例如,当通信终端位于信号质量较差的站点时其数据传输质量较差,可以根据l2层的当前数据传输状态参数设置第一预设条件。又例如,当通信终端位于信号质量较好的站点时其数据传输质量较好,可以根据l2层的当前数据传输状态参数设置第二预设条件。

参照图2,本实施例中步骤s11具体包括:

s111、在l2层的当前数据传输状态参数满足第一预设条件时生成与第一预设条件对应的第一预设通知;

s112、在l2层的当前数据传输状态参数满足第二预设条件时生成与第二预设条件对应的第二预设通知;

步骤s12具体包括:

s121、根据第一预设通知调整tcp层的当前数据传输状态以减少当前由tcp层传输的数据量;

s122、根据第二预设通知调整tcp层的当前数据传输状态以增加当前由tcp层传输的数据量。

在本实施例中,当通信终端从信号质量较好的站点移动至信号质量较差的站点时,根据第一预设通知将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配。具体地,由于当前站点信号质量较差,通信终端底层数据传输质量较差,可以通过减少由tcp层传输的数据量,也即,使得tcp层在当前数据传输状态下传输的数据量少于tcp层在上一数据传输状态下传输的数据量的方式,实现与l2层当前较差的数据传输质量相适配,以减少链路负担以及空口资源浪费。其中,由tcp层产生的数据例如可以包括:由tcp层上传/下载的数据量、由tcp层产生的重传数据包等。

参照图3,步骤s121具体包括:

s1211、判断tcp层当前用于上传数据还是下载数据;

若上传数据,则执行步骤s1212;若下载数据,则执行步骤s1213;

s1212、控制tcp层停止发送数据并停止rto定时器;

s1213、控制tcp层向基站服务器发送第一ack数据。

在本实施例中,第一ack数据包括窗口大小小于第一窗口值的窗口,其中,第一窗口值可以根据实际应用自定义设置,在本实施例中,第一窗口值优选非常小的数值。

在本实施例中,当通信终端从信号质量较差的站点移动至信号质量较好的站点时,根据第二预设通知将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配。具体地,由于当前站点信号质量较好,通信终端底层数据传输质量较好,可以通过增加由tcp层传输的数据量,也即,使得tcp层在当前数据传输状态下传输的数据量多于tcp层在上一数据传输状态下传输的数据量的方式,实现与l2层当前较好的数据传输质量相适配,从而,使得tcp层及时感知到底层链路质量的恢复并且基于此感知恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

参照图4,步骤s122具体包括:

s1221、判断tcp层当前用于上传数据还是下载数据;

若上传数据,则执行步骤s1222;若下载数据,则执行步骤s1223;

s1222、控制tcp层发送数据并启动rto定时器;

s1223、控制tcp层向基站服务器发送第二ack数据。

在本实施例中,第二ack数据包括窗口大小大于第二窗口值的窗口,其中,第二窗口值可以根据实际应用自定义设置,在本实施例中,第二窗口值优选较大的数值。

本实施例在l2层的当前数据传输状态参数满足预设条件时生成对应的预设通知并传输给tcp层,由此,tcp层可以及时感知l2层的当前数据传输质量,还可以根据生成的预设通知调整当前数据传输状态以与l2层的当前数据传输质量相适配,也即,tcp层可以及时根据底层的数据传输质量调整当前数据传输状态,以实现对数据收发做调整,由此,基于l2层与tcp层的协同提高了通信终端上传下载的吞吐率,提高了无线资源利用率。

实施例2

在实施例1的基础上,本实施例提供一种协同控制tcp层的方法,参照图5,当rlc层处于am模式时,本实施例在步骤s11之前还包括:

s21、判断tcp层当前用于上传数据还是下载数据;

若上传数据,则执行步骤s22;若下载数据,则执行步骤s26;

s22、判断rlc层的当前缓存数据量是否大于第一阈值并且mac层的harq失败率是否大于第二阈值;

若是,则执行步骤s23;若否,则执行步骤s24;

s23、确定l2层的当前数据传输状态参数满足第一预设条件;

s24、判断rlc层的当前缓存数据量是否小于第三阈值并且mac层的harq失败率是否小于第四阈值;

若是,则执行步骤s25;

s25、确定l2层的当前数据传输状态参数满足第二预设条件;

s26、判断rlc层的当前缓存数据量是否大于第五阈值并且mac层的harq失败率是否大于第六阈值;

若是,则执行步骤s27;若否,则执行步骤s28;

s27、确定l2层的当前数据传输状态参数满足第一预设条件;

s28、判断rlc层的当前缓存数据量是否小于第七阈值并且mac层的harq失败率是否小于第八阈值;

若是,则执行步骤s29;

s29、确定l2层的当前数据传输状态参数满足第二预设条件。

在本实施例中,第一阈值至第八阈值可以根据实际应用自定义设置,其中,第一阈值大于第三阈值,第二阈值大于第四阈值,第五阈值大于第七阈值,第六阈值大于第八阈值。

在本实施例中,在步骤s23之后执行步骤s1212,在步骤s27之后执行步骤s1213,将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配,通过减少由tcp层传输的数据量来减少链路负担以及空口资源浪费。

在本实施例中,在步骤s25之后执行步骤s1222,在步骤s29之后执行步骤s1223,将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配,通过增加由tcp层传输的数据量,使得tcp层及时恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

在实施例1的基础上,本实施例提供了一种rlc层处于am模式时确定l2层的数据传输状态参数所满足的预设条件的具体实现方式,有利于实现对tcp层的数据传输状态的调整,进而有利于tcp层及时根据底层的数据传输质量对数据收发做调整,有利于基于l2层与tcp层的协同提高通信终端上传下载的吞吐率以及无线资源利用率。

实施例3

在实施例1的基础上,本实施例提供一种协同控制tcp层的方法,参照图6,当rlc层处于um模式时,本实施例在步骤s11之前还包括:

s31、判断tcp层当前用于上传数据还是下载数据;

若上传数据,则执行步骤s32;若下载数据,则执行步骤s36;

s32、判断mac层的harq失败率是否大于第九阈值;

若是,则执行步骤s33;若否,则执行步骤s34;

s33、确定l2的当前数据传输状态参数满足第一预设条件;

s34、判断mac层的harq失败率是否小于第十阈值;

若是,则执行步骤s35;

s35、确定l2层的当前数据传输状态参数满足第二预设条件;

s36、判断mac层的harq失败率是否大于第十一阈值;

若是,则执行步骤s37;若否,则执行步骤s38;

s37、确定l2层的当前数据传输状态参数满足第一预设条件;

s38、判断mac层的harq失败率是否小于第十二阈值;

若是,则执行步骤s39;

s39、确定l2层的当前数据传输状态参数满足第二预设条件。

在本实施例中,第九阈值至第十二阈值可以根据实际应用自定义设置,其中,第九阈值大于第十阈值,第十一阈值大于第十二阈值。

在本实施例中,在步骤s33之后执行步骤s1212,在步骤s37之后执行步骤s1213,将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配,通过减少由tcp层传输的数据量来减少链路负担以及空口资源浪费。

在本实施例中,在步骤s35之后执行步骤s1222,在步骤s39之后执行步骤s1223,将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配,通过增加由tcp层传输的数据量,使得tcp层及时恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

在实施例1的基础上,本实施例提供了一种rlc层处于um模式时确定l2层的数据传输状态参数所满足的预设条件的具体实现方式,有利于实现对tcp层的数据传输状态的调整,进而有利于tcp层及时根据底层的数据传输质量对数据收发做调整,有利于基于l2层与tcp层的协同提高通信终端上传下载的吞吐率以及无线资源利用率。

实施例4

本实施例提供一种应用于通信终端的协同控制tcp层的系统,其中,通信终端例如可以支持lte、wcdma等通信模式等,参照图7,本实施例的系统包括:

生成模块41,用于在l2层的当前数据传输状态参数满足预设条件时生成与预设条件对应的预设通知;

调整模块42,用于根据预设通知将tcp层的当前数据传输状态调整为与l2层的当前数据传输质量相适配。

在本实施例中,l2层包括rlc层和mac层,数据传输状态参数用于表征l2层的数据传输质量,例如,数据传输状态参数可以包括但不限于rlc层的工作模式、rlc层的缓存数据量、mac层的harq失败率等,此外,在本实施例中,数据传输状态参数还可以包括rlc层的工作模式(例如,am模式与um模式)。在本实施例中,预设条件可以根据实际应用自定义设置。

具体地,在本实施例中,预设条件可以包括用于表征l2层的数据传输质量差的第一预设条件以及用于表征l2层的数据传输质量好的第二预设条件。例如,当通信终端位于信号质量较差的站点时其数据传输质量较差,可以根据l2层的当前数据传输状态参数设置第一预设条件。又例如,当通信终端位于信号质量较好的站点时其数据传输质量较好,可以根据l2层的当前数据传输状态参数设置第二预设条件。

本实施例中生成模块41具体包括:

第一生成单元411,用于在l2层的当前数据传输状态参数满足第一预设条件时生成与第一预设条件对应的第一预设通知;

第二生成单元412,用于在l2层的当前数据传输状态参数满足第二预设条件时生成与第二预设条件对应的第二预设通知;

调整模块42具体包括:

第一调整单元421,用于根据第一预设通知调整tcp层的当前数据传输状态以减少当前由tcp层传输的数据量;

第二调整单元422,用于根据第二预设通知调整tcp层的当前数据传输状态以增加当前由tcp层传输的数据量。

在本实施例中,当通信终端从信号质量较好的站点移动至信号质量较差的站点时,根据第一预设通知将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配。具体地,由于当前站点信号质量较差,通信终端底层数据传输质量较差,可以通过减少由tcp层传输的数据量,也即,使得tcp层在当前数据传输状态下传输的数据量少于tcp层在上一数据传输状态下传输的数据量的方式,实现与l2层当前较差的数据传输质量相适配,以减少链路负担以及空口资源浪费。其中,由tcp层产生的数据例如可以包括:由tcp层上传/下载的数据量、由tcp层产生的重传数据包等。

本实施例中第一调整单元421具体包括:

第一判断子单元4211,用于判断tcp层当前用于上传数据还是下载数据;

若上传数据,则调用第一控制子单元4212,用于控制tcp层停止发送数据并停止rto定时器;

若下载数据,则调用第二控制子单元4213,用于控制tcp层向基站服务器发送第一ack数据。

在本实施例中,第一ack数据包括窗口大小小于第一窗口值的窗口,其中,第一窗口值可以根据实际应用自定义设置,在本实施例中,第一窗口值优选非常小的数值。

在本实施例中,当通信终端从信号质量较差的站点移动至信号质量较好的站点时,根据第二预设通知将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配。具体地,由于当前站点信号质量较好,通信终端底层数据传输质量较好,可以通过增加由tcp层传输的数据量,也即,使得tcp层在当前数据传输状态下传输的数据量多于tcp层在上一数据传输状态下传输的数据量的方式,实现与l2层当前较好的数据传输质量相适配,从而,使得tcp层及时感知到底层链路质量的恢复并且基于此感知恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

本实施例中第二调整单元422具体包括:

第二判断子单元4221,用于判断tcp层当前用于上传数据还是下载数据;

若上传数据,则调用第三控制子单元4222,用于控制tcp层发送数据并启动rto定时器;

若下载数据,则调用第四控制子单元4223,用于控制tcp层向基站服务器发送第二ack数据。

在本实施例中,第二ack数据包括窗口大小大于第二窗口值的窗口,其中,第二窗口值可以根据实际应用自定义设置,在本实施例中,第二窗口值优选较大的数值。

本实施例在l2层的当前数据传输状态参数满足预设条件时生成对应的预设通知并传输给tcp层,由此,tcp层可以及时感知l2层的当前数据传输质量,还可以根据生成的预设通知调整当前数据传输状态以与l2层的当前数据传输质量相适配,也即,tcp层可以及时根据底层的数据传输质量调整当前数据传输状态,以实现对数据收发做调整,由此,基于l2层与tcp层的协同提高了通信终端上传下载的吞吐率,提高了无线资源利用率。

实施例5

在实施例4的基础上,本实施例提供一种协同控制tcp层的系统,参照图8,当rlc层处于am模式时,本实施例的系统还包括:

第一判断模块51,用于判断tcp层当前用于上传数据还是下载数据;若上传数据,则调用第二判断模块52;若下载数据,则调用第四判断模块56;

第二判断模块52,用于判断rlc层的当前缓存数据量是否大于第一阈值并且mac层的harq失败率是否大于第二阈值;若是,则调用第一确定模块53;若否,则调用第三判断模块54;

第一确定模块53,用于确定l2层的当前数据传输状态参数满足第一预设条件;

第三判断模块54,用于判断rlc层的当前缓存数据量是否小于第三阈值并且mac层的harq失败率是否小于第四阈值;若是,则调用第二确定模块55;

第二确定模块55,用于确定l2层的当前数据传输状态参数满足第二预设条件;

第四判断模块56,用于判断rlc层的当前缓存数据量是否大于第五阈值并且mac层的harq失败率是否大于第六阈值;若是,则调用第三确定模块57;若否,则调用第五判断模块58;

第三确定模块57,用于确定l2层的当前数据传输状态参数满足第一预设条件;

第五判断模块58,用于判断rlc层的当前缓存数据量是否小于第七阈值并且mac层的harq失败率是否小于第八阈值;若是,则调用第四确定模块59;

第四确定模块59,用于确定l2层的当前数据传输状态参数满足第二预设条件。

在本实施例中,第一阈值至第八阈值可以根据实际应用自定义设置,其中,第一阈值大于第三阈值,第二阈值大于第四阈值,第五阈值大于第七阈值,第六阈值大于第八阈值。

在本实施例中,在调用第一确定模块53之后调用第一控制子单元4212,在调用第三确定模块57之后调用第二控制子单元4213,将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配,通过减少由tcp层传输的数据量来减少链路负担以及空口资源浪费。

在本实施例中,在调用第二确定模块55之后调用第三控制子单元4222,在调用第四确定模块59之后调用第四控制子单元4223,将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配,通过增加由tcp层传输的数据量,使得tcp层及时恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

在实施例4的基础上,本实施例提供了一种rlc层处于am模式时确定l2层的数据传输状态参数所满足的预设条件的具体实现方式,有利于实现对tcp层的数据传输状态的调整,进而有利于tcp层及时根据底层的数据传输质量对数据收发做调整,有利于基于l2层与tcp层的协同提高通信终端上传下载的吞吐率以及无线资源利用率。

实施例6

在实施例4的基础上,本实施例提供一种协同控制tcp层的系统,参照图9,当rlc层处于um模式时,本实施例的系统还包括:

第六判断模块61,用于判断tcp层当前用于上传数据还是下载数据;若上传数据,则调用第七判断模块62;若下载数据,则调用第九判断模块66;

第七判断模块62,用于判断mac层的harq失败率是否大于第九阈值;若是,则调用第五确定模块63;若否,则第八判断模块64;

第五确定模块63,用于确定l2的当前数据传输状态参数满足第一预设条件;

第八判断模块64,用于判断mac层的harq失败率是否小于第十阈值;若是,则调用第六确定模块65;

第六确定模块65,用于确定l2层的当前数据传输状态参数满足第二预设条件;

第九判断模块66,用于判断mac层的harq失败率是否大于第十一阈值;若是,则调用第七确定模块67;若否,则调用第十判断模块68;

第七确定模块67,用于确定l2层的当前数据传输状态参数满足第一预设条件;

第十判断模块68,判断mac层的harq失败率是否小于第十二阈值;若是,则调用第八确定模块69;

第八确定模块69,用于确定l2层的当前数据传输状态参数满足第二预设条件。

在本实施例中,第九阈值至第十二阈值可以根据实际应用自定义设置,其中,第九阈值大于第十阈值,第十一阈值大于第十二阈值。

在本实施例中,在调用第五确定模块63之后调用第一控制子单元4212,在调用第七确定模块67之后调用第二控制子单元4213,将tcp层的当前数据传输状态调整为与l2当前较差的数据传输质量相适配,通过减少由tcp层传输的数据量来减少链路负担以及空口资源浪费。

在本实施例中,在调用第六确定模块65之后调用第三控制子单元4222,在调用第八确定模块69之后调用第四控制子单元4223,将tcp层的当前数据传输状态调整为与l2当前较好的数据传输质量相适配,通过增加由tcp层传输的数据量,使得tcp层及时恢复数据的快速收发,以及时恢复tcp层的上下行速率以及吞吐率。

在实施例4的基础上,本实施例提供了一种rlc层处于um模式时确定l2层的数据传输状态参数所满足的预设条件的具体实现方式,有利于实现对tcp层的数据传输状态的调整,进而有利于tcp层及时根据底层的数据传输质量对数据收发做调整,有利于基于l2层与tcp层的协同提高通信终端上传下载的吞吐率以及无线资源利用率。

实施例7

本实施例提供一种电子设备,电子设备可以通过计算设备的形式表现(例如可以为服务器设备),包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中处理器执行计算机程序时可以实现实施例1-3中任一实施例提供的协同控制tcp层的方法。

图10示出了本实施例的硬件结构示意图,如图10所示,电子设备9具体包括:

至少一个处理器91、至少一个存储器92以及用于连接不同系统组件(包括处理器91和存储器92)的总线93,其中:

总线93包括数据总线、地址总线和控制总线。

存储器92包括易失性存储器,例如随机存取存储器(ram)921和/或高速缓存存储器922,还可以进一步包括只读存储器(rom)923。

存储器92还包括具有一组(至少一个)程序模块924的程序/实用工具925,这样的程序模块924包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器91通过运行存储在存储器92中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1-3中任一实施例所提供的协同控制tcp层的方法。

电子设备9进一步可以与一个或多个外部设备94(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口95进行。并且,电子设备9还可以通过网络适配器96与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器96通过总线93与电子设备9的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备9使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例8

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1-3中任一实施例所提供的协同控制tcp层的方法的步骤。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1-3中任一实施例所述的协同控制tcp层的方法的步骤。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

实施例9

本实施例提供一种通信终端,具体地,本实施提供的通信终端包括实施例4-6中任一实施例提供的协同控制tcp层的系统,此外,本实施例的通信终端优选支持lte、wcdma等通信模式。本实施例提供的通信终端,基于l2层与tcp层的协同,实现了上传下载吞吐率以及无线资源利用率的提高。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

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