Heartbeat

Feature Summary and Revision History

Summary Data

Table 1. 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 2. Revision History

Revision Details

Release

Enhancement introduced.

PCF is configured to send the cluster load information in the heartbeat.

2020.05.0

First introduced.

2020.02.0

Feature Description

PCF registers with NRF and sends a heartbeat message to the same NRF to infer its status as active or inactive. Complying with 3GPP TS 29.510, PCF performs the following tasks when sending a heartbeat:

  • Sends a heartbeat in the form of a PATCH request to, and processes responses with the NRF that it has registered with.

  • Performs the failover operation when the registered NRF is unavailable due to connectivity issues or some unknown reasons. In such situations, PCF registers and uses the available secondary or tertiary NRF when the primary NRF is unresponsive. Simultaneously, PCF attempts to register with the primary NRF. When registration to the original (primary) NRF is successful, PCF stops sending heartbeats to the secondary or tertiary NRF.

    In the absence of the primary NRF, PCF performs the failover and failback in the following sequence:

    • Failover: Primary > Secondary or Tertiary > Tertiary

    • Failback: Tertiary > Secondary or Primary > Primary

  • When PCF registers with a nonprimary NRF, it attempts to register with the primary NRF in the interval that is configured in the interval-in-secs parameter. For more information, see the nfServices information in the Network Repository Function Subscription to Notifications chapter.

  • When sending two consecutive heartbeat messages, PCF honors the time interval that is available in the heartBeatTimer attribute in the registration response or the heartbeat response.

  • Subscription management:

    • PCF subscribes to notifications from NRF for profile changes based on the ServiceName attribute. The subscription happens through a PATCH request.

    • After a subscription validity time has elapsed, PCF resubscribes to NRF through a PATCH request.

    • PCF sends a remove or delete request to NRF to cancel the subscription.

How it Works

This section describes how this feature works.

The PCF registers with the NRF to create a passage for interacting with the other NFs to perform operations such as discovery and selection.

The overview of how NF and PCF interact through NRF in the following sequence:

  1. Registration: PCF registers its profile that defines the services or capabilities with the NRF. The registration service request contains the load parameters. The cluster load value is a collective value of the cluster memory and cluster CPU usage derived from Prometheus.

  2. Discovery: After the registration is successful, the NRF sends the information about the registered PCF instances to the (consumer NF) NFs through an NRF query. The NFs that are registered with the NRF periodically send a heartbeat in the form of an NFUpdate service. The NF discovery response carries attributes such as load, capacity.

  3. Selecton: When the NF wants to establish a connection with a PCF instance, it determines the appropriate instance based on the attributes such as load and location.

    If the NRF receives an NF query with the preferred-locality attribute, then, NRF assigns a higher priority value (higher the value, lower the priority) to the profiles or services that do not match the preferred-locality parameter. The NRF sorts the NF profiles and services based on the load, capacity, and priority in the next step. The consumer NF determines the registered NF based on the criteria that NRF has used for sorting. For example, if UPF wants to send a service request to a PCF instance in a preferred locality, then it selects the PCF profiles with the lowest value.

The following figure depicts how these components interconnect.

Figure 1. PCF-NRF-NFs Interaction Flow

Standards Compliance

This feature complies with the following standards specifications:

  • 3GPP TS 29.510 (2018-12) "Network Function Repository Services;"

Configuring the Cluster Load Attribute

This section describes how to enable PCF to send the cluster load information in the heartbeat request.

To configure the ability that allows PCF to send the cluster load parameter in the heartbeat request to the NRF, use the following configuration:

config 
  group 
    nf-mgmt [ name ] 
     load-report-enabled [ false | true ] 
     end 

NOTES:

  • group —Enters the group configuration mode.

  • nf-mgmt [ name ] —Specify the management group that is associated to a network function.

  • load-report-enabled [ false | true ] —Configures the ability to send the cluster load size in the heartbeat service request. The default value is set to true.

    The registration request may fail if the cluster load size (cluster memory usage and cluster CPU usage) is unavailable in the request. In such situations, you can disable the capability by setting this attribute to false.