Commit 5ac6eeff authored by Guido Casati's avatar Guido Casati

ci: split PCF CN config out of shared mini_nonrf_config.yaml

The u0_25prb multi-QoS CI scenario needs PCF (use_local_pcc_rules: no),
but in f02c84fc that configuration has been placed in the shared
5g_rfsimulator/mini_nonrf_config.yaml. Every other rfsim pipeline
mounts that file without running oai-pcf.

In some setups different from Linux (i.e. WSL2) this causes issues.

With `use_local_pcc_rules: no`, SMF attempts associating to oai-pcf when
creating SM Context even when no PCF container exists. If that HTTP call
exceeds the wait timeout (100 ms), AMF gets error and does not complete
the SM context creation, a later Update SM Context then fails
("Could not find Nsmf_PDUSession URI").

Native Linux is usually fine: when the failed PCF association is fast
enough, context creation completes successfully.

This commit moves PCF-specific configuration into 5g_rfsimulator_u0_25prb
only. The shared config is restored to `use_local_pcc_rules: yes` and a single
oai DNN (pre-f02c84fc status).

Changes:
- Add new file 5g_rfsimulator_u0_25prb/mini_nonrf_config.yaml (PCF, dual-DNN,
  use_local_pcc_rules: no) and mount in 5g_rfsimulator_u0_25prb/docker-compose.yaml
