182 | | [[CollapsibleStart(Run Amarisoft UE Simulator)]] |
183 | | * Run the Amarisoft UE simulator on srv2-lg1 by passing the configuration file ue-nr-sa-n310.cfg as an argument. To run UE simulator in 4G LTE mode, please use ue-n310.cfg. |
184 | | |
185 | | {{{#!shell |
186 | | root@srv2-lg1:~# cd /opt/amarisoft/lteue-linux-2021-09-18 |
187 | | root@srv2-lg1:/opt/amarisoft/lteue-linux-2021-09-18# ./lteue config/ue-nr-sa-n310.cfg |
188 | | LTE UE version 2021-09-18, Copyright (C) 2012-2021 Amarisoft |
189 | | This software is licensed to Rutgers University (The State University of New Jersey). |
190 | | License server: license.orbit-lab.org (0b-b4-46-dc-2f-83-58-cb) |
191 | | Support and software update available until 2022-08-18. |
192 | | |
193 | | [INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.15.0.0-release |
194 | | [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgmt_addr=10.38.3.1,type=n3xx,product=n310,serial=3196937,claimed=False,addr=10.38.3.1,master_clock_rate=122.88e6 |
195 | | [INFO] [MPM.PeriphManager] init() called with device args `clock_source=internal,mgmt_addr=10.38.3.1,time_source=internal,master_clock_rate=122.88e6,product=n310'. |
196 | | [INFO] [0/Replay_0] Initializing block control (NOC ID: 0x4E91A00000000004) |
197 | | [INFO] [0/Radio_0] Initializing block control (NOC ID: 0x12AD100000011312) |
198 | | [INFO] [0/Radio_1] Initializing block control (NOC ID: 0x12AD100000011312) |
199 | | [INFO] [0/DDC_0] Initializing block control (NOC ID: 0xDDC0000000000000) |
200 | | [INFO] [0/DDC_1] Initializing block control (NOC ID: 0xDDC0000000000000) |
201 | | [INFO] [0/DUC_0] Initializing block control (NOC ID: 0xD0C0000000000002) |
202 | | [INFO] [0/DUC_1] Initializing block control (NOC ID: 0xD0C0000000000002) |
203 | | [INFO] [0/FIFO_0] Initializing block control (NOC ID: 0xF1F0000000000000) |
204 | | [INFO] [0/FIFO_1] Initializing block control (NOC ID: 0xF1F0000000000000) |
205 | | [INFO] [0/FIFO_2] Initializing block control (NOC ID: 0xF1F0000000000000) |
206 | | [INFO] [0/FIFO_3] Initializing block control (NOC ID: 0xF1F0000000000000) |
207 | | RF0: sample_rate=30.720 MHz dl_freq=3489.420 MHz ul_freq=3489.420 MHz (band n78) dl_ant=2 ul_ant=1 |
208 | | (ue) WARNING: The GPS is not locked. If you need time synchronization, you should restart the program when the GPS is locked. |
209 | | Chan Gain(dB) Freq(MHz) |
210 | | TX1 35.0 3489.420000 |
211 | | RX1 45.0 3489.420000 |
212 | | RX2 45.0 3489.420000 |
213 | | |
214 | | (ue) ue |
215 | | # UE_ID CL RNTI RRC_STATE EMM_STATE #ERAB IP_ADDR |
216 | | 5G 0 1 0 0 offline power off 0 |
217 | | 5G 1 2 0 0 offline power off 0 |
218 | | (ue) power_on 1 2 |
219 | | (ue) ue |
220 | | # UE_ID CL RNTI RRC_STATE EMM_STATE #ERAB IP_ADDR |
221 | | 5G 0 1 0 0 idle registered 1 192.168.2.2 |
222 | | 5G 1 2 0 4602 running registered 1 192.168.2.6 |
223 | | (ue) |
224 | | |
225 | | }}} |
226 | | * Type 'ue' at the prompt to see the status of the UEs and type 'power_on' to start a UE. The above simulation shows 2 UEs, and the number of UEs is specified UE_COUNT in the configuration file. |
227 | | * Go back to 'mme' prompt in srv1-lg1 and check the gnb, ue list. |
228 | | |
| 182 | [[CollapsibleStart(SIM8200 UE)]] |
| 183 | * As the base station runs,SIM8200 modem on srv1-in1 communicates with the base station and registers to the network. You can see eNodeb trace similar to the one below. |
| 184 | {{{#!shell |
| 185 | (enb) t |
| 186 | Press [return] to stop the trace |
| 187 | PRACH: cell=01 seq=5 ta=18 snr=16.7 dB |
| 188 | ----DL----------------------- ----UL------------------------------------------------ |
| 189 | UE_ID CL RNTI C cqi ri mcs retx txok brate C snr puc1 mcs rxko rxok brate #its phr pl ta |
| 190 | 11 001 460b 1 15 2 16.8 4 9 5.53k 1 33.1 - 20.5 0 5 2.18k 1/1.4/2 28 50 -0.2 |
| 191 | 11 001 460b 1 15 2 24.0 1 4 3.24k 1 33.1 - - 0 0 0 - 28 50 - |
| 192 | 11 001 460b 1 15 2 24.0 1 4 3.24k 1 33.1 - - 0 0 0 - 28 50 - |
| 193 | 11 001 460b 1 15 2 23.0 0 4 3.60k 1 33.1 - - 0 0 0 - 28 50 - |
| 194 | 11 001 460b 1 15 2 23.0 0 4 3.03k 1 33.1 - - 0 0 0 - 28 50 - |
| 195 | }}} |
| 196 | * In the MME session you can check the gNodeb and registered UE. The modem has a SIM card with IMSI 310014000000021 as shown in the MME log below. IP address 192.168.2.2 has been allocated to the modem. In the trace below you can see the CN listed as 5GC for the 5GNR SA network. |
240 | | * The base station (srv1-lg1) can now talk to the UEs via the IP addresses assigned above. |
| 207 | * On sdr1-in3, you can see that the modem shows up as a wwan interface wwp0s20u3i5. |
| 208 | {{{#!shell |
| 209 | root@sdr1-in3:~# ifconfig -a |
| 210 | CTRL: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 |
| 211 | inet 10.37.13.1 netmask 255.255.0.0 broadcast 10.37.255.255 |
| 212 | inet6 fe80::d250:99ff:fed1:5cc8 prefixlen 64 scopeid 0x20<link> |
| 213 | ether d0:50:99:d1:5c:c8 txqueuelen 1000 (Ethernet) |
| 214 | RX packets 379688 bytes 91792578 (91.7 MB) |
| 215 | RX errors 0 dropped 9 overruns 0 frame 0 |
| 216 | TX packets 100257 bytes 7433170 (7.4 MB) |
| 217 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 218 | device memory 0x92120000-9213ffff |
| 219 | |
| 220 | DATA1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 |
| 221 | inet6 fe80::92e2:baff:fe8f:a114 prefixlen 64 scopeid 0x20<link> |
| 222 | ether 90:e2:ba:8f:a1:14 txqueuelen 1000 (Ethernet) |
| 223 | RX packets 373708 bytes 44790598 (44.7 MB) |
| 224 | RX errors 0 dropped 297144 overruns 0 frame 0 |
| 225 | TX packets 10120 bytes 3386934 (3.3 MB) |
| 226 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 227 | |
| 228 | DATA2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 |
| 229 | inet6 fe80::92e2:baff:fe8f:a115 prefixlen 64 scopeid 0x20<link> |
| 230 | ether 90:e2:ba:8f:a1:15 txqueuelen 1000 (Ethernet) |
| 231 | RX packets 336359 bytes 32135668 (32.1 MB) |
| 232 | RX errors 0 dropped 297144 overruns 0 frame 0 |
| 233 | TX packets 10136 bytes 3388196 (3.3 MB) |
| 234 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 235 | |
| 236 | enx00e05ce8172d: flags=4098<BROADCAST,MULTICAST> mtu 1500 |
| 237 | ether 00:e0:5c:e8:17:2d txqueuelen 1000 (Ethernet) |
| 238 | RX packets 0 bytes 0 (0.0 B) |
| 239 | RX errors 0 dropped 0 overruns 0 frame 0 |
| 240 | TX packets 0 bytes 0 (0.0 B) |
| 241 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 242 | |
| 243 | lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 |
| 244 | inet 127.0.0.1 netmask 255.0.0.0 |
| 245 | inet6 ::1 prefixlen 128 scopeid 0x10<host> |
| 246 | loop txqueuelen 1000 (Local Loopback) |
| 247 | RX packets 216 bytes 16383 (16.3 KB) |
| 248 | RX errors 0 dropped 0 overruns 0 frame 0 |
| 249 | TX packets 216 bytes 16383 (16.3 KB) |
| 250 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 251 | |
| 252 | notused: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 |
| 253 | ether d0:50:99:d1:5c:c9 txqueuelen 1000 (Ethernet) |
| 254 | RX packets 0 bytes 0 (0.0 B) |
| 255 | RX errors 0 dropped 0 overruns 0 frame 0 |
| 256 | TX packets 0 bytes 0 (0.0 B) |
| 257 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
| 258 | device memory 0x92100000-9211ffff |
| 259 | |
| 260 | wwp0s20f0u4u4i5: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST> mtu 1500 |
| 261 | inet 192.168.2.2 netmask 255.255.255.252 broadcast 192.168.2.3 |
| 262 | inet6 fe80::e090:63ff:fe1f:6ead prefixlen 64 scopeid 0x20<link> |
| 263 | ether e2:90:63:1f:6e:ad txqueuelen 1000 (Ethernet) |
| 264 | RX packets 0 bytes 0 (0.0 B) |
| 265 | RX errors 0 dropped 0 overruns 0 frame 0 |
| 266 | TX packets 0 bytes 0 (0.0 B) |
| 267 | TX errors 225 dropped 0 overruns 0 carrier 0 collisions 0 |
| 268 | |
| 269 | }}} |
| 270 | |
| 271 | * Set the IP address of the wwan interface to the one allocated by the MME (192.168.2.2 in this case) |
| 272 | {{{#!shell |
| 273 | root@sdr1-in3:~# ifconfig wwp0s20f0u4u4i5 192.168.2.2 netmask 255.255.255.0 |
| 274 | }}} |
| 275 | * You can now communicate with the base station over the air(5G). The data connection can be tested with ping or iperf as below. |
| 276 | {{{#!shell |
| 277 | root@sdr1-in3:~# ping 192.168.2.1 |
| 278 | PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data. |
| 279 | 64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=226 ms |
| 280 | 64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=17.2 ms |
| 281 | 64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=16.2 ms |
| 282 | 64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=12.6 ms |
| 283 | 64 bytes from 192.168.2.1: icmp_seq=5 ttl=64 time=32.7 ms |
| 284 | 64 bytes from 192.168.2.1: icmp_seq=6 ttl=64 time=30.7 ms |
| 285 | 64 bytes from 192.168.2.1: icmp_seq=7 ttl=64 time=46.7 ms |
| 286 | 64 bytes from 192.168.2.1: icmp_seq=8 ttl=64 time=37.2 ms |
| 287 | 64 bytes from 192.168.2.1: icmp_seq=9 ttl=64 time=25.6 ms |
| 288 | 64 bytes from 192.168.2.1: icmp_seq=10 ttl=64 time=34.2 ms |
| 289 | ^C |
| 290 | --- 192.168.2.1 ping statistics --- |
| 291 | 10 packets transmitted, 10 received, 0% packet loss, time 9014ms |
| 292 | rtt min/avg/max/mdev = 12.687/47.963/226.198/60.248 ms |
| 293 | |
| 294 | }}} |
| 295 | * iperf testing with server on sdr1-in3 bound to the SIM8200 network interface wwp0s20f0u4u4i5 with IP address 192.168.2.2 |
| 296 | {{{#!shell |
| 297 | root@sdr1-in3:~# iperf3 -s -B 192.168.2.2 |
| 298 | ----------------------------------------------------------- |
| 299 | Server listening on 5201 |
| 300 | ----------------------------------------------------------- |
| 301 | }}} |
| 302 | {{{#!shell |
| 303 | root@srv2-lg1:~# iperf3 -c 192.168.2.2 --port 5201 -t 10 -b 0 |
| 304 | Connecting to host 192.168.2.2, port 5201 |
| 305 | [ 4] local 192.168.2.1 port 46572 connected to 192.168.2.2 port 5201 |
| 306 | [ ID] Interval Transfer Bandwidth Retr Cwnd |
| 307 | [ 4] 0.00-1.00 sec 8.48 MBytes 71.1 Mbits/sec 62 602 KBytes |
| 308 | [ 4] 1.00-2.00 sec 7.50 MBytes 62.9 Mbits/sec 159 672 KBytes |
| 309 | [ 4] 2.00-3.00 sec 9.34 MBytes 78.4 Mbits/sec 349 854 KBytes |
| 310 | [ 4] 3.00-4.00 sec 9.88 MBytes 82.9 Mbits/sec 762 871 KBytes |
| 311 | [ 4] 4.00-5.00 sec 8.95 MBytes 75.1 Mbits/sec 948 1.01 MBytes |
| 312 | [ 4] 5.00-6.00 sec 10.5 MBytes 88.1 Mbits/sec 267 701 KBytes |
| 313 | [ 4] 6.00-7.00 sec 9.51 MBytes 79.7 Mbits/sec 667 693 KBytes |
| 314 | [ 4] 7.00-8.00 sec 9.88 MBytes 82.9 Mbits/sec 454 444 KBytes |
| 315 | [ 4] 8.00-9.00 sec 9.21 MBytes 77.3 Mbits/sec 486 656 KBytes |
| 316 | [ 4] 9.00-10.00 sec 9.63 MBytes 80.8 Mbits/sec 420 645 KBytes |
| 317 | - - - - - - - - - - - - - - - - - - - - - - - - - |
| 318 | [ ID] Interval Transfer Bandwidth Retr |
| 319 | [ 4] 0.00-10.00 sec 92.9 MBytes 77.9 Mbits/sec 4574 sender |
| 320 | [ 4] 0.00-10.00 sec 89.1 MBytes 74.7 Mbits/sec receiver |
| 321 | }}} |
| 322 | * The gNodeb trace looks as follows showing DL data rates around 90Mbps |
| 323 | {{{#!shell |
| 324 | 2 001 4602 1 14 2 23.4 103 2223 91.5M 1 30.8 - 16.2 51 425 5.09M 1/1.6/5 24 48 -0.2 |
| 325 | 2 001 4602 1 15 2 23.3 90 2193 90.7M 1 30.4 - 16.0 63 438 5.21M 1/1.7/5 21 45 -0.2 |
| 326 | 2 001 4602 1 15 2 22.8 89 1811 73.6M 1 29.8 - 16.0 68 360 4.14M 1/1.9/5 15 46 -0.2 |
| 327 | ----DL----------------------- ----UL------------------------------------------------ |
| 328 | UE_ID CL RNTI C cqi ri mcs retx txok brate C snr puc1 mcs rxko rxok brate #its phr pl ta |
| 329 | 2 001 4602 1 15 2 23.1 93 1993 81.3M 1 30.3 - 16.0 57 390 4.42M 1/1.7/5 28 47 -0.2 |
| 330 | 2 001 4602 1 15 2 23.4 100 2223 92.5M 1 30.1 - 16.0 65 437 5.30M 1/1.8/5 28 45 -0.2 |
| 331 | 2 001 4602 1 15 2 23.1 62 2235 91.2M 1 29.5 - 16.1 53 430 5.13M 1/1.6/5 15 46 -0.2 |
| 332 | 2 001 4602 1 15 2 22.6 105 2145 85.9M 1 27.8 - 16.0 77 411 4.77M 1/1.9/5 28 48 -0.2 |
| 333 | }}} |
| 334 | [[CollapsibleEnd]] |
| 335 | |
| 336 | [[CollapsibleStart(Phone)]] |