单树莓派/双树莓派+USRP+srsLTE分布式搭建4G LTE微基站

发布时间 2023-07-21 09:15:44作者: SymPny

前言

阅读本文前请确保UHD和srsLTE已经正确安装,安装教程:
树莓派3B安装Ubuntu Server 18.04 + UHD + GNU Radio,其中GNU Radio对于本文不是必须的,可以不安装。
树莓派Ubuntu18.04安装srsLTE

实验环境:

NameSystemUHDsrsLTE
电脑1Ubuntu18.04.4 LTS Desktop x86-643.15.LTS19_12
树莓派3BUbuntu18.04.4 LTS for Raspi3 arm643.15.LTS19_12
树莓派4BUbuntu18.04.4 LTS for Raspi3 arm643.15.LTS19_12
电脑2Win10 10586 64bit××

2020.08.10 修改srsLTE版本,从20_04_01降级到19_12。
测试了20_04_01和19_12两个版本,灌包测得的最大基本一致,均为上行36Mbps,下行13Mbps,但是在手机上用测速软件测得的实际速率却不一样。
使用20_04_01版本,在手机上用测网速app测得的最大上行速率为5.8Mbps,下行速率为9.8Mbps,与灌包测得的速率相差较大;
而使用19_12版本,在手机上用测网速app测得的最大上行速率为12.8Mbps,下行速率为34.7Mbps,基本达到了灌包的速率。
测试手机Redmi 4,eNB参数设置dl_earfcn = 1500n_prb = 50,测试平台PC(eNB)+树莓派3B(EPC)

一、添加SIM卡的配置信息

使用SIM卡写卡读卡器修改SIM卡的信息如下:

修改~/.config/srslte/user_db.csv文件:

在这里插入图片描述

格式为(ue_name),(imsi),(K),(OP/OPc_type),(OP/OPc_value),(AMF),(SQN),(QCI),仿照原文件中的例子进行修改,最后两项保持不变。倒数第三项被红色画笔涂亮的部分一开始我设置的是1234,后来在运行过程中被程序自动修改,保持程序自动修改后的数值即可。

二、修改enb配置信息

sudo vim ~/.config/srslte/enb.conf
  • 1

在这里插入图片描述
在这里插入图片描述

其中mcc为手机卡IMSI的前三位,mnc为IMSI的4、5位;mme_addr设置为树莓派(EPC)的IP地址;gtp_bind_addrs1c_bind_addr改为(eNB)的IP地址,s1c_bind_addr为eNb发送的SCTP消息的源地址,因此在分布式部署时应该改为真实IP地址;dl_earfcn为频点号,与频率、频段的关系见第七节;n_prb = 50表示带宽为10MHz,该参数与带宽的对应关系如下:
在这里插入图片描述

三、修改epc配置信息

需要注意的是EPC设备需要能正常连接外网并且执行网口伪装sudo srsepc_if_masq.sh eth0,这样手机连上LTE信号后才能正常上网。eNB设备可以不连接外网,只要和EPC设备在同一局域网(能相互ping通)即可。

sudo vim ~/.config/srslte/epc.conf
  • 1

其中mcc为手机卡IMSI的前三位,mnc为IMSI的4、5位,mme_addr设置为树莓派(EPC)的IP地址,gtpu_bind_addr改为树莓派上可以上网的IP地址。这里我通过sudo ifconfig eth0:gtp 192.168.2.111/24 up开启了一个虚拟网口,gtpu_bind_addr也可以直接改为与mme_bind_addr相同的IP地址。
在这里插入图片描述
在这里插入图片描述

四、修改手机SIM卡配置信息

此处以小米手机为例,进入设置->双卡和移动网络->选择对应的SIM卡->接入点名称(APN)->新建APN,名称APN都改为srsapnMCC 改为460MNC改为 11,修改完成后返回保存即可。

五、树莓派运行srsepc,电脑1运行srsenb

连接示意图

进行灌包测试,必要的设置如下:

#在树莓派(运行srsepc)上设置手机上网的接口
ifconfig  #查看网络接口
sudo srsepc_if_masq.sh eth0  #选择能上网的接口进行伪装,此处为eth0
  • 1
  • 2
  • 3
#在电脑1(运行srsenb)上设置路由信息使得电脑1能ping到测试手机
sudo route add -host 172.16.0.2 gw 192.168.2.104  #临时添加路由信息,其中172.16.0.2为测试手机的IP地址,192.168.2.104为树莓派的IP地址
route -n #查看路由信息
  • 1
  • 2
  • 3

永久添加路由信息需要修改/etc/network/interfaces,添加以下内容:

#其中`enp5s0`需要根据`ifconfig`给出的信息进行选择
up route add -net xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx gw xxx.xxx.xxx.xxx enp5s0
  • 1
  • 2
#在测试手机上
设置->双卡和移动网络->SIM卡信息.中国电信->运营商网络设置.接入点名称(APN)->新建APN,名称:srsapn,APN:srsapn,MCC:460,MNC:11,设置好后保存,然后选择此APN。
在epc和enb建立连接后,打开飞行模式再关闭飞行模式,再打开数据流量。
测试手机和电脑2通过USB连接,需要在手机上开启USB网络共享,或者开启热点无线连接,只要电脑2能ping通电脑1就行。
  • 1
  • 2
  • 3
  • 4

1.下行灌包测试

