一种面向TCP业务的流量控制方法及接入网网元与流程

文档序号:17976638发布日期:2019-06-21 23:50阅读:235来源:国知局
一种面向TCP业务的流量控制方法及接入网网元与流程

本发明涉及一种通信技术,尤其涉及一种面向TCP业务的流量控制方法及接入网网元。



背景技术:

随着计算机网络和通信技术的飞速发展,新的无线和有线网络环境不断涌现,在给用户带来通信便利的同时,也对当前TCP(Transmission Control Protocol,传输控制协议)的性能造成了较大影响。传统的TCP Reno协议是基于早期网络环境提出,发送端根据重复的ACK(Acknowledgement,应答/确认)消息来判断数据报文丢失的产生,并将此类丢失解释为网络拥塞,然后采用加性增乘性减的方式来调整自身的拥塞窗口。而在新的网路环境下,由于上述拥塞判断和带宽调整方式逐步失效,TCP Reno协议也随之出现了越来越多的问题。

相对于有线链路而言,无线链路中数据传输的可靠度很低,发送到无线链路上的数据帧可能由于发生碰撞或者无线信道中的干扰导致帧的损坏。当前被广泛使用的802.11协议在数据链路层提供了一定的校验机制来保证数据传输的正确性,但却不能有效的消除误码所带来的影响。由于TCP协议将所有的数据包丢失现象都解释为拥塞,在BER(Bit Error Rate,误码率)较高的环境下,随着数据丢失概率的增高,TCP协议会经常性的认为网络中发生了拥塞,从而主动降低发送速率,造成TCP协议传输性能的下降和无线链路传输带宽的浪费。

在有线网络的环境中,随着网络规模的增大和网络环境的改善,网络传输带宽随之大幅增加,同时传输路径的增长也导致了RTT(Round Trip Time,传输时延/往返时延)和数据包丢失概率日渐增大。较高的延迟和丢包率使得采用AIMD(Additive Increase Multiplicative Decrease,加性增,积性减)机制的TCP协议不能获得好的传输性能,同时也降低了有线网络的带宽利用率。

也就是说,针对有线网络设计的TCP协议,对丢包率及时延抖动均由较高要求,尤其是承载于LTE网络上之后,存在流量不稳定,时延抖动,重传效率低等问题,极大影响用户体验。



技术实现要素:

本发明提供一种面向TCP业务的流量控制方法及核心网网元,实现有效抑制因突发造成的数据丢失及延迟抖动,缩短传输RTT,提高TCP业务的吞吐量。

第一方面,本发明提供一种面向TCP业务的流量控制方法,包括:

在UE(User Equipment,用户设备)的TCP业务对应的承载建立完成之后,判断当前TCP业务的工作模式;

若当前TCP业务的工作模式为低时延工作模式,则根据HARQ(Hybrid Automatic Repeat reQuest,混合自动重传请求)机制,确定所述UE预发送的上行反馈信息是否为ACK信息;

如果是,则构造用于向核心网网元发送的ACK报文,并将构造的所述ACK报文加入上行递交队列的首位,所述上行递交队列为用于向核心网网元发送报文的队列。

可选地,所述判断当前TCP业务的工作模式的步骤之后,所述方法还包括:

若当前TCP业务的工作模式为常规工作模式,则根据当前接入网网元中的下行数据缓存量,确定当前TCP业务的上行报文的反馈时延;

判断所述上行报文是否为ACK报文;

如果是,则将所述上行报文加入预先创建的接收反馈队列,并对该接收反馈队列中的每一报文延迟所述反馈时延之后发送;

所述接收反馈队列为该TCP业务的承载建立时建立的。

可选地,判断所述上行报文是否为ACK报文的步骤之后,所述方法还包括:

如果所述上行报文不是ACK报文,则将所述上行报文加入数据接收队列,并实时发送所述数据接收队列中的每一报文。

可选地,所述方法还包括:

查看所述UE的TCP业务的承载是否已经释放;

若确定所述UE的TCP业务的承载已经释放,则释放该TCP业务的接收反馈队列。

