5 Services offered by the NSACF

29.5363GPP5G SystemNetwork Slice Admission Control ServicesRelease 18Stage 3TS

5.1 Introduction

The NSACF supports the following services.

Table 5.1-1: NF Services provided by NSACF

Service Name

Description

Example Consumer

Nnsacf_NSAC

This service allows NF service consumer (e.g. AMF) to request NSACF to perform per slice admission control for the number of UEs / PDU sessions.

AMF, SMF

Nnsacf_SliceEventExposure

This service provide event based notifications to the NF service consumer related to the number of UEs registered to a network slice or the number of PDU Sessions established to a network slice.

NEF, AF, NWDAF

Table 5.1-2 summarizes the corresponding APIs defined for this specification.

Table 5.1-2: API Descriptions

Service Name

Clause

Description

OpenAPI Specification File

apiName

Annex

Nnsacf_NSAC

6.1

per slice admission control service to control the number of UEs / PDU sessions

TS29536_Nnsacf_NSAC.yaml

nnsacf-nsac

A.2

Nnsacf_SliceEventExposure

6.2

Slice related event subscription and notification

TS29536_Nnsacf_SliceEventExposure.yaml

nnsacf-slice-ee

A.3

5.2 Nnsacf_NSAC Service

5.2.1 Service Description

The Nnsacf_NSAC service provides the service capability for the NF Service Consumer (e.g. AMF, SMF) to request admission control for UEs accessing a specific network slice, or for PDU sessions to be established to a specific network slice. The following are the key functionalities of this NF service:

– Request the NSACF to control the number of UEs registered to a specific network slice, e.g. perform availability check and update the number of UEs registered to a specific network slice;

– Request the NSACF to control the number of PDU session established to a specific network slice, e.g. perform availability check and update the number of PDU sessions established to a specific network slice;

– Notify the NF Service Consumer (e.g. AMF) of the activation/deactivation of EAC (Early Admission Control) mode for NSAC procedure;

The Nnsacf_NSAC service supports the following service operations.

Table 5.2.1-1: Service operations supported by the Nnsacf_NSAC service

Service Operations

Description

Operation

Semantics

Example Consumer(s)

NumOfUEsUpdate

Request the NSACF to perform admission control to control the number of UEs registered to a network slice.

Request/Response

AMF, combined SMF+PGW-C

NumOfPDUsUpdate

Request the NSACF to perform admission control to control the number of PDU sessions established to a network slice.

Request/Response

SMF, combined SMF+PGW-C

EACNotify

Notify the NF Service Consumer of the activation/deactivation of EAC mode.

Subscribe/Notify

AMF

When the UE connects to EPS and EPS counting is required for the S-NSSAI, the combined SMF+PGW-C shall invoke the NumOfUEsUpdate and NumOfPDUsUpdate service operations in sequence. If the NumOfUEsUpdate returns failure, the combined SMF+PGW-C shall not continue invoking the NumOfPDUsUpdate. If the NumOfPDUsUpate returns failure then the combined SMF+PGW-C shall invoke the NumOfUEUpdate to decrease the UE count.

5.2.2 Service Operations

5.2.2.1 Introduction

This clause introduces the related procedures using Nnsacf_NSAC service operations to request the NSACF to control the number of UEs registered to a specific network slice.

5.2.2.2 NumOfUEsUpdate

5.2.2.2.1 General

The NumOfUEsUpdate service operation shall be used by the NF Service Consumer (e.g. AMF, or combined SMF+PGW-C) to request the NSACF to control the number of UEs registered to a specific network slice, e.g. perform availability check and update the number of UEs registered to a network slice. It is used in the following procedures:

– AMF initiated network slice admission control procedure related to control the number of UEs registered to a network slice (see clause 4.2.11.2 of 3GPP TS 23.502 [3]).

– Combined SMF+PGW-C initiated network slice admission control procedure related to control the number of UEs registered to a network slice, in the case of EPS interworking (see clause 5.15.11.5 of 3GPP TS 23.501 [2]).

