反馈丢包的消息处理方法及装置制造方法及图纸

技术编号:10605837 阅读:70 留言:0更新日期:2014-11-05 16:53
本发明专利技术涉及一种反馈丢包的消息处理方法及装置,所述处理方法包括:RLC装置接收TCP装置发送的TCP数据包,将所述TCP数据包组包形成RLC数据包,并将所述RLC数据包发送给对端设备;所述RLC装置接收所述对端设备返回的所述RLC数据包的应答消息;所述RLC装置根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息;所述RLC装置将所述TCP数据包的应答消息反馈给所述TCP装置。本发明专利技术能够准确判断是否发生了TCP丢包,并可以获得准确的TCP丢包信息,明确具体丢失了哪个数据包。

【技术实现步骤摘要】
【国外来华专利技术】反馈丢包的消息处理方法及装置
本专利技术涉及无线通信
,尤其涉及一种反馈丢包的消息处理及装置。
技术介绍
传输控制协议(TransmissionControlProtocol,TCP)是目前互联网上使用最为广泛的传输协议,但其最初的设计目标是在有线网络中工作,因而当TCP连接中存在一段无线空口部分(即无线TCP)时,针对有线网络所涉及的TCP协议就不再能够保证高效的工作。在有线网络中,TCP协议通过引入发送端拥塞窗口的控制机制,来控制传输的拥塞。接收端会通知发送端其当前的接收窗口大小,发送端根据这个接收窗口大小以及拥塞窗口大小,来决定发送端还能够发送多少数据给接收端,即真正的发送窗口的取值,为拥塞窗口和通告窗口中的最小值。这样就可以避免发送端发送过多的数据,而不会导致接收端的TCP缓存溢出,以及降低网络中拥塞出现的概率。在第三代移动通信技术(3rdGeneration,3G)的无线网络控制器(RadioNetworkController,RNC)或者第四代移动通信技术(3rdGeneration,3G)的演进型基站(evolutionNodeB,eNodeB)中,可能存在相应的TCP代理功能或TCP实体,用以对无线TCP进行加速。在具有TCP代理功能或TCP实体的终端的无线侧,由于空口丢包和非按序递交,会导致接收端收到大量的乱序包。通常接收端在接收到乱序包后,会发送多个重复的确认(Dupacknowledgement,DupACK)或者发送选择性确认(Selectacknowledgement,SACK)给发送端,表示丢失某个数据包。由于发送SACK的方案中要求接收端能够支持SACK选项,如果接收端不支持使用SACK选项,则无法使用该方案。因而,现有的丢包判断方法大多采用发送DupACK的方案。当发送端收到DupACK时,拥塞窗口会减小,一般减小到慢启动的门限大小;而发送端在发送一个数据包后,会启动一个定时器。在这个定时器的时间范围内,如果还没有收到这个数据包的确认(acknowledgement,ACK)的话,拥塞窗口会减小到1。因而,拥塞窗口的控制在TCP协议中至关重要,现有的很多算法都是针对TCP的拥塞窗口进行调整而给出的。其中最为常见的算法是根据可用带宽的估计值和拥塞窗口对应的带宽来判断是否可能丢包。对当前的网络状态进行一个判断,这个状态判断的结果可以是拥塞和不拥塞。在拥塞情况下,如果出现了重复的ACK,或者是RTO超时,则在重传数据包的同时,修改当前的拥塞窗口的大小;在不拥塞的情况下,如果出现了重复的ACK,或者是RTO超时,则在重传数据包的同时,维持当前的拥塞窗口的大小不变,避免拥塞窗口调整过小而导致的无线空口利用率不足的问题。然而,现有的这种算法是基于当前的TCP链路带宽估计进行的,在对当前的TCP链路带宽估计存在误差的情况下,对丢包的判断是不准确的,而且也无法区分丢包和拥塞的情况,另外,也不能明确具体丢失的是哪个数据包。
技术实现思路
本专利技术的目的是提供一种反馈丢包的消息处理及装置,能够准确判断是否发生了TCP丢包。为实现上述目的,本专利技术第一方面提供了一种无线链路控制RLC装置,包括:处理器,第一接口和第二接口;所述第一接口,用于与传输控制协议TCP装置进行交互;所述第二接口,用于与对端设备进行交互;所述处理器用于:通过所述第一接口接收所述TCP装置发送的TCP数据包;将所述TCP数据包组包形成RLC数据包;通过所述第二接口将所述RLC数据包发送给对端设备;通过所述第二接口接收所述对端设备返回的所述RLC数据包的应答消息;根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息;通过所述第一接口将所述TCP数据包的应答消息反馈给所述TCP装置。结合第一方面,在第一方面的第一种可能的实现方式中,所述第一接口接收的TCP数据包中携带有TCP数据包的信息,所述TCP数据包的信息包括以下所列的一种或任意结合:IP地址、端口和字节范围;所述处理器用于将所述TCP数据包组包形成RLC数据包,具体包括:所述处理器用于:根据所述TCP数据包的信息,对所述TCP数据包进行标识,并记录所述TCP数据包的标识;对所述TCP数据包进行RLC组包形成RLC数据包,并标识所述RLC数据包;以及根据所述TCP数据包的标识和所述RLC数据包的标识,建立并记录所述RLC数据包与TCP数据包的对应关系。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,包括:所述处理器用于:根据所述RLC数据包的应答消息,利用所述RLC数据包与TCP数据包的对应关系,构造所述TCP数据包的应答消息。结合第一方面,在第一方面的第三种可能的实现方式中,所述RLC数据包的应答消息为RLC确认ACK信息,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,具体包括:所述处理器用于根据所述RLCACK信息构造TCP数据包的TCPACK信息。结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述处理器还用于:通过所述第二接口接收所述对端设备反馈的TCPACK信息;将所述对端设备反馈的TCPACK信息与构造的所述TCPACK信息相比较,如果不一致,则判断为所述TCP数据包在发送给所述对端设备的TCP装置时发生丢包。结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,当发生丢包时,所述处理器还用于:根据所述对端设备反馈的TCPACK信息和RLCACK信息确定发生丢包的TCP数据包;指示所述TCP装置重传所述发生丢包的TCP数据包或者通过所述第二接口发送所述发生丢包的TCP数据包对应的RLC数据包。结合第一方面的第三种可能的实现方式,在第一方面的第六种可能的实现方式中,所述处理器还用于:通过所述第二接口接收所述对端设备反馈的TCPACK信息;将所述对端设备反馈的TCPACK信息与构造的所述TCPACK信息相比较,如果一致,则判断为未发生丢包,并不再向所述TCP装置发送所述对端设备反馈的TCPACK信息。结合第一方面,在第一方面的第七种可能的实现方式中,所述RLC数据包的应答消息为RLC否定确认NACK信息,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,具体包括:所述处理器用于根据所述RLCNACK信息构造TCP数据包的TCPNACK信息,用以指示所述TCP装置重传所述TCPNACK信息对应的TCP数据包。结合第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,所述处理器用于根据所述RLCNACK信息构造TCP数据包的TCPNACK信息,具体包括:所述处理器用于:将所述RLC数据包的应答消息为RLCNACK信息的RLC数据包重传给所述对端设备,并启动RLC重传定时器和/或RLC重传计数器;当所述RLC重传定时器和/或RLC重传计数器的计数值超过预设阈值时,根据所述RLCNACK信息构造TCPNACK信息。结合第一方面,在第一方面的第九种可能的实现方式中,所述TCP数本文档来自技高网
...

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种无线链路控制RLC装置,其特征在于,所述装置包括:处理器,第一接口和第二接口;所述第一接口,用于与传输控制协议TCP装置进行交互;所述第二接口,用于与对端设备进行交互;所述处理器用于:通过所述第一接口接收所述TCP装置发送的TCP数据包;将所述TCP数据包组包形成RLC数据包;通过所述第二接口将所述RLC数据包发送给对端设备;通过所述第二接口接收所述对端设备返回的所述RLC数据包的应答消息,所述RLC数据包的应答消息包括:RLCACK信息和/或RLCNACK信息;根据所述RLCACK信息构造TCPACK信息;通过所述第一接口将构造的所述TCPACK信息发送给TCP装置;通过所述第二接口接收对端设备反馈的TCPACK信息;将所述对端设备反馈的TCPACK信息与构造的所述TCPACK信息相比较,如果不一致,则判断为所述数据包在发送给所述对端设备的TCP装置时发生丢包;如果一致,则判断为未发生丢包,并不再向所述TCP装置发送所述对端设备反馈的TCPACK信息。2.根据权利要求1所述的装置,其特征在于,所述第一接口接收的TCP数据包中携带有TCP数据包的信息,所述TCP数据包的信息包括以下所列的一种或任意结合:IP地址、端口和字节范围;所述处理器用于将所述TCP数据包组包形成RLC数据包,具体包括:所述处理器用于:根据所述TCP数据包的信息,对所述TCP数据包进行标识,并记录所述TCP数据包的标识;对所述TCP数据包进行RLC组包形成RLC数据包,并标识所述RLC数据包;以及根据所述TCP数据包的标识和所述RLC数据包的标识,建立并记录所述RLC数据包与TCP数据包的对应关系。3.根据权利要求2所述的装置,其特征在于,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,包括:所述处理器用于:根据所述RLC数据包的应答消息,利用所述RLC数据包与TCP数据包的对应关系,构造所述TCP数据包的应答消息。4.根据权利要求1所述的装置,其特征在于,所述RLC数据包的应答消息为RLC确认ACK信息,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,具体包括:所述处理器用于根据所述RLCACK信息构造TCP数据包的TCPACK信息。5.根据权利要求1所述的装置,其特征在于,当发生丢包时,所述处理器还用于:根据所述对端设备反馈的TCPACK信息和RLCACK信息确定发生丢包的TCP数据包;指示所述TCP装置重传所述发生丢包的TCP数据包或者通过所述第二接口发送所述发生丢包的TCP数据包对应的RLC数据包。6.根据权利要求1所述的装置,其特征在于,所述RLC数据包的应答消息为RLC否定确认NACK信息,所述处理器用于根据所述RLC数据包的应答消息构造所述RLC数据包对应的TCP数据包的应答消息,具体包括:所述处理器用于根据所述RLCNACK信息构造TCP数据包的TCPNACK信息,用以指示所述TCP装置重传所述TCPNACK信息对应的TCP数据包。7.根据权利要求6所述的装置,其特征在于,所述处理器用于根据所述RLCNACK信息构造TCP数据包的TCPNACK信息,具体包括:所述处理器用于:将所述RLC数据包的应答消息为RLCNACK信息的RLC数据包重传给所述对端设备,并启动RLC重传定时器和/或RLC重传计数器;当所述RLC重传定时器和/或RLC重传计数器的计数值超过预设阈值时,根据所述RLCNACK信息构造TCPNACK信息。8.根据权利要求1所述的装置,其特征在于,所述TCP数据包的应答消息通过用户面的GPRS隧道协议GTP-U的扩展头或TCP选择性确认SACK选项来传递。9.根据权利要求1所述的装置,其特征在于,所述RLC装置为无线网络控制器RNC或者演进型基站eNodeB。10.一种TCP装置,其特征在于,所述装置包括:处理器和通信接口;所述通信接口,用于与RANRLC装置进行交互;所述处理器用于:通过所述通信接口接收RANRLC装置发送的TCPNACK信息,所述TCPNACK信息由所述RANRLC装置根据RLCNACK信息构造得到;其中,TCP数据包与RLC数据包的对应关系为:一个所述TCP数据包对应一个所述RLC数据包;或者,一个所述TCP数据包对应多个所述RLC数据包;或者,多个所述TCP数据包对应一个所述RLC数据包;根据所述TCPNACK信息确定丢包的TCP数据包。11.根据权利要求10所述的装置,其特征在于,当确定丢包后,所述处理器还用于:通过所述通信接口重传所述丢包的TCP数据包给对端设备,并启动TCP重传定时器和/或TCP重传计数器;当所述TCP重传定时器...

【专利技术属性】
技术研发人员:王立波
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1