赞
踩
目录
我们参考Ueransim官网提供的资料,该教程使用的是下载源代码或克隆存储库的方式,与使用docker的方式大同小异:
- cd ~
- git clone https://github.com/aligungr/UERANSIM
其他Linux发行版可能在一般情况下都能工作(ubantu16.04及更高版本)但不幸的是,Windows不支持,因为微软没有实现SCTP协议。您需要一个虚拟机来解决问题。
注意:Windows子系统for Linux (WSL)也不能用作虚拟机。同样,基于guest - to - host NAT的网络配置在Windows上也可能无法工作。然而,VirtualBox与桥接适配器设置应该工作在Windows上很好。
配置详情页见ueransim配置官网,或者详见oai提供的ueransim.yaml文件
进入~/UERANSIM/build文件夹可以看到如下文件:
Nr-binder和libdevbnd只有将终端连接到互联网同时绑定到任意应用程序时才需要,通常不使用。
环境配置:
nr-ue -c myconfig.yaml -n 10
这样,10个终端将在该流程中启动和运行。IMSI号为每台终端加1(从配置文件中设置的IMSI号开始)。您也可以通过命令行覆盖配置文件中的IMSI参数:
nr-ue -c myconfig.yaml -i imsi-286010000000001
或者
nr-ue -c myconfig.yaml -n 10 -i imsi-286010000000001
我们为gNB和ue提供nr-cli工具。
注意:UE和gNB的CLI命令不同。例如,在gNB中可以检查AMF连接状态,或者在UE中可以触发注销。本文件解释了更多细节。
使用方式:nr-cli <node-name>
这里需要将<node-name>替换为UE或gNB名称。例如:
nr-cli imsi-001010000000001
您可以通过以下方式查询当前环境中的UE和gnb:
- $ nr-cli --dump
-
- imsi-001010000000001
- imsi-001010000000002
- imsi-001010000000003
执行nr-cli <node-name>命令后,如果给定的节点存在并在环境中运行,则会打开一个交互式shell。现在可以为该节点执行进一步的命令,例如
- user@pc:~/UERANSIM/build$ ./nr-cli UERANSIM-gnb-001-01-1
- --------------------------------------------------------------------------------------------
- $ commands
- amf-info | Show some status information about the given AMF
- amf-list | List all AMFs associated with the gNB
- info | Show some information about the gNB
- status | Show some status information about the gNB
- ue-count | Print the total number of UEs connected the this gNB
- ue-list | List all UEs associated with the gNB
- --------------------------------------------------------------------------------------------
您可以进一步调查子命令的用法和帮助信息,例如
- $ amf-info --help
- $ ue-list --version
如果你想直接执行命令,而不是使用交互式shell,你也可以使用-e/--exec选项。
nr-cli imsi-001010000000001 --exec "status"
需要更多详细信息,请查看 nr-cli --help
UERANSIM提供了一个TUN接口,以便使用UE的互联网连接。对于v2.2.1版本,自动应用所有TUN配置。
为每个PDU会话建立一个TUN接口。成功建立PDU会话后,终端自动执行如下操作:
注意:路由配置可能与当前设置冲突。如果不需要自动路由配置(第2项),可以使用nr-ue——no-route-config启动UE。但是TUN接口总是在PDU会话建立后创建(第1项)。
注意:在同一台计算机上使用UE和核心网通常会出现问题。UERANSIM和核心网请使用两台不同的机器。(您可以使用虚拟机或非虚拟机。)
如果您想手动使用该接口,只需将TCP/IP套接字绑定到uesimtunX接口即可。
ping -I uesimtun0 google.com
或者
sudo curl --interface uesimtun0 google.com
但是,我们也提供了我们的实验性的./nr-binder工具,以方便地利用UE的连接。
您可以使用./nr-binder工具将uesimtunX接口绑定到几乎任何应用程序。
注意:使用。/nr-binder必须启用自动路由配置。例如,如果你想使用nr-binder功能,不要使用no-routing-config启动UE。
注意:./nr-binder是实验性的,可能不适用于某些应用程序。
使用方式:./nr-binder {PDU-SESSION-IP-ADDRESS} {COMMAND} {ARGS}
例如
./nr-binder 10.45.0.2 curl google.com
这样,curl命令将使用UE的IP地址10.45.0.2与google连接。(这里10.45.0.2是您要使用的PDU会话的IP地址。您可能需要将其替换为您自己的PDU会话地址。)
你也可以使用网络浏览器,比如Firefox。例如:
./nr-binder 10.45.0.2 firefox
运行此命令后,所有在Firefox中发生的网络流量,都将使用UE的internet连接。
注意:在运行上述命令之前,请关闭所有Firefox进程。
概述
UERANSIM实现了以下技术:
从基本意义上讲,UE可以被认为是移动电话,gNodeB可以被认为是基站。
接口
UE/RAN视角有3个主界面:
控制平面
控制平面有2个接口:
NAS的特性
NAS层实现如下特性:
以下特性尚未实现:
对于NAS安全:
识别:
注册:
NGAP特性:
NGAP层实现了以下特性:
用户平面:
我们的RAN实现了用户平面的GTP协议。目前只支持IPv4。
无线接口:
UERANSIM不实现RRC层以下的5G无线电协议。5G无线电部分是通过端口4997的UDP协议模拟的。因此,PHY、MAC、RLC、PDCP在UERANSIM中没有实现。然而,主要的RRC程序在UERANSIM中可用。
如果您无法连接到互联网,请确保满足以下条件:
注意:UERANSIM中的路由配置是实验性的,它不是该软件的主要功能。UERANSIM只保证创建TUN接口,但IP路由配置不保证服务于任何目的。如本文档所述,您应该将应用程序直接绑定到TUN接口,以便利用UE的internet连接。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。