Method, system, and computer-readable medium for distributing network function (NF) high availability (HA) topology information in a core network - Patents.com

JP2024521821A5Pending Publication Date: 2025-02-03ORACLE INT CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2023573199
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2021-05-28
Filing Date
2022-05-25
Publication Date
2025-02-03

AI Technical Summary

Technical Problem

The 3GPP standard does not provide a mechanism for network functions (NFs) in 5G networks to publish their high availability (HA) topology information, leading to suboptimal load balancing and rerouting in the 5G core network.

Method used

A method and system for distributing NF HA topology information through the NF repository function (NRF), which includes registering and storing HA topology information from producer NFs, and responding to consumer NF or service communication proxy (SCP) requests with HA topology information, enabling efficient load balancing and rerouting.

Benefits of technology

Enhances load balancing and rerouting efficiency by providing consumer NFs and SCPs with accurate HA topology information, reducing network inefficiencies and resource wastage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method for distributing Network Function (NF) high availability (HA) topology information in a core network includes receiving, at an NF Repository Function (NRF) including at least one processor, an NFRegister request from a plurality of producer NFs in an NF set, the NFRegister request including NF HA topology information for the producer NF. The method further includes registering the producer NF to store the NF HA topology information for the producer NF. The method further includes receiving, from a consumer NF or a service communication proxy (SCP), an NFDiscover request including at least one service discovery parameter corresponding to a service provided by the producer NF. The method further includes responding to the NFDiscover request by generating an NFDiscover response and including the NF HA topology information for the producer NF in the NFDiscover response and sending the NFDiscover response to the consumer NF or the SCP.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] Priority claim This application claims the benefit of priority to U.S. Patent Application No. 17 / 334,268, filed May 28, 2021, the disclosure of which is incorporated by reference herein in its entirety.

[0002] Technical Field The subject matter described herein relates to providing high availability support for NFs. More specifically, the subject matter described herein relates to a method, system, and computer-readable medium for distributing NF HA topology information in a core network. [Background technology]

[0003] background In a 5G telecommunications network, a network function that provides a service is called a producer NF or an NF service producer. A network function that consumes a service is called a consumer NF or an NF service consumer. A network function may be a producer NF, a consumer NF, or both, depending on whether the network function is consuming, producing, or consuming and producing a service. The terms "producer NF" and "NF service producer" are used interchangeably herein. Similarly, the terms "consumer NF" and "NF service consumer" are also used interchangeably herein.

[0004] A given producer NF may have many service endpoints, which are points of contact for one or more NF instances hosted by the producer NF. A service endpoint is identified by a combination of an Internet Protocol (IP) address and port number, or a fully qualified domain name that resolves to an IP address and port number on the network node hosting the producer NF. An NF instance is an instance of a producer NF that provides a service. A given producer NF may include two or more NF instances. Also, note that multiple NF instances can share the same service endpoint.

[0005] Producer NFs register with a Network Function Repository Function (NRF). The NRF maintains service profiles of available NF instances that identify the services supported by each NF instance. The terms "service profile" and "NF profile" are used interchangeably herein. Consumer NFs can subscribe to receive information about producer NF instances that have registered with the NRF.

[0006] In addition to consumer NFs, another type of network node that can subscribe to receive information about NF service instances is the service communication proxy (SCP). An SCP subscribes with the NRF to obtain reachability and service profile information about producer NF service instances. Consumer NFs connect to the service communication proxy, which load balances traffic between producer NF service instances that provide the requested service or route traffic directly to the recipient producer NF instance.

[0007] In addition to the SCP, another example of an intermediate proxy node that routes traffic between producer and consumer NFs is the Security Edge Protection Proxy (SEPP). A SEPP is a network node used to protect the control plane traffic exchanged between different 5G Public Land Mobile Networks (PLMNs). As such, the SEPP performs message filtering, policing and topology hiding for all Application Programming Interface (API) messages sent between PLMNs.

[0008] One problem in 5G communication networks is that 3GPP standards do not provide a way for NFs to publish their own HA topology information to other NFs in the 5G network. NFs in 5G networks support different HA topologies, including active-active, active-standby, and N+K, where N is the number of active NF instances and K is the number of standby NF instances. A consumer NF that attempts to obtain a service from a producer NF operating in an HA topology needs to know the HA topology for load balancing and for rerouting in case the producer NF providing the service to the consumer NF fails. However, 3GPP standards do not currently provide a way for a producer NF to publish its own HA topology information to the core network. As a result, load balancing and rerouting may be performed suboptimally in the 5G core network.

[0009] In light of these and other problems, a need exists for a method, system, and computer-readable medium for distributing NF HA topology information in a core network. Summary of the Invention [Problem to be solved by the invention]

[0010] overview A method for distributing Network Function (NF) high availability (HA) topology information in a core network includes receiving, at an NF Repository Function (NRF) including at least one processor, an NFRegister request from a plurality of producer NFs in an NF set, the NFRegister request including NF HA topology information for the producer NF. The method further includes registering the producer NF to store the NF HA topology information for the producer NF. The method further includes receiving, from a consumer NF or a service communication proxy (SCP), an NFDiscover request including at least one service discovery parameter corresponding to a service provided by the producer NF. The method further includes responding to the NFDiscover request by generating an NFDiscover response and including the NF HA topology information for the producer NF in the NFDiscover response and sending the NFDiscover response to the consumer NF or the SCP.

[0011] According to another aspect of the subject matter described in this specification, receiving an NFRegister request including NF HA topology information includes receiving an NFRegister request including information identifying an NF HA topology type supported by the producer NF.

