一种实现tcp数据报文重传的方法及设备的制造方法

文档序号:8459096阅读:740来源:国知局
一种实现tcp数据报文重传的方法及设备的制造方法
【技术领域】
[0001]本发明涉及无线通信技术领域,特别涉及一种实现TCP数据报文重传的方法及设备。
【背景技术】
[0002]目前,基站在接收到来自核心网的IP (Internet Protocol,网络之间互联的协议)数据报文后,直接将其加入到基站的数据发送队列中,然后依次将数据队列中的IP数据报文发送给相应的终端,其中基站接收到的来自核心网的网络数据报有可能是TCP (Transmiss1n Control Protocol,传输控制协议)数据报文。基站通过空口侧接收到来自终端的TCP应答报文后,将TCP应答报文发送给核心网,以使核心网根据接收到的TCP应答报文确定是否重传相应的TCP数据报文。核心网在确定需要重传TCP数据报文时,将需要重传的TCP数据报文发送给基站,基站直接将其加入到基站的数据发送队列中,然后依次将数据队列中的IP数据报文发送给相应的终端。
[0003]在需要重传某一 TCP数据报文时,该TCP数据报文是终端急需要的一个TCP数据报文,这一 TCP数据报文的成功接收与否会影响后续TCP数据报文的发送和接收。
[0004]现有的实现TCP数据报文重传的方法,需要通过核心网的TCP服务器去判断是否需要重传TCP数据报文,在确定需要重传TCP数据报文后,触发核心网将需要重传的TCP数据报文发送给基站,再由基站将需要重传的TCP数据报文发送给终端。
[0005]另外,基站不仅要发送重传TCP数据报文,还会发送其它的IP数据报文,基站会将所有需要发送的数据报文加入到数据发送队列中,依次发送数据发送队列中的数据报文。
[0006]综上所述,目前的通过核心网去重传TCP数据报的方法,重传及时率不高。

【发明内容】

