Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-AMF
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
OpenXG-AMF
Commits
ef5b7fa4
Commit
ef5b7fa4
authored
Jan 26, 2022
by
Tien-Thinh Nguyen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Itti message to trigger Slice Selection Subscription Data Retrieval
parent
eaac1b10
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
27 additions
and
8 deletions
+27
-8
src/amf-app/amf_n1.cpp
src/amf-app/amf_n1.cpp
+8
-5
src/amf-app/amf_n2.cpp
src/amf-app/amf_n2.cpp
+0
-1
src/common/3gpp_29.531.h
src/common/3gpp_29.531.h
+2
-2
src/itti/itti_msg.hpp
src/itti/itti_msg.hpp
+1
-0
src/itti/msgs/itti_msg_n11.hpp
src/itti/msgs/itti_msg_n11.hpp
+16
-0
No files found.
src/amf-app/amf_n1.cpp
View file @
ef5b7fa4
...
...
@@ -3711,14 +3711,13 @@ bool amf_n1::reroute_registration_request(std::shared_ptr<nas_context>& nc) {
// UDM
return
false
;
}
if
(
check_requested_nssai
(
nc
,
nssai
))
{
// Check that AMF can process the Requested NSSAIs or not
// Check that AMF can process the Requested NSSAIs or not
if
(
check_requested_nssai
(
nc
,
nssai
))
{
return
false
;
}
// Process NS selection to select the appropriate AMF
std
::
string
nf_instance_id
=
{};
slice_info_fo
_registration_t
slice_info
=
{};
slice_info_fo
r_registration_t
slice_info
=
{};
authorized_network_slice_info_t
authorized_network_slice_info
=
{};
if
(
!
get_network_slice_selection
(
nf_instance_id
,
slice_info
,
authorized_network_slice_info
))
{
...
...
@@ -3744,13 +3743,16 @@ bool amf_n1::get_slice_selection_subscription_data(
const
std
::
shared_ptr
<
nas_context
>&
nc
,
nssai_t
&
nssai
)
const
{
// TODO: UDM selection (from NRF or configuration file)
if
(
amf_cfg
.
support_features
.
enable_external_udm
)
{
}
else
{
// TODO: get from the conf file
}
return
true
;
}
//------------------------------------------------------------------------------
bool
amf_n1
::
get_network_slice_selection
(
const
std
::
string
&
nf_instance_id
,
slice_info_fo_registration_t
&
slice_info
,
const
std
::
string
&
nf_instance_id
,
slice_info_for_registration_t
&
slice_info
,
authorized_network_slice_info_t
&
authorized_network_slice_info
)
const
{
// TODO: UDM selection (from NRF or configuration file)
if
(
amf_cfg
.
support_features
.
enable_external_udm
)
{
...
...
@@ -3758,6 +3760,7 @@ bool amf_n1::get_network_slice_selection(
return
true
;
}
//------------------------------------------------------------------------------
void
amf_n1
::
send_n1_message_notity
(
const
std
::
shared_ptr
<
nas_context
>&
nc
,
const
std
::
string
&
target_amf
)
const
{}
src/amf-app/amf_n2.cpp
View file @
ef5b7fa4
...
...
@@ -71,7 +71,6 @@ using namespace std;
extern
itti_mw
*
itti_inst
;
extern
amf_n2
*
amf_n2_inst
;
extern
amf_n1
*
amf_n1_inst
;
extern
amf_n11
*
amf_n11_inst
;
extern
amf_config
amf_cfg
;
extern
amf_app
*
amf_app_inst
;
extern
statistics
stacs
;
...
...
src/common/3gpp_29.531.h
View file @
ef5b7fa4
...
...
@@ -61,7 +61,7 @@ typedef struct mapping_of_snssai_s {
snssai_t
home_snssai
;
}
mapping_of_snssai_t
;
typedef
struct
slice_info_fo_registration_s
{
typedef
struct
slice_info_fo
r
_registration_s
{
std
::
vector
<
subscribed_snssai_t
>
subscribed_nssai
;
std
::
vector
<
allowed_nssai_t
>
allowed_nssai_current_access
;
// allowed_nssai_other_access
...
...
@@ -70,7 +70,7 @@ typedef struct slice_info_fo_registration_s {
bool
default_configured_snssai_ind
;
std
::
vector
<
mapping_of_snssai_t
>
mapping_of_nssai
;
bool
request_mapping
;
}
slice_info_fo_registration_t
;
}
slice_info_fo
r
_registration_t
;
typedef
struct
configured_snssai_s
{
snssai_t
configured_snssai
;
...
...
src/itti/itti_msg.hpp
View file @
ef5b7fa4
...
...
@@ -86,6 +86,7 @@ typedef enum {
N11_UPDATE_NF_INSTANCE_REQUEST
,
N11_UPDATE_NF_INSTANCE_RESPONSE
,
N11_DEREGISTER_NF_INSTANCE
,
N11_SLICE_SELECTION_SUBSCRIPTION_DATA
,
SBI_EVENT_EXPOSURE_REQUEST
,
SBI_NOTIFICATION_DATA
,
SBI_NOTIFY_SUBSCRIBED_EVENT
,
...
...
src/itti/msgs/itti_msg_n11.hpp
View file @
ef5b7fa4
...
...
@@ -191,4 +191,20 @@ class itti_n11_deregister_nf_instance : public itti_msg_n11 {
std
::
string
amf_instance_id
;
};
//-----------------------------------------------------------------------------
class
itti_n11_slice_selection_subscription_data
:
public
itti_msg_n11
{
public:
itti_n11_slice_selection_subscription_data
(
const
task_id_t
orig
,
const
task_id_t
dest
)
:
itti_msg_n11
(
N11_SLICE_SELECTION_SUBSCRIPTION_DATA
,
orig
,
dest
),
http_version
(
1
)
{}
const
char
*
get_msg_name
()
{
return
"N11_SLICE_SELECTION_SUBSCRIPTION_DATA"
;
};
uint8_t
http_version
;
std
::
string
supi
;
plmn_t
plmn
;
};
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment