【USRP】srsRAN 開源 4G 軟件無線電套件

srsRAN 是SRS開發的開源 4G 軟件無線電套件。

srsRAN套件包括:

  • srsUE - 具有原型 5G 功能的全棧 SDR 4G UE 應用程序
  • srsENB - 全棧 SDR 4G eNodeB 應用程序
  • srsEPC——具有 MME、HSS 和 S/P-GW 的輕量級 4G 核心網絡實現

在這里插入圖片描述

安裝系統

Ubuntu 20.04

USRP B210

sudo add-apt-repository ppa:ettusresearch/uhd
sudo apt-get update
sudo apt-get install libuhd-dev uhd-host//鏡像下載
sudo uhd_images_downloader
//查找設備 
sudo uhd_find_devices
//查看設備信息
sudo uhd_usrp_probe

srsRAN

sudo add-apt-repository ppa:softwareradiosystems/srsran
sudo apt-get update
sudo apt-get install srsran -y

運行 srsUE

srsUE 是一款 4G LTE UE 調制解調器,其原型 5G NR 功能完全以軟件實現。srsUE 以應用程序的形式運行在基于 Linux 的標準操作系統上,可連接到任何 LTE 網絡并提供具有高速移動連接的標準網絡接口。

運行

開一個終端,運行:

sudo srsue

在這里插入圖片描述
在這里插入圖片描述
軟然后開一個終端去ping基站
在這里插入圖片描述

ping 172.16.0.1

就可以看到UE發信號了。

配置UE得參數,配置:ue.conf

sudo srsue ~/.config/srsran/ue.conf

srsUE 默認使用虛擬 USIM 卡,參數來自ue.conf。這些參數包括:

  • ALGO - 要使用的身份驗證算法(MILENAGE 或 XOR)

  • IMSI——USIM 的唯一標識符

  • K - EPC 中與 HSS 共享的密鑰

  • OP 或 OPc - 操作員代碼(僅用于 MILENAGE 算法)

要成功連接到網絡,這些參數需要與 EPC 的 HSS 中的參數相匹配。MILENAGE 是大多數網絡中使用的算法,XOR 算法主要由測試設備和測試 USIM 卡使用。OP 是網絡范圍的運營商代碼,OPc 是 USIM 特定的加密運營商代碼 - 兩者都受 srsUE 支持。

終端架構

在這里插入圖片描述
srsUE應用程序包括第1層、第2層和第3層,如上圖所示。

物理層 (PHY) 位于 UE 協議棧的底層,通過空中接口傳輸來自 MAC 的所有信息。它負責鏈路自適應、功率控制、小區搜索和小區測量。

媒體訪問控制 (MAC) 層將一個或多個邏輯信道之間的數據復用為傳輸塊 (TB),然后將其傳遞到 PHY 層或從 PHY 層傳遞出去。MAC 負責與 eNodeB 進行控制和調度信息交換、重傳和糾錯 (HARQ) 以及邏輯信道之間的優先級處理。

無線鏈路控制 (RLC) 層可以以三種模式之一運行:透明模式 ?、非確認模式 (UM) 和確認模式 (AM)。RLC 管理多個邏輯信道或承載器,每個邏輯信道或承載器都以這三種模式之一運行。透明模式承載器只需通過 RLC 傳遞數據。非確認模式承載器執行數據單元的連接、分段和重組、重新排序和重復檢測。確認模式承載器還執行丟失數據單元的重新傳輸和重新分段。

分組數據匯聚協議 (PDCP) 層負責控制和數據平面流量的加密、控制平面流量的完整性保護、重復丟棄以及控制和數據平面流量到/從 RRC 層和 GW 層的按順序傳送。如果支持,PDCP 層還會執行 IP 數據的報頭壓縮 (ROHC)。

無線資源控制 (RRC) 層管理 UE 和 eNodeB 之間的控制平面交換。它使用網絡廣播的系統信息來配置 UE 的較低層,并處理與 eNodeB 的 RRC 連接的建立、維護和釋放。RRC 管理小區搜索以支持小區選擇以及小區測量報告和相鄰小區之間切換的移動性控制。RRC 還負責處理和響應來自網絡的尋呼消息。最后,RRC 管理密鑰管理的安全功能以及無線承載的建立、配置、維護和釋放。

非接入層 (NAS) 層管理 UE 與核心網絡 (EPC) 內的實體之間的控制平面交換。它控制 PLMN 選擇并管理網絡附加程序,與 EPC 交換標識和身份驗證信息。NAS 負責建立和維護 UE 與 EPC 內的 PDN 網關之間的 IP 連接。

srsUE 中的網關 (GW) 層負責創建和維護 TUN 虛擬網絡內核接口,模擬 Linux 操作系統中的網絡層設備。GW 層允許 srsUE 作為用戶空間應用程序運行,并使用數據平面 IP 數據包進行操作。