[0012] According to another aspect of the subject matter described herein, the information identifying the NF HA topology type includes information identifying one of an active-active NF HA topology type, an active-standby NF HA topology type, and an N+K NF HA topology type, where N and K are integers that identify the number of active NFs and the number of standby NFs, respectively, in the NF set.

[0013] According to another aspect of the subject matter described herein, receiving an NFRegister request including NF HA topology information includes receiving an NFRegister request each including information identifying a current NF HA topology role of a producer NF in the NF set.

[0014] According to another aspect of the subject matter described herein, the information identifying a current NF HA topology role of a producer NF in an NF set includes information identifying the producer NF as an active NF or a standby NF.

[0015] According to another aspect of the subject matter described herein, responding to the NFDiscover request with an NFDiscover response including the NF HA topology information includes including in the NFDiscover response information identifying an NF HA topology type and information identifying a current NF HA topology role.

[0016] According to another aspect of the subject matter described herein, a method for distributing NF HA topology information includes, at an NRF, receiving an NFUpdate request from at least one of the producer NFs, the NFUpdate request including updated NF HA topology information for the at least one producer NF, and in response to receiving the NFUpdate request with the updated NF HA topology information for the at least one producer NF, storing the updated NF HA topology information of the at least one producer NF, and automatically transmitting the updated NF HA topology information to consumer NFs subscribed to receive updates in NF profile information for the at least one producer NF.

[0017] According to another aspect of the subject matter described herein, the updated NF HA topology information indicates a role change of a first producer NF in the NF set from an active HA role to a standby HA role and a role change of a second producer NF in the NF set from a standby HA role to an active HA role, and the method further includes, at the consumer NF or SCP, sending a service request to the second producer NF.

[0018] According to another aspect of the subject matter described in this specification, receiving an NFDiscover request from a consumer NF or SCP includes receiving an NFDiscover request from the consumer NF, and the method further includes, at the consumer NF, using the NF HA topology information to select a producer NF in the NF set that provides service to the consumer NF.

[0019] According to another aspect of the subject matter described in this specification, receiving an NFDiscover request from a consumer NF or an SCP includes receiving an NFDiscover request from an SCP, and the method further includes, at the SCP, using the NF HA topology information to select a producer NF in the NF set that provides service to the consumer NF.

[0020] According to another aspect of the subject matter described herein, a system for distributing Network Function (NF) high availability (HA) topology information in a core network is provided. The system includes a Network Function (NF) Repository Function (NRF) including at least one processor. The system further includes an NF Profile Manager implemented by the at least one processor for receiving an NFRegister request from a plurality of producer NFs in an NF set, the NFRegister request including NF HA topology information for the producer NFs, registering the producer NFs to store the NF HA topology information for the producer NFs, receiving an NFDiscover request from a consumer NF or a service communication proxy (SCP), the NFDiscover request including at least one service discovery parameter corresponding to a service provided by the producer NFs, and responding to the NFDiscover request by generating an NFDiscover response, including the NF HA topology information for the producer NFs in the NFDiscover response and sending the NFDiscover response to the consumer NF or the SCP.

[0021] According to another aspect of the subject matter described herein, the NFRegister request includes information identifying the NF HA topology type supported by the producer NF.

[0022] According to another aspect of the subject matter described herein, the information identifying the NF HA topology type includes information identifying one of an active-active NF HA topology type, an active-standby NF HA topology type, and an N+K NF HA topology type, where N and K are integers that identify the number of active NFs and the number of standby NFs, respectively, in the NF set.

[0023] According to another aspect of the subject matter described herein, the NFRegister requests each include information identifying the current NF HA topology role of a producer NF in the NF set.

[0024] According to another aspect of the subject matter described herein, the information identifying a current NF HA topology role of a producer NF in an NF set includes information identifying the producer NF as an active NF or a standby NF.

[0025] According to another aspect of the subject matter described herein, the NFDiscover response includes information identifying a NF HA topology type and information identifying a current NF HA topology role.

[0026] According to another aspect of the subject matter described herein, the NF Profile Manager is configured to receive, from at least one of the producer NFs, an NFUpdate request including updated NF HA topology information for the at least one producer NF, and in response to receiving the NFUpdate request with the updated NF HA topology information for the at least one producer NF, store the updated NF HA topology information of the at least one producer NF, and automatically transmit the updated NF HA topology information to consumer NFs subscribed to receive updates in the NF profile information for the at least one producer NF.

[0027] According to another aspect of the subject matter described herein, the updated NF HA topology information indicates a role change of a first producer NF in the NF set from an active HA role to a standby HA role and a role change of a second producer NF in the NF set from a standby HA role to an active HA role.

[0028] According to another aspect of the subject matter described herein, the NF Profile Manager receives an NFDiscover request from a consumer NF.

[0029] According to another aspect of the subject matter described herein, the NF Profile Manager receives an NFDiscover request from the SCP.

[0030] According to another aspect of the subject matter described herein, a non-transitory computer-readable medium having executable instructions stored thereon, the instructions, when executed by a processor of a computer, control the computer to perform steps. The steps are performed in a Network Function (NF) Repository Function (NRF). The steps include receiving an NFRegister request from a plurality of producer NFs in an NF set, the NFRegister request including NF High Availability (HA) topology information for the producer NFs. The steps further include registering the producer NF to store the NF HA topology information for the producer NFs. The steps further include receiving an NFDiscover request from a consumer NF or a service communication proxy (SCP), the NFDiscover request including at least one service discovery parameter corresponding to a service provided by the producer NF. The steps further include responding to the NFDiscover request by generating an NFDiscover response and including the NF HA topology information for the producer NF in the NFDiscover response and sending the NFDiscover response to the consumer NF or the SCP.