电脑1选择Client模式,Server address填手机的IP,传输时间选择60s,传输层选择UDP,带宽100MB/s,包尺寸1KB。

本来应该是电脑1作为CLient,电脑2作为Server。然后手机连电脑2并且开启USB网络共享,然后电脑1的Server address填电脑2的IP,电脑2开启软件选择Server模式。这里由于电脑2驱动无法安装的问题无法通过USB共享网络,只能通过测试手机的热点进行连接。但是这样连接电脑2可以ping到电脑1,但是电脑1 ping不到电脑2,暂未解决。

在这里插入图片描述

2.上行灌包测试

电脑2作为Client,电脑1作为Server。

电脑2配置与下行灌包的Client设置相同;

电脑1选择Server模式,Output Format选择MBits,传输层选择UDP。

经测试,对于同一个手机Redmi 4,在电脑运行srsenb,树莓派运行srsepc的情况下,树莓派3B与4B的效果相同,在手机上测得的最高速率均为下行36.52Mbps,上行13.42Mbps。

六、树莓派4B运行srsenb,树莓派3B运行srsepc

参考:SRSLTE树莓派4应用说明

在运行eNB的树莓派4B上开启性能模式:

sudo systemctl disable ondemand
nano /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor  #查看是否进入性能模式,若都为performance则成功
  • 1
  • 2

修改enb.conf

sudo nano /root/.config/srslte/enb.conf

[enb]
mcc = 460 #IMSI的前三位
mnc = 11 #IMSI的第4、5位
mme_addr = 192.168.2.101 #EPC的IP地址
gtp_bind_addr = 192.168.2.104 #eNB的IP地址
s1c_bind_addr = 192.168.2.104 #eNB的IP地址
n_prb = 15
tm = 2
nof_ports = 2

[rf]
dl_earfcn = 1934
tx_gain = 80 ## this power seems to work best
rx_gain = 40
device_name = UHD
device_args = auto

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

修改epc.conf

sudo nano /root/.config/srslte/epc.conf

[mme]
mcc = 460 #IMSI的前三位
mnc = 11 #IMSI的第4、5位
mme_bind_addr = 192.168.2.101 #EPC的IP地址

[spgw]
gtpu_bind_addr = 192.168.2.101 #EPC的IP地址

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

修改user_db.csv:参考第一节。

运行epc的设备需要打开进入防火墙的端口以允许srsenb进行S1-MME和S1-U连接:

S1-MME = sctp, port 36412 || S1-U = udp, port 2152

或者使用iptables命令:

sudo iptables -A INPUT -p sctp -m sctp --dport 36412 -j ACCEPT
sudo iptables -A INPUT -p udp -m udp --dport 2152 -j ACCEPT
  • 1
  • 2

这套设置频段为B3,频点1934,带宽3MHz。

1.下行灌包测试

图片误删…

2.上行灌包测试

在这里插入图片描述


七、LTE载波频率和载波频点号

参考:LTE Carrier Frequency and EARFCN

  • Fdownlink=FDLLow+0.1(NDL−NDLOffset)Fdownlink=FDLLow+0.1(NDL-NDLOffset)
  • Fuplink=FULLow+0.1(NUL−NULOffset)

where,

NDL = downlink EARFCN
NUL = uplink EARFCN
NDLoffset = offset used to calculate downlink EARFCN
NULoffset = offset used to calculate uplink EARFCN

EARFCN of carrier frequency can be calculated with Eq-(1) or Eq-(2) using FDL_low, NOffs-DL, FUL_low and NOffs-UL given in table below.

DownlinkUplink
BandFDL_low (MHz)NOffs-DLNDL RangeFUL_low (MHz)NOffs-ULNUL Range
1211000-59919201800018000-18599
21930600600-119918501860018600-19199
3180512001200-194917101920019200-19949
4211019501950-239917101995019950-20399
586924002400-26498242040020400-20649
687526502650-27498302065020650-20749
7262027502750-344925002075020750-21449
892534503450-37998802145021450-21799
91844.938003800-41491749.92180021800-22149
10211041504150-474917102215022150-22749
111475.947504750-49491427.92275022750-22949
1272950105010-51796992301023010-23179
1374651805180-52797772318023180-23279
1475852805280-53797882328023280-23379
1773457305730-58497042373023730-23849
1886058505850-59998152385023850-23999
1987560006000-61498302400024000-24149
2079161506150-64498322415024150-24449
211495.964506450-65991447.92445024450-24599
22351066006600-739934102460024600-25399
23218075007500-769920002550025500-25699
24152577007700-80391626.52570025700-26039
25193080408040-868918502604026040-26689
2685986908690-90398142669026690-27039
2785290409040-92098072704027040-27209
2875892109210-96597032721027210-27659
29271796609660-9769N/A
31462.598709870-9919452.52776027760-27809
3319003600036000-3619919003600036000-36199
3420103620036200-3634920103620036200-36349
3518503635036350-3694918503635036350-36949
3619303695036950-3754919303695036950-37549
3719103755037550-3774919103755037550-37749
3825703775037750-3824925703775037750-38249
3918803825038250-3864918803825038250-38649
4023003865038650-3964923003865038650-39649
4124963965039650-4158924963965039650-41589
4234004159041590-4358934004159041590-43589
4336004359043590-4558936004359043590-45589
447034559045590-465897034559045590-46589