日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

srsLTE安装、运行及测试

發布時間:2024/3/12 编程问答 121 豆豆
生活随笔 收集整理的這篇文章主要介紹了 srsLTE安装、运行及测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【轉載】原創博客地址:http://blog.csdn.net/jipengwang/article/details/79451879

前言

?????? 進入研究生階段,就開始從事軟件無線電(SDR)方向的學習及研究,到目前為止,接觸過Amarisoft LTE100、Openairinterface、srsLTE、OpenBTS等SDR系統。實驗室師兄們在基于OpenAirInterface(OAI)平臺上做過較多的開發,也積累了相關的經驗,想進一步了解SDR技術的,可以參考http://blog.csdn.net/jxwxg/article/details/53446841(實驗室大牛寫的SDR基本原理,簡潔易懂)。

? ? ? ?OAI 功能非常強大,其按照3GPP LTE協議實現了UE、eNB以及EPC全協議棧的功能,目前已經支持到Release10版本,且在不斷更新中。但是,OAI平臺功能太過復雜,從而導致其運行及配置的時候,都比較麻煩,比如OAI EPC的運行,需要分別單獨運行HSS、MME以及SPGW三個模塊,且配置也是需要單獨進行配置的,所以過程上,比較繁瑣。

?????? 接觸SRS,是在去年年初,當時srsLTE只開源了全協議棧的UE,eNB,還包括一個下行的PDSCH,沒有EPC的功能,而且其srsUE、srseNB運行的時候,必須要接EPC,所以使用起來,還需要找第三方的EPC才能夠使用,但是在2018年,srs開源了EPC模塊,且配置及使用非常簡單,即不再需要使用第三方的EPC,即可搭建完整的LTESDR系統。

?????? 下面對srsLTE的功能、環境搭建以及配置進行一個整體上的介紹~

srsLTE簡介

?????? srsLTE是由愛爾蘭SoftwareRadioSystems (SRS)公司開發實現的免費開源LTE SDR平臺,在AGPLv3 license許可下發布,并且在實現中使用了OpenLTE的相關功能。SrsLTE的開源過程大致經歷了三個階段:

(1)srsLTE包含全協議棧的UE(srsUE)以及一個物理層下行鏈路的收發鏈路,該階段可以使用第三方(如OAI)的eNB以及EPC來搭建LTE SDR系統;

(2)srsLTE開源了srseNB,即srs具備了全協議棧的eNB以及UE,沒有EPC,因此需要使用第三方(如Amarisoft)的EPC,搭建LTE SDR的整個網絡,實驗室師兄有進行過該階段的性能測試,可以參考http://blog.csdn.net/jxwxg/article/details/73603577;

(3)srsLTE開源了srsEPC,即核心網功能,且一如往常的代碼簡潔,配置簡單,使用方便,到目前為止,既可以通過srsLTE搭建完整的LTE網絡。

目前的srsLTE開源代碼在Github上管理,鏈接為https://github.com/srsLTE/srsLTE,其代碼主要分為三個模塊,即srsUE、srseNB、srsEPC,另外還包括一些底層的庫函數:

? ? ? ?srsUE:實現了物理層到IP層的LTE SDR平臺;

? ? ? ?srseNB:全協議棧的LTE eNodeB SDR平臺;

?????? srsEPC:輕量級的LTE核心網實現平臺,包括HSS、MME以及S/P-GW;

? ? ? ?lib:一套模塊化的通用庫,包括PHY、MAC、RLC、NAS、S1AP以及GW各層。

下面簡單介紹srsLTE整個模塊的性能特征,主要包含以下四個部分:

? ? ? ?srsLTE共有特征:

? ? ? ? ? ? (1)支持Realease8(兼容一些Realease9的功能);

? ? ? ? ? ? (2)支持FDD;

? ? ? ? ? ? (3) 測試帶寬:1.4MHz、3MHz、5MHz、10MHz、15MHz以及20MHz;

? ? ? ? ? ? (4) 傳輸模式1(單天線),2(發射分集),3(CCD),4(閉環空間復用);

? ? ? ? ? ? (5)采用指令集對Turbo編譯碼進行加速;

? ? ? ? ? ? (6)命令行跟蹤測試指標;

? ? ? ? ? ? (7)詳細的配置文件等。

? ? ? srsUE主要特征:

? ? ? ? ? ? (1)支持UE的小區搜索及同步的過程;