可选地,判断当前TCP业务的工作模式的步骤之前,所述方法还包括:

在UE的TCP业务对应的承载建立时,接入网网元初始化与该TCP业务相关的参数,并创建该TCP业务的接收反馈队列。

第二方面,本发明提供一种接入网网元,包括:

第一判断模块,用于在用户设备UE的TCP业务对应的承载建立完成之后,判断当前TCP业务的工作模式;

第二判断模块,用于在第一判断模块判断当前TCP业务的工作模式为低时延工作模式,则根据HARQ机制,确定所述UE预发送的上行反馈信息是否为ACK信息;

ACK报文构造模块,用于在第二判断模块确定UE预发送的上行反馈信息为ACK信息时,构造用于向核心网网元发送的ACK报文;

发送模块,用于将构造的所述ACK报文加入上行递交队列的首位,所述上行递交队列为用于向核心网网元发送报文的队列。

可选地,所述网元还包括:

反馈时延确定模块,用于在第一判断模块确定当前TCP业务的工作模式为常规工作模式,则根据当前接入网网元中的下行数据缓存量,确定当前TCP业务的上行报文的反馈时延;

第三判断模块,用于判断所述上行报文是否为ACK报文;

所述发送模块,用于在第三判断模块确定所述上行报文为ACK报文时,将所述上行报文加入预先创建的接收反馈队列,并对该接收反馈队列中的每一报文延迟所述反馈时延之后发送;

所述接收反馈队列为该TCP业务的承载建立时建立的。

可选地,所述发送模块,还用于

在所述第三判断模块确定所述上行报文不是ACK报文时,将所述上行报文加入数据接收队列,并实时发送所述数据接收队列中的每一报文。

可选地,所述网元还包括:

第四判断模块,用于查看所述UE的TCP业务的承载是否已经释放;

释放模块,用于在第四判断模块确定所述UE的TCP业务的承载已经释放时,释放该TCP业务的接收反馈队列。

可选地,所述网元还包括:

队列创建模块,用于在所述第一判断模块判断之前,且在UE的TCP业务对应的承载建立时,初始化与该TCP业务先关的参数,并创建该TCP业务的接收反馈队列。

由上述技术方案可知,本发明的面向TCP业务的流量控制方法及核心网网元,通过判断当前TCP业务的工作模式为低时延工作模式,进而根据HARQ机制,确定当前UE待发送的上行反馈信息为ACK报文时,将该ACK报文加入上行递交队列的首位,以较快发送核心网网元,进而达到缩短RTT的目的,同时达到流量控制的目的,提高了TCP业务的吞吐量。

附图说明

图1为本发明一实施例提供的面向TCP业务的流量控制方法的流程示意图;

图2为本发明一实施例提供的面向TCP业务的流量控制方法的流程示意图;

图3为本发明一实施例提供的核心网网元的结构示意图;

图4为本发明另一实施例提供的核心网网元的结构示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

本实施例中TCP业务对应的TCP报文的五元组信息可为相同的,例如,源IP地址、目的IP地址、协议号、源端口、目的端口等。

也就是说,本发明实施例的方法适用的是同一会话的TCP数据报文的处理。并不是针对多个不同会话的TCP数据报文的处理。

以下方法的执行主体为接入网网元,如果接入网网元中有较多的报文,此时,对于TCP业务的TCP数据报文的识别可采用当前公知的特征值提取的方法识别TCP数据报文。以简化报文识别效率,同时可实现在LTE协议栈内部进行TCP干预。

另外,在接入网网元识别TCP数据报文之后,可根据TCP数据报文的五元组信息进而可识别是否属于同一TCP业务的,针对每一TCP业务进行对应的流量控制。

图1示出了本发明一实施例提供的面向TCP业务的流量控制方法的流程示意图,如图1所示,本实施例的面向TCP业务的流量控制方法如下所述。

101、在UE的TCP业务对应的承载建立完成之后,判断当前TCP业务的工作模式;

102、若当前TCP业务的工作模式为低时延工作模式,则根据HARQ机制,确定所述UE预发送的上行反馈信息是否为ACK信息;如果是,则执行步骤103,否则,不对当前TCP业务做任何干扰处理。

