Commit 43666fef authored by yangjian's avatar yangjian

fix 5gc-smf.conf

parent 5bafac84
...@@ -14,6 +14,13 @@ services: ...@@ -14,6 +14,13 @@ services:
networks: networks:
openxg: openxg:
ipv4_address: 172.11.200.14 ipv4_address: 172.11.200.14
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
- ../template/amf.template:/opt/5gcs/etc/amf.template
- ../template/smf.template:/opt/5gcs/etc/smf.template
- ../template/upf.template:/opt/5gcs/etc/upf.template
- ../template/entrypoint_5gc.py:/opt/5gcs/etc/entrypoint.py
environment: environment:
# AMF # AMF
- MCC=466 - MCC=466
...@@ -46,6 +53,13 @@ services: ...@@ -46,6 +53,13 @@ services:
networks: networks:
openxg: openxg:
ipv4_address: 172.11.200.15 ipv4_address: 172.11.200.15
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
- ../template/amf.template:/opt/5gcs/etc/amf.template
- ../template/smf.template:/opt/5gcs/etc/smf.template
- ../template/upf.template:/opt/5gcs/etc/upf.template
- ../template/entrypoint_5gc.py:/opt/5gcs/etc/entrypoint.py
environment: environment:
# AMF # AMF
- MCC=466 - MCC=466
...@@ -77,6 +91,13 @@ services: ...@@ -77,6 +91,13 @@ services:
networks: networks:
openxg: openxg:
ipv4_address: 172.11.200.16 ipv4_address: 172.11.200.16
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
- ../template/amf.template:/opt/5gcs/etc/amf.template
- ../template/smf.template:/opt/5gcs/etc/smf.template
- ../template/upf.template:/opt/5gcs/etc/upf.template
- ../template/entrypoint_5gc.py:/opt/5gcs/etc/entrypoint.py
environment: environment:
# AMF # AMF
- MCC=466 - MCC=466
...@@ -108,6 +129,13 @@ services: ...@@ -108,6 +129,13 @@ services:
networks: networks:
openxg: openxg:
ipv4_address: 172.11.200.17 ipv4_address: 172.11.200.17
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
- ../template/amf.template:/opt/5gcs/etc/amf.template
- ../template/smf.template:/opt/5gcs/etc/smf.template
- ../template/upf.template:/opt/5gcs/etc/upf.template
- ../template/entrypoint_5gc.py:/opt/5gcs/etc/entrypoint.py
environment: environment:
# AMF # AMF
- MCC=466 - MCC=466
......
...@@ -14,6 +14,13 @@ services: ...@@ -14,6 +14,13 @@ services:
networks: networks:
openxg: openxg:
ipv4_address: 172.11.200.14 ipv4_address: 172.11.200.14
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
- ../template/amf.template:/opt/5gcs/etc/amf.template
- ../template/smf.template:/opt/5gcs/etc/smf.template
- ../template/upf.template:/opt/5gcs/etc/upf.template
- ../template/entrypoint_5gc.py:/opt/5gcs/etc/entrypoint.py
environment: environment:
# AMF # AMF
- MCC=466 - MCC=466
......
...@@ -15,7 +15,7 @@ services: ...@@ -15,7 +15,7 @@ services:
ipv4_address: 172.11.200.100 ipv4_address: 172.11.200.100
command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml" command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/gnb.template:/ueransim/etc/gnb.template - ../template/gnb.template:/ueransim/etc/gnb.template
#- ./lib/nr-gnb:/ueransim/bin/nr-gnb #- ./lib/nr-gnb:/ueransim/bin/nr-gnb
environment: environment:
...@@ -60,7 +60,7 @@ services: ...@@ -60,7 +60,7 @@ services:
ipv4_address: 172.11.200.200 ipv4_address: 172.11.200.200
command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml" command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/ue.template:/ueransim/etc/ue.template - ../template/ue.template:/ueransim/etc/ue.template
#- ./lib/nr-ue:/ueransim/bin/nr-ue #- ./lib/nr-ue:/ueransim/bin/nr-ue
environment: environment:
...@@ -90,7 +90,7 @@ services: ...@@ -90,7 +90,7 @@ services:
ipv4_address: 172.11.200.101 ipv4_address: 172.11.200.101
command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml" command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/gnb.template:/ueransim/etc/gnb.template - ../template/gnb.template:/ueransim/etc/gnb.template
#- ./lib/nr-gnb:/ueransim/bin/nr-gnb #- ./lib/nr-gnb:/ueransim/bin/nr-gnb
environment: environment:
...@@ -135,7 +135,7 @@ services: ...@@ -135,7 +135,7 @@ services:
ipv4_address: 172.11.200.201 ipv4_address: 172.11.200.201
command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml" command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/ue.template:/ueransim/etc/ue.template - ../template/ue.template:/ueransim/etc/ue.template
#- ./lib/nr-ue:/ueransim/bin/nr-ue #- ./lib/nr-ue:/ueransim/bin/nr-ue
environment: environment:
...@@ -165,7 +165,7 @@ services: ...@@ -165,7 +165,7 @@ services:
ipv4_address: 172.11.200.102 ipv4_address: 172.11.200.102
command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml" command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/gnb.template:/ueransim/etc/gnb.template - ../template/gnb.template:/ueransim/etc/gnb.template
#- ./lib/nr-gnb:/ueransim/bin/nr-gnb #- ./lib/nr-gnb:/ueransim/bin/nr-gnb
environment: environment:
...@@ -210,7 +210,7 @@ services: ...@@ -210,7 +210,7 @@ services:
ipv4_address: 172.11.200.202 ipv4_address: 172.11.200.202
command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml" command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/ue.template:/ueransim/etc/ue.template - ../template/ue.template:/ueransim/etc/ue.template
#- ./lib/nr-ue:/ueransim/bin/nr-ue #- ./lib/nr-ue:/ueransim/bin/nr-ue
environment: environment:
...@@ -240,7 +240,7 @@ services: ...@@ -240,7 +240,7 @@ services:
ipv4_address: 172.11.200.103 ipv4_address: 172.11.200.103
command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml" command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/gnb.template:/ueransim/etc/gnb.template - ../template/gnb.template:/ueransim/etc/gnb.template
#- ./lib/nr-gnb:/ueransim/bin/nr-gnb #- ./lib/nr-gnb:/ueransim/bin/nr-gnb
environment: environment:
...@@ -285,7 +285,7 @@ services: ...@@ -285,7 +285,7 @@ services:
ipv4_address: 172.11.200.203 ipv4_address: 172.11.200.203
command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml" command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/ue.template:/ueransim/etc/ue.template - ../template/ue.template:/ueransim/etc/ue.template
#- ./lib/nr-ue:/ueransim/bin/nr-ue #- ./lib/nr-ue:/ueransim/bin/nr-ue
environment: environment:
......
...@@ -15,7 +15,7 @@ services: ...@@ -15,7 +15,7 @@ services:
ipv4_address: 172.11.200.100 ipv4_address: 172.11.200.100
command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml" command: /bin/bash -c "/ueransim/bin/nr-gnb -c /ueransim/etc/gnb.yaml"
volumes: volumes:
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py - ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/gnb.template:/ueransim/etc/gnb.template - ../template/gnb.template:/ueransim/etc/gnb.template
#- ./lib/nr-gnb:/ueransim/bin/nr-gnb #- ./lib/nr-gnb:/ueransim/bin/nr-gnb
environment: environment:
...@@ -60,8 +60,8 @@ services: ...@@ -60,8 +60,8 @@ services:
ipv4_address: 172.11.200.101 ipv4_address: 172.11.200.101
command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml" command: /bin/bash -c "/ueransim/bin/nr-ue -c /ueransim/etc/ue.yaml"
volumes: volumes:
- ../template/entrypoint_ueransim.py:/ueransim/etc/entrypoint.py
- ../template/ue.template:/ueransim/etc/ue.template - ../template/ue.template:/ueransim/etc/ue.template
- ../template/entrypoint.py:/ueransim/etc/entrypoint.py
#- ./lib/nr-ue:/ueransim/bin/nr-ue #- ./lib/nr-ue:/ueransim/bin/nr-ue
environment: environment:
- UERANSIM_TYPE=UE # Which to use GNB/UE - UERANSIM_TYPE=UE # Which to use GNB/UE
......
################################################################################
# Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The OpenAirInterface Software Alliance licenses this file to You under
# the OAI Public License, Version 1.1 (the "License"); you may not use this file
# except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.openairinterface.org/?page_id=698
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#-------------------------------------------------------------------------------
# For more information about the OpenAirInterface (OAI) Software Alliance:
# contact@openairinterface.org
################################################################################
AMF =
{
INSTANCE_ID = 4; # 0 is the default
PID_DIRECTORY = "/var/run"; # /var/run is the default
AMF_NAME = "openxg-amf";
RELATIVE_CAPACITY = 30;
# Display statistics about whole system (in seconds)
STATISTICS_TIMER_INTERVAL = 20;
CORE_CONFIGURATION:
{
EMERGENCY_SUPPORT = "false";
};
GUAMI:
{
MCC = "{{ env["MCC"] }}"; MNC = "{{ env["MNC"] }}"; RegionID = "128"; AMFSetID = "4"; AMFPointer = "1"
}
SERVED_GUAMI_LIST = (
{MCC = "{{ env["MCC"] }}"; MNC = "{{ env["MNC"] }}"; RegionID = "128"; AMFSetID = "4"; AMFPointer = "1"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer>
);
PLMN_SUPPORT_LIST = (
{
MCC = "{{ env["MCC"] }}"; MNC = "{{ env["MNC"] }}"; TAC = {{ env["TAC"] }};
SLICE_SUPPORT_LIST = (
# {SST = "@SST_0@"; SD = "@SD_0@"},
# {SST = "@SST_1@"; SD = "@SD_1@"},
{SST = 1; SD = 0xFFFFFF}
)
}
);
INTERFACES:
{
# AMF binded interface for N1/N2 interface (NGAP)
NGAP_AMF:
{
INTERFACE_NAME = "{{ env["INTERFACE_NAME"] }}";
IPV4_ADDRESS = "read";
PORT = 38412;
PPID = 60;
};
# AMF binded interface for SBI (N11 (SMF)/N12 (AUSF), etc.)
SBI:
{
INTERFACE_NAME = "lo";
IPV4_ADDRESS = "127.0.0.5/24";
PORT = 80;
API_VERSION = "v1";
HTTP2_PORT = 8404;
SMF_INSTANCES_POOL = (
{SMF_INSTANCE_ID = 5; IPV4_ADDRESS = "127.0.0.6"; PORT = "80"; HTTP2_PORT = 8405, VERSION = "v1"; FQDN = "smf", SELECTED = "true"}
);
};
NRF :
{
IPV4_ADDRESS = "127.0.0.10";
PORT = 8010; # Default: 80
API_VERSION = "v1";
#FQDN = "localhost";
};
AUSF :
{
IPV4_ADDRESS = "127.0.0.4";
PORT = 8003; # Default: 80
API_VERSION = "v1";
#FQDN = "localhost";
};
UDM :
{
IPV4_ADDRESS = "127.0.0.3";
PORT = 8002; # Default: 80
API_VERSION = "v2";
#FQDN = "localhost";
};
# NSSF :
# {
# IPV4_ADDRESS = "";
# PORT = @NSSF_PORT@; # Default: 80
# API_VERSION = "@NSSF_API_VERSION@";
# FQDN = "@NSSF_FQDN@"
# };
};
SUPPORT_FEATURES:
{
# STRING, {"yes", "no"},
NF_REGISTRATION = "no"; # Set to yes if AMF resgisters to an NRF
NRF_SELECTION = "no"; # Set to yes to enable NRF discovery and selection
EXTERNAL_NRF = "no"; # Set to yes if AMF works with an external NRF
SMF_SELECTION = "no"; # Set to yes to enable SMF discovery and selection
EXTERNAL_AUSF = "no"; # Set to yes if AMF works with an external AUSF
EXTERNAL_UDM = "no"; # Set to yes if AMF works with an external UDM
EXTERNAL_NSSF = "no"; # Set to yes if AMF works with an external NSSF
USE_FQDN_DNS = "no"; # Set to yes if AMF relies on a DNS to resolve NRF/SMF/UDM/AUSF's FQDN
USE_HTTP2 = "no"; # Set to yes to enable HTTP2 for AMF server
}
AUTHENTICATION:
{
## MySQL mandatory options
MYSQL_server = "{{ env["AMF_MySQL_SERVER_ADDR"] }}"; # MySQL Server address
MYSQL_user = "{{ env["AMF_MySQL_USERNAME"] }}"; # Database server login
MYSQL_pass = "{{ env["AMF_MySQL_PASSWORD"] }}"; # Database server password
MYSQL_db = "{{ env["AMF_MySQL_DATABASE"] }}"; # Your database name
RANDOM = "true";
};
NAS:
{
ORDERED_SUPPORTED_INTEGRITY_ALGORITHM_LIST = [ "NIA2" , "NIA1" , "NIA0" ]; #Default [ "NIA0" , "NIA1" , "NIA2" ];
ORDERED_SUPPORTED_CIPHERING_ALGORITHM_LIST = [ "NEA0" , "NEA1" , "NEA2" ]; #Default [ "NEA0" , "NEA1" , "NEA2" ];
};
};
MODULES =
{
NGAP_MESSAGE = (
{MSG_NAME = "NGSetupRequest"; ProcedureCode = 21; TypeOfMessage = "initialMessage"}
);
};
#!/usr/bin/env python3
from jinja2 import Environment, FileSystemLoader
import socket
import os
import sys
CONFIG_FILE = str(os.getenv('CONFIG_FILE','/opt/5gcs/etc/'))
AMF_CONFIG_FILE = str(os.getenv('AMF_CONFIG_FILE','/opt/5gcs/etc/amf.conf'))
SMF_CONFIG_FILE = str(os.getenv('SMF_CONFIG_FILE','/opt/5gcs/etc/smf.conf'))
UPF_CONFIG_FILE = str(os.getenv('UPF_CONFIG_FILE','/opt/5gcs/etc/spgw_u.conf'))
def resolve(hostname):
try:
return socket.gethostbyname(hostname)
except socket.error:
print(f"Not able to resolve {hostname}")
def render(filepath,funcs,values):
env = Environment(loader=FileSystemLoader(os.path.dirname(filepath)))
jinja_template = env.get_template(os.path.basename(filepath))
jinja_template.globals.update(funcs)
template_string = jinja_template.render(env=values)
return template_string
env_variables = dict()
#list of all the environment variables
for name, value in os.environ.items():
env_variables.update({name:value})
output = render(CONFIG_FILE + 'amf.template',{"resolve":resolve},env_variables)
with open(AMF_CONFIG_FILE, "w") as fh:
fh.write(output)
print(f"Configuration file {AMF_CONFIG_FILE} is ready")
output = render(CONFIG_FILE + 'smf.template',{"resolve":resolve},env_variables)
with open(SMF_CONFIG_FILE, "w") as fh:
fh.write(output)
print(f"Configuration file {SMF_CONFIG_FILE} is ready")
output = render(CONFIG_FILE + 'upf.template',{"resolve":resolve},env_variables)
with open(UPF_CONFIG_FILE, "w") as fh:
fh.write(output)
print(f"Configuration file {UPF_CONFIG_FILE} is ready")
if len(sys.argv) == 1:
sys.exit(0)
#important for running the network function it works like exec $@
os.execvp(sys.argv[1], sys.argv[1:])
################################################################################
# Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The OpenAirInterface Software Alliance licenses this file to You under
# the OAI Public License, Version 1.1 (the "License"); you may not use this file
# except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.openairinterface.org/?page_id=698
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#-------------------------------------------------------------------------------
# For more information about the OpenAirInterface (OAI) Software Alliance:
# contact@openairinterface.org
################################################################################
SMF =
{
# FQDN = "SMF";
INSTANCE = 5; # 0 is the default
PID_DIRECTORY = "/var/run"; # /var/run is the default
INTERFACES :
{
N4 :
{
# SMF binded interface for N4 communication (UPF)
INTERFACE_NAME = "lo"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "127.0.0.100/24";
};
SBI :
{
# SMF binded interface for SBI interface (e.g., communication with AMF, UDM)
INTERFACE_NAME = "lo"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "127.0.0.6/24";
PORT = 80; # YOUR NETWORK CONFIG HERE (default: 80)
HTTP2_PORT = 8405; # YOUR NETWORK CONFIG HERE
API_VERSION = "v1"; # YOUR SMF API VERSION CONFIG HERE
};
};
# DNN configurations with pool of UE assigned IP addresses
# Do not make IP pools overlap
# first IPv4 address X.Y.Z.1 is reserved for GTP network device on UPF
DNN_LIST = (
# PDU_SESSION_TYPE choice in {IPv4, IPv6, IPv4v6}
# DNN IP ADDRESS RANGE format is for example: "12.2.1.2 - 12.2.1.128"
{DNN_NI = "default"; PDU_SESSION_TYPE = "IPv4"; IPV4_RANGE = "{{ env["SMF_DEFAULT_IPV4_RANGE"] }}"; IPV6_PREFIX = "2001:1:2::/64"},
{DNN_NI = "ims"; PDU_SESSION_TYPE = "IPv4v6"; IPV4_RANGE = "{{ env["SMF_IMS_IPV4_RANGE"] }}"; IPV6_PREFIX = "3001:1:2::/64"},
{DNN_NI = "ctnet"; PDU_SESSION_TYPE = "IPv4v6"; IPV4_RANGE = "{{ env["SMF_CTNET_IPV4_RANGE"] }}"; IPV6_PREFIX = "4001:1:2::/64"},
{DNN_NI = "internet"; PDU_SESSION_TYPE = "IPv4"; IPV4_RANGE = "{{ env["SMF_INTERNET_IPV4_RANGE"] }}"; IPV6_PREFIX = "5001:1:2::/64"}
);
# DNS address communicated to UEs
DEFAULT_DNS_IPV4_ADDRESS = "114.114.114.114"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_SEC_IPV4_ADDRESS = "8.8.8.8"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_IPV6_ADDRESS = "2001:4860:4860::8888"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_SEC_IPV6_ADDRESS = "2001:4860:4860::8844"; # YOUR DNS CONFIG HERE
#Default P-CSCF server
DEFAULT_CSCF_IPV4_ADDRESS = "127.0.0.1";
DEFAULT_CSCF_IPV6_ADDRESS = "fe80::7915:f408:1787:db8b";
#Default UE MTU
UE_MTU = 1500;
# SUPPORT FEATURES
SUPPORT_FEATURES:
{
# STRING, {"yes", "no"},
REGISTER_NRF = "no"; # Set to yes if SMF resgisters to an NRF
DISCOVER_UPF = "yes"; # Set to yes to enable UPF discovery and selection
DISCOVER_PCF = "no";
FORCE_PUSH_PROTOCOL_CONFIGURATION_OPTIONS = "no"; # Non standard feature, normally should be set to "no",
# but you may need to set to yes for UE that do not explicitly request a PDN address through NAS signalling
USE_LOCAL_SUBSCRIPTION_INFO = "yes"; # Set to yes if SMF uses local subscription information instead of from an UDMa
USE_LOCAL_PCC_RULES = "yes";
USE_FQDN_DNS = "no"; # Set to yes if AMF/UDM/NRF/UPF will relying on a DNS to resolve FQDN
HTTP_VERSION = 1; # Default: 1
USE_NETWORK_INSTANCE = "yes"; # Set yes if network instance is to be used for given UPF
ENABLE_USAGE_REPORTING = "no"; # Set yes if UE USAGE REPORTING is to be done at UPF
}
AMF :
{
IPV4_ADDRESS = "127.0.0.5"; # YOUR AMF CONFIG HERE
PORT = 80; # YOUR AMF CONFIG HERE (default: 80)
API_VERSION = "v1"; # YOUR AMF API VERSION FOR SBI CONFIG HERE
# FQDN = "@AMF_FQDN@" # YOUR AMF FQDN CONFIG HERE
};
UDM :
{
IPV4_ADDRESS = "127.0.0.3"; # YOUR UDM CONFIG HERE
PORT = 8002; # YOUR UDM CONFIG HERE (default: 80)
API_VERSION = "v2"; # YOUR UDM API VERSION FOR SBI CONFIG HERE
# FQDN = "@UDM_FQDN@" # YOUR UDM FQDN CONFIG HERE
};
# NRF :
# {
# IPV4_ADDRESS = "@NRF_IPV4_ADDRESS@"; # YOUR NRF CONFIG HERE
# PORT = @NRF_PORT@; # YOUR NRF CONFIG HERE (default: 80)
# API_VERSION = "@NRF_API_VERSION@"; # YOUR NRF API VERSION FOR SBI CONFIG HERE
# FQDN = "@NRF_FQDN@" # YOUR NRF FQDN CONFIG HERE
# };
# PCF :
# {
# IPV4_ADDRESS = "127.0.0.20"; # YOUR UDM CONFIG HERE
# PORT = 8020; # YOUR UDM CONFIG HERE (default: 80)
# API_VERSION = "v2"; # YOUR UDM API VERSION FOR SBI CONFIG HERE
## FQDN = "@UDM_FQDN@" # YOUR UDM FQDN CONFIG HERE
# };
UPF_LIST = (
{
IPV4_ADDRESS = "127.0.0.101" ;
FQDN = "UPF";
# NWI_LIST = ({DOMAIN_ACCESS = "@DOMAIN_ACCESS@", DOMAIN_CORE = "@DOMAIN_CORE@"})
} # YOUR UPF CONFIG HERE
); # NWI_LIST IS OPTIONAL PARAMETER
LOCAL_CONFIGURATION :
{
SESSION_MANAGEMENT_SUBSCRIPTION_LIST = (
{ NSSAI_SST = 1, NSSAI_SD = 0xFFFFFF, DNN = "default", DEFAULT_SESSION_TYPE = "IPv4", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 9, QOS_PROFILE_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PREEMPTCAP = "NOT_PREEMPT",
QOS_PROFILE_ARP_PREEMPTVULN = "NOT_PREEMPTABLE", SESSION_AMBR_UL = "1000Mbps", SESSION_AMBR_DL = "1000Mbps"},
{ NSSAI_SST = 1; NSSAI_SD = 0xFFFFFF, DNN = "ims", DEFAULT_SESSION_TYPE = "IPv4v6", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 5, QOS_PROFILE_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PREEMPTCAP = "NOT_PREEMPT",
QOS_PROFILE_ARP_PREEMPTVULN = "NOT_PREEMPTABLE", SESSION_AMBR_UL = "100Mbps", SESSION_AMBR_DL = "100Mbps"},
{ NSSAI_SST = 1; NSSAI_SD = 0xFFFFFF, DNN = "ctnet", DEFAULT_SESSION_TYPE = "IPv4v6", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 9, QOS_PROFILE_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PREEMPTCAP = "NOT_PREEMPT",
QOS_PROFILE_ARP_PREEMPTVULN = "NOT_PREEMPTABLE", SESSION_AMBR_UL = "1000Mbps", SESSION_AMBR_DL = "1000Mbps"},
{ NSSAI_SST = 1; NSSAI_SD = 0xFFFFFF, DNN = "internet", DEFAULT_SESSION_TYPE = "IPv4", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 9, QOS_PROFILE_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PRIORITY_LEVEL = 1, QOS_PROFILE_ARP_PREEMPTCAP = "NOT_PREEMPT",
QOS_PROFILE_ARP_PREEMPTVULN = "NOT_PREEMPTABLE", SESSION_AMBR_UL = "1000Mbps", SESSION_AMBR_DL = "1000Mbps"}
);
};
};
################################################################################
# Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The OpenAirInterface Software Alliance licenses this file to You under
# the OAI Public License, Version 1.1 (the "License"); you may not use this file
# except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.openairinterface.org/?page_id=698
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#-------------------------------------------------------------------------------
# For more information about the OpenAirInterface (OAI) Software Alliance:
# contact@openairinterface.org
################################################################################
SPGW-U =
{
#FQDN = "upf"; # FQDN for 4G
INSTANCE = 6; # 0 is the default
PID_DIRECTORY = "/var/run"; # /var/run is the default
#ITTI_TASKS :
#{
#ITTI_TIMER_SCHED_PARAMS :
#{
#CPU_ID = 1;
#SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
#SCHED_PRIORITY = 85;
#};
#S1U_SCHED_PARAMS :
#{
#CPU_ID = 1;
#SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
#SCHED_PRIORITY = 84;
#};
#SX_SCHED_PARAMS :
#{
#CPU_ID = 1;
#SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
#SCHED_PRIORITY = 84;
#};
#ASYNC_CMD_SCHED_PARAMS :
#{
#CPU_ID = 1;
#SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
#SCHED_PRIORITY = 84;
#};
#};
INTERFACES :
{
S1U_S12_S4_UP :
{
# S-GW binded interface for S1-U communication (GTPV1-U) can be ethernet interface, virtual ethernet interface, we don't advise wireless interfaces
INTERFACE_NAME = "{{ env["INTERFACE_NAME"] }}"; # STRING, interface name, YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read"; # STRING, CIDR or "read to let app read interface configured IP address
#PORT = 2152; # Default is 2152
SCHED_PARAMS :
{
#CPU_ID = 2;
SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
SCHED_PRIORITY = 98;
POOL_SIZE = 1; # NUM THREADS
};
};
SX :
{
# S/P-GW binded interface for SX communication
INTERFACE_NAME = "lo"; # STRING, interface name
IPV4_ADDRESS = "127.0.0.101/24"; # STRING, CIDR or "read" to let app read interface configured IP address
#PORT = 8805; # Default is 8805
SCHED_PARAMS :
{
#CPU_ID = 1;
SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
SCHED_PRIORITY = 90;
POOL_SIZE = 1; # NUM THREADS
};
};
SGI :
{
# No config to set, the software will set the SGi interface to the interface used for the default route.
INTERFACE_NAME = "{{ env["INTERFACE_NAME"] }}"; # STRING, interface name or "default_gateway"
IPV4_ADDRESS = "read"; # STRING, CIDR or "read" to let app read interface configured IP address
SCHED_PARAMS :
{
#CPU_ID = 3;
SCHED_POLICY = "SCHED_FIFO"; # Values in { SCHED_OTHER, SCHED_IDLE, SCHED_BATCH, SCHED_FIFO, SCHED_RR }
SCHED_PRIORITY = 98;
POOL_SIZE = 1; # NUM THREADS
};
};
#HTTP_SERVER:
#{
# INTERFACE_NAME = "ens32";
# IPV4_ADDRESS = "read";
# PORT = 5000;
#};
};
SNAT = "yes"; # SNAT Values in {yes, no}
PDN_NETWORK_LIST = (
{NETWORK_IPV4 = "{{ env["UPF_PDN_NETWORK_IPV4"] }}";} # 1 ITEM SUPPORTED ONLY
);
SPGW-C_LIST = (
{IPV4_ADDRESS="127.0.0.100" ;}
);
NON_STANDART_FEATURES :
{
BYPASS_UL_PFCP_RULES = "no"; # 'no' for standard features, yes for enhancing UL throughput
};
SUPPORT_5G_FEATURES:
{
# STRING, {"yes", "no"},
ENABLE_5G_FEATURES = "yes" # Set to 'yes' to support 5G Features
REGISTER_NRF = "no"; # Set to 'yes' if UPF resgisters to an NRF
USE_FQDN_NRF = "no"; # Set to 'yes' if UPF relies on a DNS/FQDN service to resolve NRF's FQDN
UPF_FQDN_5G = "no"; # Set FQDN of UPF
NRF :
{
IPV4_ADDRESS = "127.0.0.1"; # YOUR NRF CONFIG HERE
PORT = 8030; # YOUR NRF CONFIG HERE (default: 80)
HTTP_VERSION = 1; #Set HTTP version for NRF (1 or 2)Default 1
API_VERSION = "v1"; # YOUR NRF API VERSION HERE
#FQDN = "@NRF_FQDN@";
};
# Additional info to be sent to NRF for supporting Network Slicing
UPF_INFO = (
{ NSSAI_SST = 1; NSSAI_SD = "0"; DNN_LIST = ({DNN = "default";}); },
{ NSSAI_SST = 1; NSSAI_SD = "0"; DNN_LIST = ({DNN = "ims";}); },
{ NSSAI_SST = 1; NSSAI_SD = "0"; DNN_LIST = ({DNN = "ctnet";}); },
{ NSSAI_SST = 1; NSSAI_SD = "0"; DNN_LIST = ({DNN = "internet";}); }
);
}
};
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