3 Configuring NSSF Using REST APIs
Managed Objects
The following NSSF managed objects can be configured using REST APIs:
NSI Profile
The NSI Profile managed object enables customer to configure Network Slice Instance profile. This allows customer to create an Network Slice, by providing a name, id, NRF URL corresponding to the slice and list of Target AMF sets which support this slice.
Table 3-1 NSI Profile - Parameters
Parameter | DataType | Description |
---|---|---|
name | String | Network Slice Instance Profile Name. |
nrfUri | String | URI of the Network Resource Function |
nsiId | String | Network Slice Intance Identifier |
targetAmfSets | array (TargetAmfSet) | array of TargetAmfSet (Refer primitive data type section) |
nrfNfMgtUri | String | Management URI of Network Resource Function |
nrfAccessTokenUri | String | Access Token URI of Network Resource Function |
Customer can configure NSI Profiles by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the NSI Profile managed object:
Table 3-2 Supported REST APIs - NSI Profile
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
NSI Profiles | /nnssf-configuration/v1/nsiprofiles | array(NssfNsiProfile) | POST | Create a network slice instance profile |
NSI Profile | /nnssf-configuration/v1/nsiprofiles/{name} | NsiProfile | GET | Read a network slice instance profile |
DELETE | Delete a network slice instance profile | |||
PUT | Update a network slice instance profile |
NSS Rule
The NSS Rule managed object enables customer to configure policy rules, NSS Rule allows customer to allow/reject/associate a Network slice based on NSSAI(SST and SD) , PLMN(MCC and MNC) ,TAC , AMF_ID. Operator can configure salience value to prioritize one rule over other.
Table 3-3 NSS Rule Parameters
Field Name | Type | Description (With Default Values) |
---|---|---|
name | String | Network Slice Selection Rule Name |
amfId | String | AMF Identifier |
plmnId | String | Public Land Mobile Network ID (MCC:MNC) |
tac | String | Tracking Area Code |
snssai | Snssai | Single Network Slice Selection Assistance Information |
salience | Integer | Order of importance, higher salience, more important |
behaviour | Behaviour | Behaviour of the parameter |
Customer can configure NSS Rules by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the NSS Rule managed object:
Table 3-4 Supported REST APIs - NSS Rule
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
NSS Rules | /nnssf-configuration/v1/nssrules | array(NssfNssRule) | POST | Create a network slice selection rule |
NSS Rule | /nnssf-configuration/v1/nssrules/{name} | NssRule | GET | Read a network slice selection rule |
DELETE | Delete a network slice selection rule | |||
PUT | Update a network slice selection rule |
AMF Resolution
The AMF Resolution managed object enables customer to configure mapping of list of candidate AMFs to a pair Target AMF set ID and Region ID. This enables operator to give static candidate AMF list. This configuration is used in cases where customer has disabled discovery service with NRF.Table 3-5 AMF Resolution - Parameters
Field Name | Type | Description (With Default Values) |
---|---|---|
regionId | Integer | Region ID of the target AMF list |
setId | Integer | Set ID of the target AMF list |
candidateAmfList | array(candidateAmf) | Refer the primitive data type section |
Customer can configure AMF Resolution by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the AMF Resolution managed object:
Table 3-6 Supported REST APIS - AMF Resolution
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
AMF Resolutions | /nnssf-configuration/v1/amfresolutions | array(NssfAmfResolution) | POST | Create a AMF resolution |
GET | Read all AMF resolutions | |||
AMF Resolution | /nnssf-configuration/v1/amfresoltuions/{region_id}[:{set_id}[:{instance_id}]] | NssfAmfResolution | GET | Read a AMF resolution |
DELETE | Delete a AMF resolution | |||
PUT | Update a AMF resolution |
Configured NSSAI
The Configured NSSAI managed object enables customer to configure default NSSAI based on one or more of the following parameters PLMN, TAC and AMF-ID. This enables operator to configure default behavior when none of the rules match and UE has set default indication flag to true.
Table 3-7 Configured NSSAI - Parameters
Field Name | Type | Description (With Default Values) |
---|---|---|
amfId | Integer | AMF Identifier |
plmnid | plmn | Public Land Mobile Network ID (MCC:MNC) |
tac | string | Tracking Area Code |
salience | Integer | Order of importance, higher salience, more important |
nssai | array(Snssai) | Refer to primitive datatype section |
Customer can configure Configured NSSAI by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the Configured NSSAI managed object:
Table 3-8 Supported REST APIs - Configured NSSAI
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
Configured NSSAIs | /nnssf-configuration/v1/configurednssais | array(NssfConfiguredNssai) | POST | Create a configured NSSAI |
GET | Read all configured NSSAIs | |||
Configured NSSAI | /nnssf-configuration/v1/configurednssais/{amf_id}:{mcc}:{mnc}[:{tac}[:{sst}:{sd}]]] | NssfConfiguredNssai | GET | Read a configured NSSAI |
DELETE | Delete a configured NSSAI |
Time Profile
The Time Profile managed object enables customer to configure time/date based slice selection policies. This allows customer to create a Time Profile and associate it to a network slice when creating a NSS Rule managed object.Table 3-9 TimeProfile - Parameters
Field Name | Type | Description |
---|---|---|
name | String | Time Profile Name |
startDate | Date | Date in the format of yy-mm-dd |
endDate | Date | Date in the format of yy-mm-dd |
daysOfWeek | array(Daysofweek) | Refer enumeration section |
timespans | array(TimeSpan) | Refer primitive section |
Customer can configure Time Profiles by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the Time Profile managed object.
Table 3-10 Supported REST APIs - Time Profile
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
Time Profiles | /nnssf-configuration/v1/timeprofiles | array(TimeProfile) | POST | Create a time profile |
GET | Read all time profiles | |||
Time Profile | /nnssf-configuration/v1/timeprofiles | TimeProfile | GET | Read a time profile |
DELETE | Delete a time profile | |||
PUT | Update a time profile |
Auth NSSAI
The Auth NSSAI managed object enables customer to configure network slice authentication rules by configuring Grant status (Allowed/Rejected_PLMN, Rejected_TAC) for S-Nssai on a per TAI basis.Table 3-11 NSSAIAuth - Parameters
Field Name | Type | Description (With Default Values) |
---|---|---|
name | String | Network Slice Authentication Rule Name |
plmnId | plmnid | Public Land Mobile Network ID (MCC:MNC) |
tac | string | Tracking Area Code |
snssai | Snssai | Single Network Slice Selection Assistance Information |
grant | Grant | Whether the requested s-NSSAI is allowed or restricted |
Customer can configure Auth NSSAI by following the information provided in the table below. The supported operations are POST, GET, and DELETE. The following table provides information about the REST APIs supported by the Auth NSSAI managed object.
Table 3-12 Supported REST APIs - NSSAIAuth
Resource Name | URI | Data Type | HTTP Method | Description |
---|---|---|---|---|
Nssai Auth | /nnssf-configuration/v1/nssaiauth | NssaiAuth | POST | Create a AuthNSSAI Profile |
Nssai Auth |
/nnssf-configuration/v1/nssaiauth / {name} |
NssaiAuth | GET | Read a AuthNSSAI Profile |
DELETE | Delete a AuthNSSAI Profile |
For a sample Open API Specification, refer to Open API Specification.
Primitive Tables
Behavior
Table 3-13 Behavior
Attribute | Datatype | Description |
---|---|---|
accessType | AccessType | Refer Enumeration section |
nsiProfiles | array(NsiProfileMap) | Array of NsiProfile Map |
TargetAmfSet
Table 3-14 TargetAmfSet
Attribute | Datatype | Description |
---|---|---|
regionId | string | region id of TargetAmfSet |
setId | string | set id of TargetAmfSet |
setFqdn | string | FQDN of TargetAmfSet |
CandidateAmf
Table 3-15 CandidateAmf
Attribute | Datatype | Description |
---|---|---|
instanceId | string | Instance id of Amf |
Timespan
Table 3-16 Timespan
Attribute | Datatype | Description |
---|---|---|
startTime | time | start time in hh:mm:ss |
endTime | time | end time in hh:mm:ss |
Plmnid
Table 3-17 Plmnid
Attribute | Datatype | Description |
---|---|---|
mcc | string | Mobile Country Code |
mnc | string | Mobile Network Code |
Snssai
Table 3-18 Snssai
Attribute | Datatype | Description |
---|---|---|
sst | integer | Slice /Service Type |
sd | string | Slice Differentiator |
Enumerations
Grant
Table 3-19 Grant
Value | Description |
---|---|
"ALLOWED" | Allowed signifies SNSSAI is allowed in TAI |
"REJECTED_IN_TA" | S-NSSAI is not allowed for Tracking Area |
"REJECTED_IN_PLMN | S-NSSAI is not allowed for PLMN |
Access Type
Table 3-20 Access Type
Value | Description |
---|---|
"3GPP_ACCESS" | Specifies 5G network |
"NON_3GPP_ACCESS" | Specifies non 5G network |
DayofWeek
Table 3-21 DayofWeek
Value | Description |
---|---|
"MONDAY" | Monday, day of the week |
"TUESDAY" | Tuesday, day of the week |
"WEDNESDAY" | Wednesday, day of the week |
"THURSDAY" | Thursday, day of the week |
"FRIDAY" | Friday, day of the week |
"SATURDAY" | Saturday, day of the week |
"SUNDAY" | Sunday, day of the week |
Configure NSSF Using Rest APIs
Before configuring NSSF using REST APIs, ensure that the NSSF is installed. For information on how to install NSSF, refer Network Selection Slice Function Installation Guide.
To configure NSSF using REST APIs:
- Configure the NSI-Profile managed
object:
NSI-Profile consists of network slice name and ID and NRF-ID ,Target AMF lists which are associated to the slice.
- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/nsiprofiles
- Body: Refer to Sample NSI-Profile-Body section for sample message/s and OpenAPI for schema.
REST message sample - NSI Profiles
http://host:port/nnssf-configuration/v1/nsiprofiles POST Content-Type: application/json BODY { "name": "NSI001", "nrfUri": "https://nrf.slice11.oracle.com/nnrf-disc/v1", "nsiId": "SLICE1", "nrfNfMgtUri":"https://nrf.slice11.oracle.com/nnrf-nfm/v1", "nrfAccessTokenUri":"https://nrf.slice11.oracle.com/oauth2/token", "targetAmfSets": [ { "regionId": "01", "setId": "001", "setFqdn": "set001.region01.amfset.5gc.mnc311.mcc282.3gppnetwork.org" }, { "regionId": "01", "setId": "002", "setFqdn": "set002.region01.amfset.5gc.mnc311.mcc282.3gppnetwork.org" } ] } POST Content-Type: application/json BODY { "name": "NSI002", "nrfUri": "https://nrf.slice2.oracle.com/nnrf-disc/v1", "nsiId": "SLICE2", "nrfNfMgtUri":"https://nrf.slice2.oracle.com/nnrf-nfm/v1", "nrfAccessTokenUri":"https://nrf.slice2.oracle.com/oauth2/token", "targetAmfSets": [ { "regionId": "01", "setId": "001", "setFqdn": "set001.region01.amfset.5gc.mnc311.mcc282.3gppnetwork.org" }, { "regionId": "02", "setId": "002", "setFqdn": "set002.region01.amfset.5gc.mnc311.mcc282.3gppnetwork.org" } ] }
- Configure the Time Profile managed
object:
NSI-Profile consists of network slice name and ID and NRF-ID ,Target AMF lists which are associated to the slice.
- Request_Type: POST
- URL: http://host:port/nnssf-configuration/v1/timeprofiles
- Body: Refer to Sample TimeProfile-Body section for sample message/s and OpenApi for schema.
REST message sample - Time Profiles
http://host:port/nnssf-configuration/v1/timeprofiles POST Content-Type: application/json BODY { "name": "WEEKDAY-BUSY", "startDate": "2020-01-01", "endDate": "2020-12-01", "daysOfWeek": [ "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY" ] "timeSpans": [ { "startTime": "09:00:00", "endTime": "12:00:00" }, { "startTime": "16:00:00", "endTime": "21:00:00" } ] }
- Configure the Nssai Auth managed object:
- Request_Type: POST
- URL: http://localhost:5755/nnssf-configuration/v1/nssaiauth/
- Body: Refer to Sample Nssai Auth -Body section for sample message/s and OpenApi for schema.
REST message sample - Nssai Auth
http://localhost:5755/nnssf-configuration/v1/nssaiauth/ POST { "name": "NSSAI-ATH-1", "plmnId": { "mcc": "311", "mnc": "282" }, "tac": "100001", "snssai": { "sst": "1", "sd": "EABB01" }, "grant": "ALLOWED" }
- Configure the NSS Rule managed object:
NSS Rules are policy rules which enable operator to ALLOW/REJECT a request for Network Slice Selection request and If allowed then map to a Network Slice.
- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/nssrules
- Body: Refer to Sample NSS-Rule -Body section for sample message/s and OpenApi for schema.
REST message sample - NSS Rules
http://host:port/nnssf-configuration/v1/nssrules POST Content-Type: application/json BODY { "name": "NSSRULE01", "amfId": "1", "plmnId": { "mcc": "311", "mnc": "282", }, "tac": "100001", "snssai": { "sst": "1", "sd": "EABB01" }, "salience": "0", "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [ { "name": "NSI001", "timeProfile": "WEEKDAY-BUSY", "salience": 1 }, { "name": "NSI002", "salience": 0 } ] } }
- Configure the Configured NSSAI managed
object:
Configured NSSAI enables customer to configure default configures NSSAI based on one or more of the following parameters PLMN, TAC, AMF-ID .
- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/configuredsnssais
- Body: Refer to Sample Configured-NSSAI-Body section for sample message/s and OpenApi for schema.
REST message sample - Configured S-NSSAIs
http://host:port/nnssf-configuration/v1/configuredsnssais POST Content-Type: application/json BODY { "plmn": { "mcc": "311", "mnc": "282", }, "tac": "100001"", "salience": 0 "nssai": [ { "sst": 1, "sd": "EABB01"" } ] }
- Configure the AMF Resolution managed
object:
AMF Resolution enables customer to configure mapping candidate AMF list to a Target AMF set ID and Region ID.
- Request_Type: POST
- URL: http: //{apiRoot}/nnssf-configuration/v1/amfresolutions
- Body: Refer to Sample AMF Resolution-Body section for sample messages and Open API for schema.
REST message sample - AMF Resolutions
http://host:port/nnssf-configuration/v1/amfresolutions POST Content-Type: application/json BODY { "regionId": "01", "setId": "001", "candidateAmfList": [ { "instanceId": "9faf1bbc-6e4a-4454-a507-aef01a101a03" }, { "instanceId": "9faf1bbc-6e4a-4454-a507-aef01a101a04" } ] }