[0031] The subject matter described herein may be implemented in software in combination with hardware and / or firmware. For example, the subject matter described herein may be implemented in software executed by a processor. In an exemplary embodiment, the subject matter described herein may be implemented using a non-transitory computer-readable medium having computer-executable instructions stored thereon, the instructions, when executed by a processor of a computer, control the computer to perform steps. Exemplary computer-readable media suitable for implementing the subject matter described herein include non-transitory computer-readable media such as disk memory devices, chip memory devices, programmable logic devices, and application specific integrated circuits. In addition, computer-readable media implementing the subject matter described herein may be located on a single device or computing platform or distributed across multiple devices or computing platforms.

[0032] Exemplary implementations of the subject matter described herein are described below with reference to the accompanying drawings. [Brief description of the drawings]

[0033] [Figure 1] FIG. 1 is a network diagram illustrating an example 5G system network architecture. [Diagram 2] FIG. 1 is a message flow diagram illustrating example messages exchanged between network functions in a network that does not provide support for dissemination of NF HA topology information, where a consumer NF selects a producer NF that is currently in a standby HA role. [Diagram 3] FIG. 1 is a message flow diagram illustrating example messages exchanged between network functions in a network that does not provide support for dissemination of NF HA topology information, where a producer NF transitions to a standby HA role and a consumer NF attempts to obtain a service from the producer NF after the HA state transition. [Figure 4] FIG. 1 is a message flow diagram illustrating an example network supporting distribution of NF HA topology information, in which a producer NF provides the NRF with the HA topology type implemented by the NF set of which the producer NF is a member and the producer NF's current HA role, and the NRF provides the HA topology information to consumer NFs in a discovery response, so that the consumer NFs can use the HA topology information when selecting a producer NF to provide a service. [Diagram 5] FIG. 1 is a message flow diagram illustrating an example network supporting distribution of HA topology information, in which a producer NF provides the NRF with the HA topology type implemented by the set of NFs of which the producer NF is a member and the producer NF's current HA role, the NRF publishes updates in the HA topology information to consumer NFs, and the consumer NFs use the updated HA topology information to select active producer NFs to provide services. [Figure 6] FIG. 1 is a block diagram illustrating an example architecture for an NRF that facilitates distribution of NF HA topology information to consumer NFs and SCPs. [Figure 7] 13 is a flowchart illustrating an example process performed by the NRF to distribute NF HA topology information to NFs and SCPs. [Figure 8] FIG. 1 is a block diagram illustrating an example architecture for a consumer NF to obtain and use NF HA topology information. [Figure 9] 1 is a flowchart illustrating an example process performed by a consumer NF to obtain and use NF HA topology information. [Figure 10] FIG. 2 is a block diagram illustrating an example architecture for a producer NF to disseminate NF HA topology information. [Figure 11] 11 is a flowchart illustrating an example process performed by a producer NF to distribute NF HA topology information. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0034] Detailed Description FIG. 1 is a block diagram illustrating an example 5G system network architecture. The architecture of FIG. 1 includes an NRF 100 and an SCP 101, which may be located in the same Home Public Mobile Network (HPLMN). As described above, the NRF 100 may maintain a profile of available producer NF service instances and their supported services, and allow consumer NFs or SCPs to subscribe to and be notified of new / updated producer NF service instance registrations. The SCP 101 may also support service discovery and selection of producer NF instances. The SCP 101 may perform load balancing of connections between consumer and producer NFs.

[0035] The NRF 100 is a repository for NFs or service profiles of producer NF instances. To communicate with a producer NF instance, a consumer NF or SCP needs to obtain the NF or service profile of the producer NF instance from the NRF 100. The NF or service profile is a JavaScript object notation (JSON) data structure defined in 3GPP TS 29.510. The NF or service profile definition includes at least one of a fully qualified domain name (FQDN), an Internet Protocol (IP) version 4 (IPv4) address, or an IP version 6 (IPv6) address.

[0036] In Figure 1, any of the network functions may be a consumer NF, a producer NF, or both, depending on whether it is requesting, providing, or requesting and providing a service. In the illustrated example, the NFs include a Policy Control Function (PCF) 102 that performs policy-related operations in the network, a Unified Data Manager (UDM) 104 that manages user data, and an Application Function (AF) 106 that provides application services.

[0037] 1 further includes a Session Management Function (SMF) 108 that manages sessions between an Access and Mobility Management Function (AMF) 110 and the PCF 102. The AMF 110 performs mobility management operations similar to those performed by a Mobility Management Entity (MME) in 4G networks. An Authentication Server Function (AUSF) 112 performs authentication services for user equipment (UE) seeking access to the network, such as user equipment (UE) 114.

[0038] The Network Slice Selection Function (NSSF) 116 provides network slicing services for devices that want to access specific network functions and features associated with a network slice. The Network Exposure Function (NEF) 118 provides an Application Programming Interface (API) for application functions that want to obtain information about Internet of Things (IoT) devices and other UEs attached to the network. The NEF 118 performs a function similar to the Service Capability Exposure Function (SCEF) in 4G networks.

