施淵籍 張玉成 石晶林
[摘要]文章首先對3GPP LTE RLC協(xié)議框架進行分析研究,然后介紹了RLC軟件系統(tǒng)的設(shè)計,最后給出了設(shè)計出的RLC軟件系統(tǒng)的功能測試結(jié)果。測試結(jié)果表明,所設(shè)計的RLC軟件系統(tǒng)功能齊全,符合RLC協(xié)議標準。
[關(guān)鍵詞]LTERLCTMUMAM
1引言
隨著市場寬帶無線接入技術(shù)需求的日益增長,第三代合作伙伴計劃(3GPP,3rd Generation Partnership Project)開始了3G長期演進計劃(LTE)。
在LTE協(xié)議棧層次結(jié)構(gòu)中,RLC層作為L2層之一,主要用于為上層提供不同數(shù)據(jù)鏈路類型的抽象。其中最主要的是提供可靠的數(shù)據(jù)傳輸鏈路,該鏈路類型用于屏蔽掉無線鏈路帶來的影響并為上層提供可靠的數(shù)據(jù)傳輸。RLC層通過使用不同的數(shù)據(jù)包收發(fā)處理機制(如分段和ARQ等)實現(xiàn)這些邏輯鏈路抽象。本文將對3GPP LTE的RLC協(xié)議進行分析并研究實現(xiàn)RLC協(xié)議的軟件系統(tǒng)方案,最后,通過對軟件系統(tǒng)的功能進行測試以驗證其完備性。
2LTE RLC協(xié)議研究
RLC層作為LTE協(xié)議棧L2層的協(xié)議之一,由多個RLC層實體組成,分別是TM發(fā)送實體、TM接收實體、UM發(fā)送實體、UM接收實體和AM實體等五個實體,如圖1所示:
RLC層通過這5個實體來進行無線鏈路的控制,并為上層提供三種不同特性的數(shù)據(jù)傳輸服務(wù),分別是TM(Transparent Mode)數(shù)據(jù)傳輸、UM(Unacknowledged Mode)數(shù)據(jù)傳輸和AM(AcknowIedged Mode)數(shù)據(jù)傳輸。
TM數(shù)據(jù)傳輸主要是以透傳的方式,不保證數(shù)據(jù)包的順序,以最短的時延傳遞到對端,主要適用于對時延敏感、不希望原始數(shù)據(jù)被分段,并且不需要下層保證數(shù)據(jù)包順序到達的業(yè)務(wù)。如上層信令、廣播消息、尋呼消息等。UM數(shù)據(jù)傳輸能夠保證數(shù)據(jù)按序傳遞給上層,并且能夠?qū)ι蠈訑?shù)據(jù)根據(jù)帶寬限制進行打包分段,以最短時延使數(shù)據(jù)包按序到達對端,主要適用于對時延敏感、但是允許一定丟包率的業(yè)務(wù),如VoIP等業(yè)務(wù)。AM數(shù)據(jù)傳輸以ARQ的方式為上層提供可靠的數(shù)據(jù)傳輸,保證數(shù)據(jù)正確地按序到達對端,主要適用于對時延不敏感、對錯誤敏感的業(yè)務(wù),如FTP業(yè)務(wù)、后臺業(yè)務(wù)、交互業(yè)務(wù)等。下面分別介紹三種傳輸模式的特性。
2.1TM傳輸模式
TM模式對于上層指示需要傳輸?shù)臄?shù)據(jù),不執(zhí)行任何操作,直接將上層PDU遞交給底層,并且不執(zhí)行對SDU進行打包、分段等功能。主要為上層提供BCCH、DL/UL CCCH和PCCH邏輯信道上的數(shù)據(jù)傳輸。
2.2UM傳輸模式
在發(fā)送端,UM發(fā)送實體通過其與上層協(xié)議棧之間的服務(wù)接入點將上層數(shù)據(jù)放入發(fā)送緩存中,然后根據(jù)下層給予的發(fā)送機會和提供的帶寬大小對發(fā)送緩存中的數(shù)據(jù)進行打包分段,最后加上RLC頭,通過DTCH邏輯信道發(fā)送出去。在接收端,由于下層具有HARQ的重傳功能,并且不提供重排序的功能,所以UM接收實體需要將由于下層重傳導(dǎo)致的亂序到達的數(shù)據(jù)包進行重排序,并完成解分段、解打包從而將數(shù)據(jù)包還原成原始的服務(wù)數(shù)據(jù)單元按序地交給上層。
在UM傳輸模式下,UM接收實體主要是用三個參數(shù)(VR(UH)、VR(UR)、VR(UX))記錄特定的PDU序列號以及一個定時器和接收窗口來對接收的數(shù)據(jù)進行控制,從而完成重排序、重組等功能。UM發(fā)送實體則主要進行打包、分段等操作,對應(yīng)地,UM接收實體需要進行解打包、解分段的操作。
2.3AM傳輸模式
AM實體包括發(fā)送部分和接收部分。在發(fā)送部分,AM實體將從上層傳來的服務(wù)數(shù)據(jù)單元(SDU)放入AM實體傳輸緩存,如果此時接收部分指示需要發(fā)送控制協(xié)議數(shù)據(jù)單元(PDU),AM實體發(fā)送部分則根據(jù)下層提供的發(fā)送機會和帶寬大小,首先發(fā)送控制PDU,然后對重傳緩存中的數(shù)據(jù)進行調(diào)度(必要時需要進行再分段),否則直接對重傳緩存中的數(shù)據(jù)進行調(diào)度;最后再對傳輸緩存中的新數(shù)據(jù)進行調(diào)度。發(fā)送部分調(diào)度出數(shù)據(jù)后,根據(jù)AM實體當前狀態(tài),決定是否需要加上輪詢位(polling),然后為調(diào)度出的數(shù)據(jù)加上RLC頭,發(fā)送給下層。
在接收部分,接收到RLC PDU后,若是控制PDU則根據(jù)其內(nèi)容,對重傳緩存中的數(shù)據(jù)做相應(yīng)的處理;若是數(shù)據(jù)PDU則將其放入接收窗口,進行重排序控制。然后在去除RLC子頭后,進行SDU的重組,最后按序?qū)DU遞交給上層。若接收部分發(fā)現(xiàn)RLC子頭中包含有輪詢位,則需要根據(jù)AM實體配置,觸發(fā)發(fā)送部分發(fā)送控制PDU。
在AM的傳輸模式下,AM實體的發(fā)送部分用四個參數(shù)(VT(A)、VT(S)、VT(MS)、POLL_SN)來記錄特定的發(fā)送PDU的序列號以及一個管理狀態(tài)PDU的定時器和管理輪詢的定時器的使用,從而完成對發(fā)送狀態(tài)PDU和輪詢以及發(fā)送窗口的控制。AM實體發(fā)送部分還需要進行打包、分段、再分段等操作。對應(yīng)地,接收部分則需要進行解打包、解分段的操作。
在接收端,AM實體的接收部分還需要用5個參數(shù)(VR(R)、VR(MR)、VR(X)、VR(MS)、VR(H))來記錄特定的PDU序列號以及一個定時器和接收窗口來對接收的數(shù)據(jù)進行控制,從而完成重排序、重組等功能以及與發(fā)送部分配合完成ARQ功能。
在AM模式中,由發(fā)送端和接收端共同完成ARQ過程。ARQ過程中的狀態(tài)PDU發(fā)送過程主要由管理狀態(tài)PDU的定時器以及接收窗中的定時器控制;ARQ過程中的輪詢發(fā)送過程則是由管理輪詢的定時器,以及從上次發(fā)送輪詢以來記錄的發(fā)送過的PDU個數(shù)和字節(jié)數(shù)來控制。
3RLC系統(tǒng)設(shè)計
3.1RLC層系統(tǒng)架構(gòu)設(shè)計
RLC軟件系統(tǒng)的設(shè)計即圍繞著上述定義的RLC軟件系統(tǒng)的功能需求開展。核心的設(shè)計思路和方法包括:
第一,符合標準的描述:包括內(nèi)容上的和行為上的定義,整個設(shè)計的目標和準則即RLC軟件系統(tǒng)的實現(xiàn)符合LTE標準定義。
第二,以特性實現(xiàn)為目標:RRC軟件系統(tǒng)復(fù)雜度高、內(nèi)容多,因此在設(shè)計和實現(xiàn)時以RRC軟件系統(tǒng)的特性的滿足為目標,在此過程中設(shè)計好相關(guān)部分的架構(gòu)、行為以及數(shù)據(jù)的定義等。
第三,保持設(shè)計的簡單、高效:在系統(tǒng)設(shè)計時進行邏輯功能、行為的描述和設(shè)定,在此過程中簡化系統(tǒng)的行為模式;而在考慮邏輯模型向?qū)崿F(xiàn)模型映射的時候,在保證邏輯概念完整性和一致性的基礎(chǔ)上,用盡量簡單的方式考慮實現(xiàn)時的具體行為和內(nèi)容。
最后,保持系統(tǒng)功能組件的獨立性:包括邏輯獨立性和實現(xiàn)獨立性。在進行系統(tǒng)架構(gòu)設(shè)計時,以獨立的邏輯功能實體為劃分模塊的原則。
RLC軟件系統(tǒng)的系統(tǒng)架構(gòu)和行為根據(jù)上述RLC的特點和設(shè)計準則進行分析和設(shè)計。根據(jù)RLC層系統(tǒng)功能需求分析,在系統(tǒng)設(shè)計時,按功能獨立性來劃分模塊,將整
個RLC子層劃分為6個模塊,分別為RLC管理模塊、TM模塊、UM模塊、AM模塊以及RLC發(fā)送和接收模塊。其中,RLC管理模塊主要完成控制面的功能,即負責整個系統(tǒng)的初始化、不同RLC實體的建立、刪除、配置功能;TM模塊完成對TM傳輸模式下的數(shù)據(jù)處理工作;UM模塊完成對UM傳輸模式下的數(shù)據(jù)處理工作;AM模塊完成對AM傳輸模式下的數(shù)據(jù)處理工作;RLC發(fā)送模塊完成將RLC PDU遞交給MAC層的工作;RLC接收模塊完成從底層接收RLC PDU并遞交給相應(yīng)模塊的工作。RLC軟件系統(tǒng)結(jié)構(gòu)如圖2所示:
3.2RLC層三種不同數(shù)據(jù)傳輸模式的設(shè)計
RLC層主要完成三種不同模式的數(shù)據(jù)傳輸服務(wù),因此,如何實現(xiàn)TM、UM以AAM模式下的數(shù)據(jù)傳輸服務(wù),是RLC設(shè)計中的重點。下面分別對這三種模式的設(shè)計進行分析。
(1)TM數(shù)據(jù)傳輸模式的設(shè)計
根據(jù)第2節(jié)中描述的TM模塊需要完成的功能,可設(shè)計一個過程,根據(jù)下層提供的邏輯信道號,到上層取得相應(yīng)的數(shù)據(jù)直接遞交給下層。
(2)UM數(shù)據(jù)傳輸模式的設(shè)計
根據(jù)第2節(jié)中描述的UM模塊需要完成的功能,可劃分為4個子模塊,分別為初始化子模塊、數(shù)據(jù)發(fā)送管理子模塊、接收窗口管理子模塊以及PDU解析和處理子模塊(圖3):
初始化子模塊:主要完成初始化由RRC配置的各個UM實體的功能,以及必要時UM實體的重建立、重配置等功能。
數(shù)據(jù)發(fā)送管理子模塊:主要完成對從RLC發(fā)送模塊收到的調(diào)度信息的處理,尋址到相應(yīng)的邏輯信道上的數(shù)據(jù),對RLC SDU進行分段和級聯(lián)操作后,生成RLC PDU。
接收窗口管理子模塊:主要提供對接收窗口的移動操作以及對上傳SDU做出決策。
PDU解析和處理子模塊:主要完成對當前收到的PDU進行解析,并將解析結(jié)果傳遞給接收窗口管理子模塊進行窗口的管理。根據(jù)解析的結(jié)果和接收窗口管理子模塊給出的決策,決定是否重組上傳。
(3)AM數(shù)據(jù)傳輸模式的設(shè)計
根據(jù)第2節(jié)中描述的AM模塊需要完成的功能,可劃分為6個子模塊,分別為初始化子模塊、數(shù)據(jù)發(fā)送管理子模塊、狀態(tài)控制子模塊,發(fā)送窗口管理子模塊、接收窗口管理子模塊、PDU解析和處理子模塊(圖4):
初始化子模塊:主要完成初始化由RRC配置的各個AM實體的功能,以及必要時RLC層AM實體的重建立、重配置等功能。
數(shù)據(jù)發(fā)送管理子模塊:主要完成對從RLC發(fā)送模塊收到的調(diào)度信息的處理,尋址到相應(yīng)的邏輯信道上的數(shù)據(jù),并且通過發(fā)送窗口子模塊返回的結(jié)果以及狀態(tài)控制子模塊返回的結(jié)果組成PDU頭中需要的信息,將其和尋址到的RLC SDU數(shù)據(jù)一起交給發(fā)送模塊。
狀態(tài)控制子模塊:主要完成PDU頭信息中的P字段的確定,以及對于收到P字段被置位的信息后,控制PDU的組建。此時需要接收窗口管理子模塊返回接收狀況,本子模塊根據(jù)返回的值進行狀態(tài)PDU的組建。
發(fā)送窗口管理子模塊:主要確定發(fā)送序列號和是否允許發(fā)送,以及發(fā)送窗口的移動操作。
接收窗口管理子模塊:主要提供對接收窗口的移動操作以及對上傳SDU做出決策,還有給狀態(tài)控制子模塊返回此時接收狀態(tài)。
PDU解析和處理子模塊:主要完成對當前收到的PDU進行解析,若是控制PDU,則將結(jié)果傳遞給數(shù)據(jù)發(fā)送管理模塊進行重傳數(shù)據(jù)的管理,同時將該結(jié)果傳遞給接收窗口管理子模塊進行窗口的管理;若是數(shù)據(jù)PDU,則根據(jù)接收窗口管理子模塊給出的決策,決定是否重組上傳。而后將解析出的是否需要發(fā)送狀態(tài)PDU的信息傳遞給狀態(tài)控制子模塊。
4功能測試
本文將設(shè)計的RLC層軟件系統(tǒng)加入到3GPP LTE eNB和UE系統(tǒng)中進行功能測試,測試場景參數(shù)配置如表1所示:
在上述測試場景下,通過控制發(fā)送數(shù)據(jù)包的速率和大小以及可用物理資源的大小,模擬不同的測試場景以測試不同的功能。測試表明,本文的RLC軟件系統(tǒng)包含但不限于表2所列功能:
5總結(jié)與展望
本文在對3GPP LTE RLC協(xié)議進行分析研究的基礎(chǔ)上,設(shè)計了一個簡單高效的3GPP L2層RLC軟件系統(tǒng),并將其加入到LTE eNB系統(tǒng)和UE系統(tǒng)的環(huán)境中,進行了功能測試。測試表明RLC軟件系統(tǒng)功能齊全、符合標準,并具有良好的健壯性、穩(wěn)定性。
下一步工作的重點是研究RLC層各模式中的不同參數(shù)對系統(tǒng)性能的影響,提出對應(yīng)于不同鏈路狀況的RLC層的參數(shù)配置,以應(yīng)對不同的QoS需求。