NF Set and NF Service Set

Table 1. Feature History

Feature Name

Release Information

Description

NF Set and NF Service Set

2023.04

PCF supports the configuration of NF Set and NF Service Set feature by using the Set ID attribute in service-registration CLI commands.

Default Setting: Disabled – Configuration required to enable

Feature Summary and Revision History

Summary Data

Table 2. Summary Data
Applicable Product(s) or Functional Area PCF
Applicable Platform(s) SMI
Feature Default Setting Enabled – Configuration required to disable
Related Documentation Not Applicable

Revision History

Table 3. Revision History
Revision Details Release

First introduced.

2023.04.0

Feature Description

Policy Control Function (PCF) implements the NF Set and NF Service Set in compliance to the 3GPP Release 17 specifications.

NF Set and NF Service Set supports the following functionalities:

  • NF Set and Service Set for the services produced by PCF (smpolicycontrol(N7), ampolicycontrol(N15) and policyauthorization(N5).

  • PCF register and update of NRF, UDR and CHF call-back services.

  • NF Set and Service Set support for UDR and CHF.

How it Works

This section describes how NF Set and NF Service feature works.

NF Register

PCF constructs the NF Set ID and NF Service Set ID in the following formats.

Following is the format for NF Set Identifier:

set<Set ID>.<nftype>set.5gc.mnc<MNC>.mcc<MCC> for a NF Set in a PLMN
 or 
set<Set ID>.<nftype>set.5gc.nid<NID>.mnc<MNC>.mcc<MCC> for a NF Set in a SNPN 

Following is the format for NF Service Set Identifier:

set<Set ID>.sn<Service Name>.nfi<NF Instance ID>.5gc.mnc<MNC>.mcc<MCC> for a NF Service Set in a PLMN
or 
set<Set ID>.sn<Service Name>.nfi<NF Instance ID>.5gc.nid<NID>.mnc<MNC>.mcc<MCC> for a NF Service Set 
in a SNPN

To configure this feature, use the following configuration:

config 
   service-registration profile nf-set set-id <value> 
   end 

NOTES:

  • service-registration —Enters the service registration configuration mode.

  • profile —Enters the profile configuration mode.

Following is an example:

service-registration profile locality pcf01 
service-registration profile capacity 20 
service-registration profile priority 10 
service-registration profile nf-status REGISTERED 
service-registration profile plmn-list 100 010 
service-registration profile nf-set set-id  <value> 
service-registration profile snssais 
1 sd ABCDEF 

Added the following options for notification services:

  • chfNotificationService

  • udrNotificationService

  • nrfNotificationService

To configure this feature, use the following configuration:



config
service-registration services chfNotificationService 
service-name <value> 
nf-service-set service-set-id <value>
end 

NOTES:

  • service-registration —Enters the service registration configuration mode.

  • services —Enters the services configuration mode.

Following is an example:


service-registration services chfNotificationService
service-name <value> 
nf-service-set service-set-id <value> 

Note


Configure only the Set ID part of NF Service Set ID using the CLI and other attributes can be derived.


NRF Register and NRF Update

PCF registers or updates to NRF using the Nnrf_NFManagement_NFRegister API by passing following additional attributes to support the NF Set and NF Service Set:

  • NFProfile

    • nfSetIdList

  • NFService

    • nfServiceSetIdList

NF Service Discovery

Added the following attributes for configuration:

  • NF Set ID - nf-set-id-list

  • NF Service Set ID - nf-service-set-id

To configure this feature, use the following syntax:

config 
   profile nf-pair nf-type nf-set-id-list 
   end 
config 
   profile nf-client nf-type nf-set-id-list 
   end 

Following is an example:

profile nf-pair nf-type CHF 
 nrf-discovery-group    nrf-discovery-group 
 subscription-enabled   true 
 subscription-extension 3 
 locality client  pcf01 
 locality preferred-server loc1 
 locality geo-server loc2 
 nf-set-id-list set-id chfset1 mcc 111 mnc 12
 exit
 nf-service-set-id-list service-set-id chfservice nf-instance-id 54804518-4191-46b3-955c-ac631f953ed8 mcc 111 mnc 12
 exit
exit

profile nf-client nf-type chf
 chf-profile chfprofile
  locality SW
   priority 10000   
   service name type nchf-spendinglimitcontrol
    nf-service-set-id-list [service-set-id list]
    endpoint-profile chfprofile
     capacity   10
     priority   30
     uri-scheme http
     version
      uri-version v1
      exit
     exit
     nf-set-id-list set-id chfset1 mcc 111 mnc 11
     exit
     nf-service-set-id-list service-set-id spendlimit1 nf-instance-id 54804518-4191-46b3-    955c-ac631f953ed8 mcc 111 mnc 11
     exit
     endpoint-name ep1
      primary ip-address ipv4 10.191.26.65
      primary ip-address port 1090
      secondary ip-address ipv4 10.191.153.129
      secondary ip-address port 1090
     exit
     endpoint-name ep2
      primary ip-address ipv4 10.191.26.64
      primary ip-address port 1090
      secondary ip-address ipv4 10.191.153.128
      secondary ip-address port 1090
     exit
    exit
   exit
  exit
 exit
exit

Note


PCF uses the Set ID and Service Set ID values from the CLI and use them for NF set aware Discovery and Retry.


If the NF Set ID or NF Service Set ID is available in the client profile, the PCF requests to NRF using the Nnrf_NFDiscovery_request API by passing the following additional query params to select the NF services based on the NF Set ID or NF Service Set ID:

  • - target-nf-set-id

  • - target-nf-service-set-id

NF selection retry and re-selection are done first within the same NF Service Set and then within the same NF Set.

Bulk Statistics Support

Added the following KPIs for NF Selection based on the SetID and Service SetID:

  • outgoing_request_total_nfset

    {interface_name="N28",service_name="nchf-spendinglimitcontrol",operation_name="Unsubscribe",command="Nchf_SpendingLimitControl_Unsubscribe",peer_host_port="192.168.72.81:9003",nf_set_id="setchfset1.pcfset.5gc.mnc12.mcc123",nf_service_set_id="",result_code="408",} 1.0

  • outgoing_request_time_nfset {interface_name="N28",service_name="nchf-spendinglimitcontrol",operation_name="Nchf_SpendingLimitControl_Subscribe",command="Subscribe",peer_host_port="192.168.72.81:9003",nf_set_id="setchfset1.pcfset.5gc.mnc12.mcc123",nf_service_set_id="",result_code="408",} 1.000907281

  • outbound_request_nfset_nf_unavailable{interface_name="N36",service_name="nudr-dr",operation_name="Nudr_Subscribe_PolicyData_SM",command="SmDataSubscribe",nf_set="setudrset1.pcfset.5gc.mnc12.mcc123",} 2.0

  • outbound_request_nfserviceset_nf_unavailable{interface_name="N28",service_name="nchf-spendinglimitcontrol",operation_name="Nchf_SpendingLimitControl_Unsubscribe",command="Unsubscribe",nf_service_set="setchfset123.snnchf-spendinglimitcontrol.nfi9d703aba-2ee4-4171-baa4-53ea3e8c7352.5gc.mnc34.mcc345",} 1.0