一种TD-HSUPA系统的TCP优化方法
扫描二维码
随时随地手机看文章
传输控制协议TCP(Transmission Control Protocol)是目前Internet中最普遍的传输服务协议,作为端到端的传输协议,TCP为互联网提供了一种可靠的运输层服务。现有的TCP算法主要有Tanoe、Reno、NewReno、SACK、Vegas等,其中最广泛使用的是Reno算法。TCP拥有一套完整的拥塞控制机制,通过拥塞窗口TCP能控制数据包的发送,当网络链路上有较大的时延或丢包出现时能自动减慢数据包的发送速率,防止网络出现严重的阻塞。
相比有线网络链路上传输数据时极低的误码率,在噪声干扰下无线网链路的误码率远远高于有线网络,而且移动通信环境还存在带宽低、移动性等特点,并且3 G和LTE等移动通信网络普遍使用2 GHz或是更高的频段,该频段的电磁波穿透性能较差,所以无线网络时常因空口环境变差而发生数据包丢失或较大的时延,而TCP运行机制会将这一类事故认定为发生网络拥塞,并促使数据发送端进入“TCP慢启动阶段”,降低数据包发送速率。但是当无线空口环境变好以后数据包的发送速率不会很快地恢复,这会严重影响时分高速分组接入TD-HSPA(Time Division-High Speed Packet Access)这种高速数据传输网络的带宽利用率和数据传输速率。
本文提出了一种TD-HSUPA系统的TCP优化方法:利用无线网络控制器RNC(Radio Network Controller)解析TCP连接链路上服务器的反馈包信息,分析当前TCP连接的状态,在上行链路的TCP超时发生之前,控制NodeB对终端做优先调度并在短期内分配更多的时隙和码道,有效防止无线链路进入“TCP慢启动阶段”而影响无线带宽利用。本方法的优点在于仅在RNC内做TCP数据包的分析处理工作,不影响整个网络,有很好的系统兼容性。
1 TD-HSUPA系统的TCP优化方法
高速上行链路分组接入HSUPA(High Speed Uplink Packet Access)是TD-SCDMA的上行数据传输标准,作为匹配HSDPA高速下行数据传输,HSUPA通过引入了基于NodeB的快速调度、快速混合自动重传请求HARQ(Hybrid Automatic Repeat Request)、高阶调制和增强专用信道E-DCH(Enhance-Dedicated Channel)等关键技术,使得TD-SCDMA理论上行最大速率为2.2 Mb/s,为在线游戏、高清视频通话等业务提供足够的带宽,丰富3G无线通信的应用。
HSUPA的TCP数据包传输流程是:终端、RNC和远端服务器的连接建立以后,TCP数据包由终端发送,经过无线空口传输后被基站接收,然后基站会将数据包通过传输网发送给RNC,RNC提供一个路由的功能将数据包转发到核心网并最终到达远端服务器。TD-HSUPA系统的协议结构如图1所示[1]。
在HSUPA系统中数据的发送端是终端,因为不是所有的终端都支持TCP SACK等较新版本的传输协议,大部分终端只支持标准的TCP NewReno,所以考虑到系统的兼容性问题,HSUPA系统只能以使用TCP NewReno为主。
无线网络中优化TCP的有效手段(如TCP westwood[2]等)大都是针对数据的发送方。但是对HSUPA系统来说对所有的终端做改进比较困难,从图1中所示的HSUPA系统网络结构来看,HSUPA的拥塞控制优化工作可考虑由无线链路的接收端来做[3-4],也就是交由RNC和基站来完成。
本文提出了一种在RNC和NodeB优化 HSUPA系统TCP的方法,结构如图2所示。
具体方案如下:
(1)数据由用户设备UE(User Equipment)发出后经过Node B转交给RNC,RNC解析每个数据包的TCP包头信息,由式Bw′=L/tint[5]可计算出每个用户利用的无线链路带宽,其中L为数据包大小,tint为数据包到达时间间隔。根据Bw′的计算结果由式Bw=αBw+(1-α)Bw′ [2]可计算得到带宽估计值Bw,其中?琢为加权系数取0.9,带宽的计算有90%都来源于先前的值,这也是平滑带宽的估计值。
(2)RNC并不知道UE的超时重传时间RTO(Retransmission Timeout),只能通过其他的途径估算该值。TCP连接的RTO是根据数据包的往返时延RTT(Round-Trip Time)计算得到的,RTT包含有线链路的时延、RNC转发的时延和无线链路的传输时延,由步骤(1)中解析数据包可以很容易地计算有线链路的传输时延tc,RNC转发的时延相比RTO的值较小,可以认为是定值tr,无线链路的时延可以由式tw=L/Bw计算得到,其中L为TCP/IP数据包大小,可设为1 500 B,Bw为步骤(1)中计算的带宽,所以RNC侧可估算得到TCP的超时时间RTO=2×(tc+tw+tr)。
(3)服务器收到数据包以后会发送含有反馈信息的数据包,这些含有反馈信息的数据包在到达RNC时,RNC需要解析这些数据包的TCP/IP包头信息,如果检测到这些反馈数据包含有3个重复的ACK信息,RNC将通过Iur传达信令通知Node B在下一次调度周期中临时提高该UE的调度优先级并为该UE增加物理信道以扩大该UE的可用带宽,使UE能尽快重传数据以免进入慢启动阶段,持续一个RTO时间后,Node B自动还原UE的优先级和被分配的物理信道。
在上述方法中RNC根据对反馈数据包解析的情况分析UE出现拥塞的原因。如果拥塞出现的次数较少,则说明是无线空口环境的抖动引起,RNC根据步骤(1)计算出UE所需的带宽,并且将计算出的带宽值发送给Node B,让Node B为UE在接下来的一段时间调度增加信道数,来保证UE能够尽快重传数据。如果长时间多次出现拥塞,则说明是由其他原因所致,在HSUPA系统中这种问题由无线资源管理RRM(Radio Resource Management)来处理,所以只需要为本方案设定一个静默时间,在执行一次本方案以后需要启动一个定时器,静默一段时间后再激活本方法,静默时间应根据网络的负载情况来定,如过负载较小则可将时间设得较短,否之则需要设置较长。
2 仿真的实现
目前互联网上使用最为广泛的TCP版本是1990年HOE J C提出的TCP NewReno。在使用C++语言编写的TD-SCDMA系统仿真平台上,本文对所提出的方法和TCP NewReno作仿真比较。 HSUPA的仿真系统结构如图1所示。使用离散事件时间驱动机制的方法来模拟业务发起的过程,所有用户均使用FTP业务来仿真测试,小区采用WrapAround 19小区的模型,每个小区分为3个扇区,每个扇区均匀分布1个用户。有线链路的仿真模型简化为从RNC到远端服务器的链路中数据传输的往返时延为固定值200 ms。智能天线模型和同频干扰的计算见参考文献[6]。
首先仿真稳定状态下的TCP,假定所有用户静止,通过调节背景噪音功率使所有数据传输的平均误帧率达到相应的值,经过200 s仿真得到结果如图3和图4所示。
由图3可以看到,当误帧率较低时,本文提出的方法对于减少超时次数有很好的效果;由图4对应的吞吐量也可以看出,相比TCP NewReno,本文提出的改进方法使得HSUPA系统的吞吐量随误帧率的升高而剧烈的降低得到缓解,说明本文提出的方法能减弱无线环境中TCP慢启动机制带来的性能下降。
仿真内容改为更一般的情形:设背景噪声为定值,每个用户以3 km/h的速度运动,当用户数增多的情况下,比较本文提出的方法和TCP NewReno之间的性能结果如图5所示。
因为用户所受的干扰主要为TD-SCDMA系统内的同频干扰,所以当用户数增大时,同频干扰增大,终端通过增大发射功率来保证通信的信噪比大于门限值,这会加剧无线信道的恶化,导致吞吐量的降低。从图5中可以看到,每个小区的用户数为4时,本文提出的方法能提高大约12%的系统吞吐量,当用户数为5时,因为TD-SCDMA系统的物理信道数有限,所以在遇到可能发生超时之前,可能会出现由于物理资源的限制而使得本文提出的方法不能很好地执行。不过在配合更好的动态信道分配算法的条件下,本文提出的方法将能提升更好的效果。
本文分析了TD-HSUPA系统网络的结构,并且提出了一种适应TD-HSUPA网络的拥塞控制方法,通过RNC解析该TCP连接中UE与服务器之间的数据包和反馈包,经过计算能分析UE的TCP状态,在UE可能出现超时之前,及时扩大UE的传输带宽和提高UE调度优先级,使UE能更快地重传数据,从而有效地防止因无线空口环境变差所导致的TCP慢启动。经仿真表明,对于复杂多变的无线环境,本方法能有效保证TD-HSUPA数据传输的稳定性,保持良好的数据传输效率。
参考文献
[1] NADAS S, RACZ S. HSUPA transport network congestion control. EURASIP Journal on Wireless Communication and Networking. Volume 2009. Article ID 924096:1-10.
[2] CASETTI C, GERLA M. TCP westwood: bandwidth estimation for enhanced transport over wireless links. in Proc[C]. 7th ACM Annu. Int. Conf. Mobile Compute Networking, Rome, Italy,2001:287-297.
[3] 俞一帆,纪红. 针对无线上行链路的TCP跨层改进机制[J]. 电路与系统学报,2008,13(2):104-108.
[4] HSIEH H, KIM K, ZHU Y. A receiver-centric transport protocol for mobile hosts with heterogeneous wireless interfaces in Proc[C]. 9th ACM Annu. Int. Conf. Mobile Compute Networking, San Diego, 2003:1-15.
[5] SHI K, SHU Y. Receiver centric fuzzy logic congestion control for TCP throughput improvement over wireless networks. In Proc[C]. 6th International Conference on Fuzzy Systems, 2009:146-150.
[6] 彭木根,王文博. TD-SCDMA系统上行链路接入控制机制[J].北京邮电大学学报,2006,29(1):9-31.