Document release v2.0.1

This commit is contained in:
Sukchan Lee 2020-09-05 20:47:35 -04:00
parent 77de83099d
commit 5ab5ab4f01
3 changed files with 274 additions and 35 deletions

View File

@ -3,30 +3,239 @@ title: Open5GS Splitting Network Elements
head_inline: "<style> .blue { color: blue; } </style>"
---
In a production network, NFs would typically not all be on the same machine, as is the default example that ships with Open5GS.
In a production network, NFs are usually not on the same machine as the default example that comes with Open5GS.
Open5GS is designed to be standards compliant, so in theory you can connect any core network function from Open5GS or any other vendor to form a functioning network, so long as they are 3GPP compliant.
Open5GS is designed to comply with standards, so in theory you can connect core network functions from Open5GS or other vendors to form a functioning network. However, this is only possible if it complies with 3GPP.
To demonstrate this we will cover isolating each network element onto it's on machine and connect each network element to the other. For some interfaces specifying multiple interfaces is supported to allow connection to multiple
To demonstrate this, we will cover how to isolate each network function and connect each network function to another. For some interfaces, you can specify multiple interfaces to connect to multiple interfaces.
In these examples we'll be connecting Open5GS NFs together, but it could just as easily be NFs from a different vendor in the place of any Open5GS network functions.
In this example, we are connecting the Open5GS NF together, but instead of the Open5GS network function, you can easily connect them like other vendors' NFs.
| Service | IP | Identity |
| ------------- |:-------------:|:-------------:|
| SMF | 10.0.1.121 | smf.localdomain |
| SGW-C | 10.0.1.122 | |
| PCRF | 10.0.1.123 | pcrf.localdomain |
| MME | 10.0.1.124 | mme.localdomain |
| HSS | 10.0.1.118 | hss.localdomain |
## 1. Configuring Open5GS (No other vendors' NFs)
_Cloud Authentication and Session Management Server_
# External SMF
In it's simplest from the SMF has 3 interfaces:
```
MongoDB = 127.0.0.1 (subscriber data) - http://localhost:3000
MME-s1ap = 10.10.0.2 :36412 (authVPN) for S1-MME
MME-gtpc = 127.0.0.2 :any for S11
MME-frDi = 127.0.0.2 :3868 for S6a auth
SGWC-gtpc = 127.0.0.3 :2123 for S11
SGWC-pfcp = 10.10.0.3 :8805 (authVPN) for Sxa
SMF-gtpc = 127.0.0.4 :2123 for S5/8c, N11
SMF-pfcp = 10.10.0.4 :8805 (authVPN) for N4
SMF-frDi = 127.0.0.4 :3868 for Gx auth
SMF-sbi = 127.0.0.4 :7777 for 5G SBI (N7,N10,N11)
AMF-ngap = 10.10.0.5 :36412 (authVPN) for N2
AMF-sbi = 127.0.0.5 :7777 for 5G SBI (N8,N12,N11)
HSS-frDi = 127.0.0.8 :3868 for S6a auth
PCRF-frDi = 127.0.0.9 :3868 for Gx auth
NRF-sbi = 127.0.0.10:7777 for 5G SBI
AUSF-sbi = 127.0.0.11:7777 for 5G SBI
UDM-sbi = 127.0.0.12:7777 for 5G SBI
UDR-sbi = 127.0.0.13:7777 for 5G SBI
```
_Cloud Userplane Server (to host IMS etc)_
```
SGWU-pfcp = 10.10.0.6 :8805 (authVPN) for Sxa
SGWU-gtpu = 10.11.0.6 :2152 (userplaneVPN) for S1-U, S5/8u
UPF-pfcp = 10.10.0.7 :8805 (authVPN) for N4
UPF-gtpu = 10.11.0.7 :2152 (userplaneVPN) for S5/8u, N3
```
You can refer to the network settings at
[{{ site.url }}{{ site.baseurl }}/assets/Open5GS-Diagram.pdf]({{ site.url }}{{ site.baseurl }}/assets/Open5GS-Diagram.pdf) provided by [@kbarlee](https://github.com/kbarlee) in issue [#528](https://github.com/{{ site.github_username }}/open5gs/issues/528)
{: .notice--danger}
Modify [install/etc/open5gs/mme.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/mme.yaml.in) to set the S1AP IP address, PLMN ID, and TAC.
```diff
$ diff -u /etc/open5gs/mme.yaml.old /etc/open5gs/mme.yaml
--- mme.yaml.old 2020-08-22 11:36:40.512418765 -0400
+++ mme.yaml 2020-08-22 11:36:27.081466682 -0400
@@ -204,20 +204,20 @@
mme:
freeDiameter: /home/acetcom/Documents/git/open5gs/install/etc/freeDiameter/mme.conf
s1ap:
- addr: 127.0.0.2
+ addr: 10.10.0.2
gtpc:
addr: 127.0.0.2
gummei:
plmn_id:
- mcc: 001
- mnc: 01
+ mcc: 901
+ mnc: 70
mme_gid: 2
mme_code: 1
tai:
plmn_id:
- mcc: 001
- mnc: 01
- tac: 7
+ mcc: 901
+ mnc: 70
+ tac: 1
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
```
Modify [install/etc/open5gs/sgwc.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/sgwc.yaml.in) to set the PFCP IP address.
```diff
$ diff -u /etc/open5gs/sgwc.yaml.old /etc/open5gs/sgwc.yaml
@@ -49,7 +49,7 @@
gtpc:
addr: 127.0.0.3
pfcp:
- addr: 127.0.0.3
+ addr: 10.10.0.3
#
# sgwu:
@@ -100,7 +100,7 @@
#
sgwu:
pfcp:
- addr: 127.0.0.6
+ addr: 10.10.0.6
#
# parameter:
```
Modify [install/etc/open5gs/smf.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/smf.yaml.in) to set the PFCP IP address.
```diff
$ diff -u /etc/open5gs/smf.yaml.old /etc/open5gs/smf.yaml
--- smf.yaml.old 2020-08-22 11:37:39.990816411 -0400
+++ smf.yaml 2020-08-22 11:38:18.647999952 -0400
@@ -187,8 +187,7 @@
- addr: 127.0.0.4
- addr: ::1
pfcp:
- - addr: 127.0.0.4
- - addr: ::1
+ - addr: 10.10.0.4
pdn:
- addr: 10.45.0.1/16
- addr: cafe::1/64
@@ -282,7 +281,7 @@
#
upf:
pfcp:
- - addr: 127.0.0.7
+ - addr: 10.10.0.7
#
# parameter:
```
Modify [install/etc/open5gs/amf.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/amf.yaml.in) to set the NGAP IP address, PLMN ID, TAC and NSSAI.
```diff
diff -u /etc/open5gs/amf.yaml.old /etc/open5gs/amf.yaml
--- amf.yaml.old 2020-06-21 23:34:14.643114779 -0400
+++ amf.yaml 2020-06-21 23:34:28.718482095 -0400
@@ -67,25 +67,25 @@
- addr: 127.0.0.5
port: 7777
ngap:
- - addr: 127.0.0.5
+ - addr: 10.10.0.5
guami:
- plmn_id:
- mcc: 001
- mnc: 01
+ mcc: 901
+ mnc: 70
amf_id:
region: 2
set: 1
tai:
- plmn_id:
- mcc: 001
- mnc: 01
- tac: 7
+ mcc: 901
+ mnc: 70
+ tac: 1
plmn:
- plmn_id:
- mcc: 001
- mnc: 01
+ mcc: 901
+ mnc: 70
s_nssai:
- sst: 1
- - sd: 2
security:
integrity_order : [ NIA1, NIA2, NIA0 ]
ciphering_order : [ NEA0, NEA1, NEA2 ]
```
Modify [install/etc/open5gs/sgwu.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/sgwu.yaml.in) to set the GTP-U and PFCP IP address.
```diff
$ diff -u /etc/open5gs/sgwu.yaml.old /etc/open5gs/sgwu.yaml
--- sgwu.yaml.old 2020-08-22 11:41:09.214670723 -0400
+++ sgwu.yaml 2020-08-22 11:41:27.433937124 -0400
@@ -51,9 +51,9 @@
#
sgwu:
gtpu:
- addr: 127.0.0.6
+ addr: 10.11.0.6
pfcp:
- addr: 127.0.0.6
+ addr: 10.10.0.6
#
# sgwc:
```
Modify [install/etc/open5gs/upf.yaml](https://github.com/{{ site.github_username }}/open5gs/blob/master/configs/open5gs/upf.yaml.in) to set the GTP-U and PFCP IP address.
```diff
$ diff -u /etc/open5gs/upf.yaml.old /etc/open5gs/upf.yaml
--- upf.yaml.old 2020-08-22 11:42:57.781750067 -0400
+++ upf.yaml 2020-08-22 11:43:13.268901616 -0400
@@ -59,11 +59,9 @@
#
upf:
pfcp:
- - addr: 127.0.0.7
+ - addr: 10.10.0.7
gtpu:
- - addr:
- - 127.0.0.7
- - ::1
+ - addr: 10.11.0.7
pdn:
- addr: 10.45.0.1/16
- addr: cafe::1/64
```
After changing conf files, please restart Open5GS daemons.
```bash
$ sudo systemctl restart open5gs-mmed.service
$ sudo systemctl restart open5gs-sgwcd.service
$ sudo systemctl restart open5gs-smfd.service
$ sudo systemctl restart open5gs-amfd.service
$ sudo systemctl restart open5gs-upfd.service
$ sudo systemctl restart open5gs-sgwud.service
```
## 2. External SMF
In it's simplest form the SMF has 4 interfaces:
* S5 - Connection to home network SGW-C (GTP-C)
* Gx - Connection to PCRF (Diameter)
* SBI - Service-based interface(HTTP2)
* Sgi - Connection to external network (Generally the Internet via standard TCP/IP)
### S5 Interface Configuration
#### S5 Interface Configuration
Edit ```/etc/open5gs/smf.yaml``` and change the address to IP of the server running the SMF for the listener on GTP-C interfaces.
```
@ -37,10 +246,7 @@ smf:
- 10.0.1.121
```
### Gx Interface Configuration
#### Gx Interface Configuration
Edit ```/etc/freeDiameter/smf.conf```
Update ```ListenOn``` address to IP of the server running the SMF:
@ -51,19 +257,18 @@ Update ConnectPeer to connect to the PCRF on it's IP.
```ConnectPeer = "pcrf.localdomain" { ConnectTo = "10.0.1.123"; No_TLS; };```
### Restart Services
#### Restart Services
Restart Open5GS SMF Daemon:
``` $ sudo systemctl restart open5gs-smfd.service ```
# External SGW-C
## 3. External SGW-C
In it's simplest form the SGW-C has 2 interfaces:
* S11 - Connection to MME (GTP-C)
* S5 - Connection to the home network SMF (GTP-C)
### S5 Interface Configuration
#### S5 Interface Configuration
Edit ```/etc/open5gs/sgwc.yaml``` and change the address to IP of the server running the SGW-C for the listener on GTP-C interface.
```
@ -78,11 +283,11 @@ sgwc:
``` $ sudo systemctl restart open5gs-sgwcd.service ```
# External PCRF
## 4. External PCRF
In it's simplest from the PCRF has 1 network interface:
* Gx - Connection to SMF (Diameter)
### Gx Interface Configuration
#### Gx Interface Configuration
Edit ```/etc/freeDiameter/pcrf.conf```
Update ```ListenOn``` address to IP of the server running the HSS on it's IP:
@ -93,18 +298,18 @@ Update ConnectPeer to connect to the MME.
```ConnectPeer = "smf.localdomain" { ConnectTo = "10.0.1.121"; No_TLS; };```
### MongoDB Interface Configuration
#### MongoDB Interface Configuration
Edit the ```db_uri:``` to point at the Open5GS: ```db_uri: mongodb://10.0.1.118/open5gs```
Restart Open5GS PCRF Daemon:
``` $ sudo systemctl restart open5gs-pcrfd.service ```
# External HSS
## 5. External HSS
In it's simplest form the HSS has 1 network interface:
* S6a - Connection to MME (Diameter)
### S6a Interface Configuration
#### S6a Interface Configuration
Edit ```/etc/freeDiameter/hss.conf```
Update ```ListenOn``` address to IP of the server running the HSS on it's IP:
@ -119,7 +324,7 @@ Restart Open5GS HSS Daemon:
``` $ sudo systemctl restart open5gs-hssd.service ```
### MongoDB Interface Configuration (Open5GS specific)
#### MongoDB Interface Configuration (Open5GS specific)
If you are using Open5GS's HSS you may need to enable MongoDB access from the PCRF. This is done by editing ''/etc/mongodb.conf'' and changing the bind IP to:
``` bind_ip = 0.0.0.0 ```
@ -127,13 +332,13 @@ Restart MongoDB for changes to take effect.
``` $ /etc/init.d/mongodb restart ```
# External MME
## 6. External MME
In it's simplest form the MME has 3 interfaces:
* S1AP - Connections from eNodeBs
* S6a - Connection to HSS (Diameter)
* S11 - Connection to SGW-C (GTP-C)
### S11 Interface Configuration
#### S11 Interface Configuration
Edit ```/etc/open5gs/mme.yaml``` and filling the IP address of the SGW-C and SMF servers.
```
sgwc:
@ -146,7 +351,7 @@ smf:
- 10.0.1.121
```
### S6a Interface Configuration
#### S6a Interface Configuration
Edit ```/etc/freeDiameter/mme.conf```
Update ```ListenOn``` address to IP of the server running the MME:
@ -158,8 +363,7 @@ Update ConnectPeer to connect to the PCRF on it's IP.
```ConnectPeer = "hss.localdomain" { ConnectTo = "10.0.1.118"; No_TLS; };```
### Restart Services
#### Restart Services
Restart Open5GS MME Daemon:
``` $ sudo systemctl restart open5gs-mmed.service ```

View File

@ -1,6 +1,6 @@
---
title: "v2.0.0 - Package release for 5G Core and EPC"
date: 2020-07-10 15:26:00 -0400
date: 2020-08-21 15:26:00 -0400
categories:
- Release
tags:

View File

@ -0,0 +1,35 @@
---
title: "v2.0.1 - Stablize Open5GS packages"
date: 2020-09-05 19:48:00 -0400
categories:
- Release
tags:
- News
- Release
head_inline: "<style> ul { padding-bottom: 1em; } </style>"
---
#### Status Update
An issue with MME has been reported in issues [#472](https://github.com/open5gs/open5gs/issues/472). To solve this problem, I freeze the code for the time being and changed the process to terminate if any problems are found including ogs_expect().
Here's what I know about this issue: There seems to be a problem with mme-init.c under version 1.3.0. I found that the eventloop is implemented incorrectly, and I am suspecting that this is related to current mme's infinite loop.
Anyway, if you need it for the experiment, please send the related log. And if necessary, I will provide a release package to catch this bug.
#### For troubleshooting
- ogs_expect() calls ogs_abort() temporarily ([#472](https://github.com/open5gs/open5gs/issues/472)) -- [theorem6](https://github.com/theorem6), [bladebeam](https://github.com/bladebeam), [cabotek](https://github.com/cabotek)
#### Enhancement
- Allow subnet skipping in SMF configuration ([#548](https://github.com/open5gs/open5gs/issues/548)) -- [cecrevier](https://github.com/cecrevier)
- Change the number of UEs usage ([#533](https://github.com/open5gs/open5gs/issues/533)) -- [herlesupreeth](https://github.com/herlesupreeth)
#### Bug Fixed
- Maintaining Old NAS signalling ([#546](https://github.com/open5gs/open5gs/issues/546)) -- [carhercla2cat](https://github.com/carhercla2cat)
- Fix the Log rotate configuration ([#542](https://github.com/open5gs/open5gs/issues/542)) -- [kbarlee](https://github.com/kbarlee)
- Fix the test program bug ([#536](https://github.com/open5gs/open5gs/issues/536)) -- [s5uishida](https://github.com/s5uishida)
- Fix the bug for multiple video call ([#535](https://github.com/open5gs/open5gs/issues/535)) -- [kuanghanqian](https://github.com/kuanghanqian)
- Fix PDN connectivity request in PDN DISCONNECT ESM-state([#486](https://github.com/open5gs/open5gs/issues/486)) -- [yc541](https://github.com/yc541)
- Fix UPF/SGW-U selection bug
Download -- [v2.0.1.tar.gz](https://github.com/open5gs/open5gs/archive/v2.0.1.tar.gz)
{: .notice--info}