[发明专利]数据传输的方法和装置有效
申请号: | 201010520796.5 | 申请日: | 2010-10-21 |
公开(公告)号: | CN102006283A | 公开(公告)日: | 2011-04-06 |
发明(设计)人: | 钟勇;白晨 | 申请(专利权)人: | 意法·爱立信半导体(北京)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56 |
代理公司: | 北京银龙知识产权代理有限公司 11243 | 代理人: | 许静 |
地址: | 100082 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据传输 方法 装置 | ||
技术领域
本发明涉及通信领域,尤其涉及一种数据传输的方法和装置。
背景技术
现有的Internet互联网主要是通过TCP(Transmit Control Protocol,传输控制协议)/IP(Internet Protocol,因特网协议)来进行组网并完成数据传输的。TCP协议是面向连接的端到端的协议,应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段,之后传给IP层,由IP层通过网络将数据报文传送给接收端的TCP层。为了保证不发生丢包,TCP给每个字节一个序号,通过序号保证传送到接收端的包的按序接收。接收端对已成功收到和校验正确的一组TCP分组包发回一个相应的确认(ACK)。如果发送端在一定时间内收到ACK,则它将继续发送数据;如果发送端在一定时间内未收到ACK,或者收到三个对于某个数据报之前数据报的确认,那么对应的数据将会被重传。
在实际的TCP/IP传输中,如果往返时延,即发送端从发出某个带TCP有效载荷的IP数据包(下称TCP有效载荷)到从接收端收到该TCP ACK的IP数据包(下称TCP ACK)这段时长RTT太长,将影响发送端数据发送的连续性,进而影响速率。特别在非对称的网络,比如ADSL,移动通信网等中,在带宽小的方向上,常常会因为带宽小而不得不累积大量数据造成拥塞,导致TCP ACK不能及时地返回给发送端,发送端会启动拥塞机制减慢传输速率,从而使数据传输效率大大降低。
就如何提高TCP/IP在非对称网络上用户面数据传输性能的问题,目前现有的策略主要包括:
其一,调整发送方和接收方的TCP窗口大小,增加发送方的初始发送窗口,限制发送方的速率,调整最大数据传输单元的大小,在发送方启用路径MTU检测机制,启用直接拥塞机制,启用时间戳机制等方法。该策略是对现有的TCP/IP进行参数和机制的相应调整,从一定程度上提高了TCP/IP的数据传输性能,但该策略有很大的局限性:首先,参数调整往往是针对不同的应用场景采用不同的参数组合才能达到一定的效果,并非一劳永逸的统一效果;其次,在实际的Internet互联网中,各服务节点主机是不可控的,要想修改TCP/IP参数很难实现。
其二,在双向数据传输中,建立两个不同优先级的传输队列:优先级高的队列缓存TCP ACK,优先级低的队列则缓存非TCP ACK数据。发送时先发优先级高的TCPACK队列的数据。该策略在数据双向传输情况下,可以减少数据传输的往返时延,保证数据传输的效率。但也有一定局限性:首先,如果数据只是单向传输,接收端只有TCP ACK数据包发送给发送端,也即只有TCPACK队列会缓存数据,故不存在先发高优先级队列数据的情况,如此,发送端数据传输的往返时延并不会因此得到改善,数据传输效率也得不到提高;其次,如果数据为双向传输,某方向上优先发送TCPACK队列的数据,由于该方向上带宽是一定的,那么一定程度上就会影响非TCPACK队列数据的传输,从而影响此方向上数据传输的效率。
发明内容
本发明的实施例提供一种数据传输的方法和装置,用以解决现有的数据传输中的传输效率不高的问题。
本发明实施例提供一种数据传输方法,包括:
建立TCP/IP数据包先进先出的缓存,接收并缓存待发送的TCP/IP数据包,TCP/IP数据包包括TCP有效载荷数据包和TCP ACK;根据TCP/IP数据包的包头信息,调整缓存TCP/IP数据包的队列;将调整队列后的缓存TCP/IP数据包顺序进行发送。
较优的,上述根据所述数据包中TCP/IP数据包的包头信息,调整缓存TCP/IP数据包的队列包括:当缓存中存在两个源和目的IP地址、TCP源端口号、目的端口号均对应相同、确认号不同的TCP ACK时,保留其中最近接收到的一个TCPACK,将另一个TCPACK删除。
较优的,将其中最近接收到的一个TCP ACK插入至所述被删除TCP ACK中最靠前的TCPACK的位置。
较优的,调整缓存TCP/IP数据包的队列还包括:当缓存中存在两个源和目的IP地址、TCP源端口号、目的端口号均对应相同、确认号也相同的TCPACK时,将后一个所述TCPACK插至前一个所述TCPACK的相邻位置。
较优的,当所述缓存队列中存在TCP有效载荷数据包时,将所有TCPACK插至TCP有效载荷数据包之前。
本发明实施例同时提供一种数据传输的装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于意法·爱立信半导体(北京)有限公司,未经意法·爱立信半导体(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010520796.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可转接来电的电话机
- 下一篇:一种服务器环境配置管理方法