Configuring NF Endpoint Profile Parameters in NF Client Profile

This section describes how to configure the NF endpoint profiles within the service and its associated parameters.

The CLI configuration allows configuring multiple endpoints under each endpoint profile. The SMF uses the priority and capacity parameters to load balance between these endpoints. All endpoints under an endpoint profile share the session context. That is, when selecting an endpoint profile for initial message of a session, then the SMF sends the subsequent messages (for example, update, delete, and so on) of the session to any of the endpoints in the endpoint profile.

SMF provides APIs to discover and send a message to an NF matching a set of filter parameters.

A URI uniquely identifies a resource. In the 5GC SBI APIs, when a resource URI is an absolute URI, the structure is specified as follows:

{apiRoot}/{apiName}/{apiVersion}/{apiSpecificResourceUriPart} 

apiRoot is a concatenation of the following parts:

  • scheme ("http" or "https")

    Important

    Both HTTP and HTTPS scheme URIs are allowed. See 3GPP TS 33.501, subclause 13.1 for more information on security of service-based interfaces.

  • fixed string "://"

  • authority (host and optional port) as defined in IETF RFC 3986

  • an optional deployment-specific string (API prefix) that starts with a "/" character [api-root in CLI]

To configure the NF endpoint profiles within the service and its associated parameters, use the following sample configuration:

config 
   profile nf-client { nf-type { amf amf-profile | chf chf-profile | pcf pcf-profile | udm udm-profile }  nf_profile_name } 
      locality locality_name [ priority priority | service name type service_type ] 
         endpoint-profile epprofile_name 
            api-root api_string 
            api-uri-prefix uri_prefix_string 
            capacity capacity 
            endpoint-name ep_name { capacity capacity | primary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num }| secondary ip-address { ipv4 ipv4_address | ipv6 ipv6_address| port  port_num } | tertiary ip-address { ipv4 ipv4_address| ipv6 ipv6_address | port port_num } } 
            priority priority_value 
            uri-scheme { http | https } 
            version [ uri-version version_num full version version_num ] 
            end 

NOTES:

  • api-root api_string : Specify the deployment-specific service API prefix that is used within the { apiRoot }.

  • api-uri-prefix uri_prefix_string : Specify the {apiName}. If not configured, it takes the standard API name for the service as per the specification.

  • capacity capacity : Specify the profile capacity.

  • endpoint-name ep_name { capacity capacity | primary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } | secondary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } | tertiary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } } : Specify the endpoint name. You can configure the primary, secondary, and tertiary hosts (IP: Port) within each endpoint for NF server failover handling. The server failover configuration accepts both the IPv4 and IPv6 addresses. However, the SMF gives preference to the IPv4 address.

    • capacity capacity : Specify the node capacity for the endpoint. capacity must be an integer in the range of 0–65535.

      The endpoint selection for sending the message is based on probabilistic load balancing algorithm (IETF RFC 2782) using the priority and capacity parameters.

    • primary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } : Specify the primary endpoint IPv4 address, IPv6 address, or port.

    • secondary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } : Specify the secondary endpoint IPv4 address, IPv6 address, or port.

    • tertiary ip-address { ipv4 ipv4_address | ipv6 ipv6_address | port port_num } : Specify the tertiary endpoint IPv4 address, IPv6 address, or port.

  • priority priority_value : Specify the priority for the service to select the appropriate profile using the load balancing logic. priority must be an integer in the range 0–65535.

  • uri-scheme { http | https } : Specify the URI scheme as http or https .

  • version [ uri-version version_num full version version_num ] : Specify the API URI version. The full version format is <Major-version>.<Minor-version>.<patch-version>.[alpha-<draft-number>].