專利名稱:無線鏈路控制層的數(shù)據(jù)傳輸方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線通信領(lǐng)域的數(shù)據(jù)傳輸方法,特別涉及一種無線鏈路控制層的數(shù)據(jù)傳輸方法。
背景技術(shù):
隨著通信技術(shù)的發(fā)展,特別是第三代移動通信技術(shù)的發(fā)展,數(shù)據(jù)業(yè)務(wù)成為移動通信系統(tǒng)的重要業(yè)務(wù)之一。其中,無線數(shù)據(jù)業(yè)務(wù)為終端用戶提供到Internet網(wǎng)絡(luò)的無縫連接,可以讓終端用戶通過無線系統(tǒng)得到更方便的Internet資訊。
由于現(xiàn)有的Internet網(wǎng)絡(luò)主要是通過TCP(Transmit Control Protocol,傳輸控制協(xié)議)/IP(Internet Protocol,Internet協(xié)議)來進行組網(wǎng)并完成數(shù)據(jù)傳輸?shù)?,因此,利用無線數(shù)據(jù)業(yè)務(wù)為終端用戶提供到Internet網(wǎng)的無縫連接時,同樣需要TCP/IP協(xié)議實現(xiàn)數(shù)據(jù)傳輸。通過仿真和測試表明,在上下行同時進行基于TCP的數(shù)據(jù)傳輸,例如,同時FTP(File Transfer Protocol,文件傳輸協(xié)議)上傳和下載文件時,若一個本端上層發(fā)送的TCP ACK到達RLC(無線鏈路層)時已經(jīng)有多個TCP數(shù)據(jù)報文段在等待發(fā)送,那么該TCP ACK的發(fā)送就被延時。上行或下行傳輸數(shù)據(jù)的傳輸速率能否都接近單上行或單下行數(shù)據(jù)傳輸時的傳輸速率,與網(wǎng)絡(luò)側(cè)TCP接收緩沖大小(TcpRxBufferSize,也稱TCP接收窗大小)和UE(User Equipment,用戶設(shè)備)側(cè)TCP接收緩沖大小設(shè)置以及二者的比例有關(guān),若兩端的TcpRxBuffferSize設(shè)置不當(dāng)或比例不當(dāng),可能會造成傳輸鏈路擁塞,具體表現(xiàn)為一方向傳輸速率比較正常而另一方向傳輸速率很低或者兩個方向的傳輸速率都下降。
在現(xiàn)有技術(shù)中,擁塞控制方法主要包括慢啟動、擁塞避免和快速重發(fā)。所述慢啟動實現(xiàn)方法如下首先向TCP每連接狀態(tài)加入兩個參量。擁塞窗口(cwnd)和慢啟動閥值(ssthresh),擁塞窗口即為上述TCP接收窗口。其中,擁塞窗口是一個TCP狀態(tài)參量,代表著一個TCP允許發(fā)送的最大數(shù)據(jù)量,是發(fā)送端收到確認(TCP ACK)之前能向網(wǎng)絡(luò)傳送的最大數(shù)據(jù)量的一個發(fā)送門限;所述擁塞窗口包括本端擁塞窗口和對端擁塞窗口。所述慢啟動閥值(ssthresh),被用來選擇用慢啟動還是用擁塞避免算法來控制數(shù)據(jù)傳送。例如,TCP發(fā)送端啟動一個長度為1的擁塞窗口(cwnd),該窗口為對端擁塞窗口,對于每收到一個TCP ACK,TCP發(fā)送端按指數(shù)增長所述對端擁塞窗口的大小,直到等于慢啟動閾值(ssthresh)。然后進入擁塞避免階段,繼續(xù)線性增加它的對端擁塞窗口cwnd,使發(fā)送數(shù)據(jù)量線性增長,且每收到一個TCP ACK就發(fā)送一個新的報文段,達到一種穩(wěn)態(tài)(慢啟動持續(xù)時間很短,可以認為是暫態(tài))。然后,TCP繼續(xù)測量環(huán)回時延RTT(Round Trip Time,往返時間),該環(huán)回時延用來計算在發(fā)送端和接收端之間來回通信所需時間,即發(fā)送一個數(shù)據(jù)包后,到接收到該數(shù)據(jù)包的TCP ACK信息所用的時間。
通過比較測得的環(huán)回時延與設(shè)定的環(huán)回時延,確定是否丟包。當(dāng)測得丟包時,TCP激活快速重發(fā)算法,快速轉(zhuǎn)發(fā)算法假設(shè)丟失的包從重復(fù)ACK序號開始,并轉(zhuǎn)發(fā)它。同時,TCP將ssthresh設(shè)為現(xiàn)有窗口的一半,以減低數(shù)據(jù)量;或重設(shè)它的擁塞窗口的尺寸為1。因此,使用激活慢啟動算法可以限制擁塞窗口成為到先前水平的速率。
然而,該方法需要對TCP參數(shù)進行修改(改變TCP接收窗口的大小),在實際的無線網(wǎng)絡(luò)應(yīng)用中,Internet上各個服務(wù)節(jié)點的主機是不可控的,另一方面在真正的商用系統(tǒng)中,另一個IP的終端是手機,因此,對于普通用戶來說對TCP參數(shù)進行修改是不現(xiàn)實的。
現(xiàn)有技術(shù)中還有另一種方案,在無線通信系統(tǒng)中,根據(jù)3GPP的協(xié)議規(guī)范,無線接口協(xié)議層分為三層。最底層是物理層,位于物理層(L1)之上的協(xié)議層稱為數(shù)據(jù)鏈路層(L2)和網(wǎng)絡(luò)層(L3)。在UTRA FDD無線接口中,數(shù)據(jù)鏈路層被劃分為幾個子層。在控制平面上,數(shù)據(jù)鏈路層(L2)包含兩個子層——MAC(Medium Access Control,媒體訪問控制)和RLC(Radio Link Control,無線鏈路控制);在用戶平面上,除去MAC和RLC外,還存在兩個與特定業(yè)務(wù)有關(guān)的協(xié)議PDCP(Packet Data Convergence Protocol,分組數(shù)據(jù)匯聚協(xié)議)和BMC(廣播/組播控制協(xié)議)。
在PDCP層實現(xiàn)上增加對數(shù)據(jù)進行優(yōu)先級的劃分的處理,然后在RLC層實現(xiàn)不同優(yōu)先級的數(shù)據(jù)包映射到不同優(yōu)先級的邏輯信道,MAC優(yōu)先調(diào)度高優(yōu)先級的邏輯信道,這樣使控制數(shù)據(jù)包有高的優(yōu)先級可以及時的被從空口發(fā)送到對端。但是,由于在PDCP解析TCP/IP包,打破層間結(jié)構(gòu),因此,實現(xiàn)較為復(fù)雜,并可能影響頭壓縮的處理。
發(fā)明內(nèi)容
本發(fā)明解決的問題是提供一種無線鏈路控制層的數(shù)據(jù)傳輸方法,以解決現(xiàn)有技術(shù)中需要通過對TCP參數(shù)進行修改或在PDCP解析TCP/IP包,打破層間結(jié)構(gòu),來實現(xiàn)提高TCP傳輸性能的缺陷。
為了解決上述問題,本發(fā)明公開了一種無線鏈路控制層的數(shù)據(jù)傳輸方法,該方法包括以下步驟A、無線鏈路控制層接收本端上層發(fā)送的服務(wù)數(shù)據(jù)單元;B、所述無線鏈路控制層判斷接收的服務(wù)數(shù)據(jù)單元是否承載確認信息TCPACK;C、所述無線鏈路控制層優(yōu)先發(fā)送所述承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元對應(yīng)的協(xié)議數(shù)據(jù)單元。
步驟B中,通過在無線鏈路控制層設(shè)定一個常數(shù),并與本端上層發(fā)送的服務(wù)數(shù)據(jù)單元SDU的大小比較,確定承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元。
步驟B和C之間包括,將承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元存入第一隊列,將承載數(shù)據(jù)段信息的服務(wù)數(shù)據(jù)單元存入第二隊列,所述第一隊列比第二隊列具有發(fā)送優(yōu)先權(quán)。
所述具有發(fā)送優(yōu)先權(quán)的第一隊列按照先進先出原則發(fā)送所存信息。
所述無線鏈路控制層包括發(fā)送端無線鏈路控制層和接收端無線鏈路控制層。
所述發(fā)送端為網(wǎng)絡(luò)側(cè)設(shè)備、服務(wù)器或用戶設(shè)備。
所述接收端為網(wǎng)絡(luò)側(cè)設(shè)備、服務(wù)器或用戶設(shè)備。
所述上層為網(wǎng)絡(luò)層或傳輸層。
所述確認信息TCP ACK在本端接收到一個對端發(fā)送的數(shù)據(jù)段信息后發(fā)送。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點本發(fā)明在不改變接收端和發(fā)送TCP參數(shù)的基礎(chǔ)上,改變RLC數(shù)據(jù)傳輸機制的角度出發(fā),提供一種RLC數(shù)據(jù)傳輸方案。該方案在RLC發(fā)送緩沖區(qū)中既有TCP ACK(TCP確認信息)又有數(shù)據(jù)段信息或其它控制信息包待發(fā)送時,優(yōu)先發(fā)送TCP ACK,使得上下行傳輸信道同時進行數(shù)據(jù)傳輸時,上下行傳輸信道的TCP傳輸速率都接近單上行或單下行數(shù)據(jù)傳輸時的傳輸速率,并且降低TCP環(huán)回時延,提高端到端的QoS(Quality of Service,服務(wù)質(zhì)量)性能。
圖1是本發(fā)明無線鏈路控制層的數(shù)據(jù)傳輸方法基本原理流程圖;圖2是本發(fā)明無線鏈路控制層的數(shù)據(jù)傳輸方法應(yīng)用在無線通信系統(tǒng)中的結(jié)構(gòu)圖。
具體實施例方式
本發(fā)明的基本原理如圖1所示,包括步驟s101,無線鏈路控制層接收本端上層發(fā)送的服務(wù)數(shù)據(jù)單元;步驟s102,所述無線鏈路控制層判斷接收的服務(wù)數(shù)據(jù)單元是否承載確認信息TCP ACK;步驟s103,所述無線鏈路控制層優(yōu)先發(fā)送所述承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元對應(yīng)的協(xié)議數(shù)據(jù)單元。
本發(fā)明通過減少TCP ACK傳輸時延,以減少環(huán)回時延,使得數(shù)據(jù)傳輸速率提高、擁塞時間減少。由于TCP環(huán)回時延由兩部分組成數(shù)據(jù)報文段的傳輸時延和對應(yīng)的TCP ACK的傳輸時延。數(shù)據(jù)報文段的傳輸時延與對端TcpRxBufferSize有關(guān),TcpRxBufferSize越大,待發(fā)送的報文段在本端RLC發(fā)送隊列中滯留越多,數(shù)據(jù)報文段的傳輸時延越大;而對應(yīng)的TCP ACK的傳輸時延則與本端TcpRxBufferSize有關(guān),在上下行同時進行數(shù)據(jù)傳輸情況下,因為此時對端RLC層也有若干承載TCP數(shù)據(jù)報的SDU等待發(fā)送,因此,本端TcpRxBufferSize越大,TCP ACK在對端RLC層滯留時間越長,TCP ACK的傳輸時延越大。由于TCP性能由數(shù)據(jù)傳輸時延和該數(shù)據(jù)確認信息TCP ACK傳輸時延確定,所以減少TCP ACK傳輸時延可以減少環(huán)回時延,使得數(shù)據(jù)傳輸速率提高,達到優(yōu)化TCP性能的目的。
本發(fā)明所應(yīng)用的無線通信系統(tǒng)結(jié)構(gòu)如圖2所示,包括接收端(UE側(cè)或網(wǎng)絡(luò)側(cè))201,發(fā)送端(網(wǎng)絡(luò)側(cè)或UE側(cè))202,發(fā)送端包括物理層205、無線鏈路層204和上層203(所述上層包括網(wǎng)絡(luò)層、傳輸層等),接收端包括物理層208、無線鏈路層207和上層206(所述上層包括網(wǎng)絡(luò)層、傳輸層等)。發(fā)送端的RLC204(Radio Link Control,無線鏈路控制層)接收上層203發(fā)送的SDU(Service Data Unit,服務(wù)數(shù)據(jù)單元),將所述SDU放入發(fā)送隊列,RLC204只根據(jù)SDU到達時間先后通過物理層205來向接收端物理層208發(fā)送SDU對應(yīng)的PDU(Protocol Data Unit,協(xié)議數(shù)據(jù)單元),對端RLC202向上層206發(fā)送SDU,上層206接收到SDU后,以同樣方法向發(fā)送端發(fā)送TCP ACK信息,表示已接收到數(shù)據(jù)信息。
本發(fā)明的具體實現(xiàn)方案為首先,RLC將上層發(fā)送的SDU分類。根據(jù)TCP/IP協(xié)議,承載TCP ACK的消息包的大小固定為40Byte,因此,若PDCP沒有啟用頭壓縮算法,TCP ACK消息包到達RLC時就是40Byte;若PDCP啟用頭壓縮算法,TCP ACK消息包到達RLC時也是一個固定值。所述頭壓縮算法是PDCP用來提高信道的利用率的一種方法,每個PDCP實體使用一個或多個頭壓縮算法,也可以不使用頭壓縮算法,幾個PDCP實體可能使用同一頭壓縮算法,算法的類型和參數(shù)由RRC協(xié)商并通過PDCP控制業(yè)務(wù)接入點(PDCP-SAP)指示PDCP。因此,我們可以設(shè)置一個參數(shù)TcpAckRefSize,RLC通過比較SDU大小與該參數(shù)是否相等來識別是否是承載TCP ACK的SDU。
然后,在SLC向下優(yōu)先發(fā)送上層的TCP ACK,由于上層發(fā)送的SDU內(nèi)封裝的可能是TCP數(shù)據(jù)報文段或是TCP的控制信息(接收確認信息),且本發(fā)明的關(guān)鍵點就是盡快地傳輸TCP接收確認信息。因此,RLC區(qū)分對待到達的SDU,優(yōu)先發(fā)送上層TCP ACK,降低TCP ACK的傳輸時延。
具體實現(xiàn)優(yōu)先發(fā)送上層的TCP ACK的方法為在邏輯上,把RLC發(fā)送隊列分為兩個,將承載TCP ACK的SDU單獨放入一個發(fā)送隊列A,而將承載數(shù)據(jù)信息或其他控制信息的SDU放入另一個隊列B。RLC每次發(fā)送新的AMDPDU時都優(yōu)先發(fā)送隊列A中的數(shù)據(jù)PDU(在隊列A中存在多個待發(fā)送的數(shù)據(jù)單元時,可采用先進先出、先進后出或預(yù)先設(shè)定的發(fā)送原則等)。這樣,TCP ACK在RLC層的延時上就很小。在這種情況下,UE側(cè)和Server(或網(wǎng)絡(luò))側(cè)的TCP RTT基本上就不受本端TcpRxBufferSize的影響,因此,與單方向數(shù)據(jù)傳輸一樣,避免上下行之間的相互影響,提高TCP性能。因為本發(fā)明的目的就是為了盡快地傳輸TCP ACK數(shù)據(jù)報文段,與現(xiàn)有技術(shù)只要簡單對比一下,便可體現(xiàn)本發(fā)明的優(yōu)勢。
例如,現(xiàn)有技術(shù)方案的發(fā)送緩沖區(qū)中已經(jīng)存在1,2,3,4,5,6,7個待發(fā)送的數(shù)據(jù)段信息,且由于發(fā)送緩沖區(qū)是按照先進先出的順序進行調(diào)度,因此如果有8,9兩個TCP ACK數(shù)據(jù)到達時,8,9需要等1~7個的待發(fā)送數(shù)據(jù)段信息發(fā)送完畢才可進行,假設(shè)每一個數(shù)據(jù)發(fā)送需要Td的時間,那么,8,9的TCP ACK數(shù)據(jù)需要額外等待7*Td的時間,從而造成時間上的延遲。如果采用本發(fā)明的技術(shù),將待發(fā)送的數(shù)據(jù)段信息與TCP ACK信息區(qū)分別存儲到不同的發(fā)送緩沖區(qū)中,當(dāng)8,9的TCP ACK數(shù)據(jù)到達時,將會放置到A發(fā)送緩沖區(qū),而數(shù)據(jù)段信息或其它控制信息則放置在B發(fā)送緩沖區(qū)中。且使發(fā)送緩沖區(qū)A的優(yōu)先級高于發(fā)送緩沖區(qū)B,也就是說,只要發(fā)送緩沖區(qū)A中有數(shù)據(jù),就發(fā)送A中的數(shù)據(jù),當(dāng)A中沒數(shù)據(jù)時,才發(fā)送B中的數(shù)據(jù)。因此,A發(fā)送緩沖區(qū)的數(shù)據(jù)就可以快速地發(fā)送出去,而不需要象原技術(shù)中需要等待7*Td的時間。
另外,單獨進行上傳或下載時,TCP性能不受本方案影響。此外,上層采用非TCP承載時,如UDP(User Datagram Protocal,用戶數(shù)據(jù)報協(xié)議),數(shù)據(jù)傳輸性能也不受本發(fā)明的方案影響。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,包括以下步驟A、無線鏈路控制層接收本端上層發(fā)送的服務(wù)數(shù)據(jù)單元;B、所述無線鏈路控制層判斷接收的服務(wù)數(shù)據(jù)單元是否承載確認信息TCPACK;C、所述無線鏈路控制層優(yōu)先發(fā)送所述承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元對應(yīng)的協(xié)議數(shù)據(jù)單元。
2.如權(quán)利要求1所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,步驟B中,通過在無線鏈路控制層設(shè)定一個常數(shù),并與本端上層發(fā)送的服務(wù)數(shù)據(jù)單元SDU的大小比較,確定承載確認信息TCPACK的服務(wù)數(shù)據(jù)單元。
3.如權(quán)利要求1所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,步驟B和C之間包括,將承載確認信息TCPACK的服務(wù)數(shù)據(jù)單元存入第一隊列,將承載數(shù)據(jù)段信息的服務(wù)數(shù)據(jù)單元存入第二隊列,所述第一隊列比第二隊列具有發(fā)送優(yōu)先權(quán)。
4.如權(quán)利要求3所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述具有發(fā)送優(yōu)先權(quán)的第一隊列按照先進先出原則發(fā)送所存信息。
5.如權(quán)利要求1所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述無線鏈路控制層包括發(fā)送端無線鏈路控制層和接收端無線鏈路控制層。
6.如權(quán)利要求5所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述發(fā)送端為網(wǎng)絡(luò)側(cè)設(shè)備、服務(wù)器或用戶設(shè)備。
7.如權(quán)利要求5所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述接收端為網(wǎng)絡(luò)側(cè)設(shè)備、服務(wù)器或用戶設(shè)備。
8.如權(quán)利要求1所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述上層為網(wǎng)絡(luò)層或傳輸層。
9.如權(quán)利要求1所述無線鏈路控制層的數(shù)據(jù)傳輸方法,其特征在于,所述確認信息TCP ACK在本端接收到一個對端發(fā)送的數(shù)據(jù)段信息后發(fā)送。
全文摘要
本發(fā)明公開了一種無線鏈路控制層的數(shù)據(jù)傳輸方法,包括以下步驟A.無線鏈路控制層接收本端上層發(fā)送的服務(wù)數(shù)據(jù)單元;B.所述無線鏈路控制層判斷接收的服務(wù)數(shù)據(jù)單元是否承載確認信息TCP ACK;C.所述無線鏈路控制層優(yōu)先發(fā)送所述承載確認信息TCP ACK的服務(wù)數(shù)據(jù)單元對應(yīng)的協(xié)議數(shù)據(jù)單元。本發(fā)明在不改變接收端和發(fā)送TCP參數(shù)的基礎(chǔ)上,提供一種RLC數(shù)據(jù)傳輸方案。該方案在RLC發(fā)送緩沖區(qū)中既有TCP ACK又有數(shù)據(jù)段信息或其它控制信息包待發(fā)送時,優(yōu)先發(fā)送TCP ACK,使得上下行傳輸信道同時進行數(shù)據(jù)傳輸時,上下行傳輸信道的TCP傳輸速率都接近單上行或單下行數(shù)據(jù)傳輸時的傳輸速率,并且降低TCP環(huán)回時延,提高端到端的QoS性能。
文檔編號H04L1/16GK1842052SQ200510059710
公開日2006年10月4日 申請日期2005年3月29日 優(yōu)先權(quán)日2005年3月29日
發(fā)明者許佰魁 申請人:華為技術(shù)有限公司