The operation may also be used to update the number of existing registered UEs in the NSACF when NSAC is enabled or disabled for a slice which is already live in the network.

5.2.2.2.2 Network slice admission control for controlling the number of UEs

The NF Service Consumer (e.g. AMF, combined SMF+PGW-C) shall invoke the NumOfUEsUpdate service operation to request the NSACF to perform network slice admission control procedure related to the number of UEs, by using the HTTP POST method as shown in Figure 5.2.2.2.2-1.

Figure 5.2.2.2.2-1: NSAC procedure for controlling the number of UEs

1. The NF Service Consumer (e.g. AMF, combined SMF+PGW-C) shall send a POST request to the resource representing the network slice admission control related to the number of UEs (i.e. …/slices/ues) in the NSACF.

The payload body of the POST request shall contain the input data structure (i.e. UeACRequestData) for network slice admission control, which shall contain the following information:

– the SUPI(s) of the UE(s);

– the access type, over which the UE registers to the network or deregisters from the network;

– a list of S-NSSAIs which are subject to NSAC, and for each S-NSSAI an update flag indicates the operation to that S-NSSAI;

– the NF Instance ID, identifying the requester NF.

In addition, the POST request may also contain:

– the EAC notification callback URI. The AMF may provide the EAC notification callback URI at the first interaction with the NSACF, or may provide an updated one in later interactions when it changes. If the EAC notification callback URI is set to null value by the AMF in later interactions, it means the AMF unsubscribes the EAC notification from the NSACF;

– the additional access type, if the UE deregisters from the network over both 3GPP access and Non-3GPP access.

The update flag shall be set to "INCREASE" for a UE to be registered to a specific slice, and shall be set to "DECREASE" for a UE to be deregistered from a specific slice.

For NSAC of roaming UEs, the NF Service Consumer (e.g. AMF) shall provide the S-NSSAI in serving PLMN, and the corresponding mapped S-NSSAI in home PLMN to the NSACF in serving PLMN.

NOTE 1: When multiple S-NSSAIs are supported by a NSACF and multiple S-NSSAIs are required for NSAC for a given UE where EAC mode is active for at least one S-NSSAI, how the AMF triggers NSAC procedure to this NSACF is implementation specific, e.g. the AMF triggers NSAC procedure for all these supported S-NSSAIs before the Registration Accept message or the UE Configuration Update message.

2a. For each S-NSSAI included in UeACRequestData, the NSACF shall perform the following actions:

– if the update flag is set to "INCREASE", the NSACF shall check whether the UE is already in the UE registration list stored in the NSACF and whether the total number of UEs to this slice will exceed the maximum number of UEs allowed to be registered to this slice:

– if the UE ID is already recorded in the UE registration list but the requester NF is not recorded in the UE registration list, the NSACF shall create a new entry for the UE registration associated with the requester NF and shall also maintain the existing UE registration entries. The total number of UEs registered to this slice is not updated;

– if the UE ID is not recorded in the UE registration list and the total number of UEs (including the UEs indicated in the request and the UEs already stored in the NSACF) does not exceed the maximum number of UEs allowed to be registered to this slice, the NSACF records the indicated UEs to the UE registration list stored in the NSACF, and updates the total number of UEs registered to this slice accordingly;

– if the UE ID is not recorded in the UE registration list and if the total number of UEs will exceed the maximum number of UEs allowed to be registered to this slice, the NSACF shall not record the UE into the UE registration list stored in the NSACF, and shall not update the total number of UEs. Instead, the NSACF shall record this S-NSSAI in the failed list of S-NSSAI in the response message, together with an appropriate value of AcuFailureReason (e.g. "EXCEED_MAX_UE_NUM" as specified in clause 6.1.6.3.5);

– if the update flag is set to "DECREASE" and if the UE is recorded in the UE registration list, the NSACF shall remove the indicated UEs from the UE registration list stored in the NSACF. If there are two or more UE registration entries associated with the UE ID, the NSACF shall only remove the entry associated with the requester NF. After removal, if a UE is no longer recorded in the UE registration list, the NSACF shall decrease the total number of UEs registered to this slice.

