LTE協議棧軟件分析測試方法
因此需要編寫能夠解析MAC/PHY API的wireshark網絡封包軟件的插件程序,使得wireshark能夠顯示兩層接口之間交互的信息,如圖3所示。本文引用地址:http://www.104case.com/article/201702/338695.htm
圖3 MAC/PHY API解析
2.4 udp socket發送機制
在測試L2/L3層時,可先用以太網模擬PHY層,網關程序、基站協議棧程序、終端協議棧程序、網絡封包捕獲解析程序分別各自運行在一臺計算機中,通過udpsocket編程來發送MAC層協議數據包,同時將RRC、PD-CP、RLC、MAC層的協議數據包通過udp socket編程抄送至網絡封包捕獲程序,網絡封包捕獲程序則監視設定的udp端口來抓取數據。
2.5調試信息顯示
2.5.1打印位置
調試信息的打印是測試的關鍵。LTE系統中傳輸時間間隔(TTI)被定義為1 ms,也就是說1 ms內需要將調度或者收發數據完全處理,每個子幀都有可能需要打印調試信息,將帶給硬件不小的壓力。在單獨測試L2/L3層協議時,可以在計算機上運行程序,目前大部分計算機的性能可以滿足需求,因此調試信息可以直接在窗口中打印。當加入L1層進行集成測試時,嵌入式開發板資源相對比較短缺,大量的I/O操作會嚴重占用CPU使用率,而CPU與以太網卡的交互速率更快。這里使用的PHY層開發板為飛思卡爾公司生產的BSC9131,專門用于開發家庭基站,CPU為單核1 GHz,打印信息較多時經常會導致開發板掛掉,解決的方法是應用udpsocket發送機制將調試信息通過以太網發送到計算機,計算機中則編寫簡單的wireshark解析插件后進行捕獲解析。此方法經過實際項目檢驗有效可行,沒有再出現掛掉的情況。
2.5.2模塊化多色打印
直接在計算機上顯示時,采用在程序中開發相應的專用打印模塊的方法,不同的優先級打印信息顯示不同的顏色,并且能夠顯示程序運行的狀態、出錯的位置。
在與L1層集成測試時,同樣可以選擇多彩化打印。
wireshark支持不同的協議或者端口顯示不同的顏色,只需要簡單的設置即可,這給我們調試提供了便利。應用這種方式,在調試信息繁多時可以極大的提高調試效率。圖4為wireshark主窗口多色顯示的結果,從圖4中可見,視覺效果十分明顯。
圖4 wireshark多彩調試信息
3測試場景及結果
3.1 L2/L3層
該場景下,協議棧程序運行在計算機上,由以太網模擬PHY層。在網關側和終端側分別建立一個虛擬網卡用來模擬IP層。圖5是一個終端附著過程的wire-shark抓包解析圖,終端附著成功后,使用開源網絡性能測試工具iperf向該socket發送指定速率的數據流。上行數據通路為:iperf客戶端→終端虛擬網卡→終端協議棧→基站協議棧→服務網關→iperf服務器端;下行數據通路為:iperf客戶端→服務網關→基站協議棧→終端協議棧→終端虛擬網卡→iperf服務器端。iperf可以報告帶寬,延遲抖動和數據包丟失,客戶端程序用于發送數據,服務器端程序用于接收數據,通過簡單的命令行參數即可實現,示例如下:
圖5 終端附著信令過程
3.2 L1/L2/L3層
L2/L3層場景完成后,即可將L1層加進來,進行真實情況下的測試。在項目中采用了業界普遍使用的艾法斯公司生產的TM500 LTE測試終端,基站側L1層采用飛思卡爾公司的BSC9131處理器開發板。計算機通過PPPoE(Point-to-point Protocol over Ethernet)協議連接TM500,便可在計算機上使用iperf工具初步測試基站的性能。經過實際調試過程的檢驗,本文所述方案有效可行。
4結語
協議棧軟件的測試需要清晰的數據流程。本文測試環境搭建簡易,在與L1層集成調試時,將所有打印信息發送到wireshark軟件解析顯示,并且可以根據端口顯示不同的顏色,協議數據狀態一目了然,問題定位快捷方便,為調試協議棧軟件系統時提供了很大的支持。另外,本文所述的測試環境不局限于上述,當在開發中缺少基站(終端)協議棧時,可在相應接收函數處構包模擬終端(基站)來達到測試的目的。同時,也可擴展到其他通信協議的測試,具有一定的推廣性。
評論