Skip to content

Commit

Permalink
Ueransim docs two slices (#341)
Browse files Browse the repository at this point in the history
* tutorial for ueransim with two slices

* Update README.md

* ueransim and open5gs versions updated
  • Loading branch information
jpontongradiant authored Feb 28, 2025
1 parent 23f7721 commit f48b075
Show file tree
Hide file tree
Showing 9 changed files with 1,615 additions and 0 deletions.
61 changes: 61 additions & 0 deletions docs/open5gs-and-ueransim-two-slices/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# open5gs and ueransim with two slices

This tutorial is an adaptation of the Open5GS and UERANSIM tutorial.

The slices values were changed in the gNBs, and the NSSF and AMF configuration files were added in the config folder. Also, the SMF configuration file was modified, and the register_subscriber.sh script was updated with the new slice values.

# Deployment NGC and register subscribers

deploy the ngc core (open5gs) with:

```
docker compose -f ngc.yaml up -d
```

Register subscribers in ngc with `./register_subscriber.sh`.


# Deploy gnodeb

gnb1.yaml is configured to deploy 1 gnodeb (gnb1) and 3 ues:

```
docker compose -f gnb1.yaml up -d
```

You can use gnb2.yaml to deploy a second gnodeb (gnb2) with 3 additional ues:

```
docker compose -f gnb2.yaml up -d
```


# Test

To test ue connectivity through RAN, enter the gnb1-ues1 container:

```
docker compose -f gnb1.yaml exec ues1 /bin/bash
traceroute -i uesimtun0 google.es
ping -I uesimtun0 google.es
```
ues container will have multiple interfaces (one for each ue).
You can try each tunnel providing the flag '-i' in traceroute and '-I' in ping.

If you have deployed a second genodeb (gnb2) the command to enter in the ues container is:

```
docker compose -f gnb2.yaml exec ues2 /bin/bash
```


# Clean Up

Undeploy with:

```
docker compose -f gnb1.yaml down
docker compose -f gnb2.yaml down
docker compose -f ngc.yaml down -v
```
60 changes: 60 additions & 0 deletions docs/open5gs-and-ueransim-two-slices/config/amf.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
logger:
path:
file: /opt/open5gs/var/log/open5gs/amf.log
# level: info # fatal|error|warn|info(default)|debug|trace

global:
# max:
# ue: 1024 # The number of UE can be increased depending on memory size.
# peer: 64

amf:
sbi:
server:
- dev: eth0
port: 7777
client:
# nrf:
# - uri: http://127.0.0.10:7777
scp:
- uri: http://scp:7777
ngap:
server:
- dev: eth0
metrics:
server:
- dev: eth0
port: 9090
guami:
- plmn_id:
mcc: 999
mnc: 70
amf_id:
region: 2
set: 1
tai:
- plmn_id:
mcc: 999
mnc: 70
tac: 1
plmn_support:
- plmn_id:
mcc: "999"
mnc: "70"
s_nssai:
- sd: "0x111111"
sst: "1"
- sd: "0x222222"
sst: "2"
security:
integrity_order: [NIA2, NIA1, NIA0]
ciphering_order: [NEA0, NEA1, NEA2]
network_name:
full: Open5GS
short: Next
amf_name: open5gs-amf0
time:
# t3502:
# value: 720 # 12 minutes * 60 = 720 seconds
t3512:
value: 540 # 9 minutes * 60 = 540 seconds
29 changes: 29 additions & 0 deletions docs/open5gs-and-ueransim-two-slices/config/nssf.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
logger:
path:
file: /opt/open5gs/var/log/open5gs/nssf.log
# level: info # fatal|error|warn|info(default)|debug|trace

global:
max:
# ue: 1024 # The number of UE can be increased depending on memory size.
# peer: 64

nssf:
sbi:
server:
- dev: eth0
port: 7777
client:
# nrf:
# - uri: http://127.0.0.10:7777
scp:
- uri: http://scp:7777
nsi:
- uri: http://nrf:7777
s_nssai:
sst: 1
sd: 0x111111
- uri: http://nrf:7777
s_nssai:
sst: 2
sd: 0x222222
Loading

0 comments on commit f48b075

Please sign in to comment.