施淵籍 張玉成 石晶林
[摘要]文章首先對3GPP LTE RLC協議框架進行分析研究,然后介紹了RLC軟件系統的設計,最后給出了設計出的RLC軟件系統的功能測試結果。測試結果表明,所設計的RLC軟件系統功能齊全,符合RLC協議標準。
[關鍵詞]LTERLCTMUMAM
1引言
隨著市場寬帶無線接入技術需求的日益增長,第三代合作伙伴計劃(3GPP,3rd Generation Partnership Project)開始了3G長期演進計劃(LTE)。
在LTE協議棧層次結構中,RLC層作為L2層之一,主要用于為上層提供不同數據鏈路類型的抽象。其中最主要的是提供可靠的數據傳輸鏈路,該鏈路類型用于屏蔽掉無線鏈路帶來的影響并為上層提供可靠的數據傳輸。RLC層通過使用不同的數據包收發處理機制(如分段和ARQ等)實現這些邏輯鏈路抽象。本文將對3GPP LTE的RLC協議進行分析并研究實現RLC協議的軟件系統方案,最后,通過對軟件系統的功能進行測試以驗證其完備性。
2LTE RLC協議研究
RLC層作為LTE協議棧L2層的協議之一,由多個RLC層實體組成,分別是TM發送實體、TM接收實體、UM發送實體、UM接收實體和AM實體等五個實體,如圖1所示:

