許文博,張治中,賀 姿
(1.重慶郵電大學 通信網與測試技術重點實驗室,重慶 400065;2. 民航東北地區空中交通管理局技術保障中心,遼寧 沈陽 100169)
LTE-A空口監測儀表中PDCP協議的設計與實現
許文博1,張治中1,賀 姿2
(1.重慶郵電大學 通信網與測試技術重點實驗室,重慶 400065;2. 民航東北地區空中交通管理局技術保障中心,遼寧 沈陽 100169)
基于LTE-A空中接口協議棧,設計了一種新型的LTE-A空口監測儀表,重點剖析了LTE-A空口監測儀表硬件架構和邏輯架構的設計方案,并闡明了PDCP協議數據結構、PDCP發送實體數據處理流程、PDCP接收實體數據處理流程的設計思想。經過實際開發驗證,該儀表達到了預期的功能要求,且PDCP協議的設計思想成功運用于該儀表中,證明了數據處理流程設計的合理性。
LTE-A;空口監測儀表;PDCP協議
隨著LTE-A網絡的商用,運營商對新型的無線網絡優化和分析儀表需求十分迫切。由于LTE-A網絡在架構上進行了演進,使得3G網絡的NodeB和RNC網元整合成為eNodeB,因此3G網絡中Iub接口監測的信令和數據則需要在LTE-A網絡的空中接口進行實時采集與監測,這極大地增加了LTE-A空口監測類儀表的技術復雜度。
目前,在國內LTE-A信令監測類儀表領域,已先后有世紀鼎利、中創信測等公司成功開發出相應的測試儀表,并已經投入商用。該類儀表均針對LTE-A網絡相關接口或是測試集的設計和開發,同時開展了測試儀表關鍵技術攻關方向的研究,為實現LTE-A空口監測儀表奠定了基礎。
本文在現有LTE-A信令監測類儀表的基礎上,設計了一種新型的LTE-A空口監測儀表。LTE-A空口監測儀表的研發主要完成對儀表總體架構的設計,并重點實現LTE-A空中接口協議棧的功能,保證空口協議棧的實時監測和跨層關聯分析,并進行網絡指標統計、網絡優化分析、用戶業務行為分析,從而提供更加全面的空口信令分析功能,簡單、精確、快速地診斷出LTE-A網絡的性能和服務質量[1-2]。
1.1 LTE-A空口監測儀表簡介
LTE-A空口監測儀表是對LTE-A網絡空中接口的信令和數據進行采集和分析的儀器。
LTE-A空口監測儀表主要完成對LTE-A空口L1、L2、L3層協議棧的監測和跨層關聯分析,采取實時跟蹤方式監測多用戶的業務建立、信令過程和數據流量,分析用戶業務行為及網絡問題。
LTE-A空口監測技術的基本原理:在UE與eNodeB進行通信的過程中,LTE-A空口監測儀表同時接收空中接口上下行的信令和數據,完成對信令和數據的采集,并通過對空口信令和數據的解碼、合成、關聯、統計等一系列信令監測技術呈現出空中接口的詳細通信過程[3-4]。
1.2 LTE-A空口監測儀表的硬件架構設計
LTE-A空口監測儀表的硬件架構設計如圖1所示。