SRS UE具有以下特點:

  • LTE 版本 10 與版本 15 的功能一致

  • 原型 5G NSA 和 SA 支持

  • TDD 和 FDD 配置

  • 測試的 LTE 帶寬:1.4、3、5、10、15 和 20 MHz

  • 測試的 5G SA 帶寬:5、10、15 和 20 MHz

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

  • 可手動配置 DL/UL 載波頻率

  • 支持XOR/Milenage認證的軟USIM

  • 通過 PC/SC 支持硬 USIM

  • Snow3G 和 AES 完整性/加密支持

  • Linux OS 的 TUN 虛擬網絡內核接口集成

  • 具有每層日志級別和十六進制轉儲的詳細日志系統

  • MAC 和 NAS 層 wireshark 數據包捕獲

  • 命令行跟蹤指標

  • 詳細輸入配置文件

  • 演進型多媒體廣播和多播服務 (eMBMS)

  • 基于頻率的 ZF 和 MMSE 均衡器

  • Intel SSE4.1/AVX2 (+150 Mbps) 中提供高度優化的 Turbo 解碼器

  • EPA、EVA 和 ETU 3GPP 信道的信道模擬器

  • QoS 支持

  • 20 MHz MIMO TM3/TM4 或 2xCA 配置下 150 Mbps DL(QAM256 下 195 Mbps)

  • 20 MHz SISO 配置下 DL 為 75 Mbps(QAM256 配置下為 98 Mbps)

  • 10 MHz SISO 配置下 36 Mbps DL

  • 支持 Ettus USRP B2x0/X3x0 系列、BladeRF、LimeSDR

運行 srsENB 和 srsEPC

運行

請開兩個終端,第一個運行:

sudo srsepc

第二個運行:

sudo srsenb

在這里插入圖片描述
在這里插入圖片描述
可以通過配置文件配置 eNodeb : enb.conf此配置文件提供與小區配置、工作頻率、傳輸功率級別、日志級別等相關的參數。要使用已安裝的配置文件運行 srsENB,請使用。sudo srsenb ~/.config/srsran/enb.conf

除了頂層配置文件之外,srsENB 還使用單獨的文件來配置 SIB(sib.conf)、無線電資源(rr.conf)和數據承載(drb.conf)。這些附加配置文件列在頂層 enb.conf 中的 [enb_files] 下,并為每個文件提供默認值。

一個關鍵的 eNodeB 參數是 enb.mme_addr,它指定核心網絡 MME 的 IP 地址。默認配置假設 srsEPC 在同一臺機器上運行。

srsENB LTE eNodeB 具有以下特點:

LTE 版本 10 與版本 15 的功能一致

  • 原型 5G NR 支持 5G NSA 和 SA

  • FDD 配置

  • 測試帶寬:1.4、3、5、10、15 和 20 MHz

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

  • 基于頻率的 ZF 和 MMSE 均衡器

  • 演進型多媒體廣播和多播服務 (eMBMS)

  • Intel SSE4.1/AVX2 (+150 Mbps) 中提供高度優化的 Turbo 解碼器

  • 具有每層日志級別和十六進制轉儲的詳細日志系統

  • MAC層wireshark抓包

  • 命令行跟蹤指標

  • 詳細輸入配置文件

  • EPA、EVA 和 ETU 3GPP 信道的信道模擬器

  • 基于 ZeroMQ 的 I/Q 偽 RF 驅動程序

  • ENB 內和 ENB 間 (S1) 移動性支持

  • 具有類似 FAPI 的 C++ API 的比例公平和循環 MAC 調度程序

  • SR 支持

  • 支持定期和非定期 CQI 反饋

  • 標準 S1AP 和 GTP-U 接口至核心網絡

  • 20 MHz MIMO TM3/TM4 下行速率為 150 Mbps,商用 UE 可實現(QAM256 下行速率為 195 Mbps)

  • 采用 SISO 配置,使用商用 UE,下行速率為 75 Mbps

  • 商用 UE 在 20 MHz 下實現 50 Mbps UL

  • 用戶平面加密

srsEPC 是完整 LTE 核心網絡 (EPC) 的輕量級實現。srsEPC 應用程序以單個二進制文件運行,但提供家庭用戶服務 (HSS)、移動管理實體 (MME)、服務網關 (S-GW) 和分組數據網絡網關 (P-GW) 等關鍵 EPC 組件。srsEPC 應用程序不適用于部署,但可用于測試。