RLC層通過這5個實體來進行無線鏈路的控制,并為上層提供三種不同特性的數據傳輸服務,分別是TM(Transparent Mode)數據傳輸、UM(Unacknowledged Mode)數據傳輸和AM(AcknowIedged Mode)數據傳輸。
TM數據傳輸主要是以透傳的方式,不保證數據包的順序,以最短的時延傳遞到對端,主要適用于對時延敏感、不希望原始數據被分段,并且不需要下層保證數據包順序到達的業務。如上層信令、廣播消息、尋呼消息等。UM數據傳輸能夠保證數據按序傳遞給上層,并且能夠對上層數據根據帶寬限制進行打包分段,以最短時延使數據包按序到達對端,主要適用于對時延敏感、但是允許一定丟包率的業務,如VoIP等業務。AM數據傳輸以ARQ的方式為上層提供可靠的數據傳輸,保證數據正確地按序到達對端,主要適用于對時延不敏感、對錯誤敏感的業務,如FTP業務、后臺業務、交互業務等。下面分別介紹三種傳輸模式的特性。
2.1TM傳輸模式
TM模式對于上層指示需要傳輸的數據,不執行任何操作,直接將上層PDU遞交給底層,并且不執行對SDU進行打包、分段等功能。主要為上層提供BCCH、DL/UL CCCH和PCCH邏輯信道上的數據傳輸。
2.2UM傳輸模式
在發送端,UM發送實體通過其與上層協議棧之間的服務接入點將上層數據放入發送緩存中,然后根據下層給予的發送機會和提供的帶寬大小對發送緩存中的數據進行打包分段,最后加上RLC頭,通過DTCH邏輯信道發送出去。在接收端,由于下層具有HARQ的重傳功能,并且不提供重排序的功能,所以UM接收實體需要將由于下層重傳導致的亂序到達的數據包進行重排序,并完成解分段、解打包從而將數據包還原成原始的服務數據單元按序地交給上層。
在UM傳輸模式下,UM接收實體主要是用三個參數(VR(UH)、VR(UR)、VR(UX))記錄特定的PDU序列號以及一個定時器和接收窗口來對接收的數據進行控制,從而完成重排序、重組等功能。UM發送實體則主要進行打包、分段等操作,對應地,UM接收實體需要進行解打包、解分段的操作。
2.3AM傳輸模式
AM實體包括發送部分和接收部分。在發送部分,AM實體將從上層傳來的服務數據單元(SDU)放入AM實體傳輸緩存,如果此時接收部分指示需要發送控制協議數據單元(PDU),AM實體發送部分則根據下層提供的發送機會和帶寬大小,首先發送控制PDU,然后對重傳緩存中的數據進行調度(必要時需要進行再分段),否則直接對重傳緩存中的數據進行調度;最后再對傳輸緩存中的新數據進行調度。發送部分調度出數據后,根據AM實體當前狀態,決定是否需要加上輪詢位(polling),然后為調度出的數據加上RLC頭,發送給下層。
在接收部分,接收到RLC PDU后,若是控制PDU則根據其內容,對重傳緩存中的數據做相應的處理;若是數據PDU則將其放入接收窗口,進行重排序控制。然后在去除RLC子頭后,進行SDU的重組,最后按序將SDU遞交給上層。若接收部分發現RLC子頭中包含有輪詢位,則需要根據AM實體配置,觸發發送部分發送控制PDU。
在AM的傳輸模式下,AM實體的發送部分用四個參數(VT(A)、VT(S)、VT(MS)、POLL_SN)來記錄特定的發送PDU的序列號以及一個管理狀態PDU的定時器和管理輪詢的定時器的使用,從而完成對發送狀態PDU和輪詢以及發送窗口的控制。AM實體發送部分還需要進行打包、分段、再分段等操作。對應地,接收部分則需要進行解打包、解分段的操作。
在接收端,AM實體的接收部分還需要用5個參數(VR(R)、VR(MR)、VR(X)、VR(MS)、VR(H))來記錄特定的PDU序列號以及一個定時器和接收窗口來對接收的數據進行控制,從而完成重排序、重組等功能以及與發送部分配合完成ARQ功能。
在AM模式中,由發送端和接收端共同完成ARQ過程。ARQ過程中的狀態PDU發送過程主要由管理狀態PDU的定時器以及接收窗中的定時器控制;ARQ過程中的輪詢發送過程則是由管理輪詢的定時器,以及從上次發送輪詢以來記錄的發送過的PDU個數和字節數來控制。
3RLC系統設計
3.1RLC層系統架構設計
RLC軟件系統的設計即圍繞著上述定義的RLC軟件系統的功能需求開展。核心的設計思路和方法包括:
第一,符合標準的描述:包括內容上的和行為上的定義,整個設計的目標和準則即RLC軟件系統的實現符合LTE標準定義。
第二,以特性實現為目標:RRC軟件系統復雜度高、內容多,因此在設計和實現時以RRC軟件系統的特性的滿足為目標,在此過程中設計好相關部分的架構、行為以及數據的定義等。
第三,保持設計的簡單、高效:在系統設計時進行邏輯功能、行為的描述和設定,在此過程中簡化系統的行為模式;而在考慮邏輯模型向實現模型映射的時候,在保證邏輯概念完整性和一致性的基礎上,用盡量簡單的方式考慮實現時的具體行為和內容。
最后,保持系統功能組件的獨立性:包括邏輯獨立性和實現獨立性。在進行系統架構設計時,以獨立的邏輯功能實體為劃分模塊的原則。
RLC軟件系統的系統架構和行為根據上述RLC的特點和設計準則進行分析和設計。根據RLC層系統功能需求分析,在系統設計時,按功能獨立性來劃分模塊,將整
個RLC子層劃分為6個模塊,分別為RLC管理模塊、TM模塊、UM模塊、AM模塊以及RLC發送和接收模塊。其中,RLC管理模塊主要完成控制面的功能,即負責整個系統的初始化、不同RLC實體的建立、刪除、配置功能;TM模塊完成對TM傳輸模式下的數據處理工作;UM模塊完成對UM傳輸模式下的數據處理工作;AM模塊完成對AM傳輸模式下的數據處理工作;RLC發送模塊完成將RLC PDU遞交給MAC層的工作;RLC接收模塊完成從底層接收RLC PDU并遞交給相應模塊的工作。RLC軟件系統結構如圖2所示:

