TD-HSUPA系統(tǒng)的TCP優(yōu)化方法
本文提出了一種TD-HSUPA系統(tǒng)的TCP優(yōu)化方法:利用無(wú)線網(wǎng)絡(luò)控制器RNC(Radio Network Controller)解析TCP連接鏈路上服務(wù)器的反饋包信息,分析當(dāng)前TCP連接的狀態(tài),在上行鏈路的TCP超時(shí)發(fā)生之前,控制NodeB對(duì)終端做優(yōu)先調(diào)度并在短期內(nèi)分配更多的時(shí)隙和碼道,有效防止無(wú)線鏈路進(jìn)入“TCP慢啟動(dòng)階段”而影響無(wú)線帶寬利用。本方法的優(yōu)點(diǎn)在于僅在RNC內(nèi)做TCP數(shù)據(jù)包的分析處理工作,不影響整個(gè)網(wǎng)絡(luò),有很好的系統(tǒng)兼容性。
1 TD-HSUPA系統(tǒng)的TCP優(yōu)化方法
高速上行鏈路分組接入HSUPA(High Speed Uplink Packet Access)是TD-SCDMA的上行數(shù)據(jù)傳輸標(biāo)準(zhǔn),作為匹配HSDPA高速下行數(shù)據(jù)傳輸,HSUPA通過(guò)引入了基于NodeB的快速調(diào)度、快速混合自動(dòng)重傳請(qǐng)求HARQ(Hybrid AutomaTIc Repeat Request)、高階調(diào)制和增強(qiáng)專用信道E-DCH(Enhance-Dedicated Channel)等關(guān)鍵技術(shù),使得TD-SCDMA理論上行最大速率為2.2 Mb/s,為在線游戲、高清視頻通話等業(yè)務(wù)提供足夠的帶寬,豐富3G無(wú)線通信的應(yīng)用。
HSUPA的TCP數(shù)據(jù)包傳輸流程是:終端、RNC和遠(yuǎn)端服務(wù)器的連接建立以后,TCP數(shù)據(jù)包由終端發(fā)送,經(jīng)過(guò)無(wú)線空口傳輸后被基站接收,然后基站會(huì)將數(shù)據(jù)包通過(guò)傳輸網(wǎng)發(fā)送給RNC,RNC提供一個(gè)路由的功能將數(shù)據(jù)包轉(zhuǎn)發(fā)到核心網(wǎng)并最終到達(dá)遠(yuǎn)端服務(wù)器。TD-HSUPA系統(tǒng)的協(xié)議結(jié)構(gòu)如圖1所示[1]。
在HSUPA系統(tǒng)中數(shù)據(jù)的發(fā)送端是終端,因?yàn)椴皇撬械慕K端都支持TCP SACK等較新版本的傳輸協(xié)議,大部分終端只支持標(biāo)準(zhǔn)的TCP NewReno,所以考慮到系統(tǒng)的兼容性問(wèn)題,HSUPA系統(tǒng)只能以使用TCP NewReno為主。
無(wú)線網(wǎng)絡(luò)中優(yōu)化TCP的有效手段(如TCP westwood[2]等)大都是針對(duì)數(shù)據(jù)的發(fā)送方。但是對(duì)HSUPA系統(tǒng)來(lái)說(shuō)對(duì)所有的終端做改進(jìn)比較困難,從圖1中所示的HSUPA系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)來(lái)看,HSUPA的擁塞控制優(yōu)化工作可考慮由無(wú)線鏈路的接收端來(lái)做[3-4],也就是交由RNC和基站來(lái)完成。
本文提出了一種在RNC和NodeB優(yōu)化 HSUPA系統(tǒng)TCP的方法,結(jié)構(gòu)如圖2所示。
具體方案如下:
(1)數(shù)據(jù)由用戶設(shè)備UE(User Equipment)發(fā)出后經(jīng)過(guò)Node B轉(zhuǎn)交給RNC,RNC解析每個(gè)數(shù)據(jù)包的TCP包頭信息,由式Bw′=L/TInt[5]可計(jì)算出每個(gè)用戶利用的無(wú)線鏈路帶寬,其中L為數(shù)據(jù)包大小,TInt為數(shù)據(jù)包到達(dá)時(shí)間間隔。根據(jù)Bw′的計(jì)算結(jié)果由式Bw=αBw+(1-α)Bw′ [2]可計(jì)算得到帶寬估計(jì)值Bw,其中?琢為加權(quán)系數(shù)取0.9,帶寬的計(jì)算有90%都來(lái)源于先前的值,這也是平滑帶寬的估計(jì)值。
(2)RNC并不知道UE的超時(shí)重傳時(shí)間RTO(Retransmission TImeout),只能通過(guò)其他的途徑估算該值。TCP連接的RTO是根據(jù)數(shù)據(jù)包的往返時(shí)延RTT(Round-Trip Time)計(jì)算得到的,RTT包含有線鏈路的時(shí)延、RNC轉(zhuǎn)發(fā)的時(shí)延和無(wú)線鏈路的傳輸時(shí)延,由步驟(1)中解析數(shù)據(jù)包可以很容易地計(jì)算有線鏈路的傳輸時(shí)延tc,RNC轉(zhuǎn)發(fā)的時(shí)延相比RTO的值較小,可以認(rèn)為是定值tr,無(wú)線鏈路的時(shí)延可以由式tw=L/Bw計(jì)算得到,其中L為TCP/IP數(shù)據(jù)包大小,可設(shè)為1 500 B,Bw為步驟(1)中計(jì)算的帶寬,所以RNC側(cè)可估算得到TCP的超時(shí)時(shí)間RTO=2×(tc+tw+tr)。
(3)服務(wù)器收到數(shù)據(jù)包以后會(huì)發(fā)送含有反饋信息的數(shù)據(jù)包,這些含有反饋信息的數(shù)據(jù)包在到達(dá)RNC時(shí),RNC需要解析這些數(shù)據(jù)包的TCP/IP包頭信息,如果檢測(cè)到這些反饋數(shù)據(jù)包含有3個(gè)重復(fù)的ACK信息,RNC將通過(guò)Iur傳達(dá)信令通知Node B在下一次調(diào)度周期中臨時(shí)提高該UE的調(diào)度優(yōu)先級(jí)并為該UE增加物理信道以擴(kuò)大該UE的可用帶寬,使UE能盡快重傳數(shù)據(jù)以免進(jìn)入慢啟動(dòng)階段,持續(xù)一個(gè)RTO時(shí)間后,Node B自動(dòng)還原UE的優(yōu)先級(jí)和被分配的物理信道。
在上述方法中RNC根據(jù)對(duì)反饋數(shù)據(jù)包解析的情況分析UE出現(xiàn)擁塞的原因。如果擁塞出現(xiàn)的次數(shù)較少,則說(shuō)明是無(wú)線空口環(huán)境的抖動(dòng)引起,RNC根據(jù)步驟(1)計(jì)算出UE所需的帶寬,并且將計(jì)算出的帶寬值發(fā)送給Node B,讓Node B為UE在接下來(lái)的一段時(shí)間調(diào)度增加信道數(shù),來(lái)保證UE能夠盡快重傳數(shù)據(jù)。如果長(zhǎng)時(shí)間多次出現(xiàn)擁塞,則說(shuō)明是由其他原因所致,在HSUPA系統(tǒng)中這種問(wèn)題由無(wú)線資源管理RRM(Radio Resource Management)來(lái)處理,所以只需要為本方案設(shè)定一個(gè)靜默時(shí)間,在執(zhí)行一次本方案以后需要啟動(dòng)一個(gè)定時(shí)器,靜默一段時(shí)間后再激活本方法,靜默時(shí)間應(yīng)根據(jù)網(wǎng)絡(luò)的負(fù)載情況來(lái)定,如過(guò)負(fù)載較小則可將時(shí)間設(shè)得較短,否之則需要設(shè)置較長(zhǎng)。