– If the update flag is set to "DECREASE" and if the UE is not recorded in the UE registration list, the NSACF shall not decrease the total number of UEs registered to this slice and shall return successful handling for this UE registration.

The NSACF may be configured to perform per access type network slice admission control. In this case, the NSACF shall check whether the access type provided by the NF Service Consumer is configured for NSAC for the indicated S-NSSAI to control the number of UEs. If the access type is not configured for NSAC for the indicated S-NSSAI, the NSACF shall skip the above handling for increasing/decreasing the number of UEs and return successful for this S-NSSAI. If the access type is configured for NSAC for the indicated S-NSSAI, the NSACF shall perform the above handling taking the access type into account and record/remove the UE registration associated with the access type. If the total number of UEs will exceed the maximum number of UEs allowed to be registered to this slice, the NSACF shall record this S-NSSAI in the failed list of S-NSSAI in the response message, together with an appropriate value of AcuFailureReason (e.g. "EXCEED_MAX_UE_NUM" as specified in clause 6.1.6.3.5).

If the NSACF is not configured to perform per access type network slice admission control, the NSACF may perform network slice admission control without taking access type into account. For example, the NSACF is configured with a total quota for the PLMN, but the network slice admission control is not specific to one access type. The NSACF shall record the access type(s) associated with the UE registration. The NSACF shall remove the corresponding UE registration entry when the UE deregisters from all access types.

NOTE 2: For each S-NSSAI that is applicable for NSAC, the NSACF is configured with a total quota for the PLMN. However, the network slice admission control may be configured to apply for one specific access type or both access types.

If in above NSACF handling not all S-NSSAIs are successful, "200 OK" shall be returned, with necessary response data indicating the failed S-NSSAI and the failure reason, e.g. "EXCEED_MAX_UE_NUM".

If in above NSACF handling all S-NSSAIs are successful, "204 No Content" shall be returned which could represent the maximum number of UEs for the S-NSSAI not reached.

NOTE 3: If the PLMN has multiple service areas and there are multiple NSACFs deployed for the network slice, each NSACF may be configured with the maximum number of UEs of the network slice within its service area, e.g. as per operator policy. How to split or synchronize the threshold in multiple NSACFs is left to implementation. Whether and how to guarantee session continuity when a UE moves to new service area with a different NSACF are left to implementation.

NOTE 4: If the NF Service Consumer is AMF, the NSACF may subscribe to AMF Status Change Notifications (e.g. AMF unavailability) via the NRF and update the NF ID accordingly, as described in clause 4.2.11.2 of 3GPP TS 23.502 [3].

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") indicating the error shall be returned.

A ProblemDetails IE shall be included in the payload body of POST response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.1.3.2.3.1-1.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of POST response.

When the procedure is used to perform admission control for a number of UEs, when e.g. NSAC is enabled or disabled for an already live slice, then based on operator policy AMF may allow or disallow sessions for which NSACF returned a reject.

5.2.2.3 EACNotify

5.2.2.3.1 General

The EACNotify service operation shall be used by the NSACF to inform the NF Service Consumer (e.g. AMF) of the activation/deactivation of EAC mode. It is used in the following procedures:

– NSACF initiated configuration on EAC mode procedure (see clause 4.2.11.3 of 3GPP TS 23.502 [3]).

5.2.2.3.2 NSACF initiated EAC mode configuration

The EACNotify service operation shall be used by the NSACF to configure the EAC mode(s) for S-NSSAI(s) to the NF Service Consumer (e.g. AMF). The EACNotify service operation shall be triggered when the NSACF decides to set the EAC mode for an S-NSSAI to "ACTIVE" if the number of UEs registered to an S-NSSAI is above certain threshold, or set the EAC mode for an S-NSSAI to "DEACTIVE" if the number of UEs registered to an S-NSSAI is below certain threshold. The activation threshold and the deactivation threshold may be same or different.