[0039] The Radio Access Network (RAN) 120 connects the User Equipment (UE) 114 to the network via wireless links. The Radio Access Network 120 may be accessed using a g-NodeB (gNB) (not shown in FIG. 1) or other wireless access points. The User Plane Function (UPF) 122 may support various proxy functions for user plane services. One example of such a proxy function is a Multi-Path Transmission Control Protocol (MPTCP) proxy function. The UPF 122 may also support a performance measurement function that may be used by the UE 114 to obtain network performance measurements. Also shown in FIG. 1 is a Data Network (DN) 124 through which the UE accesses data network services, such as Internet services.

[0040] The SEPP 126 filters incoming traffic from another PLMN and performs topology hiding for traffic leaving the home PLMN. The SEPP 126 may communicate with a SEPP in a foreign PLMN that manages security for the foreign PLMN. Traffic between NFs in different PLMNs may thereby traverse two SEPP functions, one for the home PLMN and the other for the foreign PLMN.

[0041] As mentioned above, one problem in 5G networks is the lack of a defined mechanism for NFs to distribute their HA topology information. For example, different NFs in a 5G Core (5GC) network may implement different HA topology types. Examples of such HA topology types include:

[0042] Active-Active – Multiple NFs in an NF set are operational and provide services simultaneously.

[0043] Active-Standby – Some NFs are operational and providing services, and other NFs are operational but do not provide services unless one of the active NFs fails or is otherwise unavailable.

[0044] N+K model - N NFs are operational and providing services, and K NFs are operational but do not provide services unless one of the N active NFs fails or is otherwise unavailable.

[0045] It is important for NF consumers / SCPs to be aware of the HA topology of NF producers for (re)routing and load balancing of 5G SBI traffic. 3GPP does not provide a way to publish HA related information in the network. 3GPP suggests an active-active HA topology for NF sets, but this is not the case in all deployments. An NF set is a logical group of NFs providing the same service, supporting the same network slice, and identified by the same NF set ID. 3GPP assumes that all of the NFs in an NF set are active, but this may not be the case if, for example, an operator decides to deploy some NFs in an NF set as active and other NFs in the NF set as standby.

[0046] The subject matter described herein provides a method for publishing HA topology information of NFs, so that this information can be used by consumer NFs or SCPs when selecting NFs to provide services. The NF HA topology information may define the NF HA type implemented by a set of NFs, as well as the publication of the role of the NF in the NF HA type. Without this solution, 5G SBI routing is not possible for HA topologies other than active-active topologies. As a workaround, NFs implementing N+K HA require network operators to be deployed in active-active topologies, but face the following challenges:

[0047] The NF consumer / SCP needs to trigger an additional routing attempt for state transition (to standby) after resource creation in HA case.

[0048] The consumer NF / SCP has problems load balancing traffic between NF instances with different HA roles.

[0049] When a consumer NF or SCP sends an SBI request to a producer NF operating in a standby role, the NF operating in the standby role is not expecting to receive the traffic and such traffic must be rerouted by the consumer NF or SCP to another NF operating in an active role, resulting in more routing attempts. Load balancing becomes difficult if the consumer NF or SCP does not know the HA role of the producer NF, since an NF operating in a standby role should not receive live traffic.

[0050] Figure 2 is a message flow diagram illustrating example messages exchanged when a consumer NF or SCP attempts to route traffic to a standby producer NF in a set of NFs implementing an N+K HA topology. In Figure 2, producer NF-1 200 operates in an active HA role and producer NF-2 202 operates in a standby HA role. Producer NF-1 200 and producer NF-2 202 form an NF set 204. NF set 204 implements an N+K HA topology.

[0051] 2, in step 1, the producer NF-1 200 sends an NFRegister request to the NRF 100. The NFRegister request includes the NF profile of the producer NF-1 200. However, 3GPP does not define a way for the producer NF-1 200 to convey to the NRF 100 the HA topology type implemented by the NF set 204 or the role of the producer NF-1 200 in that HA topology type.

[0052] In step 2 of the message flow diagram, producer NF-2 202, operating in a standby HA role, sends an NFRegister request message to the NRF 100. The NFRegister request message does not include an indication that producer NF-2 202 is operating in a standby role. As a result, there is no way for the consumer NF to know the NF HA topology type implemented by the NF set 204 or the role of the producer NF within the NF set.

[0053] In step 3 of the message flow diagram, the consumer NF or SCP 206 sends an NFDiscover request message to the NRF 100. The NFDiscover request message may include discovery parameters for selecting a producer NF that provides a service. In step 4 of the message flow diagram, the NRF 100 responds to the NFDiscover request message with an NFDiscover response message that includes the NF profiles of the producer NF-1 200 and the producer NF-2 202. However, the NFDiscover response message does not include the NF HA type implemented by the NF set 204 or the HA roles of the producer NF-1 200 and the producer NF-2 202. As a result, the consumer NF or SCP 206 may route the service-based interface (SBI) service request to the producer NF operating in a standby role as indicated by step 5 of the message flow diagram. When producer NF-2 202 receives the SBI service request message, producer NF-2 202 rejects the SBI service request message because producer NF-2 202 is operating in a standby role. As a result, consumer NF or SCP 206 needs to reroute the service request by selecting another NF and sending the SBI service request to another producer NF. The consumer NF or SCP 206 may need to reroute the service request multiple times until the request is received by the producer NF operating in an active HA role. Such rerouting is time consuming and wastes network resources.

[0054] Figure 3 illustrates another problem that can occur when a NF HA state transition occurs. In Figure 3, it is assumed that producer NF-1 200 and producer NF-2 202 have registered with the NRF 100 without specifying the NF HA topology type or NF HA topology role to be implemented by the NF set of which producer NF-1 200 or producer NF-2 202 are members. In step 1 of the message flow diagram in Figure 3, the consumer NF or SCP 206 sends an SBI service request to producer NF-1 200. Since producer NF-1 200 is functioning in the active HA role, producer NF-1 200 responds to the SBI service request in step 2 with a 201 Created message.

