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:

  1. 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"
            }
        ]
    }
  2. 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"
            }
        ]
    }
  3. 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"
    }
  4. 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
                }
            ]
        }
    }
  5. 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""
            }
        ]
    }
  6. 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"
            }
        ]
    }