5G Core Network Setup

5G Core Network Setup

In this guide, I discuss how I’m configuring my 5G Network in YateMMI.

For a better comprehension:
Basic presentation of the 5G components here: 5G Core Network 

If you have time to dive deeper we recommend you take a look at the introductory standard  ETSI – System Achitcure for the 5G System

Introduction

The 5G network can contain the following products: YateNRF, YateUDM and YateUCN5G.

  • YateNRF works similarly to YateSTP or YateDRA, but for 5G networks.

  • YateUDM is equivalent to YateHSS/HLR for 5G networks. It allows SS7 Support and Diameter support, but more than a usual YateHSS/HLR, the YateUDM allows 5G support. If I disable the 5G feature, YateUDM functions exactly like a YateHSS/HLR. However, when I enable 5G support, I see two additional wizard steps: CAPIF and UDM/AUSF settings.

  • YateUCN5G is an enhanced version of YateUCN. YateUCN5G allows SMF support, AMF support, and SMSF support. If I disable these new features, YateUCN5G works like a YateUCN. But when I enable any of the new features, extra wizard steps (CAPIF, SMF, AMF, and SMSF) will appear. The CAPIF wizard step is displayed when at least one of the new features is enabled.

My Network

Network settings

Since my YateMMI version supports 5G configuration, I’ll see a “5G Support” option in My Network -> Network Settings.

To set any 5G equipment, I have to make sure the“5G Support” is checked.

5G Core Network Setup 37

Equipment

Just got the message You need to configure network NRF before any other network equipment.” in the Equipment -> Core tab, which means I got 5G support activated in my network.

5G Core Network Setup 38

YateNRF

The Network Repository Function (NRF) is the network node(s) repository (database).

As the system message asks (screenshot above), the first equipment that I have to add to my network is YateNRF. Without it, I am not allowed to add other 5G equipment like YateUDM and/or YateUCN5G.

When setting up YateNRF, the default wizard step is ‘NRF’. If I want interconnect support, I can enable the “SEPP support” and “CAPIF support” features.

After configuring YateUDM or YateUCN5G, the following checkbox appeared: “Auto generate connection to it from all equipment”. Checking this option, automatically creates connections to the current YateNRF, and its SEPP (if SEPP is enabled), for each configured YateUDM or YateUCN5G.

5G Core Network Setup 39

NRF step

In the NRF step, it is mandatory to set the API Root. This is required to allow other equipment to connect to the YateNRF.

Ex – API Root: http://localhost

External NRFs is a list of external NRFs along with SEPP(s) to use.

5G Core Network Setup 40

SEPP steps: SEPP Route table & SEPP N32c

The Security Edge Protection Proxy (SEPP) is a non transparent HTTP proxy. Each SEPP uses a N32 connection toward peer SEPP.

If I enable SEPP support, two additional steps will be displayed: SEPP Route table and SEPP N32c (SEPP security negotiation interface), those are settings that apply to SEPP node.

5G Core Network Setup 41