[0055] In step 3, an HA state transition occurs in the NF set 204, with producer NF-1 200 transitioning to a standby HA role and producer NF-2 202 transitioning to an active HA role. In step 4 of the message flow diagram, the consumer NF or SCP 206 sends a subsequent service request to producer NF-1 200, which is now operating in a standby HA role. Because producer NF-1 200 is operating in a standby role, producer NF-1 200 rejects the service request. As a result, the consumer NF or SCP 206 must reroute the service request to another NF, resulting in routing and network inefficiencies.

[0056] To address the difficulties illustrated by the message flows of Figures 2 and 3, the subject matter described herein includes the ability of a producer NF to convey to the NRF the NF HA topology type implemented by the NF set of which the producer NF is a member, as well as the current HA role of the producer NF within that HA topology type. The NRF stores information indicating the NF HA topology type and the current NF HA role in an NF profile database or a separate database. When a consumer NF attempts to discover one or more producer NFs that provide a service, the NRF includes in a discovery response information indicating the NF HA topology type and the NF HA topology role of the producer NF. An NF service consumer can then use the NF HA topology type and information to select a producer NF to provide a service.

[0057] FIG. 4 is a message flow diagram illustrating an example network supporting NF HA topology information dissemination, where a producer NF provides the NRF with the HA topology type implemented by the NF set of which the producer NF is a member and the producer NF's current HA role, and the NRF provides the consumer NF with the HA topology information in a discovery response, so that the consumer NF can use the HA topology information when selecting a producer NF to provide a service. With reference to the message flow of FIG. 4, in step 1, the producer NF-1 200 sends an NFRegister request message to the NRF 100 to register the producer NF-1 200 that provides the service. The NFRegister request message indicates, in the illustrated example, the NF HA topology type, which is active / standby, and an HF HA role, which is active, for producer NF-2 202. In step 3 of the message flow diagram, the consumer NF or SCP 206 sends an NFDiscover request message to the NRF 100. The NFDiscover request message may include discovery parameters for selecting a producer NF to provide services to the consumer NF. In step 4 of the message flow diagram, the NRF 100 responds to the NFDiscover request message with an NFDiscover response message that includes the NF profiles of producer NF-1 200 and producer NF-2 202. The NFDiscover response message includes NF HA topology information indicating the NF HA type implemented by the NF set 204 and the HA roles of producer NF-1 200 and producer NF-2 202. In the illustrated example, the NF HA topology information indicates that the NF HA topology type implemented by the NF set 204 is active / standby, the NF HA role currently implemented by producer NF-1 200 is active, and the NF HA role currently implemented by producer NF-2 202 is standby.

[0058] Using the NF HA topology information, the consumer NF or SCP 206 selects a producer NF that is currently in the active HA role to provide the service. In the illustrated example, the consumer NF or SCP 206 selects the producer NF-1 200 to provide the service. In step 5 of the message flow diagram, the producer NF or SCP 206 sends an SBI service request to the producer NF-1 200 operating in the active HA role. Since the producer NF-1 200 is operating in the active HA role, the producer NF-1 200 authorizes the SBI service request and responds to the SBI service request with a 201 Created message in step 6. Thus, FIG. 4 illustrates the case where the NF HA topology information is provided to the NRF 100 in an NFRegister message, distributed to the consumer NFs or SCPs in an NFDiscover response message, and used by the consumer NFs or SCPs to select the active NF to process the initial SBI service request message. Because the consumer NF or SCP has NF HA topology information, the consumer NF or SCP 206 can avoid the routing inefficiencies shown in FIG.

[0059] 5 is a message flow diagram illustrating example messages exchanged to distribute updated NF HA topology information and select a new active NF to provide services in response to HA state transitions and use of updated HA topology information. With reference to FIG. 5, in step 1, an NF HA state transition occurs. The NF HA state transition is that producer NF-1 200 switches its HA role from active to standby and producer NF-2 202 switches its HA role from standby to active. In step 2 of the message flow diagram, producer NF-1 200 sends an NFUpdate request to NRF 100 identifying the new HA role of producer NF-1 200.

[0060] In step 3 of the message flow diagram, in response to receiving the NFUpdate request, the NRF 100 publishes a notification message to all consumer NFs or SCPs that are subscribed to receive updates regarding changes in the status of the producer NF-1 200. In the illustrated example, the producer NF-1 200 sends a notification message to the consumer NF or SCP 206. This notification message contains the updated NF HA topology information for the producer NF-1 200.

[0061] In step 4 of the message flow diagram, producer NF-2 202 sends an NFUpdate request to the NRF 100 containing the new NF HA role for producer NF-2 202. In the illustrated example, the NF Update message indicates that producer NF-2 202 is switching to the active role. In step 5 of the message flow diagram, the NRF 100 sends a Notify message to the consumer NF or SCP 206 with the updated NF HA topology information for producer NF-2 202.

[0062] In step 6 of the message flow diagram, the consumer NF or SCP 206 formulates a subsequent SBI service request message, and instead of sending the subsequent SBI service request message to the producer NF-1 200, the consumer NF or SCP 206 sends the subsequent SBI service request to the producer NF-2 202 based on the current updated HF HA topology information. In the example shown in Figure 5, it is assumed that when the producer NF-2 202 switched to the active state, the producer NF-2 202 obtained the state information required to process the subsequent SBI service request from the consumer NF or SCP 206. In step 7 of the message flow diagram, the producer NF-2 202 sends a 200 OK message to the consumer NF or SCP 206.