[0007]本发明提供一种实现TCP数据报文重传的方法及设备,用以解决现有技术中存在的通过核心网去重传TCP数据报的方法,重传及时率不高的问题。
[0008]本发明实施例提供一种实现传输控制协议TCP数据报文重传的方法,包括:
[0009]基站将接收到的来自核心网的TCP数据报文存储到缓存区域,并将接收到的所述TCP数据报文加入到正常优先级发送数据队列;
[0010]所述基站在接收到来自终端的TCP应答报文后,判断是否需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文;
[0011]所述基站在确定需要向所述终端重传在所述缓存区域中的所述TCP应答报文中的报文确认号对应的TCP数据报文后,将可供重传的所述TCP数据报文加入到高优先级发送数据队列;
[0012]所述基站在确定需要发送TCP数据报文时,按照队列的优先级顺序发送队列中的TCP数据报文。
[0013]由于本发明实施例基站会将来自核心网的TCP数据报文存储到缓存区域,在确定需要向终端重传TCP数据报文后,将在缓存区域中的可供重传的TCP数据报文加入到高优先级发送数据队列,并在确定需要发送队列中的TCP数据报文时,按照队列的优先级顺序发送,达到将可供重传的TCP数据报文优先重传给终端的目的,整个重传过程不需要通过核心网去实现,提高了重传的及时率。
[0014]较佳地,所述基站将接收到的来自核心网的TCP数据报文存储到缓存区域,包括:
[0015]所述基站在接收到来自所述核心网的网络协议IP数据报文后,根据所述IP数据报文的报文头中的协议字段,在确定所述IP数据报文是TCP数据报文后,将接收到的来自所述核心网的所述TCP数据报文存储到所述缓存区域。
[0016]由于本发明实施例基站根据IP数据报文的报文头中的协议字段,确定该IP数据报文是TCP数据报文,以便于将确定的TCP数据报文存储到缓存区域。
[0017]较佳地,所述基站将接收到的来自核心网的TCP数据报文存储到缓存区域之后,并将接收到的所述TCP数据报文发送给正常优先级发送数据队列之前,还包括:
[0018]当在一段时间内所述基站将接收到的多个所述TCP数据报文存储到缓存区域中时,根据接收到的多个所述TCP数据报文的报文头部中的序列号和数据长度,判断接收到的多个所述TCP数据报文是否存在乱序;
[0019]所述基站在确定接收到的多个所述TCP数据报文存在乱序后,调整接收到的多个所述TCP数据报文的顺序;
[0020]所述基站将接收到的所述TCP数据报文加入到正常优先级发送数据队列,包括:
[0021]所述基站按照调整后的顺序,将接收到的多个所述TCP数据报文加入到正常优先级发送数据队列。
[0022]由于本发明实施例基站将在一段时间内接收到的多个TCP数据报文调整顺序后,加入到正常优先级发送数据队列中,使多个TCP数据报文在局部是有序的,保证了将序列号较小的TCP数据报文优先发送给终端,优先将序列号较小的TCP数据报文发送给终端可以避免,在一段时间内基站较后的接收到的该序列号较小的TCP数据报文,该序列号较小的TCP数据报文是终端急需的一个TCP数据报文,并且终端已经多次向基站发送确认号等于该较小序列号的TCP应答报文,若此时将序列号较小的TCP数据报文调整到其它序列号较大的TCP数据报文之前发送,终端在接收到该序列号较小的TCP数据报文后,不会再向基站发送确认号等于该较小序列号的TCP应答报文,进而减少了重传次数。
[0023]较佳地,所述基站判断是否需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文之前,还包括:
[0024]所述基站在通过空口侧接收到来自所述终端的IP数据报文后,根据所述IP数据报文的报文头中的协议字段,判断所述IP数据报文是否是TCP数据报文;
[0025]所述基站在确定所述IP数据报文是TCP数据报文后,根据所述TCP数据报文的报文头中的确认号,在确定所述TCP数据报文是TCP应答报文后,确定执行判断是否需要向所述终端重传在所述缓存区域中的所述应答报文确认号对应的TCP数据报文的步骤。
[0026]较佳地,所述基站判断是否需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文,包括:
[0027]若所述TCP应答报文中的报文确认号等于终端最新确认号,且所述缓存区域中存在所述TCP应答报文中的报文确认号对应的TCP数据报文,则所述基站确定需要向所述终端重传所述报文确认号对应的TCP数据报文;
[0028]否则,确定不需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文。
[0029]较佳地,所述基站判断是否需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文,包括:
[0030]若所述TCP应答报文中的报文确认号等于终端最新确认号,且所述缓存区域中存在所述TCP应答报文中的报文确认号对应的TCP数据报文,按照设定步长增加重传应答计数器的计数值;
[0031]所述基站丢掉所述TCP应答报文,并在确定所述重传应答计数器的计数值达到设定阈值后,确定需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文,其中所述可供重传的TCP数据报文为所述报文确认号对应的TCP数据报文;或
[0032]所述基站将所述缓存区域中的所述报文确认号对应的TCP数据报文标记为重传报文,所述基站丢掉所述TCP应答报文,并在确定所述重传应答计数器的计数值达到设定阈值后,确定需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文,其中所述可供重传的TCP数据报文为标记为重传报文的所述TCP数据报文;
[0033]否则,确定不需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文;
[0034]所述基站将可供重传的所述TCP数据报文加入到高优先级发送数据队列之后,还包括:
[0035]所述基站将所述重传应答计数器的计数值置零。
[0036]较佳地,该方法还包括:
[0037]若所述TCP应答报文中的报文确认号大于所述终端最新确认号,则所述基站根据所述TCP应答报文中的报文确认号更新所述终端最新确认号;
[0038]所述基站根据所述报文确认号确定需要释放的在所述缓存区域中的TCP数据报文的序列号,释放确定的所述序列号对应的TCP数据报文,并将所述重传应答计数器的计数值置零;
[0039]所述基站将所述TCP应答报文发送给所述核心网。
[0040]由于本发明实施例在TCP应答报文中的报文确认号大于终端最新确认号时,会根据报文确认号确定的需要释放的TCP数据报文的序列号,释放确定的序列号对应的TCP数据报文,以使基站将终端接收到的TCP数据报文在缓存区域中删除掉,进而使得缓存区域可以存储更多的终端未接收到的TCP数据报文。
[0041]较佳地,该方法还包括:
[0042]若所述TCP应答报文中的报文确认号小于所述终端最新确认号,则所述基站将所述TCP应答报文发送给所述核心网。
[0043]较佳地,该方法还包括:
[0044]若所述TCP应答报文中的报文确认号等于所述终端最新确认号,所述缓存区域中不存在所述TCP应答报文中的报文确认号对应的TCP数据报文,则所述基站将所述TCP应答报文发送给所述核心网。
[0045]本发明实施例提供一种实现传输控制协议TCP数据报文重传的设备,包括:
[0046]存储模块,用于将接收到的来自核心网的TCP数据报文存储到缓存区域,并将接收到的所述TCP数据报文加入到正常优先级发送数据队列;
[0047]判断模块,用于在接收到来自终端的TCP应答报文后,判断是否需要向所述终端重传在所述缓存区域中的可供重传的TCP数据报文;
[0048]处理模块,用于在确定需要向所述终端重传在所述缓存区域中的所述TCP应答报文中的报文确认号对应的TCP数据报文后,将可供重传的所述TCP数据报文加入到高优先级发送数据队列;
[0049]发送模块,用于在确定需要发送TCP数据报文时,按照队列的优先级顺序发送队列中的TCP数据报文。
[0050
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1