? ? ? ? ? ? (2)軟件USIM支持XOR以及Milenge兩種鑒權算法;

? ? ? ? ? ? (3)虛擬網卡tun_srsue建立網絡連接;

? ? ? ? ? ? (4)與商用基站以及SDR商用基站、核心網進行適配測試,如Amarisoft LTE10。

? ? ? srseNB主要特征:

? ? ? ? ? ? (1)MAC層采用輪詢調度算法;

? ? ? ? ? ? (2)支持周期性及非周期性的CQI反饋;

? ? ? ? ? ? (3)標準的S1AP以及GTP-U接口;

? ? ? ? ? ? (4)目前已經通過商用終端測試,如LG Nexus5、LG Nexus4、HuaWei P9/P9lite以及Huawei dongles:E3276\ E398等。

? ? ? ?srsEPC是單一、輕量級的LTE 核心網實現,其包括下面三個部分:

? ? ? ? ? ? (1)MME(MobilityManagement Entity),標準的S1AP以及GTP-U接口;

? ? ? ? ? ? (2)S/P-GW,標準的連接虛擬網卡的SGi接口;

? ? ? ? ? ? (3)HSS(HomeSubscriber Server),使用CSV文件格式進行用戶數據配置。

? ? ? ?射頻通用設備支持USRPB210、USRP X300、bladeRF以及LimeSDR。

srsLTE環境搭建

