CN1592299A - 提高无线网络传输性能的方法 - Google Patents

提高无线网络传输性能的方法 Download PDF

Info

Publication number
CN1592299A
CN1592299A CNA031576818A CN03157681A CN1592299A CN 1592299 A CN1592299 A CN 1592299A CN A031576818 A CNA031576818 A CN A031576818A CN 03157681 A CN03157681 A CN 03157681A CN 1592299 A CN1592299 A CN 1592299A
Authority
CN
China
Prior art keywords
tcp
bag
ppp
agency
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA031576818A
Other languages
English (en)
Other versions
CN100550891C (zh
Inventor
李卫星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031576818A priority Critical patent/CN100550891C/zh
Publication of CN1592299A publication Critical patent/CN1592299A/zh
Application granted granted Critical
Publication of CN100550891C publication Critical patent/CN100550891C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种提高无线网络传输性能的方法,该方法在接入设备的数据处理单元和无线接入单元之间设置传输控制协议代理,TCP代理从字节流中分解出PPP包并从该包中分解出TCP包;TCP代理将收到的下行TCP包以PPP包的形式存入下行发送缓冲区并向发送端返回响应包;TCP代理将下行发送缓冲区的PPP包标上重传标记并发送给无线接收单元,由无线接收单元传送给终端;当无线链路协议无法传送PPP包中的数据帧时,由无线接入单元重传该PPP包。

Description

提高无线网络传输性能的方法
技术领域
本发明涉及无线网络传输技术,尤其涉及一种提高无线网络传输性能的方法。
背景技术
用户使用CDMA等无线网络提供的数据业务功能主要有Ftp、Telnet和Www-access(http)等形式。这些程序的传输层都采用了传输控制协议(TransmissionControl Protocol,TCP)。而TCP协议假定数据传输是在一个高可靠的链路上(有线网络),数据包的丢失主要是因为拥塞引起的,其比特误码率(bit error rate,BER)小于10(-9)。而无线网络提供的是一个不可靠的链路,其BER可以达到5%~50%,甚至100%,其原因主要有各种各样的干扰(如,噪声)、空中资源受限等等,而不是简单的拥塞。
TCP的拥塞主要表现为数据包的丢失和等待确认超时。对于拥塞,TCP会启动慢启动算法和拥塞避免算法。拥塞避免算法和慢启动算法主要维持两个变量,一个拥塞窗口cwnd和一个慢启动门限ssthresh。
具体的算法工作过程如下:(参阅RFC 2001)
1、对一个给定的连接,初始化拥塞窗口cwnd为1个报文段,慢启动门限ssthresh为65535个字节。
2、TCP输出例程的输出不能超过拥塞窗口cwnd和接收方通告窗口的大小。拥塞避免是发送方使用的流量控制,而通告窗口则是接收方进行的流量控制。前者是发送方感受到的网络拥塞的估计,而后者则与接收方在该连接上的可用缓存大小有关。
3、当拥塞发生时(超时或收到重复确认),慢启动门限ssthresh被设置为当前窗口大小的一半(拥塞窗口cwnd和接收方通告窗口大小的最小值,但最少为2个报文段)。此外,如果是超时引起了拥塞,则拥塞窗口cwnd被设置为1个报文段(这就是慢启动)。
4、当新的数据被对方确认时,就增加拥塞窗口cwnd,但增加的方法依赖于是否正在进行慢启动或拥塞避免。如果拥塞窗口cwnd小于或等于慢启动门限ssthresh,则正在进行慢启动,否则正在进行拥塞避免。慢启动一直持续到回到当拥塞发生时所处位置的时候才停止,然后转为执行拥塞避免。慢启动算法初始设置拥塞窗口cwnd为1个报文段,此后每收到一个确认就加1,这会使窗口按指数方式增长:发送1个报文段,然后是2个,接着是4个...。拥塞避免算法要求每次收到一个确认时将拥塞窗口cwnd增加1/cwnd。与慢启动的指数增加比起来,这是一种加性增长(additive increase)。我们希望在一个往返时间内最多为cwnd增加1个报文段(不管在这个RTT中收到了多少个ACK),然而慢启动将根据这个往返时间中所收到的确认的个数增加拥塞窗口cwnd。
拥塞发生后,TCP进行丢失数据包的重传,TCP的重传之间不同的时间差是一个“指数退避”的倍乘关系,它们取整后分别为1、3、6、12、24、48和多个64。
从上面可知,当拥塞发生时,在无线链路上传输的数据包将会减少,严重情况下可以没有数据传输。
在无线网络中,由于无线环境的不稳定,干扰引起的误帧和丢帧必然频繁发生TCP拥塞,从而导致数据传输低谷,甚至无法传输。而在无线环境的稳定期间,由于慢启动算法、拥塞避免算法以及重传定时器的影响,不能及时进行丢失数据包的重传,导致TCP传输性能的下降。
Balakrishnan在基站的传输层采用一个叫snoop agent的方法来提高无线链路TCP的传输性能。Snoop agent解析上下行的TCP包,当发现上行有重复的ACK包或者等待ACK超时后,对未收到ACK包的TCP包进行重传。但是,在TCP包的发送方,等待ACK的定时器仍会超时,拥塞控制、慢启动算法仍会启动,所以snoop agent在空中口误帧较大的情况下并不能保证TCP的传输性能。
总之,现有技术在数据包的丢失的情况下TCP发送方的重传定时器仍会超时,仍会启动慢启动算法和拥塞避免算法;而且在空口误帧较大的情况下效果不明显,只在有突发误帧的情况下有些效果。
发明内容
本发明的目的在于提供一种提高无线网络传输性能的方法,以解决现有技术中存在不能及时重传丢失的数据包而导致TCP传输性能的下降的问题。
为解决上述问题,本发明提供以下技术方案:
一种提高无线网络传输性能的方法,该方法在接入设备的数据处理单元和无线接入单元之间设置传输控制协议(TCP)代理,并包括下述步骤:
TCP代理从字节流中分解出点到点协议(PPP)包,并至少从该PPP包中分解出TCP包;
TCP代理将收到的下行TCP包以PPP包的形式存入下行发送缓冲区,并向发送端返回响应包;
TCP代理将下行发送缓冲区的PPP包标上重传标记并发送给无线接收单元,由无线接收单元将该PPP包分成数据帧通过无线链路协议传送给终端;以及
当无线链路协议无法传送PPP包中的数据帧时,无线接入单元丢弃该PPP包分成的所有数据帧并由无线接入单元重传该PPP包。
其中:
所述下行发送缓冲区大于收到的上行TCP包通告的最大通告窗口。
TCP代理根据上行TCP包中的通告窗口大小更新下行发送缓冲区的大小。
TCP代理在向发送端返回响应包时将下行发送缓冲区中空闲区的大小作为通告窗口的大小,并记录该响应包的确认序号。
TCP代理根据上行TCP包中的确认序号清除下行发送缓冲区内被无线终端确认的TCP包。
当所述上行TCP包中包含有上行数据时,TCP代理将该TCP包中的确认序号修改为记录的响应包的确认序号,将通告窗口大小修改为下行发送缓冲区中空闲区的大小后继续发送。
TCP代理还对无线终端发送的携带同步序号(SYN)标志的TCP包中的最大传输单元(MTU)选项进行修改。
TCP代理还从PPP包中分解出链路控制协议(LCP)包,记录该包中的最大接收单元和/或其他相关参数。
TCP代理还从PPP包中分解出网络控制协议(NCP)包,并记录IP报头压缩选项。
TCP代理对所述IP报头压缩选项进行修改,以启动IP报头压缩。
本发明具有以下有益效果:
1、通过下行TCP数据包的提前确认和通过窗口更新来对发送方的字节流进行控制,解决了由于无线口丢帧引起的TCP层的慢启动和拥塞避免问题;
2、数据的重发无需等待发送方的重发定时器的超时,提高了TCP在通过无线链路传输的性能;
3、能够最快速发现无线层丢帧,及时唯一的重传丢失的包,因而能最大化使用无线资源。
附图说明
图1为本发明的网络传输结构示意图;
图2为PPP包主要组成示意图;
图3为本发明的流程图。
具体实施方式
参阅图1所示,在无线链路上传输的字节流中的PPP包主要由链路控制协议(LCP)、网络控制协议(NCP)和传输控制协议(TCP)三种数据包组成。
参阅图2所示,本发明在接入设备的无线接入单元和数据处理单元之间增加一个传输控制协议(TCP)代理。
数据处理单元将服务器Server传送来的IP包封装为PPP包;TCP代理从字节流中分解出PPP包,对该PPP包中的LCP、NCP、IP包进行处理,并透传其他的数据包;无线接入单元主要透传PPP包组成的字节流,即无线接入单元把PPP包分成数据帧在通过无线链路传给无线终端。当发现数据帧丢失时,由无线接入单元重传丢失的PPP包。
参阅图3所示,TCP代理对TCP包的具体处理过程如下:
步骤10:TCP代理从接收的字节流中分解出PPP包,并从PPP包中分解出TCP包。
步骤20:TCP代理有序的接收下行TCP包,并将收到的每一个下行TCP包以PPP包的形式存入下行发送缓冲区,并给发送方回一个此PPP包中TCP包的响应(ACK)包。
在TCP代理中建立有下行发送缓冲区,该缓冲区的大小为收到的上行TCP包通告的最大通告窗口的N倍,其中N为大于1的整数。
TCP代理将ACK包中的16位通告窗口大小设置为下行发送缓冲区的空闲区大小idleWnd,通过此通告窗口的更新来对发送方的数据发送进行流控;当空闲区大小(即窗口大小)为零时可以只让发送方只发送1个字节的窗口探测包。TCP代理并记录该ACK包的32位确认序号m_Ackseq。ACK包可以采用类似于TCP协议中的延迟发送原则。
步骤30:TCP代理将下行发送缓冲区的PPP包打上需要重传的重传标志(其他包都不重传)发送给无线接入单元。
TCP代理不负责TCP包的重传,只是把有序的TCP包构成的PPP包以整个包为一个单位传给无线接入单元。
步骤40:无线接入单元把PPP包分成数据帧再通过无线链路传给无线终端,无线终端的PPP层再把数据帧组成PPP包交给上层处理。
TCP代理以PPP包为一个单位代替以字节为一个单位把包含TCP包的PPP包传给无线接入单元,无线接入单元以PPP包为单位处理字节流。
步骤50:当发现无线链路协议因为重传超过次数等原因无法再重传某个PPP包中的某个数据帧时,无线接入单元丢弃整个PPP包分成的所有数据帧,然后重传此整个PPP包直到达到规定的重传次数。
步骤60:接收到上行的TCP包,根据该TCP包中通告的通告窗口大小更新下行发送缓冲区的大小,并根据包中的有效32位确认序号清除下行发送缓冲区内被无线终端确认的TCP包。
如果该上行TCP包中包含有上行数据,则修改此包中的32位确认序号为响应包中的确认序号rn_Ackseq、修改16位窗口大小为下行发送缓冲区的空闲区大小idleWnd(无线终端的窗口更新被屏蔽了),更新效验和后继续发送,上行包不进行缓冲。
对于上行(无线终端发送的)TCP包中的SYN包,可以根据需要进行最大传送单元(MTU)的修改。修改目的主要是把TCP包的最大长度限定在某一个范围之内,因为TCP包长度越长,在无线链路因为丢帧无法重传时,重传的代价越大,相反如果限定TCP包的长度为一个适合的值(小于等于原值),相应的重传代价就比较小。
从上述可看出,对下行TCP包的提前确认和上行TCP包的通告窗口更新向数据发送方隐藏了无线链路,使其认为在有线网络上进行传输。
对TCP包的处理中,把PPP包的重传放在无线接入单元主要有如下好处:
1、无线接入单元能最早发现数据帧的丢失,在最短的时间内进行重传。由于空中口资源的限制,TCP计算往返时间(RTT)的范围将变化很大,不能在适当的时间进行PPP包的重传。
2、在无线接入单元重传,重传的PPP包永远只有一份,而放在TCP代理重传,一个PPP包可能会被重传多次,造成空中口资源的浪费。
3、由于无线接入单元确切的知道是哪个PPP包丢失了,基本上重传是有序的,不会造成无线终端的TCP层产生过多的重复ACK,从而触发拥塞避免。
TCP代理对LCP包的处理主要是记录包中的最大接收单元(Maximum-ReceiveUnit)、AsyncControlCharacterMap等参数,
TCP对NCP包的处理主要是记录IP报头压缩选项(IPCompressionProtocol),并可按照需要决定是否启动IP报头压缩。比如MA配置禁止启动IP报头压缩,那么MA则分别跟PPP的两端协商,拒绝IP报头压缩选项。

Claims (11)

1、一种提高无线网络传输性能的方法,其特征在于,在接入设备的数据处理单元和无线接入单元之间设置传输控制协议(TCP)代理,所述方法包括下述步骤:
TCP代理从字节流中分解出点到点协议(PPP)包,并至少从PPP包中分解出TCP包;
TCP代理将收到的下行TCP包以PPP包的形式存入下行发送缓冲区,并向发送端返回响应包;
TCP代理将下行发送缓冲区的PPP包标上重传标志并发送给无线接收单元,由无线接收单元将该PPP包分成数据帧通过无线链路协议传送给终端;以及
当无线链路协议无法传送具有重传标志的PPP包中的数据帧时,无线接入单元丢弃该PPP包分成的所有数据帧并由无线接入单元重传该PPP包。
2、如权利要求1所述的方法,其特征在于,所述下行发送缓冲区大于收到的上行TCP包通告的最大通告窗口。
3、如权利要求2所述的方法,其特征在于,TCP代理根据上行TCP包中的通告窗口大小更新下行发送缓冲区的大小。
4、如权利要求1所述的方法,其特征在于,TCP代理在向发送端返回响应包时将下行发送缓冲区中空闲区的大小作为通告窗口的大小,并记录该响应包的确认序号。
5、如权利要求1或4所述的方法,其特征在于,TCP代理根据上行TCP包中的确认序号清除下行发送缓冲区内被无线终端确认的TCP包。
6、如权利要求5所述的方法,其特征在于,当所述上行TCP包中包含有上行数据时,TCP代理将该TCP包中的确认序号修改为记录的响应包的确认序号,将通告窗口大小修改为下行发送缓冲区中空闲区的大小后继续发送。
7、如权利要求1所述的方法,其特征在于,TCP代理还对无线终端发送的携带同步序号(SYN)标志的TCP包的最大传输单元(MTU)选项进行修改,以限定TCP包的最大长度。
8、如权利要求1所述的方法,其特征在于,TCP代理以PPP包为一个单位向无线接入单元发送数据包。
9、如权利要求1所述的方法,其特征在于,TCP代理还从PPP包中分解出链路控制协议(LCP)包,记录该包中的最大接收单元和/或其他相关参数。
10、如权利要求1或9所述的方法,其特征在于,TCP代理还从PPP包中分解出网络控制协议(NCP)包,并记录IP报头压缩选项。
11、如权利要求10所述的方法,其特征在于,TCP代理对所述IP报头压缩选项进行修改,以启动或禁止IP报头压缩。
CNB031576818A 2003-09-05 2003-09-05 提高无线网络传输性能的方法 Expired - Fee Related CN100550891C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031576818A CN100550891C (zh) 2003-09-05 2003-09-05 提高无线网络传输性能的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031576818A CN100550891C (zh) 2003-09-05 2003-09-05 提高无线网络传输性能的方法

Publications (2)

Publication Number Publication Date
CN1592299A true CN1592299A (zh) 2005-03-09
CN100550891C CN100550891C (zh) 2009-10-14

Family

ID=34598536

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031576818A Expired - Fee Related CN100550891C (zh) 2003-09-05 2003-09-05 提高无线网络传输性能的方法

Country Status (1)

Country Link
CN (1) CN100550891C (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100466506C (zh) * 2006-02-17 2009-03-04 华为技术有限公司 一种数据传输的方法
CN101867512A (zh) * 2010-04-15 2010-10-20 华为技术有限公司 数据传输控制方法和装置
CN101527928B (zh) * 2009-03-19 2011-05-25 中兴通讯股份有限公司 电路数据业务的传输系统及方法
CN102891883A (zh) * 2007-12-27 2013-01-23 华为技术有限公司 无线传输控制协议处理方法和设备
US9143450B2 (en) 2011-12-30 2015-09-22 Industrial Technology Research Institute Communication system and method for assisting with the transmission of TCP packets
CN111371632A (zh) * 2018-12-25 2020-07-03 阿里巴巴集团控股有限公司 通信方法、装置、设备及存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100466506C (zh) * 2006-02-17 2009-03-04 华为技术有限公司 一种数据传输的方法
CN102891883A (zh) * 2007-12-27 2013-01-23 华为技术有限公司 无线传输控制协议处理方法和设备
CN101527928B (zh) * 2009-03-19 2011-05-25 中兴通讯股份有限公司 电路数据业务的传输系统及方法
CN101867512A (zh) * 2010-04-15 2010-10-20 华为技术有限公司 数据传输控制方法和装置
CN101867512B (zh) * 2010-04-15 2012-08-08 华为技术有限公司 数据传输控制方法和装置
US9143450B2 (en) 2011-12-30 2015-09-22 Industrial Technology Research Institute Communication system and method for assisting with the transmission of TCP packets
CN111371632A (zh) * 2018-12-25 2020-07-03 阿里巴巴集团控股有限公司 通信方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN100550891C (zh) 2009-10-14

Similar Documents

Publication Publication Date Title
CN110995697B (zh) 一种大数据传输方法及系统
Vaidya et al. Delayed duplicate acknowledgements: a TCP‐Unaware approach to improve performance of TCP over wireless
CN1226844C (zh) 一种适合有线/无线混合网络的自适应拥塞控制方法
CN102006283B (zh) 数据传输的方法和装置
JP5523350B2 (ja) Tcpフロー制御のための方法及び装置
US7609697B2 (en) Optimizing IEEE 802.11 for TCP/IP data transfer
EP2130387B1 (en) Cross-layer error recovery optimisation in wireless systems
US20040052234A1 (en) Method and system for dispatching multiple TCP packets from communication systems
CN1700629A (zh) 移动自组织网中发送数据的方法及利用该方法的网络设备
WO2013053304A1 (zh) 一种实现tcp传输的方法及装置
WO2002030067A1 (fr) Systeme de retransmission de paquets, dispositif de transmission de paquets, dispositif de reception de paquets, procede de retransmission de paquets, procede de transmission de paquets et procede de reception de paquets
DE60211335D1 (de) Echtzeitpaketisierung und Wiederübertragung in Streaming Anwendungen
CN1339749A (zh) 一种将tcp用于不可靠传输网络的局域重传方法
WO2007036046A1 (en) Methods and apparatus for dynamically adjusting a data packet window size for data packet transmission in a wireless communication network
KR20070007383A (ko) 시변 네트워크 환경에서 최적의 파일 전송을 위한 방법 및장치
EP2486686A1 (en) An efficient application-layer automatic repeat request retransmission method for reliable real-time data streaming in networks
CN101030842A (zh) 移动通信系统中数据的重排方法及其装置
CN1405994A (zh) Tp-s卫星信道专用传输协议及传输方法
US20070002864A1 (en) Transmission system and method for radio link protocol
JP2005520374A (ja) Tcp/ipに対する変更
CN1592299A (zh) 提高无线网络传输性能的方法
KR20060079570A (ko) 통신 시스템에서 데이터 재전송 장치 및 방법
Kim et al. A MAC/PHY cross-layer design for efficient ARQ protocols
Wang et al. Applying PR-SCTP to transport SIP traffic
US20150117201A1 (en) Data transmission system for networks with non-full-duplex or asymmetric transport

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091014

Termination date: 20150905

EXPY Termination of patent right or utility model