If NF Service Consumer has implicitly subscribed to receive EAC notification, the NSACF shall notify the NF Service Consumer (e.g. AMF) to configure the EAC mode by using the HTTP POST method as shown in Figure 5.2.2.2.3-1.

Figure 5.2.2.2.3-1: NSACF initiated EAC mode configuration procedure

1. The NSACF shall send a POST request to the EAC Notification callback URI provided by the NF Service Consumer (e.g. AMF).

The payload body of the POST request shall contain the notification payload (i.e. EACNotification), which shall contain the following information:

– S-NSSAI(s);

– the EAC mode for each S-NSSAI.

The callback URI may be provided by the AMF in the first interaction with the NSACF, or in later interactions when the callback URI is changed.

2a. On success, "204 No Content" shall be returned and the payload body of the POST response shall be empty.

2b. On failure, one of the HTTP status code listed in Table 6.1.5.2.3.1-2 shall be returned. For a 4xx/5xx response, the message body shall contain a ProblemDetails structure with the "cause" attribute set to one of the application error listed in Table 6.1.7.3-1.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of POST response.

The NSACF may try several times to send EAC notification to the AMF, if no response is received from the AMF e.g. AMF is out of service. If the subsequent try still fails, the NSACF should stop sending EAC notification, unless the AMF becomes available.

5.2.2.4 NumOfPDUsUpdate

5.2.2.4.1 General

The NumOfPDUsUpdate service operation shall be used by the NF Service Consumer (e.g. SMF) to request the NSACF to control the number of PDU sessions registered to a specific slice, e.g. perform availability check and update the number of PDU sessions registered to a slice. It is used in the following procedures:

– SMF initiated network slice admission control procedure for controlling the number of PDU sessions registered to a network slice (see clause 4.2.11.4 of 3GPP TS 23.502 [3]).

– Combined SMF+PGW-C initiated network slice admission control procedure for controlling the number of PDU sessions registered to a network slice, in the case of EPS interworking (see clause 5.15.11.5 of 3GPP TS 23.501 [2], and clause 4.2.11.4 of 3GPP TS 23.502 [3]).

The operation may also be used to update the number of existing PDU Sessions in the NSACF when NSAC is enabled or disabled for a slice which is already live in the network.

5.2.2.4.2 Network slice admission control for controlling the number of PDU sessions

The NF Service Consumer (e.g. SMF, combined SMF+PGW-C) shall invoke the NumOfPDUsUpdate service operation to request the NSACF to perform network slice admission control procedure related to the number of PDU sessions, by using the HTTP POST method as shown in Figure 5.2.2.4.2-1.

Figure 5.2.2.4.2-1: NSAC procedure for controlling the number of PDU sessions

1. The NF Service Consumer (e.g. SMF) shall send a POST request to the resource representing the network slice admission control related to the number of PDU sessions (i.e. …/slices/pdus) in the NSACF.

The payload body of the POST request shall contain the input data structure (i.e. PduACRequestData) for network slice admission control, which shall contain the following information:

– the SUPI of the UE;

– the access type, over which the PDU session is to be established or released;

– the PDU session ID(s);

– a list of S-NSSAIs which are subject to NSAC, and for each S-NSSAI an update flag indicates the operation to that S-NSSAI.

In addition, the POST request may also contain:

– the NF Instance ID of the requester NF (i.e. SMF);

– the PGW-C FQDN, if the request is sent by a combined SMF+PGW-C in EPS interworking case.

– the additional access type, for an Multi-Access PDU session, if the PDU session is to be established over both 3GPP access and Non-3GPP access, or if the PDU session is to be released from both 3GPP access and Non-3GPP access.

The update flag within the PduACRequestData shall be set to the value as following:

– "INCREASE" for a Single-Access PDU session which is to be established, or for an Multi-Access PDU session when new access leg(s) is to be established;

– "DECREASE" for a Single-Access PDU session which is to be released, or for an Multi-Access PDU session when existing access leg(s) is to be removed;

– "UPDATE" for a Single-Access PDU session when the access type is to be replaced with a new access type during inter access mobility.