[0063] Thus, Figure 5 illustrates the case where a producer NF automatically updates its own HA role and transmits the new HA role to the NRF 100, which automatically distributes an indication of the status change to consumer NFs and SCPs that are subscribed to receive updates regarding the NF's status change. Using the updated NF HA topology information, the subject matter described herein avoids the scenario illustrated in Figure 3 where an NF HA state transition occurs and subsequent SBI service requests fall into the standby producer NF. Thus, the scenario illustrated in Figure 5 is more efficient than the scenario illustrated in Figure 3 where a consumer NF or SCP needs to reroute the service request to another producer NF.

[0064] FIG. 6 is a block diagram illustrating an example architecture of an NRF 100 that can acquire, store, and distribute producer NF HA topology information. With reference to FIG. 6, the NRF 100 includes at least one processor 600 and a memory 602. The NRF 100 further includes an NF profile database 604 that stores NF profiles of producer NFs registered with the NRF 100. The NRF 100 further includes an NF profile manager 606 that receives an NFRegister request message, stores the NF profiles of the producer NFs in the database 604, and distributes the NF profile information from consumer NFs. The NF profile manager 606 may also receive NF HA topology information from producer NFs and store HF HA topology information in the NF profile database 604 or a separate database maintained by the NRF 100. The NF profile manager 606 may provide the NF HA topology information to consumer NFs or SCPs in response to an NFDiscover request and in response to an NFUpdate message from the producer NF. The NF profile manager 606 may be implemented using computer-executable instructions stored in the memory 602 and executed by the processor 600.

[0065] FIG. 7 is a flow chart illustrating an exemplary method for distributing NF HA information. The steps in FIG. 7 are performed in an NRF, such as NRF 100. Referring to FIG. 7, in step 700, the process includes receiving an NFRegister request from a plurality of producer NFs in an NF set, the NFRegister request including information identifying an NF HA topology type implemented by the producer NF and a current NF HA topology role implemented by each producer NF in the NF set. As described above, the NF HA topology type may include active-active, active-standby, and N+K, where N and K are integers that respectively identify the number of active NFs and the number of standby NFs in the NF set. The NF HA topology role information provided in the NFRegister request may identify each NF as active or standby.

[0066] In step 702, the process includes registering a producer NF and storing NF HA topology information for the producer NF. For example, the NRF 100 may register the producer NF by storing an NF profile for the producer NF in the NF profile database 604 and storing a registration status or state indicator for the NF indicating a status or state of REGISTERED. The NRF 100 may store the NF HA topology information in the NF profile database 604 or a separate database used to store the NF HA topology information.

[0067] In step 704, the process includes receiving, from a consumer NF or a service communication proxy (SCP), an NFDiscover request including at least one service discovery parameter corresponding to a service provided by a producer NF. For example, the NRF 100 may receive an NFDiscover request from a consumer NF including a parameter identifying a type of service for which NF discovery is being requested.

[0068] In step 706, the process includes responding to the NFDiscover request by generating an NFDiscover response and including the NF HA topology information for the producer NF in the NFDiscover response and sending the NFDiscover response to the consumer NF or SCP. For example, the NRF 100 may generate an NFDiscover response message in response to the received NFDiscover request message. The NFDiscover response message may include NF profiles of producer NFs that match the service identifying parameters in the NFDiscover request. The NFDiscover response may also include, for each NF, the NF HA types implemented by the set of producer NFs for which NF HA topology information is available and the current NF HA role of each producer NF. It should be noted that the NF HA topology information may be included as one or more attributes of the NF profile of each producer NF or may be transmitted separately from the NF profile of the producer NF.

[0069] In step 708, the process includes receiving updated NF HA topology information for the producer NF. For example, the NRF 100 may receive an NFUpdate request message from the producer NF when the NF HA topology role of the producer NF changes. Examples of NF HA topology role changes include a change from active to standby or from standby to active.

[0070] In step 710, the process includes publishing updated NF HA topology information for the producer NF to NFs subscribed to receive NFUpdate for the producer NF. For example, the NRF 100 may update a profile for the producer NF in the NF profile database in response to receiving an NFUpdate request message for the producer NF. In addition, the NRF 100 may also update the NF HA role for the producer NF if the NF HA role for the producer NF has changed. The NRF 100 may then transmit notifications of the changes in the NF profile and NF HA topology information to consumer NFs and SCPs subscribed to receive the updates.

[0071] 8 is a block diagram illustrating an example architecture for a consumer NF or SCP 206 that obtains NF HA topology information and uses it to route SBI service requests. With reference to FIG. 8, the consumer NF or SCP 206 includes at least one processor 800 and a memory 802. The consumer NF or SCP 206 further includes an NF discovery / SBI request generator 804 that generates and sends an NFDiscover request to the NRF 100, receives an NFDiscover response from the NRF 100, and if the NFDiscover response includes the NF HA topology information, generates and sends an SBI request to the selected producer NF using the NF HA topology information. The NF discovery / SBI request generator 804 may be implemented using computer-executable instructions stored in the memory 802 and executed by the processor 800.

[0072] FIG. 9 is a flow chart illustrating an example process performed by a consumer NF or SCP to obtain and use NF HA topology information to select a producer NF to provide a service. The steps illustrated in FIG. 9 may be performed by the consumer NF or SCP 206 illustrated in FIG. 8. With reference to FIG. 9, in step 900, the process includes generating an NFDiscover request and sending the NFDiscover request to the NRF. For example, the consumer NF or SCP 206 may generate an NFDiscover request including discovery parameters for a service required by the consumer NF and send the NFDiscover request to the NRF 100.

