Open RAN  - open5GS  

 

 

 

 

 

Run with n12

 

In this note, I will talk about a case where we use components from multiple different product to complete a whole 5G core. In the example shown in this note, we use AUS from open5gs and all other components from Amarisoft AMF.

 

 

 

 

TestSetup

 

 

 

The overall network structure of 5G core is shown as below. Among these, the components with label (A) or (O) are the components that are used in my test. I used Amari callbox as gNB and most part of 5G Core, but only AUSF of the corenetwork is using Open5GS.

 

 

 

Test Setup for this note is shown below.  I would not describe any details on setup the virtual machine and Open5GS installation. If you are not familiar with this part, refer to this note. For now, I assume that the readers are already familiar with Virtual Machine setup and Open5GS installation.

 

 

 

 

Configuration

 

Now you have to change all the necessary configuration files according to your test setup. At the initial test, I need to change only one file ausf.amf file and all other files remain as default.

 

 

 

Following is the contents of amf.yaml and upf.yaml and the red part is what I have changed from the original configuration.

 

Following is the configuration changes in upf

ausf.yaml

ausf:

    sbi:

      - addr: 192.168.100.32  # This is IP address of the PC where open5gs is installed

        port: 7777                 # This is the port number of ausf

 

 

 

Restart the Services

 

Once you completed the change of configuration files, you need to restart the services which are using the changed configuration files as shown below.

 

$ sudo systemctl restart open5gs-ausfd

 

 

 

Log Analysis

 

I did simple initial attach and ping from open5gs to UE. Followings are the trace log captured by Amarisoft gNB and openGS.

 

Following is the log captured on Amarisoft Callbox WebGUI.  I would not go into the details of each message since most of the message details are same as the one described in this note.  The only message I will put the detailed content are N12 related messages marked as below.

 

 

 

[3] POST http://192.168.100.32:7777/nausf-auth/v1/ue-authentications

 

From: MME

Info: 192.168.100.17:9000, v2022-06-08

Time: 21:32:54.241

Index: 41

Message: 192.168.100.32:7777 POST http://192.168.100.32:7777/nausf-auth/v1/ue-authentications

 

Data:

Stream id: 1

HEADERS:

  :method: POST

  :path: /nausf-auth/v1/ue-authentications

  :scheme: http

  :authority: 192.168.100.32:7777

  accept: application/3gppHal+json

  accept: application/problem+json

  content-type: application/json

DATA:

  {"supiOrSuci":"suci-0-001-01-0-0-0-0000000001","servingNetworkName":"5G:mnc001.mcc001.3gppnetwork.org"}

 

 

[4] 192.168.100.32:7777 Status: 201

 

From: MME

Info: 192.168.100.17:9000, v2022-06-08

Time: 21:32:54.264

Index: 42

Message: 192.168.100.32:7777 Status: 201

 

Data:

Stream id: 1

HEADERS:

  :status: 201

  server: Open5GS v2.4.7

  date: Sat, 11 Jun 2022 01:32:54 GMT

  content-length: 318

  location: http://192.168.100.32:7777/nausf-auth/v1/ue-authentications/1

  content-type: application/3gppHal+json

DATA:

  {

    "authType": "5G_AKA",

    "5gAuthData":   {

        "rand": "be4104975fbf4db60393ce0b75ea34bf",

        "hxresStar":    "407731e6819e9b6431c6091a006a8a56",

        "autn": "d69ee87c1b79900118d00077a3e5e3d0"

    },

    "_links":   {

        "5g-aka":   {

            "href": "http://192.168.100.32:7777/nausf-auth/v1/ue-authentications/1/5g-aka-confirmation"

        }

    }

}

 

 

[5] PUT http://192.168.100.32:7777/nausf-auth/v1/ue-authentications/1/5g-aka-confirmation

 

From: MME

Info: 192.168.100.17:9000, v2022-06-08

Time: 21:32:54.281

Index: 47

Message: 192.168.100.32:7777 PUT http://192.168.100.32:7777/nausf-auth/v1/ue-authentications/1/5g-aka-confirmation

 

Data:

Stream id: 3

HEADERS:

  :method: PUT

  :path: /nausf-auth/v1/ue-authentications/1/5g-aka-confirmation

  :scheme: http

  :authority: 192.168.100.32:7777

  accept: application/json

  accept: application/problem+json

  content-type: application/json

DATA:

  {"resStar":"1d489ca1704604dad60b958c38a296f8"}

 

 

[6] 192.168.100.32:7777 Status: 200

 

From: MME

Info: 192.168.100.17:9000, v2022-06-08

Time: 21:32:54.293

Index: 48

Message: 192.168.100.32:7777 Status: 200

 

Data:

Stream id: 3

HEADERS:

  :status: 200

  server: Open5GS v2.4.7

  date: Sat, 11 Jun 2022 01:32:54 GMT

  content-length: 154

  content-type: application/json

DATA:

  {

    "authResult":   "AUTHENTICATION_SUCCESS",

    "supi": "imsi-001010000000001",

    "kseaf":    "4a221cd200c5a5e3dadb31b2a79d261896907ed0ce11f076853cde5072bcbd8c"

}