For LBO cases, the NF Service Consumer in serving PLMN (e.g. vSMF) shall provide the S-NSSAI in serving PLMN, and the corresponding mapped S-NSSAI in home PLMN to the NSACF in serving PLMN. For PDU sessions in the home-routed roaming case, the NF Service Consumer in home PLMN (e.g. hSMF) shall provide S-NSSAI(s) in home PLMN to the NSACF in the home PLMN.

2a. For each S-NSSAI included in PduACRequestData, the NSACF shall perform the following actions:

– if the update flag is set to "INCREASE", the NSACF shall check whether the PDU session is already recorded in the PDU registration list in the NSACF and whether the total number of PDU sessions to this slice will exceed the maximum number of PDU sessions allowed to be registered to this slice:

– if the PDU session (identified by the UE ID and the PDU session ID) is already recorded in the PDU registration list, the NSACF shall skip recording this PDU session and shall not increase the total number of PDU sessions established to this network slice;

– if the PDU session is not recorded in the PDU registration list and the total number of PDU sessions (including the PDU session indicated in the request and the PDU sessions already stored in the NSACF) does not exceed the maximum number of PDU sessions allowed to be registered to this slice, the NSACF records the PDU session to the PDU registration list stored in the NSACF, and updates the total number of PDU sessions registered to this slice accordingly;

– if the PDU session is not recorded in the PDU registration list and if the total number of PDU sessions will exceed the maximum number of PDU sessions allowed to be registered to this slice, the NSACF shall not record the PDU session into the PDU registration list stored in the NSACF, and shall not update the total number of PDU sessions. Instead, the NSACF shall record this S-NSSAI in the failed list of S-NSSAI in the response message, together with an appropriate value of AcuFailureReason (e.g. "EXCEED_MAX_PDU_NUM" as specified in clause 6.1.6.3.5);

– if the update flag is set to "DECREASE" and if the PDU session is recorded in the PDU registration list, the NSACF decreases the total number of PDU sessions registered to this slice, and removes the indicated PDU session from the PDU registration list stored in the NSACF.

– If the update flag is set to "DECREASE" and if the PDU session is not recorded in the PDU registration list, the NSACF shall not decrease the total number of PDU sessions registered to this slice and shall return successful handling for this PDU registration.

– If the update flag is set to "UPDATE", the NSACF shall locate the existing entry in the PDU registration list and update the access type associated to the PDU session to which indicated in the request message.

The NSACF may be configured to perform per access type network slice admission control. In this case, the NSACF shall check whether the access type provided by the NF Service Consumer is configured for NSAC for the indicated S-NSSAI to control the number of PDU sessions. If the access type is not configured for NSAC for the indicated S-NSSAI, the NSACF shall skip the above handling for increasing/decreasing the number of PDU sessions and shall return successful for this S-NSSAI. If the access type is configured for NSAC for the indicated S-NSSAI, the NSACF shall perform the above handling taking the access type into account. If the update flag is set to "UPDATE", the NSACF shall first increase the number of PDU sessions for the new access type, and if successful then decrease the number of PDU sessions for the old access type. If the total number of PDU sessions will exceed the maximum number of PDU sessions allowed to be registered to this slice, the AcuFailureReason shall indicate the applied access type (e.g. "EXCEED_MAX_PDU_NUM_3GPP" or "EXCEED_MAX_PDU_NUM_N3GPP" as specified in clause 6.1.6.3.5).

If the NSACF is not configured to perform per access type network slice admission control, the NSACF may perform network slice admission control without taking access type into account. For example, the NSACF is configured with a total quota for the PLMN, but the network slice admission control is not specific to one access type. The NSACF shall record the access type(s) associated with the PDU registration. The NSACF shall remove the PDU registration entry when the PDU session is released from all access types.

NOTE 1: For each S-NSSAI that is applicable for NSAC, the NSACF is configured with a total quota for the PLMN. However, the network slice admission control may be configured to apply for one specific access type or both access types.

If in above NSACF handling not all S-NSSAIs are successful, "200 OK" shall be returned, with necessary response data, e.g. indicating the failed S-NSSAI(s).

If in above NSACF handling all S-NSSAIS are successful, "204 No Content" shall be returned.

NOTE 2: If the PLMN has multiple service areas and there are multiple NSACFs deployed for the network slice, each NSACF may be configured with the maximum number of PDU Sessions of the network slice within its service area, e.g. as per operator policy. How to split or synchronize the threshold in multiple NSACFs is left to implementation. Whether and how to guarantee session continuity when a UE moves to new service area with a different NSACF are left to implementation.

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") indicating the error shall be returned.

A ProblemDetails IE shall be included in the payload body of POST response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.1.3.3.3.1-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse shall be included in the payload body of POST response.

When the procedure is used to perform admission control for a number of UEs, when e.g. NSAC is enabled or disabled for an already live slice, then based on operator policy, SMF may allow or disallow sessions for which NSACF returned a reject.

5.3 Nnsacf_SliceEventExposure Service

5.3.1 Service Description

The Nnsacf_SliceEventExposure services provide event based notifications to the consumer NF (e.g. to AF via NEF) related to the number of UEs registered to a network slice or the number of PDU Sessions established to a network slice.

If, in accordance with operator policy and national/regional regulations, the NF Service Consumer (i.e. the AMF or the SMF) needs to exempt UEs/PDU Sessions that are used for emergency, mission critical and/or priority services (e.g. MCS, MPS) from NSAC, then the NF service consumer may send a request to NSACF and ignore the NSACF response. Therefore, if a UE/PDU session is rejected by NSACF, then the reports generated by the NSACF would not have counts of those UEs/PDU-Sessions, despite the UEs accessing the corresponding slice(s). Alternatively, the NF Service Consumer (i.e. the AMF or the SMF) may not invoke the corresponding NSAC procedure for the exempted UE/PDU Session, i.e. those UEs/PDU Sessions are not counted towards the maximum number of UEs/PDU Sessions (see clause 5.15.11.0 of 3GPP TS 23.501 [2]).

5.3.2 Service Operations

5.3.2.1 Introduction

For the Nnsacf_SliceEventExposure service the following service operations are defined:

– Subscribe, including creation or modification of a subscription;

– Unsubscribe;

– Notify.

5.3.2.2 Subscribe

5.3.2.2.1 General

This service operation is used by the consumer NF (e.g. NEF, AF or NWDAF) to subscribe or modify a subscription with the NSACF for event based notifications of the number of UEs registered to a network slice or the number of PDU Sessions established to a network slice.

5.3.2.2.2 Creation of a subscription

The Subscribe service operation is invoked by a NF Service Consumer (e.g. NEF, AF or NWDAF) towards the NSACF, when it needs to create a subscription to monitor the event relevant to the NSACF.

The NF Service Consumer shall request to create a new subscription by using HTTP method POST with URI of the subscriptions collection, see clause 6.2.3.1.

The NF Service Consumer shall include the following information in the HTTP message body:

– NF ID, indicates the identity of the network function instance initiating the subscription;

– Notification URI, indicates the address to deliver the event notifications generated by the subscription;

– Notification Correlation ID, indicates the correlation identity to be carried in the event notifications, the value of this IE shall be unique per subscription for a given NF service consumer receiving the notification;

– SAC Event Type, defines whether to notify the number of UEs registered with a network slice or the number of PDU Sessions established on a network slice;

– Event Filter, indicate the S-NSSAI(s) in serving PLMN and/or mapped S-NSSAI(s) in home PLMN to be monitored and reported.

– SAC Event Report Triggers, defines whether the notification is threshold triggered (e.g. the notification is triggered when the current number of UEs or PDU Sessions with a network slice reaches a defined threshold value) or the notification is periodic triggered (e.g. the notification is triggered at expiry of a periodic timer).

– Notification threshold if the SAC Event Report Triggers is threshold triggered, defines a numeric value or a percentage of the maximum number of the UEs or PDU Sessions per network slice;