[0073] At step 902, the process includes receiving an NFDiscover response in response to the NFDiscover request. The NFDiscover response includes an NF profile that matches the request as well as discovery parameters from the NF HA topology information of the producer NF. The NF HA topology information may be included in the NF profile or may be included in a data structure separate from the NF profile.

[0074] In step 904, the process includes selecting a producer NF to provide a service using the NF HA topology information. For example, a consumer NF for the SCP 206 may use the NF HA topology information to select an active NF to provide a service for the consumer NF. In step 906, the process includes sending a new SBI request to the producer NF. For example, the consumer NF or the SCP 206 may send the SBI request to the selected producer NF using the NF HA topology information.

[0075] In step 908, the process includes receiving an NFUpdate request message with updated NF HA topology information for the producer NF. For example, a consumer NF for SCP 206 may receive an NFUpdate request message with updated HF HA topology information for a producer NF currently providing services for the consumer NF. The updated NF HA topology information may indicate that the role of the producer NF has changed.

[0076] In step 910, the process includes selecting a new producer NF to provide the service based on the updated HF HA topology information. For example, the consumer NF or SCP 206 may select a new active producer NF to provide the service when the role of the producer NF currently providing the service changes to standby. In step 912, the consumer NF or SCP 206 generates and sends a new SBI request to the new producer NF. For example, the consumer NF or SCP 206 may generate and send an SBI request to the currently active producer NF.

[0077] FIG. 10 is a block diagram illustrating an example producer NF 200 or 202 that can distribute NF HA topology information to other NFs. With reference to FIG. 10, the producer NF 200 or 202 includes at least one processor 1000 and a memory 1002. The producer NF 200 or 202 further includes an NF HA topology manager 1004 that maintains in the memory 1002 an indication of the NF HA topology type and the NF HA topology role performed by the producer NF 200 or 202. The NF HA topology manager 1004 may also determine when the NF HA topology role of the producer NF 200 or 202 needs to change, for example, based on input from a network operator that the NF HA topology of the producer NF 200 or 202 needs to change. The producer NF 200 or 202 also distributes the NF HA topology information to other NFs by sending NFRegister and NFUpdate messages to the NRF 100. The NF HA topology manager 1004 may be implemented using computer-executable instructions stored in the memory 1002 and executed by the processor 1000.

[0078] 11 illustrates an exemplary process performed by a producer NF in distributing its NF HA topology information to other NFs. With reference to FIG. 11, in step 1100, the process includes storing in memory an indication of the HA topology type and the HA topology role. For example, producer NF 200 or 202 may store in memory 1002 an indication of the current HA topology type and the HA topology role implemented by producer NF 200 or 202.

[0079] In step 1102, the process includes transmitting the NF HA topology information to the NRF. For example, the producer NF 200 or 202 may generate and send an NFRegister request including the NF HA topology information to the NRF 100.

[0080] At step 1104, the process includes detecting the need for a change in the NF HA role. For example, producer NF 200 or 202 may determine that its NF HA topology role requires a change in response to receiving notification of the need for the change from a network operator. In step 1106, the producer NF 200 or 202 changes its NF HA role. For example, the producer NF 200 or 202 may change from active to standby, or from standby to active. In step 1108, the producer NF 200 or 202 transmits an indication of the updated NF HA role to the NRF. For example, the producer NF 200 or 202 may generate and send an NFUpdate request message with the updated NF HA role to the NRF 100.

[0081] Advantages of the subject matter described herein include synergy between the NRF and SCP in an indirect communication model. Another advantage is that the subject matter allows NFs to expose their supported HA topologies in 5GC, resulting in better routing (re-routing) and load balancing handling at the NF consumer / SCP. The subject matter described herein also provides better routing resiliency for producers supporting active-standby or N+K HA topologies. The subject matter described herein also provides better routing resiliency for networks with hybrid NF deployments (virtual machine (VM), hardware, cloud native) with different HA topologies.

[0082] The disclosure of each of the following references is hereby incorporated by reference in its entirety into this specification.

[0083] References 1. 3rd Generation Partnership Project,Technical Specification Group Services and System Aspects,System architecture for the 5G System(5GS),Stage 2(Release 17)3GPP TS 23.501 V17.0.0(2021-03) 2. 3rd Generation Partnership Project,Technical Specification Group Core Network and Terminals,5G System,Network Function Repository Services,Stage 3(Release 17)3GPP TS 29.510 V17.1.0(2021-03) It will be understood that various details of the subject matter described herein can be changed without departing from the scope of the subject matter described herein. Moreover, the above description is intended to be illustrative only and not limiting, as the subject matter described herein is defined by the claims set forth below.

Claims

1. A method for distributing Network Function (NF) High Availability (HA) topology information in a core network, the method comprising: in a Network Function (NF) Repository Function (NRF) including at least one processor, receiving NFRegister requests from a plurality of producer NFs in a NF set, the NFRegister requests including NF HA topology information for the producer NFs; registering the producer NF and storing the NF HA topology information for the producer NF; receiving an NFDiscover request from a consumer NF or a service communication proxy (SCP) including at least one service discovery parameter corresponding to a service provided by the producer NF; and responding to the NFDiscover request by generating an NFDiscover response, including the NF HA topology information for the producer NF in the NFDiscover response, and sending the NFDiscover response to the consumer NF or an SCP.

