Commit 6c0a907b authored by luhan Wang's avatar luhan Wang

try to support 5G Phone

parent 6f0d879d
......@@ -21,26 +21,26 @@
SMF =
{
INSTANCE = @INSTANCE@; # 0 is the default
PID_DIRECTORY = "@PID_DIRECTORY@"; # /var/run is the default
INSTANCE = 0; # 0 is the default
PID_DIRECTORY = "/var/run"; # /var/run is the default
INTERFACES :
{
N4 :
{
# SMF binded interface for N4 communication (UPF)
INTERFACE_NAME = "@SMF_INTERFACE_NAME_FOR_N4@"; # YOUR NETWORK CONFIG HERE
INTERFACE_NAME = "ens3"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read";
};
SBI :
{
# SMF binded interface for SBI interface (e.g., communication with AMF, UDM)
INTERFACE_NAME = "@SMF_INTERFACE_NAME_FOR_SBI@"; # YOUR NETWORK CONFIG HERE
INTERFACE_NAME = "ens3"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read";
PORT = @SMF_INTERFACE_PORT_FOR_SBI@; # YOUR NETWORK CONFIG HERE (default: 80)
HTTP2_PORT = @SMF_INTERFACE_HTTP2_PORT_FOR_SBI@; # YOUR NETWORK CONFIG HERE
API_VERSION = "@SMF_API_VERSION@"; # YOUR SMF API VERSION CONFIG HERE
PORT = 8889; # YOUR NETWORK CONFIG HERE (default: 80)
HTTP2_PORT = 8890; # YOUR NETWORK CONFIG HERE
API_VERSION = "v2"; # YOUR SMF API VERSION CONFIG HERE
};
};
......@@ -67,16 +67,16 @@ SMF =
DNN_LIST = (
# IPV4_POOL, IPV6_POOL are index in IPV4_LIST, IPV6_LIST, PDU_SESSION_TYPE choice in {IPv4, IPv6, IPv4v6}
{DNN_NI = "default"; PDU_SESSION_TYPE = "IPv4"; IPV4_POOL = 0; IPV6_POOL = -1},
{DNN_NI = "carrier.com"; PDU_SESSION_TYPE = "IPv4"; IPV4_POOL = 1; IPV6_POOL = -1},
{DNN_NI = "ims"; PDU_SESSION_TYPE = "IPv4IPv6"; IPV4_POOL = 0; IPV6_POOL = 0},
{DNN_NI = "ctnet"; PDU_SESSION_TYPE = "IPv4IPv6"; IPV4_POOL = 1; IPV6_POOL = 1},
{DNN_NI = "apn2"; PDU_SESSION_TYPE = "IPv4"; IPV4_POOL = 2; IPV6_POOL = -1},
{DNN_NI = "apn3"; PDU_SESSION_TYPE = "IPv4"; IPV4_POOL = 3; IPV6_POOL = -1},
{DNN_NI = "apn4"; PDU_SESSION_TYPE = "IPv4"; IPV4_POOL = 4; IPV6_POOL = -1}
);
# DNS address communicated to UEs
DEFAULT_DNS_IPV4_ADDRESS = "@DEFAULT_DNS_IPV4_ADDRESS@"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_SEC_IPV4_ADDRESS = "@DEFAULT_DNS_SEC_IPV4_ADDRESS@"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_IPV4_ADDRESS = "114.114.114.114"; # YOUR DNS CONFIG HERE
DEFAULT_DNS_SEC_IPV4_ADDRESS = "114.114.114.114"; # 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
......@@ -92,16 +92,16 @@ SMF =
AMF :
{
IPV4_ADDRESS = "@AMF_IPV4_ADDRESS@"; # YOUR AMF CONFIG HERE
PORT = @AMF_PORT@; # YOUR AMF CONFIG HERE (default: 80)
API_VERSION = "@AMF_API_VERSION@"; # YOUR AMF API VERSION FOR SBI CONFIG HERE
IPV4_ADDRESS = "192.168.122.197"; # YOUR AMF CONFIG HERE
PORT = 8282; # YOUR AMF CONFIG HERE (default: 80)
API_VERSION = "v2"; # YOUR AMF API VERSION FOR SBI CONFIG HERE
};
UDM :
{
IPV4_ADDRESS = "@UDM_IPV4_ADDRESS@"; # YOUR UDM CONFIG HERE
PORT = @UDM_PORT@; # YOUR UDM CONFIG HERE (default: 80)
API_VERSION = "@UDM_API_VERSION@"; # YOUR UDM API VERSION FOR SBI CONFIG HERE
IPV4_ADDRESS = "192.168.122.197"; # YOUR UDM CONFIG HERE
PORT = 8181; # YOUR UDM CONFIG HERE (default: 80)
API_VERSION = "v2"; # YOUR UDM API VERSION FOR SBI CONFIG HERE
};
NRF :
......@@ -112,19 +112,19 @@ SMF =
};
UPF_LIST = (
{IPV4_ADDRESS = "@UPF_IPV4_ADDRESS@" ;} # YOUR UPF CONFIG HERE
{IPV4_ADDRESS = "192.168.122.88" ;} # YOUR UPF CONFIG HERE
);
LOCAL_CONFIGURATION :
{
USE_LOCAL_CONFIGURATION = "yes";
SESSION_MANAGEMENT_SUBSCRIPTION_LIST = (
{ NSSAI_SST = 222, NSSAI_SD = "123", DNN = "default", DEFAULT_SESSION_TYPE = "IPV4", DEFAULT_SSC_MODE = 1,
{ NSSAI_SST = 1, NSSAI_SD = "0", DNN = "ims", DEFAULT_SESSION_TYPE = "IPV4V6", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 6, 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 = "20Mbps", SESSION_AMBR_DL = "22Mbps"},
{ NSSAI_SST = 222; NSSAI_SD = "123", DNN = "carrier.com", DEFAULT_SESSION_TYPE = "IPV4", DEFAULT_SSC_MODE = 1,
{ NSSAI_SST = 1; NSSAI_SD = "0", DNN = "ctnet", DEFAULT_SESSION_TYPE = "IPV4V6", DEFAULT_SSC_MODE = 1,
QOS_PROFILE_5QI = 7, 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 = "10Mbps", SESSION_AMBR_DL = "11Mbps"}
QOS_PROFILE_ARP_PREEMPTVULN = "NOT_PREEMPTABLE", SESSION_AMBR_UL = "100Mbps", SESSION_AMBR_DL = "110Mbps"}
);
};
......
......@@ -434,22 +434,31 @@ int smf_config::load(const string& config_file) {
dnn[dnn_idx].dnn = astring;
dnn[dnn_idx].dnn_label = EPC::Utility::dnn_label(astring);
dnn_cfg.lookupValue(SMF_CONFIG_STRING_PDU_SESSION_TYPE, astring);
if (boost::iequals(astring, "IPv4")) {
Logger::smf_app().debug("pdu session type : %s", astring.c_str());
if(!astring.compare("IPv4IPv6")){
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_IPV4;
} else if (boost::iequals(astring, "IPv6") == 0) {
PDU_SESSION_TYPE_E_IPV4V6;
Logger::smf_app().debug("0");
}else if (boost::equals(astring, "IPv4")) {
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_IPV6;
} else if (boost::iequals(astring, "IPv4IPv6") == 0) {
PDU_SESSION_TYPE_E_IPV4;
Logger::smf_app().debug("1");
} else if (boost::equals(astring, "IPv4IPv6") == 0) {
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_IPV4V6;
} else if (boost::iequals(astring, "Unstructured") == 0) {
Logger::smf_app().debug("2");
} else if (boost::equals(astring, "IPv6") == 0) {
Logger::smf_app().debug("astring : %s", astring.c_str());
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_IPV6;
Logger::smf_app().debug("3");
} else if (boost::equals(astring, "Unstructured") == 0) {
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_UNSTRUCTURED;
} else if (boost::iequals(astring, "Ethernet") == 0) {
} else if (boost::equals(astring, "Ethernet") == 0) {
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_ETHERNET;
} else if (boost::iequals(astring, "Reserved") == 0) {
} else if (boost::equals(astring, "Reserved") == 0) {
dnn[dnn_idx].pdu_session_type.pdu_session_type =
PDU_SESSION_TYPE_E_RESERVED;
} else {
......
......@@ -419,10 +419,10 @@ void session_create_sm_context_procedure::handle_itti_msg(
std::string supi_str = n11_triggered_pending->res.get_supi_prefix() + "-" +
smf_supi_to_string(supi);
std::string url =
// std::string(inet_ntoa(*((struct in_addr*)
// &smf_cfg.amf_addr.ipv4_addr))) +
//":" + std::to_string(smf_cfg.amf_addr.port) + NAMF_COMMUNICATION_BASE +
sps.get()->get_amf_addr() + NAMF_COMMUNICATION_BASE +
std::string(inet_ntoa(*((struct in_addr*)
&smf_cfg.amf_addr.ipv4_addr))) +
":" + std::to_string(smf_cfg.amf_addr.port) + NAMF_COMMUNICATION_BASE +
//sps.get()->get_amf_addr() + NAMF_COMMUNICATION_BASE +
smf_cfg.amf_addr.api_version +
fmt::format(
NAMF_COMMUNICATION_N1N2_MESSAGE_TRANSFER_URL, supi_str.c_str());
......
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