– Notification periodicity if the SAC Event Report Triggers is periodic triggered, defines the time between the notification periodicity.

Figure 5.4.2.2.2-1 Subscribe for Creation

1. The NF Service Consumer (e.g. NEF, AF or NWDAF) shall send a POST request to create a subscription resource in the NSACF. The payload body of the POST request shall contain a representation of the individual subscription resource to be created. The request may contain an expiry time, suggested by the NF Service Consumer, representing the time up to which the subscription is desired to be kept active and the time after which the subscribed event(s) shall stop generating report.

2a. On success, the request is accepted, the NSACF shall include a HTTP Location header to provide the location of a newly created resource (subscription) together with the status code 201 indicating the requested resource is created in the response message.

The response, based on operator policy and taking into account the expiry time included in the request, may contain the expiry time, as determined by the NSACF, after which the subscription becomes invalid. Once the subscription expires, if the NF Service Consumer wants to keep receiving notifications, it shall create a new subscription in the NSACF. The NSACF shall not provide the same expiry time for many subscriptions in order to avoid all of them expiring and recreating the subscription at the same time. If the expiry time is not included in the response, the NF Service Consumer shall consider the subscription to be valid without an expiry time.

If the immediateFlag attribute is set to "true" in the request message, the NSACF shall include the current number of UEs or PDU Sessions per network slice in the response immediately.

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") shall be returned.

A ProblemDetails IE shall be included in the payload body of POST response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.2.3.2.3.1-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of POST response.

5.3.2.2.3 Modification of a subscription

The Subscribe service operation is invoked by a NF Service Consumer (e.g. NEF, AF or NWDAF) towards the NSACF, when it needs to modify an existing subscription previously created by itself at the NSACF.

When the subscription is to be expired, the NF service consumer may request the NSACF to update the subscription by indicating a new expiry time. The NSACF may return a new expiry time based on local policy, taking into account of the NF service consumer provided expiry time.

To perform a partial update of the subscription of a given subscription Id, the NF Service Consumer shall issue an HTTP PATCH request, as shown in Figure 5.3.2.2.3-1. This partial update shall be used to add, delete and/or replace individual parameters of the subscription.

Figure 5.3.2.2.3-1 Subscription partial modification

1. The NF Service Consumer (e.g. NEF, AF or NWDAF) shall send a PATCH request to the resource URI representing the individual subscription, identified by the {subscriptionId}. The payload body of the PATCH request shall contain the list of operations (add/delete/replace) to be applied to parameters in the individual subscription.

2a. On success, the request is accepted, the NSACF shall return the representation of the updated subscription resource with the status code "200 OK", or "204 No Content" shall be returned.

"204 No Content" may be returned, if the NF Service Producer accepts entirely the resource representation provided by the NF Service Consumer in the request. For example, the request contained a proposed expiry time and it is accepted by the NF Service Producer as the expiration time for the subscription, or the request did not contain a proposed expiry time and no expiration time is set by the NF Service Producer for the subscription.

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") shall be returned.

A ProblemDetails IE shall be included in the payload body of PATCH response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.2.3.3.3.1-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of PATCH response.

To perform a complete replacement of the subscription of a given subscription Id, the NF Service Consumer shall issue an HTTP PUT request, as shown in Figure 5.3.2.2.3-2:

Figure 5.3.2.2.3-2 Subscription Complete Replacement

1. The NF service consumer (e.g. NEF, AF or NWDAF) shall send a PUT request to the resource URI representing the individual subscription, identified by the {subscriptionId}. The payload body of the PUT request shall contain a representation of the individual subscription to be completely replaced in the NSACF.

2a. On success, the request is accepted, the NSACF shall include the resource (subscription) after replacement together with the status code "200 OK" indicating the requested resource is updated in the response message.

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") shall be returned.

A ProblemDetails IE shall be included in the payload body of PUT response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.2.3.3.3.2-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of PUT response.

5.3.2.2.4 Creation of a one time and immediate reporting subscription