2. 2. The method of claim 1, wherein receiving the NFRegister request including the NF HA topology information includes receiving the NFRegister request including information identifying an NF HA topology type supported by the producer NF.

3. 3. The method of claim 2, wherein the information identifying the NF HA topology type comprises information identifying one of an active-active NF HA topology type, an active-standby NF HA topology type, and an N+K NF HA topology type, where N and K are integers identifying a number of active NFs and a number of standby NFs, respectively, in the NF set.

4. 4. The method of claim 2 or claim 3, wherein receiving the NFRegister requests including the NF HA topology information includes receiving the NFRegister requests each including information identifying a current NF HA topology role of a producer NF in the NF set.

5. The method of claim 4 , wherein the information identifying the current NF HA topology role of the producer NF in the NF set includes information identifying the producer NF as an active NF or a standby NF.

6. 6. The method of claim 4 or claim 5, wherein responding to the NFDiscover request with the NFDiscover response containing the NF HA topology information comprises including in the NFDiscover response the information identifying the NF HA topology type and the information identifying the current NF HA topology role.

7. 7. The method of claim 1, further comprising: receiving, at the NRF, from at least one of the producer NFs, an NFUpdate request including updated NF HA topology information for the at least one producer NF; and in response to the receiving of the NFUpdate request with the updated NF HA topology information for the at least one producer NF, storing the updated NF HA topology information of the at least one producer NF; and automatically transmitting the updated NF HA topology information to consumer NFs subscribed to receive updates in NF profile information for the at least one producer NF.

8. 8. The method of claim 7, wherein the updated NF HA topology information indicates a role change of a first producer NF in the NF set from an active HA role to a standby HA role and a role change of a second producer NF in the NF set from a standby HA role to an active HA role, the method further comprising: at the consumer NF or SCP, sending a service request to the second producer NF.

9. 9. The method of claim 1, wherein receiving the NFDiscover request from a consumer NF or an SCP includes receiving the NFDiscover request from a consumer NF, and the method further includes, at the consumer NF, using the NF HA topology information to select a producer NF in the NF set that provides a service to the consumer NF.

10. The method according to any one of claims 1 to 9, wherein receiving the NFDiscover request from a consumer NF or an SCP includes receiving the NFDiscover request from an SCP, and the method further includes, at the SCP, using the NF HA topology information to select a producer NF in the NF set that provides a service to the consumer NF.

11. 1. A system for distributing Network Function (NF) High Availability (HA) topology information in a core network, the system comprising: a network function (NF) repository function (NRF) including at least one processor; and an NF profile manager implemented by the at least one processor for receiving, from a plurality of producer NFs in an NF set, NFRegister requests including NF HA topology information for the producer NFs, registering the producer NFs and storing the NF HA topology information for the producer NFs, receiving, from a consumer NF or a service communication proxy (SCP), an NFDiscover request including at least one service discovery parameter corresponding to a service provided by the producer NF, and responding to the NFDiscover request by generating an NFDiscover response and including the NF HA topology information for the producer NFs in the NFDiscover response and sending the NFDiscover response to the consumer NF or the SCP.

12. The system of claim 11 , wherein the NFRegister request includes information identifying an NF HA topology type supported by the producer NF.

13. 13. The system of claim 12, wherein the information identifying the NF HA topology type comprises information identifying one of an active-active NF HA topology type, an active-standby NF HA topology type, and an N+K NF HA topology type, where N and K are integers identifying a number of active NFs and a number of standby NFs, respectively, in the NF set.

14. The system of claim 12 or 13, wherein each of the NFRegister requests includes information identifying a current NF HA topology role of a producer NF in the NF set.

15. The system of claim 14 , wherein the information identifying the current NF HA topology role of the producer NF in the NF set includes information identifying the producer NF as an active NF or a standby NF.

16. The system of claim 14 or 15, wherein the NFDiscover response includes the information identifying the NF HA topology type and the information identifying the current NF HA topology role.

17. 17. The system of claim 11, wherein the NF profile manager is configured to receive an NFUpdate request from at least one of the producer NFs, the NF profile manager including updated NF HA topology information for the at least one producer NF, and in response to the reception of the NFUpdate request with the updated NF HA topology information for the at least one producer NF, store the updated NF HA topology information of the at least one producer NF, and automatically transmit the updated NF HA topology information to consumer NFs subscribed to receive updates in NF profile information for the at least one producer NF.

18. 20. The system of claim 17, wherein the updated NF HA topology information indicates a role change of a first producer NF in the NF set from an active HA role to a standby HA role and a role change of a second producer NF in the NF set from a standby HA role to an active HA role.

19. The system according to any one of claims 11 to 18, wherein the NF profile manager receives the NFDiscover request from a consumer NF.

20. The system according to any one of claims 11 to 19, wherein the NF Profile Manager receives the NFDiscover request from an SCP.

21. A program having stored thereon executable instructions which, when executed by a processor of a computer, cause the computer to, in a Network Function (NF) Repository Function (NRF): receiving NFRegister requests from a plurality of producer NFs in an NF set, the NFRegister requests including NF high availability (HA) topology information for the producer NFs; registering the producer NF and storing the NF HA topology information for the producer NF; receiving an NFDiscover request from a consumer NF or a service communication proxy (SCP) including at least one service discovery parameter corresponding to a service provided by the producer NF; generating an NFDiscover response, including the NF HA topology information for the producer NF in the NFDiscover response, and responding to the NFDiscover request by sending the NFDiscover response to the consumer NF or an SCP.