圖1 LTE-A空口監測儀表的硬件架構
儀表的硬件平臺主要包括:
1)射頻板卡:采集射頻數據。
2)基帶板板卡:將射頻的原始數據(即IQ數據)恢復成比特流數據,并將比特流數據封裝成PCIE 2.0協議幀。
3)協議板板卡:對空中接口的MAC層、RLC層、PDCP層進行協議棧分析和數據處理[5]。
LTE-A空口監測儀表采用FPGA+DSP的硬件設計方案。在本方案中,AD936x為射頻芯片,ZC7045為FPGA芯片,66AK2H為DSP芯片。DDR3,FLASH,USB/串口是FPGA和DSP的外圍芯片,與FPGA和DSP芯片共同構成SOPC片上系統[6-7]。
本方案同時在FPGA和DSP芯片上采用了SOPC片上系統的設計方式,即在FPGA和DSP芯片上都搭載了嵌入式Linux操作系統。嵌入式Linux操作系統完成對AD936x,FPGA,DSP等芯片硬件參數的配置,同時管理固態硬盤上的IQ數據,另外用戶可以通過USB/串口調試板卡上的數據。
LTE-A網絡空中接口的數據在硬件平臺中的處理流程如下:
1)LTE-A空口數據通過AD936x芯片的A/D采樣轉換為IQ數據,并通過LVDS接口傳遞到FPGA芯片。
2)FPGA芯片將IQ數據復制成2份,一份通過基帶處理恢復成比特流數據,并通過PCIE 2.0 X1接口傳遞給DSP芯片;另一份通過NGFF接口傳遞給固態硬盤SSD,SSD存儲不少于10 min的IQ數據。
3)DSP芯片接收比特流數據進行協議棧數據處理,并通過PCIE 2.0 X2接口將數據傳遞給上層進行處理。
1.3 LTE-A空口監測儀表的邏輯架構設計
LTE-A網絡空中接口的數據在邏輯上的處理流程如下:
1)LTE-A空口監測儀表從PHY層多個載波分量上接收射頻端傳輸的IQ數據,然后進行多天線和資源映射的MIMO解碼、數據解調和信道解碼等操作,將空口原始數據恢復成比特流數據,并傳送至MAC層。
2)MAC層接收多個載波分量的比特流數據,根據主同步信號(Primary Synchronization Signal,PSS)和輔同步信號(Secondary Synchronization Signal,SSS)的相關內容,對載波分量的比特流數據進行解復用操作,剝離MAC首部,將MAC PDU恢復成MAC SDU,并傳輸至RLC層。
3)RLC層對MAC層上傳的RLC PDU進行RLC首部剝離操作,通過級聯,形成適當大小的RLC SDU,并傳輸至PDCP層;同時,RLC層還控制錯誤接收的RLC PDU的重傳,并丟棄重復的RLC PDU。
4)PDCP層接收RLC層上傳的PDCP PDU數據,剝離PDCP首部,將PDCP PDU恢復成PDCP SDU數據;并對PDCP SDU進行解密和頭解壓操作,恢復成IP數據包,以供上層應用軟件分析和處理。
LTE-A空口監測儀表的邏輯架構設計如圖2所示。

圖2 LTE-A空口監測儀表的邏輯架構
2.1 PDCP協議簡介
PDCP協議位于LTE-A網絡空中接口協議棧的L2層,PDCP實體位于PDCP子層,PDCP實體的功能如圖3所示。

圖3 PDCP實體的功能
PDCP協議主要支持以下功能:1)數據傳輸;2)對IP數據包進行頭壓縮與解壓縮;3)對用戶/控制平面數據進行加密與解密;4)對控制平面數據進行完整性保護與完整性驗證;5)維護PDCP SN序列號值;6)按序傳遞上層PDU;7)定時丟棄與副本丟棄[8-10]。
2.2 PDCP協議的數據結構
PDCP協議的消息格式可以簡單劃分為3種形式,分別是:
1)攜帶信令無線承載(Signalling Radio Bearer carrying control plane data,SRB)數據;
2)攜帶映射到RLC確認模式(Acknowledged Mode,AM)的DRB數據;
3)攜帶映射到RLC非確認模式(Unacknowledged Mode,UM)的DRB數據。
上述3種形式反映了PDCP實體傳輸的無線承載(Radio Bearer,RB)類型以及RB所對應的RLC層傳輸模式的不同,由此也造成了PDCP協議在協議棧設計的過程中有所區別,但總體上的設計趨于一致。因此,本文僅以攜帶映射到RLC AM的DRB數據為例,詳細介紹PDCP協議的設計思想與數據處理流程。
PDCP協議數據結構的設計主要是對PDCP SDU與PDCP PDU的數據結構進行定義。
PDCP SDU的數據結構定義如下:
struct pdcp_sdu
{
struct pdcp_sdu *next;
void *pData;
uint32 sdu_length;
uint8 sn;
}pdcp_sdu;
其中,struct pdcp_sdu *next表示指向下一個SDU;void*pData指向PDCP SDU中的有效載荷;uint32 sdu_length定義了該PDCP SDU的數據長度;uint8 sn定義了PDCP序列號值[11]。
PDCP PDU的數據結構定義如下:
struct pdcp_pdu
{
struct pdcp_pdu *next;
void *pData;
uint32 pdu_length;
uint8 head_length;
}pdcp_pdu;
其中,struct pdcp_pdu *next表示指向下一個PDU;void*pData指向PDCP PDU中的有效載荷;uint32 pdu_length定義了該PDCP PDU的數據包長度; uint8 head_length定義了該PDCP PDU的頭部信息長度。
2.3 PDCP發送實體的數據處理流程
PDCP發送實體的主要功能是頭壓縮、完整性保護、加密,并將PDCP SDU轉換為PDCP PDU。PDCP發送實體數據處理流程的設計思想如圖4和圖5所示,在主程序中,采用2個線程同時進行PDCP發送實體的數據處理。線程1主要負責將接收到的PDCP SDU放入緩存隊列中,并對SN值進行關聯;線程2主要負責從緩存隊列中取出PDCP SDU,并進行頭壓縮、完整性保護、加密、添加頭部信息封裝成PDCP PDU。