在這里插入圖片描述
上圖說明了EPC的主要組件以及它們之間的主要接口。

  • HSS:歸屬用戶服務(HSS)是用戶數據庫。它存儲用戶 ID、密鑰、使用限制等信息。它負責對用戶訪問網絡進行身份驗證和授權。

  • MME:移動管理實體 (MME) 是網絡中的主要控制元素。它處理移動性和附加控制消息。它還負責尋呼空閑模式下的 UE。

  • S-GW:S-GW 是用戶的主要數據平面網關,因為它為 UE 提供移動錨點。它充當 IP 路由器,幫助在 eNB 和 P-GW 之間建立 GTP 會話。

  • P-GW:分組網關 (P-GW) 是與外部網絡的接觸點。它強制執行用戶會話的 QoS 參數。

為了提供完整的端到端 LTE 網絡,請將 srsEPC 與 srsENB 和 srsUE 一起使用。

為了使 UE 能夠連接到互聯網,必須進行 IP 偽裝。如果沒有偽裝,Linux 內核將不會執行從一個子網到另一個子網的數據包轉發。

為了實現此功能,您可以運行一個便捷腳本,其中out_interface是將 PC 連接到互聯網的接口。

sudo srsepc_if_masq <out_interface>

參考

https://www.srslte.com/4g

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/900353.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/900353.shtml
英文地址,請注明出處:http://en.pswp.cn/news/900353.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ChatGPT 4:解鎖AI文案、繪畫與視頻創作新紀元

文章目錄 一、ChatGPT 4的技術革新二、AI文案創作&#xff1a;精準生成與個性化定制三、AI繪畫藝術&#xff1a;從文字到圖像的神奇轉化四、AI視頻制作&#xff1a;自動化剪輯與創意實現五、知識庫與ChatGPT 4的深度融合六、全新的變革和機遇《ChatGPT 4 應用詳解&#xff1a;A…

在js中數組相關用法講解

數組 uniqueArray 簡單數組去重 /*** 簡單數組去重* param arr* returns*/ export const uniqueArray <T>(arr: T[]) > [...new Set(arr)];const arr1 [1,1,1,1 2, 3];uniqueArray(arr); // [1,2,3]uniqueArrayByKey 根據 key 數組去重 /*** 根據key數組去重* …

RT-Thread ulog 日志組件深度分析

一、ulog 組件核心功能解析 輕量化與實時性 ? 資源占用&#xff1a;ulog 核心代碼僅需 ROM<1KB&#xff0c;RAM<0.2KB&#xff0c;支持在資源受限的MCU&#xff08;如STM32F103&#xff09;中運行。 ? 異步/同步模式&#xff1a;默認采用異步環形緩沖區&#xff08;rt_…

T113s3遠程部署Qt應用(dropbear)

T113-S3 是一款先進的應用處理器&#xff0c;專為汽車和工業控制市場而設計。 它集成了雙核CortexTM-A7 CPU和單核HiFi4 DSP&#xff0c;提供高效的計算能力。 T113-S3 支持 H.265、H.264、MPEG-1/2/4、JPEG、VC1 等全格式解碼。 獨立的硬件編碼器可以編碼為 JPEG 或 MJPEG。 集…

12.青龍面板自動化我的生活

安裝 docker方式 docker run -dit \ -v /root/ql:/ql/data \ -p 5700:5700 \ -e ENABLE_HANGUPtrue \ -e ENABLE_WEB_PANELtrue \ --name qinglong \ --hostname qinglong \ --restart always \ whyour/qinglongk8s方式 https://truecharts.org/charts/stable/qinglong/ he…

Maven 遠程倉庫推送方法

步驟 1&#xff1a;配置 pom.xml 中的遠程倉庫地址 在項目的 pom.xml 文件中添加 distributionManagement 配置&#xff0c;指定遠程倉庫的 URL。 xml 復制 <project>...<distributionManagement><!-- 快照版本倉庫 --><snapshotRepository><id…

Spring Boot 日志 配置 SLF4J 和 Logback

文章目錄 一、前言二、案例一&#xff1a;初識日志三、案例二&#xff1a;使用Lombok輸出日志四、案例三&#xff1a;配置Logback 一、前言 在開發 Java 應用時&#xff0c;日志記錄是不可或缺的一部分。日志可以記錄應用的運行狀態、錯誤信息和調試信息&#xff0c;幫助開發者…

JS API 事件監聽

焦點事件案例&#xff1a;搜索框激活下拉菜單 事件對象 事件對象存儲事件觸發時的相關信息 可以判斷用戶按鍵&#xff0c;點擊元素等內容 如何獲取 事件綁定的回調函數中的第一個形參就是事件對象 一般命名為e,event 事件對象常用屬性 type類型 click mouseenter client…

DDD與MVC擴展能力對比

一、架構設計理念的差異二、擴展性差異的具體表現三、DDD擴展性優勢的深層原因四、MVC擴展性不足的典型場景五、總結&#xff1a;架構的本質與選擇六、例子1&#xff09;場景描述2&#xff09;MVC實現示例&#xff08;三層架構&#xff09;3&#xff09;DDD實現示例&#xff08…

