Challenge

Project 2

Table of Contents

1 Project Description. 1

2 Activities to perform... 1

2.1 Installation:. 1

2.2 Running and analysing logs. 2

2.2.1 Run the scenario 'Attach' with below command. 2

2.2.2 Run the scenario ‘Handover’ with below command. 3

2.2.3 Run the scenario ‘Volte’ with below commands. 3

3 Project Screenshots. 3

Project Description

The project is based on open5gs, an open-source EPC and 5G Core platform. This project can be used to configure your own LTE network. With this project you can create different scenarios, test them and analyse them. Open5GS implemented EPC using C-language.

The Open5GS 4G Core contains the following components:

MME - Mobility Management Entity

HSS - Home Subscriber Server

PCRF - Policy and Charging Rules Function

SGWC - Serving Gateway Control Plane

SGWU - Serving Gateway User Plane

PGWC/SMF - Packet Gateway Control Plane / (component contained in Open5GS SMF)

PGWU/UPF - Packet Gateway User Plane / (component contained in Open5GS UPF)

The core has two main planes: the control plane and the user plane. These are physically separated in Open5GS as CUPS (control/ user plane separation) is implemented.

The MME is the main control plane hub of the core. It primarily manages sessions, mobility, paging and bearers. It links to the HSS, which generates SIM authentication vectors and holds the subscriber profile; and also to the SGWC and PGWC/SMF, which are the control planes of the gateway servers. All the eNBs in the mobile network (4G base stations) connect to the MME. The final element of the control plane is the PCRF, which sits in-between the PGWC/SMF and the HSS, and handles charging and enforces subscriber policies.

The user plane carries user data packets between the eNB and the external WAN. The two user plane core components are the SGWU and PGWU. Each of these connect back to their control plane counterparts. eNBs connect to the SGWU, which connects to the PGWU, and on to the WAN. By having the control and user planes physically separated.

Activities to perform

Installation:

1. Start Ubuntu VM

2. open a terminal by right click on desktop

#install and enable MongoDB:

$ sudo apt update

$ sudo apt install mongodb

$ sudo systemctl start mongodb

$ sudo systemctl enable mongodb

#install Wireshark

$ sudo apt install wireshark

#install dependencties

$ sudo apt install python3-pip python3-setuptools python3-wheel ninja-build build-essential flex bison git libsctp-dev libgnutls28-dev libgcrypt-dev libssl-dev libidn11-dev libmongoc-dev libbson-dev libyaml-dev libnghttp2-dev libmicrohttpd-dev libcurl4-gnutls-dev libnghttp2-dev libtins-dev meson

#bring up the interface to run LTE modules

$ sudo ip tuntap add name ogstun mode tun

$ sudo ip addr add 10.45.0.1/16 dev ogstun

$ sudo ip link set ogstun up

#Getting the codebase:

$ git clone https://github.com/open5gs/open5gs

#Compiling the code

$ cd open5gs

$ meson build --prefix=`pwd`/install

$ ninja -C build

Running and analysing logs

Open “wireshark” and capture filter ‘s1ap’ on interface ‘any’

Run the scenario 'Attach' with below command

#./build/tests/attach/attach

The above commands run below tests:

- s1setup

- Attach-guti

- Authentication success/failure

- Idle mode procedures

- Emm status

- Ue context

- Reset

Analyse below messages:

- s1setup request

- s1setup response

- Attach call flow

- Receive Initial Context Setup Request + Attach Accept + Activate Default Bearer Context Request

- UE Capability Info

- Error indication from EPC

- UE Context Release

- TAU Request

- TAU Accept

- UE Context Release Command because of EMM Status from UE with cause "ESM_CAUSE_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE"

- Initial context setup failure with cause "S1AP_CauseRadioNetwork_radio_connection_with_ue_lost" received from UE, causing ue context release

Run the scenario ‘Handover’ with below command

#./build/tests/handover/handover

The above commands run below tests:

- S1 Handover Failure, Success, Cancel

- X2 Handover path switch

Analyse below messages:

- GTP-U ICMP request

- GTP-U ICMP response

- S1 HO call flow

- TAU

- GTP-U ICMP request

- GTP-U ICMP response

- Handover Cancel

- HandoverCancelAcknowledge

- Handover Failure

- Handover Preparation Failure

-

- Path Switch Request

- Path Switch Ack

- End Mark

Run the scenario ‘Volte’ with below commands

#./build/tests/volte/volte

The above commands run below tests:

- Session establishment for Volte

- Failure scenario of invalid PDN

- Volte Video/Audio call

Analyse below messages:

- Activate dedicated EPS bearer context

- PDN Connectivity Request witm "ims" pdn and qci = 5

- PDN Connectivity Reject with invalid pdn "ims2" and qci = 9

- aar audio application test

- aar_video application test

Project Screenshots

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.