圖4 PDCP發送實體線程1的數據處理流程

圖5 PDCP發送實體線程2的數據處理流程
線程1的具體工作流程如下:
1)判斷是否接收到PDCP SDU,若接收到PDCP SDU則執行步驟2),否則繼續執行步驟1)。
2)根據sdu_length的值分配緩存隊列中的緩存地址空間,將PDCP SDU放入緩存隊列中。
3)關聯SN值,SN=SN+1。
4)判斷SN是否大于最大序列號值,若大于則令SN=0,否則執行步驟5)。
5)判斷是否所有的PDCP SDU均入隊列,若是則標志位flag置1,否則返回步驟2)繼續執行。
線程2的具體工作流程如下:
1)判斷緩存隊列是否為空。若不為空則執行步驟2);否則判斷標志位flag是否為1,若是則結束流程,否則等待一段合適的時間再執行步驟1)。
2)取緩存隊列中的PDCP SDU。
3)針對用戶平面數據包、控制平面數據包分別調用頭壓縮或完整性保護算法。
4)調用加密算法,對數據包進行加密操作。
5)根據SN值構造PDCP頭部信息。
6)添加PDCP頭部,將PDCP SDU封裝成PDCP PDU。
7)將PDCP PDU遞交給RLC層。
2.4 PDCP接收實體的數據處理流程
PDCP接收實體的主要功能是將PDCP PDU轉換為PDCP SDU,并進行解密、解頭壓縮、重排序、按序遞交PDCP SDU。PDCP接收實體數據處理流程的設計思想如圖6所示,在主程序中,同樣采用2個線程同時進行PDCP協議數據的處理。線程1主要負責將接收到的PDCP PDU放入緩存隊列中;線程2主要負責從緩存隊列中取出PDCP PDU,去PDCP PDU頭部恢復成PDCP SDU,進行解密、解頭壓縮操作,并對PDCP SDU進行重排序及按序遞交PDCP SDU給上層。