3.2RLC層三種不同數據傳輸模式的設計
RLC層主要完成三種不同模式的數據傳輸服務,因此,如何實現TM、UM以AAM模式下的數據傳輸服務,是RLC設計中的重點。下面分別對這三種模式的設計進行分析。
(1)TM數據傳輸模式的設計
根據第2節中描述的TM模塊需要完成的功能,可設計一個過程,根據下層提供的邏輯信道號,到上層取得相應的數據直接遞交給下層。
(2)UM數據傳輸模式的設計
根據第2節中描述的UM模塊需要完成的功能,可劃分為4個子模塊,分別為初始化子模塊、數據發送管理子模塊、接收窗口管理子模塊以及PDU解析和處理子模塊(圖3):

初始化子模塊:主要完成初始化由RRC配置的各個UM實體的功能,以及必要時UM實體的重建立、重配置等功能。
數據發送管理子模塊:主要完成對從RLC發送模塊收到的調度信息的處理,尋址到相應的邏輯信道上的數據,對RLC SDU進行分段和級聯操作后,生成RLC PDU。
接收窗口管理子模塊:主要提供對接收窗口的移動操作以及對上傳SDU做出決策。
PDU解析和處理子模塊:主要完成對當前收到的PDU進行解析,并將解析結果傳遞給接收窗口管理子模塊進行窗口的管理。根據解析的結果和接收窗口管理子模塊給出的決策,決定是否重組上傳。
(3)AM數據傳輸模式的設計
根據第2節中描述的AM模塊需要完成的功能,可劃分為6個子模塊,分別為初始化子模塊、數據發送管理子模塊、狀態控制子模塊,發送窗口管理子模塊、接收窗口管理子模塊、PDU解析和處理子模塊(圖4):

初始化子模塊:主要完成初始化由RRC配置的各個AM實體的功能,以及必要時RLC層AM實體的重建立、重配置等功能。
數據發送管理子模塊:主要完成對從RLC發送模塊收到的調度信息的處理,尋址到相應的邏輯信道上的數據,并且通過發送窗口子模塊返回的結果以及狀態控制子模塊返回的結果組成PDU頭中需要的信息,將其和尋址到的RLC SDU數據一起交給發送模塊。
狀態控制子模塊:主要完成PDU頭信息中的P字段的確定,以及對于收到P字段被置位的信息后,控制PDU的組建。此時需要接收窗口管理子模塊返回接收狀況,本子模塊根據返回的值進行狀態PDU的組建。
發送窗口管理子模塊:主要確定發送序列號和是否允許發送,以及發送窗口的移動操作。
接收窗口管理子模塊:主要提供對接收窗口的移動操作以及對上傳SDU做出決策,還有給狀態控制子模塊返回此時接收狀態。
PDU解析和處理子模塊:主要完成對當前收到的PDU進行解析,若是控制PDU,則將結果傳遞給數據發送管理模塊進行重傳數據的管理,同時將該結果傳遞給接收窗口管理子模塊進行窗口的管理;若是數據PDU,則根據接收窗口管理子模塊給出的決策,決定是否重組上傳。而后將解析出的是否需要發送狀態PDU的信息傳遞給狀態控制子模塊。
4功能測試
本文將設計的RLC層軟件系統加入到3GPP LTE eNB和UE系統中進行功能測試,測試場景參數配置如表1所示:

在上述測試場景下,通過控制發送數據包的速率和大小以及可用物理資源的大小,模擬不同的測試場景以測試不同的功能。測試表明,本文的RLC軟件系統包含但不限于表2所列功能:

5總結與展望
本文在對3GPP LTE RLC協議進行分析研究的基礎上,設計了一個簡單高效的3GPP L2層RLC軟件系統,并將其加入到LTE eNB系統和UE系統的環境中,進行了功能測試。測試表明RLC軟件系統功能齊全、符合標準,并具有良好的健壯性、穩定性。
下一步工作的重點是研究RLC層各模式中的不同參數對系統性能的影響,提出對應于不同鏈路狀況的RLC層的參數配置,以應對不同的QoS需求。