传输控制协议(Transmission Control Protocol)是目前Internet中最普遍的传输服务协议,作为端到端的传输协议,为互联网提供了可靠的运输层服务。现有的算法主要有Tanoe、Reno、NewReno、SACK、Vegas等,其中最广泛使用的是Reno算法。TCP拥有一套完整的拥塞控制机制,通过拥塞窗口TCP能控制数据包的发送,当网络链路上有较大的时延或丢包出现时能自动减慢数据包的发送速率,防止网络出现严重的阻塞。 相比有线网络链路上传输数据时极低的误码率,在噪声干扰下无线网链路的误码率远远高于有线网络,而且移动通信环境还存在带宽低、移动性等特点,并且3 G和LTE等移动通信网络普遍使用2 GHz或是更高的频段,该频段的电磁波穿透性能较差,所以无线网络时常因空口环境变差而发生数据包丢失或较大的时延,而TCP运行机制会将这一类事故认定为发生网络拥塞,并促使数据发送端进入“TCP慢启动阶段”,降低数据包发送速率。但是当无线空口环境变好以后数据包的发送速率不会很快地恢复,这会严重影响时分高速分组接入TD-HSPA(Time Division-High Speed Packet Access)这种高速数据传输网络的带宽利用率和数据传输速率。 本文提出了的TCP:利用无线网络控制器RNC(Radio Network Controller)解析TCP连接链路上服务器的反馈包信息,分析当前TCP连接的状态,在上行链路的TCP超时发生之前,控制NodeB对终端做优先调度并在短期内分配更多的时隙和码道,有效防止无线链路进入“TCP慢启动阶段”而影响无线带宽利用。本的优点在于仅在RNC内做TCP数据包的分析处理工作,不影响整个网络,有很好的兼容性。 1 的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提供一个路由的功能将数据包转发到核心网并最终到达远端服务器。系统的协议结构如图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所示。 (责任编辑:admin)
|