?????? 對比于前期的srsLTE安裝(http://blog.csdn.net/jxwxg/article/details/73771212),目前srsLTE安裝都包含在一個文件夾中,因此只需要借助cmake、make等工具進行編譯,安裝即可,以下簡單介紹安裝步驟:

系統安裝

?????? srsLTE運行在Ubuntu系統上,之前在14.04以及17.04系統上均安裝成功,所以Ubuntu系統的選擇,可以是14.04及以上,計算機配置的話,最好能夠i7 CPU,主頻越高越好。系統的安裝推薦使用U盤制作啟動盤,然后進行安裝即可,要注意安裝的時候分區。下面以Ubuntu14.04來進行介紹。

常用工具安裝

?????? 系統安裝好之后,需要安裝常用工具,如git、vim等,可以使用Ubuntu系統的apt-get進行安裝,如安裝git,使用以下命令即可:

[cpp]?view plaincopy
  • sudo?apt-get?update??
  • sudo?apt-get?install?git??
  • ? ? ? ?當然,git安裝完成之后,還需要進行配置,如配置用戶及email等。

    UHD安裝

    ?????? 硬件設備選擇USRP B210,因此需要在系統上安裝UHD驅動,目前UHD版本3.10.0.0對于OAI以及srsLTE的支持比較穩定,UHD的安裝教程可以參考http://blog.csdn.net/jipengwang/article/details/79451729。

    srsLTE依賴庫安裝

    ? ? ? ?在Ubuntu14.04系統上,執行以下命令即可:

    [cpp]?view plaincopy
  • sudo?apt-get?install?cmake?libfftw3-dev?libpolarssl-dev?libboost-program-options-dev?libboost-thread-dev?libconfig++-dev?libsctp-dev??
  • ? ? ? ?Ubuntu 17.04系統上,執行以下命令:? ? ??

    [cpp]?view plaincopy
  • sudo?apt-get?install?cmake?libfftw3-dev?libmbedtls-dev?libboost-program-options-dev?libboost-thread-dev?libconfig++-dev?libsctp-dev??
  • ? ? 另外,srs還提供了srsGUI庫,可以用于在調試的時候,實時查看星座圖及信號能量,其github鏈接為:https://github.com/srslte/srsgui,安裝命令如下:

    首先安裝依賴庫:

    [cpp]?view plaincopy
  • sudo?apt-get?install?libboost-system-dev?libboost-test-dev?libboost-thread-dev?libqwt-dev?libqt4-dev??
  • 下載及安裝命令如下: ? ? ? [cpp]?view plaincopy
  • git?clone?https://github.com/suttonpd/srsgui.git??
  • cd?srsGUI??
  • mkdir?build??
  • cd?build??
  • cmake?../??
  • make??
  • sudo?make?install??
  • sudo?ldconfig??
  • srsLTE編譯安裝

    ?????? 從github上clone代碼,之后進行編譯安裝即可,命令如下:

    [cpp]?view plaincopy
  • git?clone?https://github.com/srsLTE/srsLTE??
  • mkdir?build??
  • cd?build??
  • cmake?../??
  • make??
  • make?test??
  • sudo?make?install??
  • sudo?ldconfig??
  • srsLTE運行

    ?????? srsLTE的運行參數均采用配置文件進行,即只需要在運行程序后面加上配置文件即可,配置參數在配置文件中進行,其中srsLTE對于UE、eNB、EPC均提供了對應的示例配置文件,其放置位置在對應的srsue、srsenb以及srsepc文件夾下,且命名方式為 *.example,如下圖所示為srsenb下面的配置文件:


    ? ? ? ?在運行時,可以將這些配置文件復制,并修改文件名,如將drb.conf.example賦值,并命名為drb.conf。
    ? ? ? ?srseNB以及srsEPC可以運行在一臺電腦上,也可以運行在兩臺不同的電腦上,但是需要保證兩臺機器之間的IP可達,并修改相關的配置文件;srsUE則需要運行在另一臺電腦上。
    執行sudo make install之后,就可以直接使用srsepc、srsenb以及srsue進行運行對應的模塊,運行命令如下(假設目前位于srsLTE目錄下):

    ? ? ? ?(1)srsepc

    [cpp]?view plaincopy
  • cd?srsepc/??
  • sudo?srsepc?epc.conf??
  • ? ? ? ?(2)srsenb

    ? ?cd srsenb/

    [cpp]?view plaincopy
  • sudo?srsenb?enb.conf??
  • ? ? ? ?(3)srsue

    ? ?cd srsue

    [cpp]?view plaincopy
  • sudo?srsue?ue.conf??
  • ? ? ? ?如上圖所示為srsLTE運行界面,其中srseNB以及srsUE的GUI界面可以在配置文件中進行配置,并且運行eNB的電腦,虛擬網卡名稱為srs_spgw_sgi,地址為172.16.0.1,運行UE的虛擬網卡名稱為tun_srsue,地址與eNB側同網段,如下兩圖所示:


    另外,在eNB及UE的運行終端中,可以輸入t來實時查看snr、bler等性能指標參數,如下面兩圖所示:


    srsLTE測試

    ping命令測試

    ?????? 在運行eNB及UE的電腦上,分別對虛擬網卡tun_srsue以及srs_spgw_sgi進行ping命令測試,如下兩圖所示:



    iperf測試

    ?????? 使用iperf進行灌包測試,以下測試為PRB=50,即帶寬10MHz,首先進行下行灌包測試,之后進行上行灌包測試。

    ? ? ? (1)下行

    ? ? ? ?UE側iperf命令為:

    [cpp]?view plaincopy
  • iperf?–s?–u?–i?1??
  • ? ? ? ?eNB側iperf命令為:??[cpp]?view plaincopy
  • iperf?–c?172.16.0.4?–u?–i?1?–b?30M?–t?60??
  • ? ? ? eNB側iperf灌包從10M開始,然后是20M,之后是30M,從下圖可以看出,下行峰值速率基本在22Mbits/sec左右。


    ? ? (2)上行

    ? ? ?eNB側iperf命令為:

    ? ?iperf –s –u –i 1

    ? ? UE側iperf命令為:? ?

    [cpp]?view plaincopy
  • iperf?–c?172.16.0.1?–u?–i?1?–b?10M?–t?60??
  • ? ? UE側灌包從10M開始,之后是15M,然后是20M,可以看到上行峰值速率在14.7Mbps左右。


    ? ? ? ? 根據上面的測試結果,還可以進行配置天線的增益來進行測試增益下的峰值速率,這里只是進行說明如何通過iperf進行速率的測試。

    總結

    ?????? 經過上面的介紹與演示,相信大家對于srsLTE的安裝、運行以及測試有了一定的了解,之后有空會繼續更新如何對配置文件進行修改以及探索srsLTE的更多功能。

    參考文獻

    ? ? ?[1]?https://github.com/srsLTE/srsLTE

    ? ? ?[2]?http://www.softwareradiosystems.com/

    ? ? ?[3]?http://blog.csdn.net/jipengwang/article/details/79451729

    ? ? ?[4]?http://blog.csdn.net/jxwxg/article/details/73603577

    ? ? ?[5]?http://blog.csdn.net/jxwxg/article/details/53446841

    ? ? ?[6]?http://blog.csdn.net/jxwxg/article/details/73771212


    總結

    以上是生活随笔為你收集整理的srsLTE安装、运行及测试的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。