Optionally, I can set the SEPP Base URL (ex:http://localhost) in SEPP Route table step. This setting helps building the connection from other 5G equipment to the SEPP of the YateNRF.

Since I didn’t set the SEPP Base URL but SEPP support is active, the system uses the API Root from the NRF step to create the connections to SEPP.

5G Core Network Setup 42

CAPIF step

CAPIF, or “Common API Framework”, is defined by 3GPP to oversee the APIs provided by 3GPP networks through their northbound interfaces.

Enabling CAPIF support, makes the CAPIF step available to be configured.

5G Core Network Setup 43

How to configure YateNRF equipment

Up until now, YateNRF was added as a custom equipment.

Before making any configuration changes, it’s a good practice to do a back up of the /etc/yate/nrf folder by saving it as an archive, just in case something goes wrong.

Step 1

  • First I check if the YateNRF is added as Node type : Custom

YateMMI -> Equipment -> Core -> YateNRF (+) -> Edit -> Node type (field)

  • If it’s marked as custom, I delete the existing YateNRF equipment:

YateMMI -> Equipment -> Core -> YateNRF (+) -> Delete

 

Step 2

  • Next, I add the YateNRF equipment, as Node type: YateNRF

YateMMI -> Equipment -> Core -> “Add Core equipment”

 

In the ‘Add NRF’ step:

  • Name: YateNRF

  • Node type: YateNRF

  • Management Interface IP: 127.0.0.1

  • The Hostname and Serial number fields will be filled automatically by the API

 

In the “Enable equipment features” section I disable both “SEPP support” and “CAPIF support” for now (I can activate them later if needed)

In the NRF step:

  • API Root: http://127.0.0.1/capif.php

  • Served PLMN(s): Adding my PLMNs here, separated by commas (e.g., 00101,00103).

  • Check the box for Strict discovery parameters.

  • Save changes and restart the equipment.

YateUDM

The Unified Data Repository (UDM) stores subscriber data and location for the 5G network.

YateUDM is like YateHSS/HLR but with added 5G capabilities. If I disable the 5G support for YateUDM, the ‘CAPIF’ and ‘UDM/AUSF settings’ steps won’t appear. In this scenario my YateUDM will work like an YateHSS/HLR.

5G Core Network Setup 44

Since my Network supports 5G configuration, I can upgrade an existing YateHSS/HLR to a YateUDM equipment type, and set 5G features using button displayed below:

5G Core Network Setup 45

CAPIF & UDM/AUSF settings

The Authentication Server Function (AUSF) provides subscriber authentication, normally based on SIM. (Similar use as AuC Authentication Center).

The ‘Connections to YateNRF/SEPP’ option is only available for YateUDM and YateUCN5G. The options I see in YateMMI depend on how I configured YateNRF.

5G Core Network Setup 46

What I configured in ‘UDM/AUSF settings‘ step, will be set in HSS config file along with the other common settings.

5G Core Network Setup 47

YateUCN5G

The Session Management Function (SMF) control of the data sessions. Together, the AMF and SMF are roughly equivalent to 4G MME.
The Access and Mobility Management Function (AMF) is responsible from mobility management. The AMF makes the signaling connection with UE and helps UE to register.
The SMSF (Short Message Service Function) allows SMS to be transferred via NAS in 5G networks. SMSF will communicate with the AMF to verify subscriptions and act as a relay between the device and the SMSC.

YateUCN5G offers more functionality than the regular YateUCN. I can choose to enable or disable SMF Support, AMF Support, and SMSF Support. If I enable at least one of these features, the CAPIF tab will appear.

If I disable all three (SMF, AMF, and SMSF), YateUCN5G will function just like a standard YateUCN, and the CAPIF, AMF, SMF, and SMSF steps will be hidden.

Disabling a feature, from the main step, means that any related configurations will be deleted.

I also have the option to disable each feature (SMF, AMF, SMSF) directly within their respective steps using Status field.

If a feature is enabled in the main step (‘Edit equipment’->’SMF support’), but its status is set to “disabled” in it’s respective step (‘SMF’), the configuration won’t be deleted. Instead, it’s just ignored, as if the feature is marked as turned off in the product config files. However the configurations are still kept both in the MMI and the product files.

5G Core Network Setup 48

Since my Network supports 5G configuration, I can also upgrade an existing YateUCN to a YateUCN5G equipment type, and set 5G features using the button displayed below:

5G Core Network Setup 49

Below you can see an example of SMF, AMF, SMSF steps:

5G Core Network Setup 50
5G Core Network Setup 51
5G Core Network Setup 52

NGAP SCTP Listeners

The Access and Mobility Management Function (AMF) is responsible from mobility management. The AMF makes the signaling connection with UE and helps UE to register.

 NGAP SCTP Listeners are configured in AMF step. If both AMF feature support and AMF module status are active, I’ll have to set a NGAP SCTP Listener, otherwise, an API error will appear.

By default, the listener status is set to active. If I edit the equipment, I can disable a listener, and the configuration for disabled listeners won’t be sent to the equipment.

The default value of NGAP SCTP Stream is 3. I can change this default value from NGAP SCTP Stream field, which will apply to all the NGAP Listeners. I can also set a different Stream value for each Listener in the NGAP Listener Advanced fields.

5G Core Network Setup 53

CAPIF

The CAPIF step only appears if my equipment has at least one 5G feature enabled.
In this step I can configure:

  • CAPIF nodes (Instances)

  • Connections to NRF/SEPP (this is available only for YateUDM and YateUCN5G)

    • options are displayed based on my YateNRF equipment configuration

  • Connections/Additional Connections (to nodes like NRF, SEPP, AMF, SMF, SMSF, AUSF, UDM)

 
Instances
 

In ‘Common Instances Settings’ section I can set the common values for all the instances (though I can also adjust these for each individual instance).

The ‘Base URL’ parameter shouldn’t include a suffix — that goes in the ‘URL Suffixfield. If I don’t specify a suffix, it defaults to ‘capif.php’.

Instances types are based on equipment type:

  • YateUCN5G: AMF, SMF, SMSF

  • YateUDM: AUSF, UDM

  • YateNRF: NRF

I can generate a Node instance identifier by clicking on ‘Generate Instance value (UUID V4)’. The code must be unique, otherwise is not usable. There is a very small chance for the generated code to not be unique, in this case, another unique code must be generated.

The ‘Register to NRF’ field is a boolean (true/false) option. By default, each instance will use the value set in the Common Instances Settings.

5G Core Network Setup 54

Connections to YateNRF

Connection to NRF

I can set up connections between other 5G equipment and YateNRF in two ways:

  1. Automatically when adding YateNRF equipment (if other 5G equipment is already configured):

    • By simply checking the “Auto generate connection to it from all equipment” option and providing the API Root in the NRF step.

  2. From the CAPIF step of each 5G equipment:
    a. Using “Connections to YateNRF/SEPP”:

    • Selecting or checking the connection to the desired YateNRF.
      (This option is available only if the API Root parameter was previously set in the YateNRF equipment.)

b. Using “Additional Connection”:

    • Adding the connection by selecting ‘NRF’ as the node type and entering the ‘Base URL’.
      (Without forgetting to review the advanced fields with default values!)

Connection to SEPP

To connect to the SEPP of a YateNRF, make sure the SEPP support feature is active. I can create the connection using two methods:

  1. Automatically when adding YateNRF equipment (if other 5G equipment is already configured):

    • Checking the “Auto generate connection to it from all equipment” option and providing the API Root or SEPP Base URL in the NRF step.
      (If a SEPP Base URL is provided, it will be used; otherwise, the connection will use the API Root URL.)

  2. From the CAPIF step of each 5G equipment:
    a. Using “Connections to YateNRF/SEPP”:

    • Selecting the connection to the desired SEPP.
      (This option is available only if the API Root or SEPP Base URL has been set in YateNRF.)

b. Using “Additional Connection”:

    • Adding the connection by selecting ‘SEPP’ as the node type and specifying the ‘Base URL’.
      (I make sure to also review the advanced fields for default values!)

Attention: The SEPP Base URL shouldn’t include a suffix!

Note:
If I check the “Auto generate connection to it from all equipment” option and the SEPP support feature is active on YateNRF, two connections will be automatically added to each configured 5G equipment: one to SEPP and one to NRF. The SEPP connection will use the SEPP Base URL if specified, or the API Root if not.