103、如果步骤102中确定上行反馈信息是ACK信息,则构造用于向核心网网元发送的ACK报文,并将构造的所述ACK报文加入上行递交队列的首位,所述上行递交队列为用于向核心网网元发送报文的队列。

本实施例的方法可基于HARQ机制,快速构建TCP反馈报文,达到缩短RTT的目的。

在另一种可选的实现方式中,若TCP业务的工作模式为常规工作模式,可基于接入网网元内部的下行缓存量统计,对向核心网网元发送的反馈报文进行动态延时递交,进而达到流量控制的目的。

本实施例的面向TCP业务的流量控制方法,通过判断当前TCP业务的工作模式为低时延工作模式,进而根据HARQ机制,确定当前UE待发送的上行反馈信息为ACK报文时,将该ACK报文加入上行递交队列的首位,以较快发送核心网网元,进而达到缩短RTT的目的,同时提高了TCP业务的吞吐量。

图2示出了本发明另一实施例提供的面向TCP业务的流量控制方法的流程示意图,如图2所示,本实施例的面向TCP业务的流量控制方法如下所述。

201、在UE的TCP业务对应的承载建立时,接入网网元初始化与该TCP业务相关的参数,并创建该TCP业务的接收反馈队列。

举例来说,在TCP业务对应的承载建立时,可配置该承载的模式开关、延迟系数、缓存最低门限等参数。

202、判断当前TCP业务的工作模式。

通常,TCP业务的工作模式为低时延工作模式或者为常规工作模式。

本实施例中,针对低时延工作模式可减少RTT,加快TCP业务的吞吐量;针对常规工作模式可平滑RTT抖动,控制流量,使TCP业务的流速更加平稳。

203、若步骤202中判断当前TCP业务的工作模式为低时延工作模式,则根据HARQ机制,确定所述UE预发送的上行反馈信息是否为ACK信息;

如果是,则执行步骤204,否则,不对当前TCP业务进行干扰处理。

可理解的是,本步骤中,可依据接入网网元和UE的HARQ和ARQ交互推测TCP层数据的发送情况,进而确定上行反馈信息是否为ACK信息。

也就是说,分别由接入网网元、UE各自的MAC层和RLC层联合统计当前TCP业务的TCP报文的HARQ反馈结果。

204、如果步骤203中确定UE预发送的上行反馈信息为ACK信息,则构造用于向核心网网元发送的ACK报文。

在本实施例中,可在预先设置好的反馈报文模板上构造ACK报文,例如修改反馈报文模板上的源地址、目标IP、端口、SeqNo、CRC等字段,构造出ACK报文。

这里构造ACK报文是基于TCP业务的五元组信息以及其他交互数据报文构造的。

205、将构造的所述ACK报文加入上行递交队列的首位,所述上行递交队列为用于向核心网网元发送报文的队列。