- Revert 5g_rfsimulator/mini_nonrf_config.yaml
Signed-off-by: default avatarGuido Casati <guido.casati@openairinterface.org>
Reported-by: default avatarThomas Schlichter <thomas.schlichter@iis.fraunhofer.de>
parent 31ffb21a
...@@ -43,12 +43,6 @@ nfs: ...@@ -43,12 +43,6 @@ nfs:
n4: n4:
interface_name: eth0 interface_name: eth0
port: 8805 port: 8805
pcf:
host: oai-pcf
sbi:
port: 8080
api_version: v1
interface_name: eth0
upf: upf:
host: oai-upf host: oai-upf
...@@ -83,10 +77,6 @@ database: ...@@ -83,10 +77,6 @@ database:
snssais: snssais:
- &embb_slice1 - &embb_slice1
sst: 1 sst: 1
sd: "FFFFFF"
- &embb_slice2
sst: 1
sd: "123456"
############## NF-specific configuration ############## NF-specific configuration
amf: amf:
...@@ -113,7 +103,6 @@ amf: ...@@ -113,7 +103,6 @@ amf:
tac: 0x0001 tac: 0x0001
nssai: nssai:
- *embb_slice1 - *embb_slice1
- *embb_slice2
supported_integrity_algorithms: supported_integrity_algorithms:
- "NIA0" - "NIA0"
- "NIA1" - "NIA1"
...@@ -127,7 +116,7 @@ smf: ...@@ -127,7 +116,7 @@ smf:
ue_mtu: 1500 ue_mtu: 1500
support_features: support_features:
use_local_subscription_info: yes # Use infos from local_subscription_info or from UDM use_local_subscription_info: yes # Use infos from local_subscription_info or from UDM
use_local_pcc_rules: no # Enforce PCC rules from PCF use_local_pcc_rules: yes # Use infos from local_pcc_rules or from PCF
upfs: upfs:
- host: oai-upf - host: oai-upf
port: 8805 port: 8805
...@@ -155,9 +144,6 @@ smf: ...@@ -155,9 +144,6 @@ smf:
- sNssai: *embb_slice1 - sNssai: *embb_slice1
dnnSmfInfoList: dnnSmfInfoList:
- dnn: "oai" - dnn: "oai"
- sNssai: *embb_slice2
dnnSmfInfoList:
- dnn: "openairinterface"
local_subscription_infos: local_subscription_infos:
- single_nssai: *embb_slice1 - single_nssai: *embb_slice1
dnn: "oai" dnn: "oai"
...@@ -165,19 +151,6 @@ smf: ...@@ -165,19 +151,6 @@ smf:
5qi: 9 5qi: 9
session_ambr_ul: "200Mbps" session_ambr_ul: "200Mbps"
session_ambr_dl: "400Mbps" session_ambr_dl: "400Mbps"
- single_nssai: *embb_slice2
dnn: "openairinterface"
qos_profile:
5qi: 9
session_ambr_ul: "200Mbps"
session_ambr_dl: "400Mbps"
pcf:
local_policy:
policy_decisions_path: /openair-pcf/policies/policy_decisions
pcc_rules_path: /openair-pcf/policies/pcc_rules
traffic_rules_path: /openair-pcf/policies/traffic_rules
qos_data_path: /openair-pcf/policies/qos_data
upf: upf:
support_features: support_features:
...@@ -189,15 +162,9 @@ upf: ...@@ -189,15 +162,9 @@ upf:
- sNssai: *embb_slice1 - sNssai: *embb_slice1
dnnUpfInfoList: dnnUpfInfoList:
- dnn: "oai" - dnn: "oai"
- sNssai: *embb_slice2
dnnUpfInfoList:
- dnn: "openairinterface"
## DNN configuration ## DNN configuration
dnns: dnns:
- dnn: "oai" - dnn: "oai"
pdu_session_type: "IPV4" pdu_session_type: "IPV4"
ipv4_subnet: "12.1.1.0/24" ipv4_subnet: "12.1.1.0/24"
- dnn: "openairinterface"
pdu_session_type: "IPV4"
ipv4_subnet: "12.1.2.0/24"
...@@ -30,7 +30,7 @@ services: ...@@ -30,7 +30,7 @@ services:
environment: environment:
- TZ=Europe/paris - TZ=Europe/paris
volumes: volumes:
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-amf/etc/config.yaml - ./mini_nonrf_config.yaml:/openair-amf/etc/config.yaml
depends_on: depends_on:
- mysql - mysql
networks: networks:
...@@ -42,7 +42,7 @@ services: ...@@ -42,7 +42,7 @@ services:
environment: environment:
- TZ=Europe/Paris - TZ=Europe/Paris
volumes: volumes:
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-smf/etc/config.yaml - ./mini_nonrf_config.yaml:/openair-smf/etc/config.yaml
depends_on: depends_on:
- oai-amf - oai-amf
- oai-pcf - oai-pcf
...@@ -55,7 +55,7 @@ services: ...@@ -55,7 +55,7 @@ services:
environment: environment:
- TZ=Europe/Paris - TZ=Europe/Paris
volumes: volumes:
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-pcf/etc/config.yaml - ./mini_nonrf_config.yaml:/openair-pcf/etc/config.yaml
- ./policies/policy_decisions:/openair-pcf/policies/policy_decisions - ./policies/policy_decisions:/openair-pcf/policies/policy_decisions
- ./policies/pcc_rules:/openair-pcf/policies/pcc_rules - ./policies/pcc_rules:/openair-pcf/policies/pcc_rules
- ./policies/traffic_rules:/openair-pcf/policies/traffic_rules - ./policies/traffic_rules:/openair-pcf/policies/traffic_rules
...@@ -72,7 +72,7 @@ services: ...@@ -72,7 +72,7 @@ services:
environment: environment:
- TZ=Europe/Paris - TZ=Europe/Paris
volumes: volumes:
- ../5g_rfsimulator/mini_nonrf_config.yaml:/openair-upf/etc/config.yaml - ./mini_nonrf_config.yaml:/openair-upf/etc/config.yaml
depends_on: depends_on:
- oai-smf - oai-smf
cap_add: cap_add:
......
# SPDX-License-Identifier: LicenseRef-CSSL-1.0
# OAI CN Configuration File
### This file can be used by all OAI NFs
### Some fields are specific to an NF and will be ignored by other NFs
## NOTE ON YAML ANCHORS ##
# We use YAML anchors to ease the configuration and to avoid duplicating parts of the configuration.
# This is especially true for the SNSSAIs, as we have to define them for multiple NFs.
# Please note that the use of anchors is not mandatory, and you can define the SNSSAI in each NF yourself.
# You can read more about anchors here: https://yaml.org/spec/1.2.2/#anchors-and-aliases
############# Common configuration
# Log level for all the NFs
log_level:
general: debug
# If you enable registration, the other NFs will use the NRF discovery mechanism
register_nf:
general: no
http_version: 1
############## SBI Interfaces
### Each NF takes its local SBI interfaces and remote interfaces from here, unless it gets them using NRF discovery mechanisms
nfs:
amf:
host: oai-amf
sbi:
port: 80
api_version: v1
interface_name: eth0
n2:
interface_name: eth0
port: 38412
smf:
host: oai-smf
sbi:
port: 80
api_version: v1
interface_name: eth0
n4:
interface_name: eth0
port: 8805
pcf:
host: oai-pcf
sbi:
port: 8080
api_version: v1
interface_name: eth0
upf:
host: oai-upf
sbi:
port: 80
api_version: v1
interface_name: eth0
n3:
interface_name: eth0
port: 2152
n4:
interface_name: eth0
port: 8805
n6:
interface_name: eth1
n9:
interface_name: eth0
port: 2152
#### Common for UDR and AMF
database:
host: mysql
user: test
type: mysql
password: test
database_name: oai_db
generate_random: true
connection_timeout: 300 # seconds
## general single_nssai configuration
## Defines YAML anchors, which are reused in the config file
snssais:
- &embb_slice1
sst: 1
sd: "FFFFFF"
- &embb_slice2
sst: 1
sd: "123456"
############## NF-specific configuration
amf:
amf_name: "OAI-AMF"
# This really depends on if we want to keep the "mini" version or not
support_features_options:
enable_simple_scenario: yes # "no" by default with the normal deployment scenarios with AMF/SMF/UPF/AUSF/UDM/UDR/NRF.
# set it to "yes" to use with the minimalist deployment scenario (including only AMF/SMF/UPF) by using the internal AUSF/UDM implemented inside AMF.
# There's no NRF in this scenario, SMF info is taken from "nfs" section.
enable_nssf: no
enable_smf_selection: no
relative_capacity: 30
statistics_timer_interval: 20 # in seconds
emergency_support: false
served_guami_list:
- mcc: 208
mnc: 99
amf_region_id: 01
amf_set_id: 001
amf_pointer: 01
plmn_support_list:
- mcc: 208
mnc: 99
tac: 0x0001
nssai:
- *embb_slice1
- *embb_slice2
supported_integrity_algorithms:
- "NIA0"
- "NIA1"
- "NIA2"
supported_encryption_algorithms:
- "NEA0"
- "NEA1"
- "NEA2"
smf:
ue_mtu: 1500
support_features:
use_local_subscription_info: yes # Use infos from local_subscription_info or from UDM
use_local_pcc_rules: no # Enforce PCC rules from PCF
upfs:
- host: oai-upf
port: 8805
config:
enable_usage_reporting: no
# follows UPFInfo from 3GPP TS 29.510, currently only these values from interfaceUpfInfoList are supported
upf_info:
interfaceUpfInfoList:
- interfaceType: "N3"
networkInstance: "access.oai.org"
- interfaceType: "N6"
networkInstance: "core.oai.org"
ue_dns:
primary_ipv4: "172.21.3.100"
primary_ipv6: "2001:4860:4860::8888"
secondary_ipv4: "8.8.8.8"
secondary_ipv6: "2001:4860:4860::8888"
ims:
pcscf_ipv4: "127.0.0.1"
pcscf_ipv6: "fe80::7915:f408:1787:db8b"
# the DNN you configure here should be configured in "dnns"
# follows the SmfInfo datatype from 3GPP TS 29.510
smf_info:
sNssaiSmfInfoList:
- sNssai: *embb_slice1
dnnSmfInfoList:
- dnn: "oai"
- sNssai: *embb_slice2
dnnSmfInfoList:
- dnn: "openairinterface"
local_subscription_infos:
- single_nssai: *embb_slice1
dnn: "oai"
qos_profile:
5qi: 9
session_ambr_ul: "200Mbps"
session_ambr_dl: "400Mbps"
- single_nssai: *embb_slice2
dnn: "openairinterface"
qos_profile:
5qi: 9
session_ambr_ul: "200Mbps"
session_ambr_dl: "400Mbps"
pcf:
local_policy:
policy_decisions_path: /openair-pcf/policies/policy_decisions
pcc_rules_path: /openair-pcf/policies/pcc_rules
traffic_rules_path: /openair-pcf/policies/traffic_rules
qos_data_path: /openair-pcf/policies/qos_data
upf:
support_features:
enable_bpf_datapath: no # If "on": BPF is used as datapath else simpleswitch is used, DEFAULT= off
enable_snat: yes # If "on": Source natting is done for UE, DEFAULT= off
remote_n6_gw: 127.0.0.1 # Dummy host since simple-switch does not use N6 GW
upf_info:
sNssaiUpfInfoList:
- sNssai: *embb_slice1
dnnUpfInfoList:
- dnn: "oai"
- sNssai: *embb_slice2
dnnUpfInfoList:
- dnn: "openairinterface"
## DNN configuration
dnns:
- dnn: "oai"
pdu_session_type: "IPV4"
ipv4_subnet: "12.1.1.0/24"
- dnn: "openairinterface"
pdu_session_type: "IPV4"
ipv4_subnet: "12.1.2.0/24"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment