From c917760a47366655349d11586816e50e46b01574 Mon Sep 17 00:00:00 2001 From: Sukchan Lee Date: Sat, 19 Jul 2025 08:00:48 +0900 Subject: [PATCH] [HR] Update documentation to include Home Routed Roaming feature (#2194) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This update adds a comprehensive description of the Home Routed Roaming functionality, enhances the architecture section and message flow diagrams to illustrate the new routing process, and provides clear configuration examples and command‑line snippets to assist users with setup. --- docs/_docs/tutorial/05-roaming.md | 926 ++++++++++++++---- docs/assets/pcapng/5g-roaming-hr.pcapng | Bin 0 -> 621852 bytes ...aming_lbo.pcapng => 5g-roaming-lbo.pcapng} | Bin 3 files changed, 730 insertions(+), 196 deletions(-) create mode 100644 docs/assets/pcapng/5g-roaming-hr.pcapng rename docs/assets/pcapng/{5g_roaming_lbo.pcapng => 5g-roaming-lbo.pcapng} (100%) diff --git a/docs/_docs/tutorial/05-roaming.md b/docs/_docs/tutorial/05-roaming.md index d7ebdcf44..3f567fd99 100644 --- a/docs/_docs/tutorial/05-roaming.md +++ b/docs/_docs/tutorial/05-roaming.md @@ -4,10 +4,9 @@ title: Roaming ## 0. Introduction -Now, we will explain how to install and test 5G Core Roaming using Open5GS. Since we cannot test roaming with UERANSIM, we will use the test environment of Open5GS. - -We can only use the LBO method. HR roaming will be implemented at a later date. And also, 5G roaming has been implemented according to the document below. +This document explains how to install and test 5G Core Roaming using Open5GS. Since roaming cannot be tested with UERANSIM, we use Open5GS's built-in test environment. +Open5GS supports both LBO (Local Breakout) and HR (Home Routed) roaming methods. The 5G roaming implementation follows the specifications outlined in the document below: ``` TS29.500 6 General Functionalities in Service Based Architecture @@ -15,7 +14,7 @@ TS29.500 6.1.4.3 Routing across PLMN ``` -Let's start the explanation assuming that the connection test of the UE to this single host has been completed. +This explanation assumes that you have already completed the UE connection test on a single host. ## 1. Your First Roaming with Test Program @@ -29,36 +28,43 @@ $ meson build --prefix=`pwd`/install $ ninja -C build install ``` -#### Configure FQDN to DNS +#### Configure DNS for FQDN Resolution -For routing to Home PLMN, NRF, AUSF and UDM address in H-PLMN shall use FQDN format, so please edit the /etc/hosts file as follows. +For routing to the Home PLMN, the NRF, AUSF, and UDM addresses in H-PLMN must use FQDN format. Additionally, for HR roaming, NSSF, SMF, and BSF must also use FQDN format. Please edit the /etc/hosts file as follows: ```diff -$ diff -u hosts.old hosts.new ---- hosts.old 2023-10-02 11:58:54.261154726 +0900 -+++ hosts.new 2023-10-02 11:59:02.868771248 +0900 -@@ -1,6 +1,18 @@ +--- hosts 2025-07-15 08:33:36.594334895 +0900 ++++ /etc/hosts 2025-07-15 08:46:53.727356793 +0900 +@@ -1,6 +1,27 @@ 127.0.0.1 localhost 127.0.1.1 open5gs +127.0.1.10 nrf.5gc.mnc070.mcc999.3gppnetwork.org +127.0.1.11 ausf.5gc.mnc070.mcc999.3gppnetwork.org +127.0.1.12 udm.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.14 nssf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.4 smf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.15 bsf.5gc.mnc070.mcc999.3gppnetwork.org + +127.0.2.10 nrf.5gc.mnc001.mcc001.3gppnetwork.org +127.0.2.11 ausf.5gc.mnc001.mcc001.3gppnetwork.org +127.0.2.12 udm.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.14 nssf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.4 smf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.15 baf.5gc.mnc001.mcc001.3gppnetwork.org + +127.0.3.10 nrf.5gc.mnc010.mcc315.3gppnetwork.org +127.0.3.11 ausf.5gc.mnc010.mcc315.3gppnetwork.org +127.0.3.12 udm.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.14 nssf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.4 smf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.15 bsf.5gc.mnc010.mcc315.3gppnetwork.org + # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ``` - #### Run the V-PLMN 5G Core and H-PLMN 5G Core on a single host 5G Core requires root privileges as it uses reserved ports such as http(80) or https(443). @@ -69,7 +75,7 @@ $ sudo ./build/tests/app/5gc -c ./build/configs/examples/5gc-sepp2-001-01.yaml $ sudo ./build/tests/app/5gc -c ./build/configs/examples/5gc-sepp3-315-010.yaml ``` -Performs a test of UE access while roaming subscribed to H-PLMN. +Test UE access while roaming with UEs subscribed to different H-PLMNs. The same test commands work for both LBO and HR roaming scenarios - the roaming type is determined by the network configuration and policies: ``` $ ./build/tests/registration/registration -c ./build/configs/examples/gnb-999-70-ue-001-01.yaml simple-test $ ./build/tests/registration/registration -c ./build/configs/examples/gnb-999-70-ue-315-010.yaml simple-test @@ -79,15 +85,30 @@ $ ./build/tests/registration/registration -c ./build/configs/examples/gnb-315-01 $ ./build/tests/registration/registration -c ./build/configs/examples/gnb-315-010-ue-001-01.yaml simple-test ``` -You can see the sample traffic. -- [[5g-roaming-lbo.pcapng]]({{ site.url }}{{ site.baseurl }}/assets/pcapng/5g_roaming_lbo.pcapng). +You can see the sample traffic for both roaming types: +- LBO Roaming: [[5g-roaming-lbo.pcapng]]({{ site.url }}{{ site.baseurl }}/assets/pcapng/5g-roaming-lbo.pcapng) +- HR Roaming: [[5g-roaming-hr.pcapng]]({{ site.url }}{{ site.baseurl }}/assets/pcapng/5g-roaming-hr.pcapng) + ## 2. Roaming Test on a Single Host +Open5GS now supports both roaming architectures: + +1. **LBO (Local Breakout)**: User plane traffic is routed locally through the visited network's UPF +2. **HR (Home Routed)**: User plane traffic is routed back to the home network's UPF through the visited network + +The choice between LBO and HR is determined by subscriber configuration and roaming agreements. In Open5GS WebUI, you can configure the roaming type for each subscriber session using the `lbo_roaming_allowed` parameter: + +- **LBO Roaming**: Set `Subscriber.slice.session.lbo_roaming_allowed` to `true` +- **HR Roaming**: Set `Subscriber.slice.session.lbo_roaming_allowed` to `false` or leave it unset (default behavior) + +This allows flexible per-session roaming policy configuration based on subscriber profiles and service requirements. + ### Home PLMN -NRF shall follow TS23.003(28.3.2.3.2 Format of NRF FQDN) for routing. +The NRF must include PLMN information when serving in a 5G roaming environment. This enables proper network function discovery and routing by providing the necessary PLMN context for roaming subscribers. -- Create h-nrf.yaml +**Create h-nrf.yaml:** ```bash $ sh -c 'cat << EOF > ./install/etc/open5gs/h-nrf.yaml @@ -112,7 +133,9 @@ nrf: EOF' ``` -- Update h-scp.yaml +The SCP acts as a communication proxy between different network functions, enabling indirect communication and service discovery in the 5G Service Based Architecture. + +**Create h-scp.yaml:** ```bash $ sh -c 'cat << EOF > ./install/etc/open5gs/h-scp.yaml @@ -137,9 +160,9 @@ scp: EOF' ``` -AUSF and UDM shall use FQDN in the Home PLMN. +AUSF handles authentication procedures for UE access. It must use FQDN in the Home PLMN for proper authentication in roaming scenarios, ensuring that roaming subscribers can be properly authenticated by the home network. -- Update ausf.yaml +**Update ausf.yaml:** ```diff diff -u ./install/etc/open5gs/ausf.yaml.old ./install/etc/open5gs/ausf.yaml @@ -163,7 +186,9 @@ diff -u ./install/etc/open5gs/ausf.yaml.old ./install/etc/open5gs/ausf.yaml # SBI Server ``` -- Update udm.yaml +UDM handles user data management and subscription information. It must also use Home PLMN FQDN to ensure proper user data retrieval and management for roaming subscribers. + +**Update udm.yaml:** ```diff $ diff -u ./install/etc/open5gs/udm.yaml.old ./install/etc/open5gs/udm.yaml @@ -187,7 +212,9 @@ $ diff -u ./install/etc/open5gs/udm.yaml.old ./install/etc/open5gs/udm.yaml ################################################################################ ``` -- Update udr.yaml +UDR stores subscription data and user profiles. It needs updated SCP client configuration to properly communicate with other network functions through the service communication proxy. + +**Update udr.yaml:** ```diff $ diff -u ./install/etc/open5gs/udr.yaml.old ./install/etc/open5gs/udr.yaml @@ -204,7 +231,200 @@ $ diff -u ./install/etc/open5gs/udr.yaml.old ./install/etc/open5gs/udr.yaml # SBI Server ``` -- Update sepp1.yaml +SMF manages PDU sessions and requires comprehensive configuration for data plane handling. It coordinates with UPF for user plane traffic and handles session establishment, modification, and termination. + +**Create h-smf.yaml:** + +```bash +$ sh -c 'cat << EOF > ./install/etc/open5gs/h-smf.yaml +logger: + file: + path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/smf.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 + +smf: + sbi: + server: + - address: smf.5gc.mnc070.mcc999.3gppnetwork.org + client: +# nrf: +# - uri: http://127.0.1.10:7777 + scp: + - uri: http://127.0.1.200:7777 + pfcp: + server: + - address: 127.0.1.4 + client: + upf: + - address: 127.0.1.7 + gtpc: + server: + - address: 127.0.1.4 + gtpu: + server: + - address: 127.0.1.4 + metrics: + server: + - address: 127.0.1.4 + port: 9090 + session: + - subnet: 10.46.0.0/16 + gateway: 10.46.0.1 + - subnet: 2001:db8:babe::/48 + gateway: 2001:db8:babe::1 + dns: + - 8.8.8.8 + - 8.8.4.4 + - 2001:4860:4860::8888 + - 2001:4860:4860::8844 + mtu: 1400 +EOF' +``` + +UPF handles user data forwarding and requires coordination with SMF. It manages the user plane traffic routing and forwarding, including packet inspection and QoS enforcement. + +**Create h-upf.yaml:** + +```bash +$ sh -c 'cat << EOF > ./install/etc/open5gs/h-upf.yaml +logger: + file: + path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/upf.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 + +upf: + pfcp: + server: + - address: 127.0.1.7 + client: +# smf: # UPF PFCP Client try to associate SMF PFCP Server +# - address: 127.0.1.4 + gtpu: + server: + - address: 127.0.1.7 + session: + - subnet: 10.46.0.0/16 + gateway: 10.46.0.1 + dev: ogstun2 + - subnet: 2001:db8:babe::/48 + gateway: 2001:db8:babe::1 + dev: ogstun2 + metrics: + server: + - address: 127.0.1.7 + port: 9090 +EOF' +``` + +PCF provides policy control and charging rules for subscriber sessions. It determines QoS policies, charging rules, and session management policies based on subscriber profiles and network conditions. + +**Create h-pcf.yaml:** + +```bash +$ sh -c 'cat << EOF > ./install/etc/open5gs/h-pcf.yaml +db_uri: mongodb://localhost/open5gs +logger: + file: + path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/pcf.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 + +pcf: + sbi: + server: + - address: 127.0.1.13 + port: 7777 + client: +# nrf: +# - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.1.200:7777 + metrics: + server: + - address: 127.0.1.13 + port: 9090 +EOF' +``` + +BSF manages binding information for network functions. It maintains bindings between different network function instances and provides binding discovery services for dynamic network function selection. + +**Create h-bsf.yaml:** + +```bash +$ sh -c 'cat << EOF > ./install/etc/open5gs/h-bsf.yaml +logger: + file: + path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/bsf.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 + +bsf: + sbi: + server: + - address: 127.0.1.15 + port: 7777 + client: +# nrf: +# - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.1.200:7777 +EOF' +``` + +NSSF handles network slice selection and must use FQDN for proper slice identification. It determines which network slice instance should serve a particular UE based on subscription information and network slice availability. + +**Create h-nssf.yaml:** + +```bash +$ sh -c 'cat << EOF > ./install/etc/open5gs/h-nssf.yaml +logger: + file: + path: /home/acetcom/Documents/git/open5gs/install/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: + - address: nssf.5gc.mnc070.mcc999.3gppnetwork.org + client: +# nrf: +# - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.1.200:7777 + nsi: + - uri: http://nrf.5gc.mnc070.mcc999.3gppnetwork.org + s_nssai: + sst: 1 +EOF' +``` + + +SEPP handles security for inter-PLMN communication and requires SCP client update. It provides security functions for N32 interface communication between different PLMN networks, including message filtering and topology hiding. + +**Update sepp1.yaml:** ```diff $ diff -u ./install/etc/open5gs/sepp1.yaml.old ./install/etc/open5gs/sepp1.yaml @@ -223,15 +443,15 @@ $ diff -u ./install/etc/open5gs/sepp1.yaml.old ./install/etc/open5gs/sepp1.yaml ### Visited PLMN -The Visited Network should be configured using the PLMN ID 001/01, so the NRF and AMF settings should be changed accordingly. +The visited network NRF must be configured with the visited PLMN ID and use appropriate FQDN for network function registration and discovery. -- Update nrf.yaml +**Update nrf.yaml:** ```diff -$ diff -u ./install/etc/open5gs/nrf.yaml.old ./install/etc/open5gs/nrf.yaml ---- ./install/etc/open5gs/nrf.yaml.old 2023-11-19 18:02:34.105115863 +0900 -+++ ./install/etc/open5gs/nrf.yaml 2023-11-19 18:02:59.981115848 +0900 -@@ -10,8 +10,8 @@ +$ diff -u ./install/etc/open5gs/nrf.yaml ./install.new/etc/open5gs/nrf.yaml +--- ./install/etc/open5gs/nrf.yaml 2025-07-18 21:57:51.244553083 +0900 ++++ ./install.new/etc/open5gs/nrf.yaml 2025-07-18 21:32:57.596880880 +0900 +@@ -11,12 +11,11 @@ nrf: serving: # 5G roaming requires PLMN in NRF - plmn_id: @@ -241,16 +461,42 @@ $ diff -u ./install/etc/open5gs/nrf.yaml.old ./install/etc/open5gs/nrf.yaml + mnc: 01 sbi: server: - - address: 127.0.0.10 +- - address: 127.0.0.10 +- port: 7777 ++ - address: nrf.5gc.mnc001.mcc001.3gppnetwork.org + + ################################################################################ + # SBI Server ``` -- Update amf.yaml +The visited network SCP must be updated to reference the visited network NRF for proper service discovery and communication routing. + +**Update scp.yaml:** ```diff -$ diff -u ./install/etc/open5gs/amf.yaml.old ./install/etc/open5gs/amf.yaml ---- ./install/etc/open5gs/amf.yaml.old 2023-11-19 17:50:42.997116266 +0900 -+++ ./install/etc/open5gs/amf.yaml 2023-11-19 19:08:59.145113607 +0900 -@@ -19,27 +19,34 @@ +$ diff -u ./install/etc/open5gs/scp.yaml ./install.new/etc/open5gs/scp.yaml +--- ./install/etc/open5gs/scp.yaml 2025-07-18 21:57:51.262552520 +0900 ++++ ./install.new/etc/open5gs/scp.yaml 2025-07-18 21:33:54.670492255 +0900 +@@ -15,7 +15,7 @@ + port: 7777 + client: + nrf: +- - uri: http://127.0.0.10:7777 ++ - uri: http://nrf.5gc.mnc001.mcc001.3gppnetwork.org + + ################################################################################ + # SCP Info + ``` + +AMF handles access and mobility management for UEs. The visited network AMF must be configured to support both home and visited PLMN access control, and handle roaming subscribers appropriately. + +**Update amf.yaml:** + +```diff +$ diff -u ./install/etc/open5gs/amf.yaml ./install.new/etc/open5gs/amf.yaml +--- ./install/etc/open5gs/amf.yaml 2025-07-18 21:57:51.173555303 +0900 ++++ ./install.new/etc/open5gs/amf.yaml 2025-07-18 21:05:05.396288769 +0900 +@@ -20,27 +20,34 @@ - uri: http://127.0.0.200:7777 ngap: server: @@ -293,28 +539,43 @@ $ diff -u ./install/etc/open5gs/amf.yaml.old ./install/etc/open5gs/amf.yaml security: ``` -Due to the absence of UDR in the visiting network, V-PCF uses locally configured policies. When the UE is located in the home PLMN (001/01), MongoDB is used. On the other hand, when the UE is located in the visiting PLMN (999/70, 315/010), locally configured policies are used. This is because there is no session management policy data for the UE in the visiting network, so locally configured information based on the roaming agreement is used. +The visited network SMF must use the visited PLMN FQDN for proper session management and coordination with other network functions. -- Update pcf.yaml +**Update smf.yaml:** ```diff -$ diff -u ./install/etc/open5gs/pcf.yaml.old ./install/etc/open5gs/pcf.yaml ---- ./install/etc/open5gs/pcf.yaml.old 2023-11-19 18:05:35.389115760 +0900 -+++ ./install/etc/open5gs/pcf.yaml 2023-11-19 19:02:27.221113829 +0900 -@@ -1,4 +1,3 @@ --db_uri: mongodb://localhost/open5gs - logger: - file: - path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/pcf.log - # level: info # fatal|error|warn|info(default)|debug|trace -@@ -22,6 +21,29 @@ +$ diff -u ./install/etc/open5gs/smf.yaml ./install.new/etc/open5gs/smf.yaml +--- ./install/etc/open5gs/smf.yaml 2025-07-18 21:57:51.154555897 +0900 ++++ ./install.new/etc/open5gs/smf.yaml 2025-07-18 21:28:29.423632460 +0900 +@@ -11,8 +11,7 @@ + smf: + sbi: + server: +- - address: 127.0.0.4 +- port: 7777 ++ - address: smf.5gc.mnc001.mcc001.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 + ``` + + +Due to the absence of UDR in the visiting network, V-PCF uses locally configured policies. When the UE is located in the home PLMN (999/70), MongoDB is used. When the UE is located in the visiting PLMN (001/01), locally configured policies are used based on roaming agreements. + +**Update pcf.yaml:** + +```diff +$ diff --git a/configs/open5gs/pcf.yaml.in b/configs/open5gs/pcf.yaml.in +index 4c5d103f9..d16e85728 100644 +--- a/configs/open5gs/pcf.yaml.in ++++ b/configs/open5gs/pcf.yaml.in +@@ -23,6 +23,84 @@ pcf: server: - address: 127.0.0.13 port: 9090 + policy: -+ - plmn_id: -+ mcc: 999 -+ mnc: 70 ++ - supi_range: ++ - 999700000000001-999709999999999 + slice: + - sst: 1 # 1,2,3,4 + default_indicator: true @@ -334,9 +595,118 @@ $ diff -u ./install/etc/open5gs/pcf.yaml.old ./install/etc/open5gs/pcf.yaml + priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ - name: ims ++ type: 3 # 1:IPv4, 2:IPv6, 3:IPv4v6 ++ ambr: ++ downlink: ++ value: 1 ++ unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 1 ++ unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ qos: ++ index: 5 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ pcc_rule: ++ - qos: ++ index: 1 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ - qos: ++ index: 2 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 4 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 2 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 2 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ################################################################################ - # Locally configured policy + # PCF Policy Configuration: UE Home PLMN and SUPI Range Based Policies +``` + +The visited network BSF requires updated addresses to align with the visited network addressing scheme. + +**Update bsf.yaml:** + +```diff +$ diff -u ./install/etc/open5gs/bsf.yaml ./install.new/etc/open5gs/bsf.yaml +--- ./install/etc/open5gs/bsf.yaml 2025-07-18 21:57:51.405548049 +0900 ++++ ./install.new/etc/open5gs/bsf.yaml 2025-07-18 21:30:49.312390532 +0900 +@@ -11,13 +11,13 @@ + bsf: + sbi: + server: +- - address: 127.0.0.15 ++ - address: 127.0.1.15 + port: 7777 + client: + # nrf: + # - uri: http://127.0.0.10:7777 + scp: +- - uri: http://127.0.0.200:7777 ++ - uri: http://127.0.1.200:7777 + + ################################################################################ + # SBI Server +``` +The visited network NSSF must use the visited PLMN FQDN and reference the appropriate NRF for network slice selection services. + +**Update nssf.yaml:** + +```diff +diff -u ./install/etc/open5gs/nssf.yaml ./install.new/etc/open5gs/nssf.yaml +--- ./install/etc/open5gs/nssf.yaml 2025-07-18 21:57:51.387548612 +0900 ++++ ./install.new/etc/open5gs/nssf.yaml 2025-07-18 21:21:33.415221920 +0900 +@@ -11,15 +11,14 @@ + nssf: + sbi: + server: +- - address: 127.0.0.14 +- port: 7777 ++ - address: nssf.5gc.mnc001.mcc001.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.0.200:7777 + nsi: +- - uri: http://127.0.0.10:7777 ++ - uri: http://nrf.5gc.mnc001.mcc001.3gppnetwork.org + s_nssai: + sst: 1 + ################################################################################ ``` ### Run the V-PLMN 5G Core and H-PLMN 5G Core on a single host @@ -351,19 +721,24 @@ $ ./install/bin/open5gs-scpd -c ./install/etc/open5gs/h-scp.yaml $ sudo ./install/bin/open5gs-ausfd $ sudo ./install/bin/open5gs-udmd $ ./install/bin/open5gs-udrd +$ sudo ./install/bin/open5gs-smfd -c ./install/etc/open5gs/h-smf.yaml +$ ./install/bin/open5gs-upfd -c ./install/etc/open5gs/h-upf.yaml +$ ./install/bin/open5gs-pcfd -c ./install/etc/open5gs/h-pcf.yaml +$ ./install/bin/open5gs-bsfd -c ./install/etc/open5gs/h-bsf.yaml +$ sudo ./install/bin/open5gs-nssfd -c ./install/etc/open5gs/h-nssf.yaml $ ./install/bin/open5gs-seppd -c ./install/etc/open5gs/sepp1.yaml ``` #### Visited Network ``` -$ ./install/bin/open5gs-nrfd +$ sudo ./install/bin/open5gs-nrfd $ ./install/bin/open5gs-scpd $ ./install/bin/open5gs-amfd -$ ./install/bin/open5gs-smfd +$ sudo ./install/bin/open5gs-smfd $ ./install/bin/open5gs-upfd $ ./install/bin/open5gs-pcfd $ ./install/bin/open5gs-bsfd -$ ./install/bin/open5gs-nssfd +$ sudo ./install/bin/open5gs-nssfd $ ./install/bin/open5gs-seppd -c ./install/etc/open5gs/sepp2.yaml ``` @@ -417,21 +792,24 @@ imsi-315010000000001 - Edit /etc/hosts ```diff - $ diff -u hosts.old hosts.new ---- hosts.old 2023-10-02 12:22:41.320546720 +0900 -+++ hosts.new 2023-10-02 12:22:33.576884651 +0900 -@@ -1,6 +1,10 @@ +$ diff -u hosts.old hosts.new +--- hosts.old 2025-07-19 07:02:44.813666212 +0900 ++++ hosts.new 2025-07-19 07:02:51.019489167 +0900 +@@ -1,6 +1,13 @@ 127.0.0.1 localhost 127.0.1.1 open5gs -+127.0.0.10 nrf.5gc.mnc070.mcc999.3gppnetwork.org -+127.0.0.11 ausf.5gc.mnc070.mcc999.3gppnetwork.org -+127.0.0.12 udm.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.10 nrf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.11 ausf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.12 udm.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.14 nssf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.4 smf.5gc.mnc070.mcc999.3gppnetwork.org ++127.0.1.15 bsf.5gc.mnc070.mcc999.3gppnetwork.org + # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet - ``` +``` NRF shall follow TS23.003(28.3.2.3.2 Format of NRF FQDN) for routing. @@ -476,21 +854,30 @@ index 9be6cdc93..eee7d3e3f 100644 ```diff $ diff --git a/configs/open5gs/nssf.yaml.in b/configs/open5gs/nssf.yaml.in -index d01645b2c..7d89cffef 100644 +index 015085f56..92ceb63b5 100644 --- a/configs/open5gs/nssf.yaml.in +++ b/configs/open5gs/nssf.yaml.in -@@ -17,7 +17,7 @@ nssf: - scp: - - uri: http://127.0.0.200:7777 - nsi: -- - uri: http://127.0.0.10:7777 -+ - uri: http://nrf.5gc.mnc070.mcc999.3gppnetwork.org - s_nssai: - sst: 1 +@@ -11,15 +11,14 @@ global: + nssf: + sbi: + server: +- - address: 127.0.0.14 +- port: 7777 ++ - address: nssf.5gc.mnc070.mcc999.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.0.200:7777 + nsi: +- - uri: http://127.0.0.10:7777 ++ - uri: http://nrf.5gc.mnc070.mcc999.3gppnetwork.org + s_nssai: + sst: 1 ################################################################################ ``` -AUSF and UDM shall use FQDN in the Home PLMN. +AUSF, UDM and SMF shall use FQDN in the Home PLMN. - Update ausf.yaml @@ -530,6 +917,25 @@ index ce650d5c2..ed756fc28 100644 # - uri: http://127.0.0.10:7777 ``` +- Update smf.yaml +```diff +$ diff --git a/configs/open5gs/smf.yaml.in b/configs/open5gs/smf.yaml.in +index e47752393..b6cee9ff8 100644 +--- a/configs/open5gs/smf.yaml.in ++++ b/configs/open5gs/smf.yaml.in +@@ -11,8 +11,7 @@ global: + smf: + sbi: + server: +- - address: 127.0.0.4 +- port: 7777 ++ - address: smf.5gc.mnc070.mcc999.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 +``` + + AMF and UPF must use external IP addresses such as 10.10.1.x for communication between VM2 and VM3. - Update amf.yaml @@ -588,17 +994,17 @@ Due to the absence of UDR in the visiting network, V-PCF uses locally configured ```diff $ diff --git a/configs/open5gs/pcf.yaml.in b/configs/open5gs/pcf.yaml.in -index 2df2e9a36..9eea1f1de 100644 +index 4c5d103f9..c1526ff3a 100644 --- a/configs/open5gs/pcf.yaml.in +++ b/configs/open5gs/pcf.yaml.in -@@ -22,6 +22,51 @@ pcf: +@@ -23,6 +23,85 @@ pcf: server: - address: 127.0.0.13 port: 9090 + policy: -+ - plmn_id: -+ mcc: 001 -+ mnc: 01 ++ - supi_range: ++ - 001010000000001-001019999999999 ++ - 315010000000001-315010999999999 + slice: + - sst: 1 # 1,2,3,4 + default_indicator: true @@ -618,14 +1024,7 @@ index 2df2e9a36..9eea1f1de 100644 + priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled -+ - plmn_id: -+ mcc: 315 -+ mnc: 010 -+ slice: -+ - sst: 1 # 1,2,3,4 -+ default_indicator: true -+ session: -+ - name: internet ++ - name: ims + type: 3 # 1:IPv4, 2:IPv6, 3:IPv4v6 + ambr: + downlink: @@ -633,13 +1032,57 @@ index 2df2e9a36..9eea1f1de 100644 + unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + uplink: + value: 1 -+ unit: 3 ++ unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + qos: -+ index: 9 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ index: 5 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 + arp: -+ priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ pcc_rule: ++ - qos: ++ index: 1 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ - qos: ++ index: 2 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 4 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 2 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 2 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + + ################################################################################ + # PCF Policy Configuration: UE Home PLMN and SUPI Range Based Policies ``` For now we will set up SEPP without using TLS. @@ -711,21 +1154,24 @@ $ sudo ./install/bin/open5gs-udrd - Edit /etc/hosts ```diff - $ diff -u hosts.old hosts.new ---- hosts.old 2023-10-02 12:22:41.320546720 +0900 -+++ hosts.new 2023-10-02 12:22:33.576884651 +0900 -@@ -1,6 +1,10 @@ +$ diff -u hosts.old hosts.new +--- hosts.old 2025-07-19 07:02:44.813666212 +0900 ++++ hosts.new 2025-07-19 07:03:40.466147375 +0900 +@@ -1,6 +1,13 @@ 127.0.0.1 localhost 127.0.1.1 open5gs -+127.0.0.10 nrf.5gc.mnc001.mcc001.3gppnetwork.org -+127.0.0.11 ausf.5gc.mnc001.mcc001.3gppnetwork.org -+127.0.0.12 udm.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.10 nrf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.11 ausf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.12 udm.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.14 nssf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.4 smf.5gc.mnc001.mcc001.3gppnetwork.org ++127.0.2.15 baf.5gc.mnc001.mcc001.3gppnetwork.org + # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet - ``` +``` NRF shall follow TS23.003(28.3.2.3.2 Format of NRF FQDN) for routing. @@ -776,21 +1222,30 @@ index 9be6cdc93..eee7d3e3f 100644 ```diff $ diff --git a/configs/open5gs/nssf.yaml.in b/configs/open5gs/nssf.yaml.in -index d01645b2c..7d89cffef 100644 +index 015085f56..92ceb63b5 100644 --- a/configs/open5gs/nssf.yaml.in +++ b/configs/open5gs/nssf.yaml.in -@@ -17,7 +17,7 @@ nssf: - scp: - - uri: http://127.0.0.200:7777 - nsi: -- - uri: http://127.0.0.10:7777 -+ - uri: http://nrf.5gc.mnc001.mcc001.3gppnetwork.org - s_nssai: - sst: 1 +@@ -11,15 +11,14 @@ global: + nssf: + sbi: + server: +- - address: 127.0.0.14 +- port: 7777 ++ - address: nssf.5gc.mnc001.mcc001.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.0.200:7777 + nsi: +- - uri: http://127.0.0.10:7777 ++ - uri: http://nrf.5gc.mnc001.mcc001.3gppnetwork.org + s_nssai: + sst: 1 ################################################################################ ``` -AUSF and UDM shall use FQDN in the Home PLMN. +AUSF, UDM and SMF shall use FQDN in the Home PLMN. - Update ausf.yaml @@ -830,6 +1285,25 @@ index ce650d5c2..ed756fc28 100644 # - uri: http://127.0.0.10:7777 ``` +- Update smf.yaml +```diff +$ diff --git a/configs/open5gs/smf.yaml.in b/configs/open5gs/smf.yaml.in +index e47752393..b6cee9ff8 100644 +--- a/configs/open5gs/smf.yaml.in ++++ b/configs/open5gs/smf.yaml.in +@@ -11,8 +11,7 @@ global: + smf: + sbi: + server: +- - address: 127.0.0.4 +- port: 7777 ++ - address: smf.5gc.mnc001.mcc001.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 +``` + + AMF and UPF must use external IP addresses such as 10.10.2.x for communication between VM1 and VM3. - Update amf.yaml @@ -909,17 +1383,17 @@ Due to the absence of UDR in the visiting network, V-PCF uses locally configured ```diff $ diff --git a/configs/open5gs/pcf.yaml.in b/configs/open5gs/pcf.yaml.in -index 2df2e9a36..9eea1f1de 100644 +index 4c5d103f9..c1526ff3a 100644 --- a/configs/open5gs/pcf.yaml.in +++ b/configs/open5gs/pcf.yaml.in -@@ -22,6 +22,51 @@ pcf: +@@ -23,6 +23,85 @@ pcf: server: - address: 127.0.0.13 port: 9090 + policy: -+ - plmn_id: -+ mcc: 999 -+ mnc: 70 ++ - supi_range: ++ - 999700000000001-999709999999999 ++ - 315010000000001-315010999999999 + slice: + - sst: 1 # 1,2,3,4 + default_indicator: true @@ -939,14 +1413,7 @@ index 2df2e9a36..9eea1f1de 100644 + priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled -+ - plmn_id: -+ mcc: 315 -+ mnc: 010 -+ slice: -+ - sst: 1 # 1,2,3,4 -+ default_indicator: true -+ session: -+ - name: internet ++ - name: ims + type: 3 # 1:IPv4, 2:IPv6, 3:IPv4v6 + ambr: + downlink: @@ -954,13 +1421,57 @@ index 2df2e9a36..9eea1f1de 100644 + unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + uplink: + value: 1 -+ unit: 3 ++ unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + qos: -+ index: 9 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ index: 5 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 + arp: -+ priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ pcc_rule: ++ - qos: ++ index: 1 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ - qos: ++ index: 2 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 4 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 2 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 2 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + + ################################################################################ + # PCF Policy Configuration: UE Home PLMN and SUPI Range Based Policies ``` For now we will set up SEPP without using TLS. @@ -1033,20 +1544,23 @@ $ sudo ./install/bin/open5gs-udrd ```diff $ diff -u hosts.old hosts.new ---- hosts.old 2023-10-02 12:22:41.320546720 +0900 -+++ hosts.new 2023-10-02 12:22:33.576884651 +0900 -@@ -1,6 +1,10 @@ +--- hosts.old 2025-07-19 07:02:44.813666212 +0900 ++++ hosts.new 2025-07-19 07:04:14.598284689 +0900 +@@ -1,6 +1,13 @@ 127.0.0.1 localhost 127.0.1.1 open5gs -+127.0.0.10 nrf.5gc.mnc010.mcc315.3gppnetwork.org -+127.0.0.11 ausf.5gc.mnc010.mcc315.3gppnetwork.org -+127.0.0.12 udm.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.10 nrf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.11 ausf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.12 udm.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.14 nssf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.4 smf.5gc.mnc010.mcc315.3gppnetwork.org ++127.0.3.15 bsf.5gc.mnc010.mcc315.3gppnetwork.org + # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet - ``` +``` NRF shall follow TS23.003(28.3.2.3.2 Format of NRF FQDN) for routing. @@ -1097,21 +1611,30 @@ index 9be6cdc93..eee7d3e3f 100644 ```diff $ diff --git a/configs/open5gs/nssf.yaml.in b/configs/open5gs/nssf.yaml.in -index d01645b2c..7d89cffef 100644 +index 015085f56..92ceb63b5 100644 --- a/configs/open5gs/nssf.yaml.in +++ b/configs/open5gs/nssf.yaml.in -@@ -17,7 +17,7 @@ nssf: - scp: - - uri: http://127.0.0.200:7777 - nsi: -- - uri: http://127.0.0.10:7777 -+ - uri: http://nrf.5gc.mnc010.mcc315.3gppnetwork.org - s_nssai: - sst: 1 +@@ -11,15 +11,14 @@ global: + nssf: + sbi: + server: +- - address: 127.0.0.14 +- port: 7777 ++ - address: nssf.5gc.mnc010.mcc315.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 + scp: + - uri: http://127.0.0.200:7777 + nsi: +- - uri: http://127.0.0.10:7777 ++ - uri: http://nrf.5gc.mnc010.mcc315.3gppnetwork.org + s_nssai: + sst: 1 ################################################################################ ``` -AUSF and UDM shall use FQDN in the Home PLMN. +AUSF, UDM and SMF shall use FQDN in the Home PLMN. - Update ausf.yaml @@ -1151,6 +1674,24 @@ index ce650d5c2..ed756fc28 100644 # - uri: http://127.0.0.10:7777 ``` +- Update smf.yaml +```diff +$ diff --git a/configs/open5gs/smf.yaml.in b/configs/open5gs/smf.yaml.in +index e47752393..b6cee9ff8 100644 +--- a/configs/open5gs/smf.yaml.in ++++ b/configs/open5gs/smf.yaml.in +@@ -11,8 +11,7 @@ global: + smf: + sbi: + server: +- - address: 127.0.0.4 +- port: 7777 ++ - address: smf.5gc.mnc010.mcc315.3gppnetwork.org + client: + # nrf: + # - uri: http://127.0.0.10:7777 +``` + AMF and UPF must use external IP addresses such as 10.10.3.x for communication between VM1 and VM2. - Update amf.yaml @@ -1230,17 +1771,17 @@ Due to the absence of UDR in the visiting network, V-PCF uses locally configured ```diff $ diff --git a/configs/open5gs/pcf.yaml.in b/configs/open5gs/pcf.yaml.in -index 2df2e9a36..9eea1f1de 100644 +index 4c5d103f9..c1526ff3a 100644 --- a/configs/open5gs/pcf.yaml.in +++ b/configs/open5gs/pcf.yaml.in -@@ -22,6 +22,51 @@ pcf: +@@ -23,6 +23,85 @@ pcf: server: - address: 127.0.0.13 port: 9090 + policy: -+ - plmn_id: -+ mcc: 999 -+ mnc: 70 ++ - supi_range: ++ - 999700000000001-999709999999999 ++ - 001010000000001-001019999999999 + slice: + - sst: 1 # 1,2,3,4 + default_indicator: true @@ -1260,14 +1801,7 @@ index 2df2e9a36..9eea1f1de 100644 + priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled -+ - plmn_id: -+ mcc: 001 -+ mnc: 01 -+ slice: -+ - sst: 1 # 1,2,3,4 -+ default_indicator: true -+ session: -+ - name: internet ++ - name: ims + type: 3 # 1:IPv4, 2:IPv6, 3:IPv4v6 + ambr: + downlink: @@ -1275,57 +1809,57 @@ index 2df2e9a36..9eea1f1de 100644 + unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + uplink: + value: 1 -+ unit: 3 ++ unit: 3 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps + qos: -+ index: 9 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ index: 5 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 + arp: -+ priority_level: 8 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 + pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled + pre_emption_capability: 1 # 1: Disabled, 2:Enabled -``` ++ pcc_rule: ++ - qos: ++ index: 1 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 1 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 1 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 1 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 82 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ - qos: ++ index: 2 # 1, 2, 3, 4, 65, 66, 67, 75, 71, 72, 73, 74, 76, 5, 6, 7, 8, 9, 69, 70, 79, 80, 82, 83, 84, 85, 86 ++ arp: ++ priority_level: 4 # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ++ pre_emption_vulnerability: 2 # 1: Disabled, 2:Enabled ++ pre_emption_capability: 2 # 1: Disabled, 2:Enabled ++ mbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ gbr: ++ downlink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps ++ uplink: ++ value: 802 ++ unit: 1 # 0:bps, 1:Kbps, 2:Mbps, 3:Gbps, 4:Tbps -For now we will set up SEPP without using TLS. - -- Create sepp.yaml - -```bash -$ sh -c 'cat << EOF > ./install/etc/open5gs/sepp.yaml -logger: - file: - path: /home/acetcom/Documents/git/open5gs/install/var/log/open5gs/sepp.log -# level: info # fatal|error|warn|info(default)|debug|trace - -max: - ue: 1024 # The number of UE can be increased depending on memory size. -# peer: 64 - -sepp: - sbi: - server: - - address: 127.0.0.250 - port: 7777 - client: - scp: - - uri: http://127.0.0.200:7777 - n32: - server: - - sender: sepp3.localdomain - address: 10.10.3.251 - port: 7777 - n32f: - address: 10.10.3.252 - port: 7777 - client: - sepp: - - receiver: sepp1.localdomain - uri: http://10.10.1.251:7777 - n32f: - uri: http://10.10.1.252:7777 - - receiver: sepp2.localdomain - uri: http://10.10.2.251:7777 - n32f: - uri: http://10.10.2.252:7777 -EOF' + ################################################################################ + # PCF Policy Configuration: UE Home PLMN and SUPI Range Based Policies ``` NFs requires root privileges as it uses reserved ports such as http (80) or https (443). diff --git a/docs/assets/pcapng/5g-roaming-hr.pcapng b/docs/assets/pcapng/5g-roaming-hr.pcapng new file mode 100644 index 0000000000000000000000000000000000000000..17eb74b4725a8a9d62ca450859b0975f85923b45 GIT binary patch literal 621852 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 literal 0 HcmV?d00001 diff --git a/docs/assets/pcapng/5g_roaming_lbo.pcapng b/docs/assets/pcapng/5g-roaming-lbo.pcapng similarity index 100% rename from docs/assets/pcapng/5g_roaming_lbo.pcapng rename to docs/assets/pcapng/5g-roaming-lbo.pcapng