Commit f38b3e7c authored by Niuhaiwen's avatar Niuhaiwen

the first connect successful

parent fcab3bd2
...@@ -37,20 +37,20 @@ AMF = ...@@ -37,20 +37,20 @@ AMF =
GUAMI: GUAMI:
{ {
MCC = "460"; MNC = "33"; RegionID = "128"; AMFSetID = "1"; AMFPointer = "1" # YOUR GUAMI CONFIG HERE MCC = "460"; MNC = "99"; RegionID = "128"; AMFSetID = "1"; AMFPointer = "1" # YOUR GUAMI CONFIG HERE
} }
SERVED_GUAMI_LIST = ( SERVED_GUAMI_LIST = (
{MCC = "460"; MNC = "33"; RegionID = "128"; AMFSetID = "1"; AMFPointer = "0"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer> {MCC = "460"; MNC = "99"; RegionID = "128"; AMFSetID = "1"; AMFPointer = "0"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer>
#{MCC = "110"; MNC = "11"; RegionID = "10"; AMFSetID = "1"; AMFPointer = "1"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer> #{MCC = "110"; MNC = "11"; RegionID = "10"; AMFSetID = "1"; AMFPointer = "1"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer>
); );
PLMN_SUPPORT_LIST = ( PLMN_SUPPORT_LIST = (
{ {
MCC = "460"; MNC = "33"; TAC = 100; # YOUR PLMN CONFIG HERE MCC = "460"; MNC = "99"; TAC = 100; # YOUR PLMN CONFIG HERE
SLICE_SUPPORT_LIST = ( SLICE_SUPPORT_LIST = (
{SST = "1"; SD = "none"}, # YOUR NSSAI CONFIG HERE {SST = "1"; SD = "none"} # YOUR NSSAI CONFIG HERE
{SST = "1"; SD = "12"} # YOUR NSSAI CONFIG HERE # {SST = "1"; SD = "12"} # YOUR NSSAI CONFIG HERE
) )
} }
); );
...@@ -60,7 +60,7 @@ AMF = ...@@ -60,7 +60,7 @@ AMF =
# AMF binded interface for N1/N2 interface (NGAP) # AMF binded interface for N1/N2 interface (NGAP)
NGAP_AMF: NGAP_AMF:
{ {
INTERFACE_NAME = "eno1"; # YOUR NETWORK CONFIG HERE INTERFACE_NAME = "ens34"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read"; IPV4_ADDRESS = "read";
PORT = 38414; # YOUR NETWORK CONFIG HERE PORT = 38414; # YOUR NETWORK CONFIG HERE
PPID = 60; # YOUR NETWORK CONFIG HERE PPID = 60; # YOUR NETWORK CONFIG HERE
...@@ -69,14 +69,14 @@ AMF = ...@@ -69,14 +69,14 @@ AMF =
# AMF binded interface for Nausf interface # AMF binded interface for Nausf interface
NAUSF: NAUSF:
{ {
INTERFACE_NAME = "eno1"; # YOUR NETWORK CONFIG HERE INTERFACE_NAME = "ens33"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read"; IPV4_ADDRESS = "read";
PORT = 8383; # YOUR NETWORK CONFIG HERE PORT = 8383; # YOUR NETWORK CONFIG HERE
}; };
NRF : NRF :
{ {
IPV4_ADDRESS = "192.168.209.129"; # YOUR NRF CONFIG HERE IPV4_ADDRESS = "192.168.83.129"; # YOUR NRF CONFIG HERE
PORT = 80; # YOUR NRF CONFIG HERE (default: 80) PORT = 80; # YOUR NRF CONFIG HERE (default: 80)
API_VERSION = "v1"; # YOUR NRF API VERSION FOR SBI CONFIG HERE API_VERSION = "v1"; # YOUR NRF API VERSION FOR SBI CONFIG HERE
}; };
...@@ -91,12 +91,12 @@ AMF = ...@@ -91,12 +91,12 @@ AMF =
# AMF binded interface for N11 # AMF binded interface for N11
N11: N11:
{ {
INTERFACE_NAME = "eno1"; # YOUR NETWORK CONFIG HERE INTERFACE_NAME = "ens33"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "read"; IPV4_ADDRESS = "read";
PORT = 8282; # YOUR NETWORK CONFIG HERE PORT = 8282; # YOUR NETWORK CONFIG HERE
SMF_INSTANCES_POOL = ( SMF_INSTANCES_POOL = (
{SMF_INSTANCE_ID = 1; IPV4_ADDRESS = "10.112.202.24"; PORT = "8890"; VERSION = "v2"; SELECTED = "true"}, # YOUR SMF CONFIG HERE {SMF_INSTANCE_ID = 1; IPV4_ADDRESS = "192.168.83.130"; PORT = "8889"; VERSION = "v2"; SELECTED = "false"}, # YOUR SMF CONFIG HERE
{SMF_INSTANCE_ID = 2; IPV4_ADDRESS = "192.168.122.2"; PORT = "80"; VERSION = "v1"; SELECTED = "false"} # YOUR SMF CONFIG HERE {SMF_INSTANCE_ID = 2; IPV4_ADDRESS = "192.168.122.2"; PORT = "80"; VERSION = "v1"; SELECTED = "false"} # YOUR SMF CONFIG HERE
); );
}; };
...@@ -107,9 +107,9 @@ AMF = ...@@ -107,9 +107,9 @@ AMF =
{ {
## MySQL mandatory options ## MySQL mandatory options
MYSQL_server = "127.0.0.1"; # MySQL Server address MYSQL_server = "127.0.0.1"; # MySQL Server address
MYSQL_user = "root"; # Database server login MYSQL_user = "witcomm"; # Database server login
MYSQL_pass = "123"; # Database server password MYSQL_pass = "123456"; # Database server password
MYSQL_db = "OPENXG_DB"; # Your database name MYSQL_db = "witcomm"; # Your database name
## OP ## OP
OPERATOR_key = "63bfa50ee6523365ff14c1f45f88737d"; # OP key matching your database OPERATOR_key = "63bfa50ee6523365ff14c1f45f88737d"; # OP key matching your database
......
...@@ -205,7 +205,7 @@ void amf_n11::handle_itti_message( ...@@ -205,7 +205,7 @@ void amf_n11::handle_itti_message(
std::string udsf_url = "http://192.168.83.130:7123/nudsf-dr/v1/amfdata/" + std::string("pdu_session_context/records/") + record_id; std::string udsf_url = "http://192.168.83.130:7123/nudsf-dr/v1/amfdata/" + std::string("pdu_session_context/records/") + record_id;
if(!amf_n2_inst->curl_http_client_udsf(udsf_url,"","GET",udsf_response)){ if(!amf_n2_inst->curl_http_client_udsf(udsf_url,"","GET",udsf_response)){
Logger::amf_n2().error("No existing pdu_session_context with assoc_id "); Logger::amf_n2().error("No existing pdu_session_context with assoc_id ");
return ; return ;
} }
else{ else{
Logger::amf_n2().debug("udsf_response: %s", udsf_response.dump().c_str()); Logger::amf_n2().debug("udsf_response: %s", udsf_response.dump().c_str());
...@@ -229,17 +229,38 @@ void amf_n11::handle_itti_message( ...@@ -229,17 +229,38 @@ void amf_n11::handle_itti_message(
// return; // return;
// } // }
/*string ue_context_key = "app_ue_ranid_" + to_string(itti_msg.ran_ue_ngap_id) +
":amfid_" + to_string(itti_msg.amf_ue_ngap_id);
std::shared_ptr<ue_context> uc;
uc = amf_app_inst->ran_amf_id_2_ue_context(ue_context_key);
std::string supi_2;
if (uc.get() != nullptr) {
supi_2 = uc->supi;
}
Logger::amf_n11().debug(
"Send PDU Session Update SM Context Request to SMF (SUPI %s, PDU Session "
"ID %d)",
supi_2.c_str(), itti_msg.pdu_session_id);
std::shared_ptr<pdu_session_context> psc_2 = {};
if (!uc.get()->find_pdu_session_context(itti_msg.pdu_session_id, psc_2)) {
Logger::amf_n11().error(
"Could not find psu_session_context with SUPI %s, Failed",
supi_2.c_str());
return;
}*/
std::string smf_addr; std::string smf_addr;
if (!psc.get()->smf_available) { if (!psc.get()->smf_available) {
if (!smf_selection_from_configuration(smf_addr)) { /*if (!smf_selection_from_configuration(smf_addr)) {
Logger::amf_n11().error("No SMF candidate is available"); Logger::amf_n11().error("No SMF candidate is available");
return; return;
} }*/
Logger::amf_n11().error("No SMF is available for this PDU session");
} else { } else {
smf_selection_from_context(smf_addr); //smf_selection_from_context(smf_addr);
smf_addr = psc->smf_addr;
} }
smf_addr = psc->smf_addr;
std::string smf_ip_addr, remote_uri; std::string smf_ip_addr, remote_uri;
std::shared_ptr<pdu_session_context> context = std::shared_ptr<pdu_session_context>(new pdu_session_context()); std::shared_ptr<pdu_session_context> context = std::shared_ptr<pdu_session_context>(new pdu_session_context());
context.get()->pdu_session_context_from_json(udsf_response); context.get()->pdu_session_context_from_json(udsf_response);
...@@ -302,6 +323,10 @@ void amf_n11::handle_itti_message(itti_smf_services_consumer& smf) { ...@@ -302,6 +323,10 @@ void amf_n11::handle_itti_message(itti_smf_services_consumer& smf) {
Logger::amf_n2().debug("udsf_response: %s", udsf_response.dump().c_str()); Logger::amf_n2().debug("udsf_response: %s", udsf_response.dump().c_str());
psc = std::shared_ptr<pdu_session_context>(new pdu_session_context()); psc = std::shared_ptr<pdu_session_context>(new pdu_session_context());
psc.get()->pdu_session_context_from_json(udsf_response); psc.get()->pdu_session_context_from_json(udsf_response);
if(psc.get()->isn2sm_avaliable == false)
{
psc = std::shared_ptr<pdu_session_context>(new pdu_session_context());
}
//psc = std::shared_ptr<pdu_session_context>(psc1); //psc = std::shared_ptr<pdu_session_context>(psc1);
} }
...@@ -514,13 +539,13 @@ void amf_n11::handle_pdu_session_initial_request( ...@@ -514,13 +539,13 @@ void amf_n11::handle_pdu_session_initial_request(
// TODO: Remove hardcoded values // TODO: Remove hardcoded values
std::string remote_uri = std::string remote_uri =
smf_addr + ":8889" + "/nsmf-pdusession/" + smf_api_version + "/sm-contexts"; smf_addr + ":8889/nsmf-pdusession/v2/sm-contexts";
nlohmann::json pdu_session_establishment_request; nlohmann::json pdu_session_establishment_request;
pdu_session_establishment_request["supi"] = supi.c_str(); pdu_session_establishment_request["supi"] = supi.c_str();
pdu_session_establishment_request["pei"] = "imei-200000000000001"; pdu_session_establishment_request["pei"] = "imei-200000000000001";
pdu_session_establishment_request["gpsi"] = "msisdn-200000000001"; pdu_session_establishment_request["gpsi"] = "msisdn-200000000001";
pdu_session_establishment_request["dnn"] = dnn.c_str(); pdu_session_establishment_request["dnn"] = dnn.c_str();
pdu_session_establishment_request["sNssai"]["sst"] = psc.get()->snssai.sST; pdu_session_establishment_request["sNssai"]["sst"] = 1;
pdu_session_establishment_request["sNssai"]["sd"] = psc.get()->snssai.sD; pdu_session_establishment_request["sNssai"]["sd"] = psc.get()->snssai.sD;
pdu_session_establishment_request["pduSessionId"] = psc.get()->pdu_session_id; pdu_session_establishment_request["pduSessionId"] = psc.get()->pdu_session_id;
pdu_session_establishment_request["requestType"] = pdu_session_establishment_request["requestType"] =
......
...@@ -1200,7 +1200,7 @@ void amf_n2::handle_itti_message(itti_initial_context_setup_request& itti_msg) { ...@@ -1200,7 +1200,7 @@ void amf_n2::handle_itti_message(itti_initial_context_setup_request& itti_msg) {
memcpy(uecap, (uint8_t*) bdata(ueCapability), blength(ueCapability)); memcpy(uecap, (uint8_t*) bdata(ueCapability), blength(ueCapability));
uecap[blength(ueCapability)] = '\0'; uecap[blength(ueCapability)] = '\0';
//URANSIM 不会发ueradio //URANSIM 不会发ueradio
//msg->setUERadioCapability(uecap, (size_t) blength(ueCapability)); msg->setUERadioCapability(uecap, (size_t) blength(ueCapability));
free(uecap); free(uecap);
Logger::amf_n2().debug("Encoding parameters for Service Request"); Logger::amf_n2().debug("Encoding parameters for Service Request");
...@@ -1576,7 +1576,7 @@ void amf_n2::handle_itti_message( ...@@ -1576,7 +1576,7 @@ void amf_n2::handle_itti_message(
udsf_gnb_update_context["blocks"] = nlohmann::json::array({ udsf_gnb_update_context["blocks"] = nlohmann::json::array({
{{"Content-ID", "ue_radio_cap_ind"},{"Content-Type", "varchar(1024)"},{"content", ue_radio_cap_ind}} {{"Content-ID", "ue_radio_cap_ind"},{"Content-Type", "varchar(1024)"},{"content", ue_radio_cap_ind}}
}); });
//amf_n2_inst->curl_http_client_udsf(udsf_update_url,udsf_gnb_update_context.dump(),"PUT",udsf_response); amf_n2_inst->curl_http_client_udsf(udsf_update_url,udsf_gnb_update_context.dump(),"PUT",udsf_response);
return ; return ;
} }
......
...@@ -450,7 +450,7 @@ void sctp_server::curl_http_client_Plugin(sctp_assoc_id_t assoc_id, sctp_stream_ ...@@ -450,7 +450,7 @@ void sctp_server::curl_http_client_Plugin(sctp_assoc_id_t assoc_id, sctp_stream_
std::string url = std::string url =
"http://" + std::string("10.112.202.24") + "http://" + std::string("192.168.83.130") +
":" + std::to_string(38414) + "/nplugin-dr/v1/" + ":" + std::to_string(38414) + "/nplugin-dr/v1/" +
to_string (assoc_id ) + "/" + to_string (stream) ; to_string (assoc_id ) + "/" + to_string (stream) ;
......
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