圖6 PDCP接收實體的數據處理流程
線程1與線程2的整體工作流程如下:
1)判斷是否接收到PDCP PDU,若接收到PDCP PDU則執行步驟2),否則繼續執行步驟1)。
2)根據sdu_length的值分配緩存隊列中的緩存地址空間,將PDCP PDU放入緩存隊列中。
3)判斷SN值是否大于重排窗口值,若是則丟棄數據包,否則執行步驟4)。
4)判斷是否重復接收到SN值,若是則丟棄數據包,否則執行步驟5)。
5)取緩存隊列中的PDCP PDU。
6)去除PDCP PDU的頭部信息,將PDCP PDU恢復成PDCP SDU,并將PDCP SDU放入發送緩沖隊列中。
7)調用解密算法,對數據包進行解密操作。
8)調用解頭壓縮算法,對數據包進行解頭壓縮操作。
9)按照SN值大小將發送隊列中PDCP SDU進行重排序。
10)按序遞交PDCP SDU給上層。
本文針對運營商在LTE-A網絡的建設、優化、維護等過程中對測試儀表的迫切需求,設計了一種新型的LTE-A空口監測儀表,并提出了LTE-A空中接口PDCP協議的設計方案。首先,介紹了LTE-A空口監測儀表硬件架構和邏輯架構的設計方案;然后,介紹了PDCP協議數據結構、PDCP發送實體數據處理流程、PDCP接收實體數據處理流程等的設計思想。最后,經過現網測試驗證,該儀表能夠實時采集 LTE-A 空中接口的信令和數據,并對空口協議棧進行智能監測,滿足運營商對網絡指標統計、網絡優化分析、用戶業務行為分析的功能需求。
[1] 李艷, 張治中. LTE網絡S1AP監測方案的研究與實現[J]. 電信科學,2013(1):31-38.
[2] 程方, 楊力, 黃建,等. LTE網絡GTPv2協議監測技術的設計與實現[J]. 電信科學,2012(6):86-90.
[3] FLUET M,MANZI J.Firmware development methodologies for synthetic test instrumentation[C]//Proc. Autotestcon. [S.l.]:IEEE Press,2014:153-158.
[4] QC-H-001-2012,TD-LTE空口監測儀表技術規范[S].2012.
[5] CHEN F, SHI L. Design and implementation of primitive tracking for TD-LTE wireless integrated testing instrument[C]// Proc. IEEE 2nd International Conference on Computing, Control and Industrial Engineering (CCIE). [S.l.]:IEEE Press,2011: 186-189.
[6] 王明. 綜測儀中面向LTE-A的基帶處理板卡的設計與實現[D].北京:北京郵電大學,2014.
[7] 許喆. TD-LTE綜測儀中基帶板DSP的部分接口的研究與實現[D].北京:北京郵電大學,2010.
[8] 3GPP TS 36.323, Evolved Universal Terrestrial Radio Access (E-UTRA);Packet Data Convergence Protocol (PDCP) specification [S].2009.
[9] 孫遠欣, 杭小飛, 孫雪梅. LTE系統中PDCP子層功能研究[J]. 現代電子技術,2011,34(7):44-48.
[10] 劉輝, 宋健霖. LTE協議棧中PDCP層研究與設計[J].重慶郵電大學學報:自然科學版,2011,23(1):6-10.
[11] 何蘇勤, 翟海超. LTE空中接口協議棧的研究與實現[J].計算機工程與設計,2013,34(1):76-80.
許文博(1992— ),碩士生,主研通信網測試技術;
張治中(1972— ),博士生導師,主要研究方向為第三代移動通信測試技術、寬帶信息網絡、NGN網絡等;
賀 姿(1984— ),女,碩士,主研異構網絡的無縫接入技術,空間信息網動態拓撲控制算法。
責任編輯:閆雯雯
Design and Implementation of PDCP Protocol in LTE-A Air Interface Monitoring Instrumentation
XU Wenbo1, ZHANG Zhizhong1, HE Zi2
(1.KeyLaboratoryonCommunicationNetworksandTestingTechnology,ChongqingUniversityofPostsandTelecommunications,Chongqing400065,China; 2.TechnicalSupportCenterofAirTrafficManagementBureauofCAACinNortheastChina,Shenyang100169,China)
Based on LTE-A air interface protocol stack, a new LTE-A air interface monitoring instrumentation is designed, the design of hardware and logical architecture in LTE-A air interface monitoring instrumentation is mainly analyzed, and the design idea of PDCP protocol data structure, data processing flow of PDCP transmitting entity, data processing flow of PDCP receiving entity are clarified. After the verification of actual development, the instrumentation achieves the desired functional requirements, and the design idea of PDCP protocol applies to the instrumentation successfully and proves the rationality of the data processing flow.
LTE-A; air interface monitoring instrumentation; PDCP protocol
國家科技重大專項(2015ZX03001013);重慶高校創新團隊項目(KJTD201312)
TN929.5
A
10.16280/j.videoe.2015.17.016
2015-05-05
【本文獻信息】許文博,張治中,賀姿.LTE-A空口監測儀表中PDCP協議的設計與實現[J].電視技術,2015,39(17).