針對 SQL 查詢中 IN 子句性能優化 以及 等值 JOIN 和不等值 JOIN 對比 的詳細解決方案、代碼示例及表格總結

以下是針對 SQL 查詢中 IN 子句性能優化 以及 等值 JOIN 和不等值 JOIN 對比 的詳細解決方案、代碼示例及表格總結&#xff1a; 問題 1&#xff1a;IN 的候選值過多&#xff08;如超過 1000 個&#xff09; 問題描述 當 IN 列表中的值過多時&#xff0c;SQL 會逐個比較每個值…

手部穴位檢測技術:基于OpenCV和MediaPipe的實現

手部穴位檢測是醫學和健康管理領域的重要技術之一。通過準確識別手部的關鍵穴位,可以為中醫診斷、康復治療以及健康監測提供支持。本文將介紹一種基于OpenCV和MediaPipe的手部穴位檢測方法,展示如何利用計算機視覺技術實現手部關鍵點的檢測,并進一步標注手部的穴位位置。 技…

Day20 -自動化信息收集工具--ARL燈塔的部署

準備&#xff1a; 純凈的Docker環境 ARL的包 一、Docker的部署 00x1 更新系統包 sudo apt update 00x2 安裝必要的依賴包 sudo apt install -y apt-transport-https ca-certificates curl software-properties-common 00x3 下載docker和docker-compose apt-get install do…

sqlalchemy查詢json

第一種&#xff1a;字段op是json格式&#xff1a; {"uid": "cxb123456789","role": 2,"op_start_time": 1743513707504,"op_end_time": 1743513707504,"op_start_id": "op_001","op_end_id"…

搭建K8S-1.23

0、簡介 這里只用3臺服務器來做一個簡單的集群 地址主機名192.168.160.40kuber-master-1192.168.160.41kuber-master-2192.168.160.42kuber-node-1 1、關閉三個服務 &#xff08;1&#xff09;防火墻 systemctl stop firewalld &#xff08;2&#xff09;Selinux setenf…

初階數據結構--樹

1. 樹的概念與結構 樹是?種?線性的數據結構&#xff0c;它是由 n&#xff08;n>0&#xff09; 個有限結點組成?個具有層次關系的集合。把它叫做 樹是因為它看起來像?棵倒掛的樹&#xff0c;也就是說它是根朝上&#xff0c;?葉朝下的。 有?個特殊的結點&#xff0c;稱…

硬件工程師面試問題(五):藍牙面試問題與詳解

藍牙技術作為物聯網與智能設備的核心無線協議&#xff0c;其硬件設計能力直接影響產品連接穩定性、功耗及兼容性。面試是評估候選人射頻電路設計、天線優化、協議棧調試等綜合技能的關鍵環節&#xff0c;尤其在BLE低功耗設計、共存抗干擾等場景中&#xff0c;硬件工程師的實踐經…

Redis-基本數據類型

Redis支持的基本數據類型&#xff1a;String、hash、list、Set、Zset 一、String 特點 可以存儲三種類型 int、float、string 運用場景 緩存&#xff1a;存儲HTML片段、用戶會話&#xff08;Session&#xff09;計數器&#xff1a;網站訪問量、點贊數&#xff08;incr方法&am…

Tomcat的部署

Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器&#xff0c;屬于輕量級應用服務器&#xff0c;在中小型系統和 并發訪問用戶不是很多的場合下被普遍使用&#xff0c;Tomcat 具有處理HTML頁面的功能&#xff0c;它還是一個Servlet和 JSP容器 官網:Apache Tomcat - Welco…

Linux的TCP連接數到達2萬,其中tcp_tw、tcp_alloc、tcp_inuse都很高,可能出現什么問題

當 Linux 系統的 TCP 連接數達到 2 萬,且 /proc/net/sockstat 中的 tcp_tw(TIME_WAIT 連接)、tcp_alloc(已分配但未完全建立的連接)和 tcp_inuse(正在使用的連接)均處于高位時,可能會引發以下問題: 一、關鍵指標分析 通過 /proc/net/sockstat 可以查看 TCP 連接狀態:…

服務器數據恢復—Raid6陣列硬盤故障掉線,上層虛擬機數據如何恢復?

服務器數據恢復環境&故障&#xff1a; 一臺由16塊硬盤組成的raid6磁盤陣列。磁盤陣列中有一塊硬盤因為物理故障掉線&#xff0c;導致服務器上層虛擬機無法正常使用&#xff0c;部分分區丟失&#xff0c;重啟物理服務器后發現數據丟失。 服務器數據恢復過程&#xff1a; 1、…