@@ -342,60 +342,53 @@ follow:
342
342
address. Then set the default gateway to the IP address of your
343
343
Aether server.
344
344
345
- Run Diagnostics
346
- ~~~~~~~~~~~~~~~~~
347
-
348
- Successfully connecting a UE to the Internet is not a straightforward
349
- exercise. It involves configuring the UE, gNB, and SD-Core software in
350
- a consistent way; establishing SCTP-based control plane (N2) and
351
- GTP-based user plane (N3) connections between the base station and
352
- Mobile Core; and traversing multiple IP subnets along the end-to-end
353
- path.
354
-
355
- The UE and gNB provide limited diagnostic tools. For example, it's
356
- possible to run ``ping `` and ``traceroute `` from both. You can also
357
- run the ``ksniff `` tool described in the Networking section, but the
358
- most helpful packet traces you can capture are shown in the following
359
- commands. You can run these on the Aether server, where we use our
360
- example ``ens18 `` interface for illustrative purposes:
345
+ Deployment Milestones
346
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
347
+
348
+ Successfully connecting a UE to the Internet involves configuring the
349
+ UE, gNB, and SD-Core in a consistent way, and doing so for both the
350
+ control and user planes. This section identifies the key milestones
351
+ along the way, and how to use the available diagnostic tools to verify
352
+ that you are making progress. (As a reminder, the available tools
353
+ include running ``ping `` and ``traceroute `` from all three components,
354
+ capturing packet traces on the Aether server, viewing the monitoring
355
+ dashboard, and viewing the gNB Status panel).
356
+
357
+ * **Milestone 1: Bring up SD-Core. ** Success can be verified by using
358
+ ``kubectl `` to observer the status of Kubernetes pods, and by noting
359
+ that the monitoring dashboard reports *UPF Up *. And as noted earlier
360
+ in this section, we recommend running gNBsim on a second server to
361
+ verify that you have a working network path between the gNB and the
362
+ Core before attempting to do the same with a physical gNB.
363
+
364
+ * **Milestone 2: Connect gNB to the Internet. ** Configuring the gNB to
365
+ treat the Aether server as its default router (and configuring that
366
+ server to forward IP packets) is the recommended way to provide the
367
+ gNB with Internet connectivity. Such connectivity is needed when
368
+ your deployment depends on Internet services like NTP, and it can be
369
+ verified by running ``ping `` or ``traceroute `` to those services
370
+ from the gNB.
371
+
372
+ * **Milestone 3: Connect gNB to the AMF. ** The gNB will automatically
373
+ try to establish control plane connectivity to the configured AMF,
374
+ and once successful, the dashboard will indicate *NR Ready *. The
375
+ Aether monitoring dashboard will also show *gNodeB Up *.
376
+
377
+ * **Milestone 4: Connect gNB to the UPF. ** Until we try to establish
378
+ end-to-end connectivity from the UE (see the next Milestone), the
379
+ best indicator of user plane connectivity between the gNB and UPF
380
+ can be shown by successfully running ``ping 192.168.252.3 `` on the
381
+ gNB.
382
+
383
+ * **Milestone 5: Establish UE Connectivity. ** Getting *5G bars * on
384
+ the UE, followed by the ability to access Internet content, is the
385
+ ultimate demonstration of success. To help diagnose problems, run
386
+ the packet captures described in the Verify Network section.
387
+
388
+ One reason for calling out this sequence of milestones is that they
389
+ establish a baseline that makes it easier for the community to help
390
+ troubleshoot a deployment.
361
391
362
- .. code-block ::
363
-
364
- $ sudo tcpdump -i any sctp -w sctp-test.pcap
365
- $ sudo tcpdump -i ens18 port 2152 -w gtp-outside.pcap
366
- $ sudo tcpdump -i access port 2152 -w gtp-inside.pcap
367
- $ sudo tcpdump -i core net 172.250.0.0/16 -w n6-inside.pcap
368
- $ sudo tcpdump -i ens18 net 172.250.0.0/16 -w n6-outside.pcap
369
-
370
- The first trace, saved in file ``sctp.pcap ``, captures SCTP packets
371
- sent to establish the control path between the base station and the
372
- Mobile Core (i.e., N2 messages). Toggling "Mobile Data" on the UE,
373
- for example by turning Airplane Mode off and on, will generate the
374
- relevant control plane traffic.
375
-
376
- The second and third traces, saved in files ``gtp-outside.pcap `` and
377
- ``gtp-inside.pcap ``, respectively, capture GTP packets (tunneled
378
- through port ``2152 `` ) on the RAN side of the UPF. Setting the
379
- interface to ``ens18 `` corresponds to "outside" the UPF and setting
380
- the interface to ``access `` corresponds to "inside" the UPF. Running
381
- ``ping `` from the UE will generate the relevant user plane (N3) traffic.
382
-
383
- Similarly, the fourth and fifth traces, saved in files
384
- ``n6-inside.pcap `` and ``n6-outside.pcap ``, respectively, capture IP
385
- packets on the Internet side of the UPF (which is known as the **N6 **
386
- interface in 3GPP). In these two tests, ``net 172.250.0.0/16 ``
387
- corresponds to the IP addresses assigned to UEs by the SMF. Running
388
- ``ping `` from the UE will generate the relevant user plane traffic.
389
-
390
- If the ``gtp-outside.pcap `` has packets and the ``gtp-inside.pcap ``
391
- is empty (no packets captured), you may run the following commands
392
- to make sure packets are forwarded from the ``ens18 `` interface
393
- to the ``access `` interface and vice versa:
394
-
395
- .. code-block ::
396
-
397
- $ sudo iptables -A FORWARD -i ens18 -o access -j ACCEPT
398
- $ sudo iptables -A FORWARD -i access -o ens18 -j ACCEPT
399
392
400
393
Support for eNBs
401
394
~~~~~~~~~~~~~~~~~~
0 commit comments