Amarisoft

Connecting to External MME

 

The purpose of this tutorial is to show you how to run multiple MME and let multiple eNB get connected to different MME.  Motivation for this tutorial was for the case where non-Amarisoft RAN and Amarisoft Core are used, but I don't have any non-Amarisoft RAN to play with and I tried with Amarisoft RAN and Amarisoft Core but they are in different location. However, you can apply the concept of this tutorial to the case for Amarisoft RAN + Non-Amarisoft Core and for Non-Amarisoft RAN + Amarisoft Core.  It is relatively simple to combine the heterogenious components, the only parameters that you need to pay attention to are  amf_addr and gtp_addr.

 

 

Table of Contents

 

 

Test Setup

 

In this setup, I installed callbox software on an external PC with fedora to use it as the external MME.

TestSetup ExternalMME 01

 

 

Configuration

 

I used gnb-sa-external-mme.cfg which is copied and modified from gnb-sa.cfg.

ExternalMME Configuration 01

I used mme-ims-external.cfg on the external MME PC which is copied from mme-ims.cfg.

ExternalMME Configuration 02

I used ots.default.cfg file in /root/ots/config directory on the external MME PC. I haven't created any additional config file for this because the change will be very minor and may not be mandatory.

ExternalMME Configuration 03

In gnb-sa-external-mme.cfg  on Callbox, I made the following modification. Note that I changed amf_addr to point to the external MME PC IP address and gtp_addr to point to the IP address of NIC on Callbox which has access to external PC.

ExternalMME Configuration 04

Configure as follows in /root/mme/config/mme.cfg (mme-ims-external.cfg ) on the external MME PC. gtp_addr here is the IP address of NIC which has access to other PCs.

ExternalMME Configuration 05

Configure as follows in /root/ots/config/ots.cfg on the external MME PC

ExternalMME Configuration 06

 

 

Perform the test

 

On Callbox (enb) screen, run the command : ng. this shows the IP address of the MME IP which the gNB is connected to.

ExternalMME Run 01

On the external MME PC, you can check the IP address of gNB which the MME is connected to using the command ng_ran in (mme) screen window.

ExternalMME Run 02

On the Callbox, confirm the gNB (cell) is configured as intended using 'cell' and 'cell phy' command.  The defailed configuration is not important for this tutorial. You may use any kind of SA configuration for this tutorial.

ExternalMME Run 03

 

Now Power On UE and let it complete the attach process and check if UE is successfully registerred to the external MME and IP address is assigned to the UE

ExternalMME Run 04

Try ping from the external MME PC to UE and confirm that ping goes through.

ExternalMME Run 05

 

ExternalMME Run 06

 

 

Log Analysis

 

Since the MME is running on external PC, I changed IP address of MME as shown below and increased the Max size of all the components to capture the full header of data traffic.

ExternalMME Log 01

 

Increase the max size of all the components on eNB for troubleshooting

ExternalMME Log 02

 

You can check if the gNB is successfully connected to the external MME

ExternalMME Log 03

 

Power on UE and check if all the protocol sequence is properly going through

ExternalMME Log 04