也就是说,可由接入网网元的PDCP层向核心网网元直接发送反馈报文。应说明的是,该ACK报文并不会受到PDCP(Packet Data Convergence Protocol,分组数据汇聚协议SN序号规则的影响。

206、若步骤202中判断当前TCP业务的工作模式为常规工作模式,则根据当前接入网网元中的下行数据缓存量,确定当前TCP业务的上行报文的反馈时延。

通常,反馈时延与缓存量存在线性关系,按照工时,反馈时延=延迟系数*下行缓存量/缓存最低门限,进而获得反馈时延即反馈延迟时间。

207、判断所述上行报文是否为ACK报文;如果是,执行步骤208,否则,执行步骤209。

上行报文中没有选项段及载荷的即为TCP ACK报文,其长度为40字节。据此可筛选出ACK报文。

208、如果步骤207中判断上行报文为ACK报文,则将所述上行报文加入预先创建的接收反馈队列,并对该接收反馈队列中的每一报文延迟所述反馈时延之后发送。

本实施例中的接收反馈队列为该TCP业务的承载建立时建立的,如前述的步骤201中创建的接收反馈队列。

也就是说,该ACK报文可单独位于一个队列,由此可以实现对该ACK报文发送时延的控制。

209、如果步骤207中判断上行报文不是ACK报文,则将所述上行报文加入数据接收队列,并实时发送所述数据接收队列中的每一报文。

应说明的是,这里的数据接收队列为协议固有的,可参照现有协议的方式实现,本实施例不对其详述。

进一步地,上述图2还可包括下述的步骤210和步骤211。

210、查看所述UE的TCP业务的承载是否已经释放,若已经释放,则执行步骤211,否则,结束。

211、若步骤210中确定所述UE的TCP业务的承载已经释放,则释放该TCP业务的接收反馈队列。

也就是说,承载释放时需要进行相关资源释放。

上述方法可为一种基于HARQ、ARQ统计的,通过TCP反馈干预进行流量控制的技术方案,可有效抑制因突发造成的数据丢失及延迟抖动,同时针对低时延工作模式,可根据HARQ反馈模拟发送TCP层ACK报文,可极大缩短传输RTT,提高TCP层吞吐效率,适用于PING、游戏等高实时业务类型。对于常规时延工作模式,根据下行缓存量控制上行反馈间隔,从而将下行缓存量控制在合理范围内,即可基于下行缓存量统计,对反馈报文进行动态延时递交,达到流量控制目的,适用于FTP等高流速业务。

图3示出了本发明另一实施例提供的接入网网元的结构示意图,如图3所示,本实施例的接入网网元包括:第一判断模块31、第二判断模块32、ACK报文构造模块33、发送模块34;

其中,第一判断模块31用于在用户设备UE的TCP业务对应的承载建立完成之后,判断当前TCP业务的工作模式;

第二判断模块32用于在第一判断模块31判断当前TCP业务的工作模式为低时延工作模式,则根据HARQ机制,确定所述UE预发送的上行反馈信息是否为ACK信息;

ACK报文构造模块33用于在第二判断模块32确定UE预发送的上行反馈信息为ACK信息时,构造用于向核心网网元发送的ACK报文;

发送模块34用于将构造的所述ACK报文加入上行递交队列的首位,所述上行递交队列为用于向核心网网元发送报文的队列。

在一种可选的实现方式中,前述的接入网网元还可包括位于第一判断模块之前的队列创建模块30,如图4所示,该队列创建模块30用于在所述第一判断模块判断之前,且在UE的TCP业务对应的承载建立时,初始化与该TCP业务先关的参数,并创建该TCP业务的接收反馈队列。

在另一可选的实现方式中,前述的接入网网元还包括:反馈时延确定模块35和第三判断模块36,如图4所示。

反馈时延确定模块35用于在第一判断模块31确定当前TCP业务的工作模式为常规工作模式,则根据当前接入网网元中的下行数据缓存量,确定当前TCP业务的上行报文的反馈时延;

第三判断模块36用于判断所述上行报文是否为ACK报文;

所述发送模块34用于在第三判断模块36确定所述上行报文为ACK报文时,将所述上行报文加入预先创建的接收反馈队列,并对该接收反馈队列中的每一报文延迟所述反馈时延之后发送;

所述接收反馈队列为该TCP业务的承载建立时建立的。

可选地,发送模块34还用于,在所述第三判断模块36确定所述上行报文不是ACK报文时,将所述上行报文加入数据接收队列,并实时发送所述数据接收队列中的每一报文。

进一步地,接入网网元还可包括图中未示出的第四判断模块和释放模块;

该第四判断模块连接发送模块,且用于查看所述UE的TCP业务的承载是否已经释放;

释放模块用于在第四判断模块确定所述UE的TCP业务的承载已经释放时,释放该TCP业务的接收反馈队列。

本实施例中的接入网网元可以提升产品业务的稳定性,针对同一TCP会话,可在识别同一TCP业务数据的基础上,对UE和核心网网元交互的数据进行干预,进而实现针对低时延工作模式减少RTT,针对常规工作模式,可平滑RTT抖动,控制流量,使TCP业务的流速更加平稳。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本发明并帮助理解本发明各个方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法和装置解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网站安全检测设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

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

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