The NF Service Consumer (e.g. NEF, AF or NWDAF) may request the NSACF to immediately provide the current network slice status information (e.g. the number of UEs registered to a network slice, the current number of PDU Sessions established to a network slice). In this case, the NF Service Consumer (e.g. NEF, AF or NWDAF) shall request the NSACF to create a temporary subscription and response with immediate report, as follows.

1. The NF Service Consumer shall send a POST request as specified in step 1 of clause 5.3.2.2.2, with the following additional information:

– the maxReports attribute set to 1 and the immediateFlag attribute set to "true".

2a. The NSACF shall send a POST response as specified in step 2a of clause 5.3.2.2.2, with the following additional information:

– the NSACF shall include the current number of UEs or PDU Sessions per network slice in the response immediately and shall terminate the subscription of the event.

The NSACF shall terminate the subscription of the event after sending response to the NF Service Consumer.

2b. Same as step 2b of figure 5.3.2.2.2-1.

2c. Same as step 2c of figure 5.3.2.2.2-1.

5.3.2.3 Unsubscribe

5.3.2.3.1 General

This service operation is used by the consumer NF (e.g. NEF, AF or NWDAF) to unsubscribe from the event notification.

The NF Service Consumer (e.g. NEF, AF or NWDAF) shall unsubscribe to the subscription by using HTTP method DELETE.

Figure 5.3.2.3.1-1: Unsubscribe a subscription

1. The NF Service Consumer (e.g. NEF, AF or NWDAF) shall send a DELETE request to delete an existing subscription resource in the NSACF.

2a. On success, the request is accepted, the NSACF shall reply with the status code 204 indicating the resource identified by subscription ID is successfully deleted in the response message.

2b. On failure, the appropriate HTTP status code (e.g. "403 Forbidden") shall be returned.

A ProblemDetails IE shall be included in the payload body of DELETE response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.2.3.3.3.3-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of DELETE response.

5.3.2.4 Notify

5.3.2.4.1 General

This service operation is used by the NSACF to report the current number of UEs registered with a network slice or the current number of PDU Sessions established on a network slice in numbers or in percentage from the maximum allowed numbers.

While counting the number of UEs registered to a network slice, the NSACF shall not count twice the UE Ids stored temporarily due to the AMF mobility scenario.

Figure 5.3.2.4.1-1: Notify

1. The NSACF shall send a POST request to send a notification.

If the notification is threshold triggered, the NSACF shall send the notification every time if there is a change from being below the threshold to reach the threshold, or from reaching the threshold to coming down below the threshold (see clause 4.15.3.2.10 of 3GPP TS 23.502 [3]). When a subscription is created and the current number of UEs or number of PDU sessions reaches the threshold, the NSACF shall send the notification immediately.

EXAMPLE:

If the threshold for the reporting of the number of registered UEs is 100, the behaviour of the NSACF as below:

– the current number of registered UEs is 100 when the subscription is created, the NSACF shall send a notification to the NF service consumer, then

– the current number of registered UEs is changed to 99, the NSACF shall send a notification to the NF service consumer, then

– the current number of registered UEs is changed to 90, the NSACF shall not send notification, then

– the current number of registered UEs is changed to 100, the NSACF shall send a notification to the NF service consumer, then

– the current number of registered UEs is changed to 110, the NSACF shall not send notification.

For periodic reporting, the NSACF shall contain the current number of registered UEs in the concerned network slice or the current number of established PDU sessions in the concerned network slice expressed in percentage and in numerical to the NF Service Consumer.

2a. On success, "204 No content" shall be returned by the NF Service Consumer (e.g. NEF, AF or NWDAF).

2b. On failure, the appropriate HTTP status code (e.g. "307 Temporary Redirect") shall be returned and appropriate additional information should be returned.

A ProblemDetails IE shall be included in the payload body of POST response, with the "cause" attribute of ProblemDetails set to application error codes specified in table 6.2.5.2.2.1-3.

2c. On redirection, "307 Temporary Redirect" or "308 Permanent Redirect" shall be returned. A RedirectResponse IE shall be included in the payload body of POST response.