diff --git a/doc/tutorial_resources/oai-cn5g/conf/config.yaml b/doc/tutorial_resources/oai-cn5g/conf/config.yaml index a3951fdc01..ffa9fbf55f 100644 --- a/doc/tutorial_resources/oai-cn5g/conf/config.yaml +++ b/doc/tutorial_resources/oai-cn5g/conf/config.yaml @@ -59,6 +59,23 @@ nfs: n4: interface_name: eth0 port: 8805 + upf: + host: oai-upf + sbi: + port: 8080 + api_version: v1 + interface_name: eth0 + n3: + interface_name: eth0 + port: 2152 + n4: + interface_name: eth0 + port: 8805 + n6: + interface_name: eth0 + n9: + interface_name: eth0 + port: 2152 udm: host: oai-udm sbi: @@ -94,6 +111,16 @@ database: 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 + - &embb_slice2 + sst: 1 + - &embb_slice3 + sst: 1 + ############## NF-specific configuration amf: pid_directory: "/var/run" @@ -110,7 +137,7 @@ amf: served_guami_list: - mcc: 001 mnc: 01 - amf_region_id: 80 + amf_region_id: 01 amf_set_id: 001 amf_pointer: 01 plmn_support_list: @@ -118,7 +145,9 @@ amf: mnc: 01 tac: 0x0001 nssai: - - sst: 1 + - *embb_slice1 + - *embb_slice2 + - *embb_slice3 supported_integrity_algorithms: - "NIA1" - "NIA2" @@ -134,7 +163,7 @@ smf: use_local_pcc_rules: yes # Use infos from local_pcc_rules or from PCF # we resolve from NRF, this is just to configure usage_reporting upfs: - - host: oai-spgwu + - host: oai-upf config: enable_usage_reporting: no ue_dns: @@ -145,40 +174,68 @@ smf: ims: pcscf_ipv4: "192.168.70.139" pcscf_ipv6: "fe80::7915:f408:1787:db8b" - # the DNN you configure here should be configured in "dnns" + # 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" + - sNssai: *embb_slice3 + dnnSmfInfoList: + - dnn: "ims" local_subscription_infos: - - single_nssai: - sst: 1 + - single_nssai: *embb_slice1 dnn: "oai" qos_profile: 5qi: 9 session_ambr_ul: "10Gbps" session_ambr_dl: "10Gbps" - - single_nssai: - sst: 1 + - single_nssai: *embb_slice2 dnn: "openairinterface" qos_profile: 5qi: 9 session_ambr_ul: "10Gbps" session_ambr_dl: "10Gbps" - - single_nssai: - sst: 1 + - single_nssai: *embb_slice3 dnn: "ims" qos_profile: 5qi: 9 session_ambr_ul: "10Gbps" session_ambr_dl: "10Gbps" +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: localhost # Dummy host since simple-switch does not use N6 GW + smfs: + - host: oai-smf # To be used for PFCP association in case of no-NRF + upf_info: + sNssaiUpfInfoList: + - sNssai: *embb_slice1 + dnnUpfInfoList: + - dnn: "oai" + - sNssai: *embb_slice2 + dnnUpfInfoList: + - dnn: "openairinterface" + - sNssai: *embb_slice3 + dnnUpfInfoList: + - dnn: "ims" + ## DNN configuration dnns: - dnn: "oai" pdu_session_type: "IPV4" - ipv4_subnet: "12.1.1.2/24" + ipv4_subnet: "10.0.0.0/24" - dnn: "openairinterface" pdu_session_type: "IPV4V6" - ipv4_subnet: "12.1.2.2/24" + ipv4_subnet: "10.0.1.0/24" ipv6_prefix: "2001:1:2::/64" - dnn: "ims" pdu_session_type: "IPV4V6" - ipv4_subnet: "12.1.9.2/24" + ipv4_subnet: "10.0.9.0/24" ipv6_prefix: "2001:1:2::/64" diff --git a/doc/tutorial_resources/oai-cn5g/docker-compose.yaml b/doc/tutorial_resources/oai-cn5g/docker-compose.yaml index 9837983ed8..64e3174219 100644 --- a/doc/tutorial_resources/oai-cn5g/docker-compose.yaml +++ b/doc/tutorial_resources/oai-cn5g/docker-compose.yaml @@ -22,7 +22,7 @@ services: ipv4_address: 192.168.70.131 ims: - container_name: "asterisk-ims" + container_name: "ims" image: oaisoftwarealliance/ims:latest volumes: - ./conf/sip.conf:/etc/asterisk/sip.conf @@ -129,40 +129,16 @@ services: networks: public_net: ipv4_address: 192.168.70.133 - oai-spgwu: - container_name: "oai-spgwu" - image: oaisoftwarealliance/oai-spgwu-tiny:develop + oai-upf: + container_name: "oai-upf" + image: oaisoftwarealliance/oai-upf:develop expose: - 2152/udp - 8805/udp - - 8080/tcp - # TODO: oai-spgwu-tiny will not support the new common yaml config file feature - # waiting for the new oai-upf NF + volumes: + - ./conf/config.yaml:/openair-upf/etc/config.yaml environment: - TZ=Europe/Paris - - SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP=eth0 - - SGW_INTERFACE_NAME_FOR_SX=eth0 - - PGW_INTERFACE_NAME_FOR_SGI=eth0 - - NETWORK_UE_NAT_OPTION=yes - - NETWORK_UE_IP=12.1.0.0/16 - - ENABLE_5G_FEATURES=yes - - REGISTER_NRF=yes - - USE_FQDN_NRF=yes - - UPF_FQDN_5G=oai-spgwu - - NRF_IPV4_ADDRESS=192.168.70.130 - - NRF_FQDN=oai-nrf - # Mandatory to set the NRF PORT to 8080 (it is set to default to 80 otherwise) - - HTTP_VERSION=2 - - NRF_PORT=8080 - # Slice 0 (1, 0xFFFFFF) - - NSSAI_SST_0=1 - - DNN_0=oai - # Slice 1 (1, 0xFFFFFF) - - NSSAI_SST_1=1 - - DNN_1=openairinterface - # Slice 2 (1, 0xFFFFFF) - - NSSAI_SST_2=1 - - DNN_2=ims depends_on: - oai-nrf - oai-smf @@ -181,10 +157,10 @@ services: container_name: oai-ext-dn image: oaisoftwarealliance/trf-gen-cn5g:jammy entrypoint: /bin/bash -c \ - "ip route add 12.1.0.0/16 via 192.168.70.134 dev eth0; ip route; sleep infinity" + "ip route add 10.0.0.0/16 via 192.168.70.134 dev eth0; ip route; sleep infinity" command: ["/bin/bash", "-c", "trap : SIGTERM SIGINT; sleep infinity & wait"] healthcheck: - test: /bin/bash -c "ip r | grep 12.1.0" + test: /bin/bash -c "ip r | grep 10.0.0" interval: 5s timeout: 2s retries: 10