Methods, systems, and computer-readable media for generating network function (NF) discovery responses with NF set load information awareness
Patent Information
- Application Number
- CN202280046090.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-07-14
- Filing Date
- 2022-07-13
- Publication Date
- 2026-10-20
- Estimated Expiration
- 2042-07-13
AI Technical Summary
[0009]5G通信网络中会出现的一个问题是NF发现响应不包括用于NF集的负载控制信息
Smart Images

Figure CN117581522B_ABST
Abstract
Description
[0001] Priority Statement
[0002] This application claims priority to U.S. Patent Application Serial No. 17 / 376,082, filed July 14, 2021, the disclosure of which is incorporated herein by reference in its entirety. Technical Field
[0003] This article describes topics related to load control in communication networks. More specifically, this article describes methods, systems, and computer-readable media for generating NF discovery responses that are aware of NF set load information. Background Technology
[0004] In 5G telecommunications networks, network functions that provide services are referred to as producer NFs or NF service producers. Network functions that consume services are referred to as consumer NFs or NF service consumers. A network function can be a producer NF, a consumer NF, or both, depending on whether the network function consumes, produces, or both consumes and produces services. The terms "producer NF" and "NF service producer" are used interchangeably herein. Similarly, the terms "consumer NF" and "NF service consumer" are used interchangeably herein.
[0005] A given producer NF may have many service endpoints, where a service endpoint is a contact point 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 by a fully qualified domain name that resolves to the IP address and port number on the network node hosting the producer NF. An NF instance is an instance of the producer NF that provides a service. A given producer NF may include more than one NF instance. It should also be noted that multiple NF instances can share the same service endpoint.
[0006] Producer NFs register with the Network Functions Store (NRF). The NRF maintains service profiles that identify available NF instances and the services supported by each NF instance. The terms "service profile" and "NF profile" are used interchangeably herein. Consumer NFs can obtain information about producer NF instances that have registered with the NRF through the NF service discovery process. According to the NF service discovery process, the consumer NF sends an NF discovery request to the NRF. The NF discovery request includes query parameters used by the NRF to locate the NF profiles of producer NFs capable of providing the services identified by the query parameters. An NF profile is a data structure that defines the types of services provided by a producer NF instance and load and overload control information about the producer NF instance.
[0007] Besides the consumer NF, another network node that can invoke the NF service discovery process to obtain information about NF service instances is the Service Communication Broker (SCP). The situation where the SCP uses the NF service discovery process to obtain information about producer NF instances on behalf of the consumer NF is called delegated discovery. The consumer NF connects to the Service Communication Broker, and the Service Communication Broker load balances traffic between producer NF service instances providing the required services, or directly routes traffic to the destination producer NF instance. The communication model in which the consumer NF communicates with the producer NF via the SCP is called the indirect communication model.
[0008] Besides SCP, another example of an intermediate proxy node that routes traffic between producer and consumer NFs is the Secure Edge Protection Proxy (SEPP). The SEPP is a network node used to protect control plane traffic exchanged between different 5G Public Land Mobile Networks (PLMNs). The SEPP performs message filtering, control, and topology hiding on all Application Programming Interface (API) messages transmitted between PLMNs.
[0009] One issue that arises in 5G communication networks is that the NF discovery response does not include load control information for the NF set. An NF set is a group of interchangeable NF instances of the same type, thus supporting the same service and one or more of the same network slices. An NF instance is an instance of an NF that provides a service. An example of an NF instance is an Access and Mobility Management Function (AMF) instance that provides access and mobility management services to a User Equipment (UE).
[0010] As described above, NF discovery is the process by which a consumer NF queries the NRF to obtain the NF profile of a producer NF that can provide services to the consumer NF. The NF profile is a data structure defined in 3GPP 29.510 that includes the service attributes of the producer NF instance. The NF profile can identify that the producer NF instance is a set of NFs whose members it belongs to. However, the NF profile does not contain load control information for NF sets.
[0011] 3GPP defines a load control mechanism to achieve better load balancing across NF service producers. This is achieved by enabling NF service producers to prevent overload by sending load information directly to NF service consumers, either via NRF or using the 3GPP-Sbi-LCI header. During NF discovery or initial NF selection, consumer NFs cannot use the NF set LCI. NFs in an overloaded NF set should not have priority over NFs in a non-overloaded NF set. However, because the LCI for the NF set is not communicated in the NF discovery response, a consumer NF can select an overloaded NF set. This results in the connection to the overloaded producer NF being rejected, and the consumer NF must repeat the NF selection process.
[0012] Therefore, given these and other difficulties, there is a need for an improved NF discovery process that can communicate load control information of the NF set to the consumer NF. Summary of the Invention
[0013] A method for generating a Network Function (NF) set load information-aware NF discovery response includes receiving an NFUpdate message from a producer NF instance at an NF repository function (NRF). The method further includes collecting or generating NF set load information for NF sets whose members include the producer NF instance from the NFUpdate message. The method also includes receiving an NF discovery request from a consumer NF. The method further includes generating an NF discovery response using query parameters in the NF discovery request, the response including an NF profile of the producer NF instance corresponding to the query, and including NF set load information for NF sets of producer NF instances whose NF profiles are included in the NF discovery response. The method also includes forwarding the NF discovery response including the NF set load information to the consumer NF.
[0014] According to another aspect of the subject described in this article, receiving NFUpdate messages includes receiving NF heartbeat messages.
[0015] According to another aspect of the subject matter described herein, receiving an NFUpdate message from a producer NF instance includes receiving an NFUpdate message that includes NF set load control information (LCI), and collecting or generating NF set load information includes reading the NF set LCI from the NFUpdate message and storing the NF set LCI in a database local to the NRF.
[0016] According to another aspect of the subject matter described herein, receiving an NFUpdate message from a producer NF instance includes receiving an NFUpdate message that includes producer NF instance load control information (LCI), and collecting or generating NF set load information includes reading the NF instance LCI from the NFUpdate message, calculating the NF set LCI based on the NF instance LCI, and storing the NF set LCI in a database local to the NRF.
[0017] According to another aspect of the subject described in this article, computing the LCI of an NF set involves generating a sum using the LCI of NF instances.
[0018] According to another aspect of the subject described in this article, generating a sum involves summing the normalized loads of the producer NF instances using the following expression:
[0019] Load(nfSet) = ∑ Normalized load of NF instances,
[0020] Load(nfSet) is the LCI for the NF set, and the normalized load of the ∑NF instances is the sum of the normalized loads of the producer NF instances.
[0021] According to another aspect of the subject described in this paper, a method for generating a discovery response that is aware of NF set load information includes calculating the normalized load of the producer NF instance using the following expression:
[0022]
[0023] NF n It is the nth producer NF instance that is currently calculating its normalized load, where n is an integer, Load n It is a computational or reporting load, and is for the producer NF instance NF. n Calculate LCI and Capacity n It is a producer NF instance NF n Processing capacity.
[0024] According to another aspect of the subject matter described herein, a method for generating a discovery response that is aware of NF set load information includes using NF set load information at the consumer NF to select the producer NF set and producer NF instance to handle service-based interface (SBI) requests.
[0025] According to another aspect of the subject matter described herein, using NF set load information when selecting producer NF sets and producer NF instances to process SBI requests includes selecting a first producer NF set with an NF set control information attribute value that is lower than the NF set load control information attribute value determined for a second producer NF set, and selecting producer NFs from the producer NFs in the first producer NF set.
[0026] According to another aspect of the subject matter described herein, the producer NF selected from the producer NF in the first NF set has a higher NF instance load control information attribute value than the NF instance load control information value used for the producer NF in the second producer NF set.
[0027] According to another aspect of the subject matter described herein, a system for generating NF discovery responses aware of network function (NF) set load information includes an NF repository function (NRF) comprising at least one processor and a memory. The system also includes an NF set load information generator / collector implemented by at least one processor, for receiving NFUpdate messages from producer NF instances, collecting or generating NF set load information for NF sets whose members include the producer NF instance from the NFUpdate messages. The system further includes an NF discovery request handler implemented by at least one processor, for receiving NF discovery requests from consumer NFs, generating an NF discovery response including NF profiles of producer NF instances corresponding to the query parameters using query parameters in the NF discovery request, including NF set load information for NF sets of producer NF instances whose NF profiles are included in the NF discovery response, and forwarding the NF discovery response including the NF set load information to the consumer NF.
[0028] According to another aspect of the topic described in this article, NFUpdate messages include NF heartbeat messages.
[0029] According to another aspect of the subject matter described herein, the NFUpdate message includes NF set load control information (LCI), and the NF set load information generator / collector is configured to read the NF set LCI from the NFUpdate message and store the NF set LCI in a database local to the NRF.
[0030] According to another aspect of the subject described in this article, the NFUpdate message includes NF instance load control information (LCI), and the NF set load information generator / collector is configured to collect or generate NF set load information by reading the NF instance LCI from the NFUpdate message, calculate the NF set LCI based on the NF instance LCI, and store the NF set LCI in a database local to the NRF.
[0031] According to another aspect of the subject described in this article, the NF set load information generator / collector is configured to compute the NF set LCI by generating a sum using the NF instance LCI.
[0032] According to another aspect of the subject described in this article, the NF set load information generator / collector is configured to generate a sum by adding the normalized loads of the producer NF instances using the following expression:
[0033] Load(nfSet) = ∑ Normalized load of NF instances,
[0034] Load(nfSet) is the LCI for the NF set, and the normalized load of the ∑NF instances is the sum of the normalized loads of the producer NF instances.
[0035] According to another aspect of the subject described in this article, the NF set load information generator / collector is configured to calculate the normalized load of the producer NF instance using the following expression:
[0036]
[0037] NF n It is the nth producer NF instance that is currently calculating its normalized load, where n is an integer, Load n It is a computational or reporting load, and is for the producer NF instance NF. n Calculate LCI and Capacity n It is a producer NF instance NF n Processing capacity.
[0038] According to another aspect of the subject matter described herein, a system for generating a network function (NF) set load information-aware NF discovery response includes a consumer NF, wherein the consumer NF is configured to use NF set load information when selecting a producer NF set and a producer NF instance to process the SBI request by selecting a first producer NF set having a lower NF set control information attribute value than the NF set load control information attribute value determined for a second producer NF set.
[0039] According to another aspect of the subject matter described herein, the producer NF selected from the producer NF in the first NF set has a higher NF instance load control information attribute value than the NF instance load control information value used for the producer NF in the second producer NF set.
[0040] According to another aspect of the subject matter described herein, a non-transitory computer-readable medium is provided having executable instructions stored thereon, which, when executed by a computer's processor, control the computer to perform steps. These steps are performed at a Network Function (NF) Storehouse Function (NRF). These steps include receiving an NFUpdate message from a producer NF instance. These steps also include collecting or generating NF set payload information from the NFUpdate message for NF sets whose members include the producer NF instance. These steps also include receiving an NF discovery request from a consumer NF. These steps also include generating an NF discovery response using query parameters in the NF discovery request, the NF discovery response including an NF profile of the producer NF instance corresponding to the query parameters. These steps also include including NF set payload information of the NF sets of producer NF instances whose NF profiles are included in the NF discovery response. These steps also include forwarding the NF discovery response including the NF set payload information to the consumer NF.
[0041] The subjects described herein can be implemented using software in conjunction with hardware and / or firmware. For example, the subjects described herein can be implemented as software executed by a processor. In one exemplary embodiment, the subjects described herein can be implemented using a non-transitory computer-readable medium having computer-executable instructions stored thereon, which control computer execution steps when executed by a computer's processor. Exemplary computer-readable media suitable for implementing the subjects described herein include non-transitory computer-readable media, such as disk storage devices, on-chip memory devices, programmable logic devices, and application-specific integrated circuits (ASICs). Furthermore, computer-readable media implementing the subjects described herein can be located on a single device or computing platform or can be distributed across multiple devices or computing platforms. Attached Figure Description
[0042] Exemplary embodiments of the subject matter described herein will now be explained with reference to the accompanying drawings, in which:
[0043] Figure 1 This is a network diagram illustrating an exemplary 5G system network architecture;
[0044] Figure 2 This is a message flow diagram illustrating exemplary messages exchanged for NF discovery and selection without conveying the NF set LCI in the NF discovery response;
[0045] Figure 3 This is a message flow diagram illustrating exemplary messages exchanged for NF discovery and selection by conveying the NF set LCI in the NF discovery response, where the producer NF instance reports the NF set LCI to the NRF;
[0046] Figure 4This is a message flow diagram illustrating the exemplary messages exchanged for NF discovery and selection by conveying the NF set LCI in the NF discovery response, where the producer NF instance reports the NF instance LCI to the NRF and the NRF calculates the NF set LCI based on the NF instance LCI;
[0047] Figure 5 This is a block diagram illustrating an exemplary architecture of an NRF (Network RF) that generates an NF (Network Functions) set load information awareness discovery response; and
[0048] Figure 6 This is a flowchart illustrating an exemplary process for generating a discovery response that is aware of NF set load information. Detailed Implementation
[0049] Figure 1 This is a block diagram illustrating an exemplary 5G system network architecture. Figure 1 The architecture includes NRF 100 and SCP 101, which can reside within the same Home Public Land Mobile Network (HPLMN). As described above, NRF 100 maintains profiles of available producer NF service instances and their supported services, and allows consumer NFs or SCPs to subscribe to new / updated producer NF service instances and be notified of these instances' registration. SCP 101 also supports service discovery and producer NF instance selection. SCP 101 can perform load balancing of connections between consumer and producer NFs.
[0050] NRF 100 is a repository of service profiles for NF or producer NF instances. To communicate with a producer NF instance, a consumer NF or SCP must obtain the producer NF instance's NF or service profile from 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.
[0051] exist Figure 1 In this context, any network function can be a consumer NF, a producer NF, or both, depending on whether it requests a service, provides a service, or requests and provides a service. In the example shown, the NF includes a policy control function (PCF) 102 that performs policy-related operations in the network, a unified data management (UDM) 104 that manages user data, and an application function (AF) 106 that provides application services.
[0052] Figure 1The NF shown also includes a Session Management Function (SMF) 108, which manages the session between the 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 a 4G network. The Authentication Server Function (AUSF) 112 performs authentication services for User Equipment (UE) seeking network access (such as User Equipment (UE) 114).
[0053] The Network Slice Selection Function (NSSF) 116 provides network slicing services for devices seeking access to specific network capabilities and characteristics associated with a network slice. The Network Exposure Function (NEF) 118 provides an application programming interface (API) for application functions seeking information about Internet of Things (IoT) devices and other UEs attached to the network. NEF 118 performs functions similar to the Service Capability Exposure Function (SCEF) in 4G networks.
[0054] Radio Access Network (RAN) 120 connects User Equipment (UE) 114 to the network via a radio link. This can be achieved using a gNode B (gNB). Figure 1 The UE 114 accesses the radio access network 120 via a wireless access point (not shown) or other wireless access points. The User Plane Function (UPF) 122 can support various proxy functions for user plane services. An example of such proxy function is the Multipath Transmission Control Protocol (MPTCP) proxy function. The UPF 122 can also support performance measurement functions, which the UE 114 can use to obtain network performance measurements. Figure 1 The diagram also shows a data network (DN) 124 through which the UE accesses data network services, such as Internet services.
[0055] SEPP 126 filters incoming traffic from another PLMN and performs topology hiding for traffic leaving the home PLMN. SEPP 126 can communicate with the SEPP in the external PLMN that manages the security of the external PLMN. Therefore, traffic between NFs in different PLMNs can traverse two SEPP functions, one for the home PLMN and the other for the external PLMN.
[0056] As mentioned above, a problem or drawback of existing 5G networks is that consumers cannot deliver LCIs for NF sets during NF discovery. Section 6.3 of 3GPP TS29.500 defines payload information based on NRF or LCI headers. Currently, NRFs can provide payload information for NF instances or NF service instances, but not for NF sets. LCI headers can provide payload information for different scopes—NF instances, NF service instances, or NF service sets. It is important to emphasize that NF set payload information is not available from the NRF, and obtaining payload information from the LCI header requires active signaling from the producer NF, which is unavailable to the consumer NF during NF discovery. Table 1 below illustrates the relationship between NF instances, NF sets, and NF service sets.
[0057]
[0058] Table 1: Relationships between NF sets, NF service sets, and NF instances
[0059] The data in Table 1 comes from Section 3.1 of 3GPP TS29.500. As indicated in Table 1, an NF set is a group of interchangeable NF instances of the same type capable of providing the same service. Because consumer NFs need to select an NF set with sufficient capacity to provide the service requested by the consumer NF, it is desirable to provide a method for efficiently determining and transmitting NF set load control information during NF discovery.
[0060] NF load control information is carried in the 3GPP-Sbi-Lci header of the SBI response message sent from the producer NF to the consumer NF, and is used by the consumer NF to avoid selecting an overloaded producer NF. 3GPP TS29.500, Section 5.2.3.2.10 specifies the following mandatory attributes in the LCI header: timestamp, load metric, and lcScope (different ranges). One or more LCI headers may be present in the message. Below is an example of a 3GPP LCI header:
[0061] 3gpp-Sbi-Lci:Timestamp:"Tue,04Feb 2020 08:49:37GMT"; Load-Metric:100%; NF-Set:set1.udmset.5gc.mnc012.mcc345 In this example header, the timestamp identifies the time the load metric is reported. 3GPP TS29.50, Section 6.2.6 defines a load metric as a number between 0 and 100. In the example shown, a load metric value of 100% indicates that the producer NF is overloaded. The range parameter value identifies the range as an NF set and specifies the NF set set1.udmset.5gc.mnc012.mcc345.
[0062] While 3GPP TS29.500 specifies how NF set load control information can be carried in the SBI response message, neither 3GPP TS29.500 nor 3GPP TS29.510 specifies that NF set load control information is part of the NF discovery response. Furthermore, neither 3GPP TS 29.500 nor 3GPP TS29.510 specifies how the NRF will generate the LCI.
[0063] Because there is a lack of active signaling between the NF consumer and the NF producer before the producer NF is selected, the NF consumer is unaware of the NF set LCI. As part of the NF discovery process, the NF consumer can select an NF from an overloaded NF set, which will cause subsequent SBI requests to fail. Even if the selected producer NF is not currently overloaded, the NF set may still be overloaded. Furthermore, even if the selected producer NF is not currently overloaded, it can quickly receive redirection requests from consumers of paired NFs in the NF set because other paired NFs are overloaded. However, redirection requests may quickly cause the selected producer NF to become overloaded. Therefore, the NF set LCI needs to be considered when selecting an NF.
[0064] Figure 2 This is a message flow diagram illustrating exemplary messages exchanged when consumer NF 200 lacks an LCI for the NF set and selects a producer NF from an overloaded NF set. Figure 2 In the above, NF1 202 and NF2 204 are in NF set Set1. NF set Set1 is in a non-overloaded state. NF3 206 and NF4 208 are in NF set Set2, which is in an overloaded state.
[0065] refer to Figure 2 In the message flow diagram, in step 1, NF1 202 sends an NFUpdate message to NRF 100 to update the state of NF1 202 using NRF 100. While the NFUpdate message may include the LCI for NF1 202, it will not include the LCI for NF set Set1. In step 2 of the message flow diagram, NRF 100 responds to the NFUpdate message from step 1 with an NFUpdate response. In step 3 of the message flow diagram, NF2 204 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF2 204, but not the LCI for NF set Set1. In step 4 of the message flow diagram, NRF 100 responds to the NFUpdate message from step 3 with an NFUpdate response.
[0066] In step 5 of the message flow diagram, NF3 206 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF3 206, but not the LCI for NF set Set2. In step 6 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 5 with an NFUpdate response. In step 7 of the message flow diagram, NF4 208 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF4 208, but not the LCI for NF set Set2. In step 8 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 7 with an NFUpdate response.
[0067] In step 9 of the message flow diagram, consumer NF 200 sends an NF discovery request to NRF 100. NRF 100 receives the NF discovery request and performs a lookup in its NF profile database using the query parameters in the NF discovery request. NRF 100 locates the NF profile that matches the query parameters in the NF discovery request. In step 10, NRF 100 sends an NF discovery response to consumer NF 200. The NF discovery response includes the NF profile that matches the query parameters identified in the NF discovery request. However, the NF discovery response does not indicate load control information for the NF set of any producer NFs whose NF profiles are included in the NF discovery response.
[0068] Consumer NF 200 receives the NF discovery response and selects one of the producer NFs to provide service based on the priority parameters specified in the NF profile. In this example, assume consumer NF 100 selects producer NF3 206 to provide service. In step 11, consumer NF 100 sends an SBI request message to NF4 208. NF4 208 is in an overloaded NF set. In this example, NF4 208 is also overloaded. Therefore, the SBI request fails. Then, consumer NF 200 is asked to perform a reselection of the producer NF and send a new SBI request to the reselected NF, which is inefficient and increases network traffic.
[0069] Tables 2 and 3 below illustrate the problems that occur when the load of the NF set is not used in the producer NF selection.
[0070] NF1 70 1 100 Set1 NF2 70 1 100 Set1 NF3 95 1 100 Set2 NF4 65 1 100 Set2
[0071] Table 2: NF Instance Information
[0072] Set1 70 Set2 80
[0073] Table 3: NF Set Load Information
[0074] Upon receiving the discovery response, the consumer NF will be unaware of the NF set loading information in Table 3. The data in Table 2 is known to the consumer NF through a combination of the NF profile and any LCI headers containing the LCI for the NF instance delivered to the consumer NF. Using the data in Table 2, the consumer NF will first select the producer NF with the lowest priority attribute value (lower priority attribute values mean higher preference). Since all producer NFs have the same priority attribute, the consumer NF will seek to load and select the producer NF with the lowest load metric attribute value. In Table 2, NF4 has the lowest load metric attribute value of 65. Therefore, the consumer NF will select NF4 and send an SBI request to NF4, such as... Figure 2 As shown in step 11.
[0075] As shown in Table 2, NF4 is a member of NF set Set2, with a load rate of 80%. Set1 is only 70% loaded. Therefore, by selecting the NF set with a higher load, the consumer NF increases the likelihood that subsequent SBI requests will fail due to overloaded producer NF instances in the NF set. For example, if NF3 in Set2 becomes overloaded, SBI requests destined for NF4 will be redirected to NF3, and NF3 will eventually become overloaded.
[0076] To avoid this difficulty, NRF can determine the NF set LCI either by a report from the producer NF or by calculating the NF instance LCI value reported by the producer NF instance, and can include the NF set LCI in the discovery response. Figure 3 This is a message flow graph where the producer NF instance reports the NF set LCI in the NFUpdate message to the NRF, and the NRF includes the NF set LCI in its discovery response to the consumer NF. Figure 3 In this context, the producer NF communicates the NF Set LCI to the NRF via the Nnrf_NFManagement_NFUpdate message. In one example, the Nnrf_NFManagement_NFUpdate message is an NF heartbeat message. An NF heartbeat message is an Nnrf_NFManagement_NFUpdate message sent from the producer NF to the NRF every heartbeat interval (defined by the NRF) to indicate that the producer NF is still available. The term "NFUpdate message" will be used herein to refer to any type of Nnrf_NFManagement_NFUpdate message sent from the producer NF to the NRF to communicate the NF set or NF instance LCI. The NRF communicates the NF set LCI to the consumer NF in its discovery response. The consumer NF uses the NF set LCI to select an NF to handle the SBI request. The consumer NF will select the NF set and NF with the lowest load.
[0077] refer to Figure 3 In the message flow diagram, in step 1, NF1 202 sends an NFUpdate message to NRF 100 to update the state of NF1 202 using NRF 100. In this example, the NFUpdate message includes the LCI for NF set Set1. NRF 100 stores the NF set LCI in an NF set LCI database or an NF profile database. In step 2 of the message flow diagram, NRF 100 responds to the NFUpdate message from step 1 with an NFUpdate response.
[0078] In step 3 of the message flow graph, NF2 204 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF set Set1. NRF 100 may update the previously stored LCI for Set1. In step 4 of the message flow graph, NRF 100 responds to the NFUpdate message in step 3 with an NFUpdate response.
[0079] In step 5 of the message flow diagram, NF3 206 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF set Set2. NRF 100 stores the LCI for Set2 in the NF set LCI database or the NF profile database. In step 6 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 5 with an NFUpdate response.
[0080] In step 7 of the message flow diagram, NF4 208 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF set Set2. NRF 100 may update the previously stored LCI for Set2. In step 8 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 7 with an NFUpdate response.
[0081] In step 9 of the message flow graph, consumer NF 200 sends an NF discovery request to NRF 100. NRF 100 receives the NF discovery request and performs a lookup in its NF profile database using the query parameters in the NF discovery request. NRF 100 locates the NF profile that matches the query in the NF discovery request. In step 10, NRF 100 sends an NF discovery response to consumer NF 200. The NF discovery response includes the NF profile that matches the query parameters identified in the NF discovery request. The NF discovery response also includes the NF set LCI for the NF set of the producer NF whose NF profile is included in the NF discovery response.
[0082] Consumer NF 200 receives the NF discovery response and selects one of the producer NFs to provide service based on the priority parameters specified in the NF profile, NF set loading information, and NF instance loading information. Using the data in Tables 2 and 3, NF set Set1 is the least loaded NF set. Therefore, even though NF4 208 is the least loaded NF instance, because NF4 208 is a member of NF set Set2, which has a higher load than NF set Set1, consumer NF 200 selects NF1 202 from NF set Set1 to provide service. In step 11, consumer NF 100 sends an SBI request message to producer NF 202. In step 12, producer NF 202 responds to the SBI request with an SBI response indicating successful processing of the SBI request.
[0083] exist Figure 3 In the example shown, the producer NF instance determines the NF set LCI and reports the NF set LCI to the NRF. This implementation requires communication between producer NF instances and leads to redundant computations at the producer NF instances and excessive message passing between them. In an alternative implementation, the producer NF instance can report the NF instance LCI to the NRF, and the NRF can compute the NF set LCI and report it in the NF discovery response. Figure 4 This implementation method is illustrated. (Reference) Figure 4 In step 1, NF1 202 sends an NFUpdate message to NRF 100 to update the state of NF1 202 using NRF 100. In this example, the NFUpdate message includes the LCI of NF1 202. NRF 100 stores the LCI of NF1 202 in the NF LCI database or the NF profile database. In step 2 of the message flow graph, NRF 100 responds to the NFUpdate message from step 1 with an NFUpdate response.
[0084] In step 3 of the message flow diagram, NF2 204 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF2 204. NRF 100 may store the LCI for NF2 204. In step 4 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 3 with an NFUpdate response.
[0085] In step 5 of the message flow diagram, NF3 206 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF3 206. NRF 100 stores the LCI for NF3 206. In step 6 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 5 with an NFUpdate response.
[0086] In step 7 of the message flow diagram, NF4 208 sends an NFUpdate message to NRF 100. The NFUpdate message may include the LCI for NF4 208. NRF 100 may store the LCI for NF4 208. In step 8 of the message flow diagram, NRF 100 responds to the NFUpdate message in step 7 with an NFUpdate response.
[0087] In step 9 of the message flow graph, NRF 100 calculates the NF set LCI for Set1 and Set2 based on the NF instance LCIs received from producers NFs 202, 204, 206, and 208. It should be understood that NRF 100 can calculate the NF set LCI at any time when NRF 100 has sufficient information to calculate it. For example, NRF 100 can calculate the NF set LCI for Set1 after step 3 and the NF set LCI for Set2 after step 7. Furthermore, any suitable method for calculating the NF set LCI can be used. In one example, NRF 100 can calculate the NF set LCI by summing the normalized NF instance LCIs of the producer NF instances used as members of the NF sets. Equations 1 and 2 shown below illustrate example calculations that can be performed by NRF 100 when generating the LCI for the NF sets by summing the normalized NF instance LCI values used as members of the NF sets.
[0088] Load(nfSet) = ∑Normalized load of NF instances (1)
[0089]
[0090] Where load(nfSet) is the calculated load of the NF set, NF n It is the nth NF instance that is currently calculating its normalized load, where n is an integer. Load n It is NF n The computational or reporting load, and Capacity n It is NF n Processing capacity.
[0091] In step 10 of the message flow graph, consumer NF 200 sends an NF discovery request to NRF 100. NRF 100 receives the NF discovery request and performs a lookup in its NF profile database using the query parameters in the NF discovery request. NRF 100 locates the NF profile that matches the query parameters in the NF discovery request. In step 11, NRF 100 sends an NF discovery response to consumer NF 200. The NF discovery response includes the NF profile that matches the query parameters identified in the NF discovery request. The NF discovery response also includes the NF set LCI for the NF set of the producer NF whose NF profile is included in the NF discovery response.
[0092] Consumer NF 200 receives the NF discovery response and selects one of the producer NFs to provide service based on the priority parameters specified in the NF profile, NF set loading information, and NF instance loading information. Using the data in Tables 2 and 3, NF set Set1 is the least loaded NF set. Therefore, even though NF4 208 is the least loaded NF, because NF4 208 is a member of NF set Set2, which has a higher load than NF set Set1, consumer NF 200 selects NF1 202 from NF set Set1 to provide service. In step 11, consumer NF 100 sends an SBI request message to producer NF 202. In step 12, producer NF 202 responds to the SBI request with an SBI response indicating successful processing of the SBI request.
[0093] Figure 5 This is a block diagram illustrating an exemplary architecture of the NRF 100 capable of generating NF sets and LCIs and reporting the LCIs in the NF discovery response. Reference Figure 5The NRF 100 includes at least one processor 500 and a memory 502. The NRF 100 also includes an NF profile database 504 for storing NF profiles of producer NFs registered with the NRF 100. The NRF 100 may also include an NF set load information database 506 for storing NF set load information collected or generated by the NRF 100. The NF set load information database 506 may be independent of or included in the NF profile database 504. The NRF 100 also includes an NF discovery request handler 508 for receiving NF discovery requests, performing lookups in databases 504 and 506 to obtain NF profiles and NF set LCIs for the discovery request, and responding to the discovery request using the NF profiles and NF set LCIs. The NRF 100 also includes an NF set load information generator / collector 510 for generating or collecting NF set load information (LCIs) and storing the NF set load information in the NRF-local NF set load information database 506. The NF set discovery request handler 508 and the NF set load information generator / collector 510 can be implemented using computer-executable instructions stored in memory 502 and executable by processor 500.
[0094] Figure 6 This is a flowchart illustrating an exemplary process for generating an NF discovery response that is aware of NF set load information. (Reference) Figure 6 In step 600, the process includes receiving NFUpdate messages from a producer NF instance. For example, NRF 100 may receive NF heartbeats or other types of NFUpdate messages from producer NF instances registered with NRF 100.
[0095] In step 602, the process includes collecting or generating NF set payload information from the NFUpdate message for NF sets whose members include producer NF instances. For example, if the NFUpdate message includes the NF set LCI reported by the producer NF, then NRF 100 can read the NF set LCI from the NFUpdate message and store the message in NRF 100's local database. If the NFUpdate message does not include the NF set LCI but includes the NF instance LCI, then NRF 100 can calculate the NF set LCI based on the NF instance LCI and store the NF set LCI in NRF 100's local database. If the NFUpdate message includes either the NF set LCI or the NF instance LCI, then NRF 100 can generate the NF set OCI from the collected or calculated NF set LCI.
[0096] In step 604, the process includes receiving an NF discovery request from a consumer NF. For example, NRF 100 may receive an NF discovery request from a consumer NF. The NF discovery request may include query parameters, such as the target NF type, which may be used to identify the NF profile of a producer NF instance capable of providing the service requested by the consumer NF.
[0097] In step 606, the process includes generating an NF discovery response using query parameters from the NF discovery request. This NF discovery response includes an NF profile of the producer NF instance corresponding to the query parameters. For example, NRF 100 can use the query parameters from the NF discovery request to perform a lookup in the NF profile database to locate an NF profile with attributes matching the query parameters.
[0098] In step 608, the process includes including NF set payload information in the NF discovery response, which is used to specify the NF set of the producer NF instance whose NF profile is included in the NF discovery response. For example, NRF 100 may insert the NF set payload information into one or more 3GPP-Sbi-Lci headers of the NF discovery response. In step 610, the process includes forwarding the NF discovery response including the NF set payload information to the consumer NF. For example, NRF 100 may forward the NF discovery response including the NF set payload information to the consumer NF that sent the NF discovery request.
[0099] The topic described in this article achieves at least the following advantages:
[0100] • By making NF set load information available to consumer NFs before the initial NF selection, SBI request failures are proactively reduced;
[0101] • Reduce the amount of SBI request traffic by reducing the number of retries caused by SBI request failures; and
[0102] • By loading producer NF sets and producer NF instances more evenly, producer NF resources are used more efficiently.
[0103] All publicly available information in the following references is incorporated herein by reference in its entirety.
[0104] References
[0105] 1.3 rdGeneration Partnership Project; Technical Specification GroupCore Network and Terminals; 5G System; Technical Realization of Service Based Architecture; Stage 3 (Release 17) 3GPP TS29.500V17.2.0 (2021-03).
[0106] twenty three rd Generation Partnership Project; Technical Specification GroupServices and System Aspects; System architecture for the 5GSystem(5GS); Stage 2(Release 17)3GPP TS23.501V17.0.0(2021-03).
[0107] 3.3 rd Generation Partnership Project; Technical Specification GroupCore Network and Terminals; 5G System; Network Function Repository Services; Stage 3 (Release 17) 3GPP TS29.510V17.1.0 (2021-03).
[0108] 4.3 rd Generation Partnership Project; Technical Specification GroupServices and System Aspects; Procedures for the 5G System(5GS); Stage 2(Release17)3GPP TS23.502V17.0.0(2021-03).
[0109] It should be understood that various details of the subject matter described herein may be changed without departing from the scope of the subject matter described herein. Furthermore, the foregoing description is for illustrative purposes only and not for limiting purposes, as the subject matter described herein is defined by the claims set forth below.
Claims
1. A method for generating an NF discovery response that is aware of network function set (NF) load information, the method comprising: At the NF repository function NRF: Receive NFUpdate messages from the producer NF instance; Collecting or generating NF set load information for NF sets with producer NF instances as members from NFUpdate messages, wherein receiving NFUpdate messages from producer NF instances includes receiving NFUpdate messages including producer NF instance load control information (LCI), and wherein collecting or generating NF set load information includes reading NF instance LCI from NFUpdate messages, calculating NF set LCI based on NF instance LCI, and storing NF set LCI in a database local to the NRF, wherein calculating NF set LCI includes generating a sum using NF instance LCI; Receive NF discovery requests from consumer NF; The NF discovery response is generated using the query parameters in the NF discovery request. The NF discovery response includes the NF profile of the producer NF instance corresponding to the query parameters. The NF discovery response includes NF set load information for the NF set of the producer NF instance included in the NF discovery response, which is used for its NF profile; as well as Forward the NF discovery response, which includes NF set load information, to the consumer NF.
2. The method of claim 1, wherein receiving the NFUpdate message includes receiving the NF heartbeat message.
3. The method of any of the preceding claims, wherein receiving an NFUpdate message from a producer NF instance includes receiving an NFUpdate message including NF set load control information (LCI), and wherein collecting or generating NF set load information includes reading the NF set LCI from the NFUpdate message and storing the NF set LCI in a database local to the NRF.
4. The method of claim 1, wherein generating the sum comprises summing the normalized loads of the producer NF instances using the following expression: Where Load(nfSet) is the LCI for the NF set, and It is the sum of the normalized loads of the producer NF instances.
5. The method of claim 4, further comprising using the following expression to calculate the normalized load of the producer NF instance: NF n It is the nth producer NF instance that is currently calculating its normalized load, where n is an integer, Load n It is a computational or reporting load and is for producer NF instances. n Calculate LCI and Capacity n It is a producer NF instance NF n Processing capacity.
6. The method of claim 1, further comprising using NF set load information at the consumer NF to select a producer NF set and a producer NF instance to process service-based interface (SBI) requests.
7. The method of claim 6, wherein using NF set load information to select producer NF sets and producer NF instances to process SBI requests includes selecting a first producer NF set having an NF set control information attribute value lower than the NF set load control information attribute value determined for the second producer NF set, and selecting producer NFs from the producer NFs in the first producer NF set.
8. The method of claim 7, wherein the producer NF selected from the first NF set has an NF instance load control information attribute value that is higher than the NF instance load control information value for the producer NF in the second producer NF set.
9. A system for generating an NF discovery response that is aware of network function set (NF) load information, the system comprising: The NF storage library function (NRF) includes at least one processor and memory; An NF set load information generator / collector, implemented by the at least one processor, is configured to receive NFUpdate messages from a producer NF instance, collect or generate NF set load information for an NF set whose members include the producer NF instance from the NFUpdate messages, wherein the NFUpdate messages include NF instance load control information (LCI), and wherein the NF set load information generator / collector is configured to collect or generate NF set load information by reading NF instance LCIs from the NFUpdate messages, calculating NF set LCIs based on the NF instance LCIs, and storing the NF set LCIs in a database local to the NRF, wherein the NF set load information generator / collector is configured to calculate the NF set LCIs by generating a sum using the NF instance LCIs; as well as An NF discovery request handler, implemented by the at least one processor, is configured to receive an NF discovery request from a consumer NF, generate an NF discovery response including an NF profile of a producer NF instance corresponding to the query parameters in the NF discovery request, include NF set load information in the NF discovery response for the NF set of producer NF instances whose NF profiles are included in the NF discovery response, and forward the NF discovery response including the NF set load information to the consumer NF.
10. The system of claim 9, wherein the NFUpdate message includes an NF heartbeat message.
11. The system of any one of claims 9 to 10, wherein the NFUpdate message includes NF set load control information (LCI), and wherein the NF set load information generator / collector is configured to read the NF set LCI from the NFUpdate message and store the NF set LCI in a database local to the NRF.
12. The system of claim 9, wherein the NF set load information generator / collector is configured to generate a sum by summing the normalized loads of the producer NF instances using the following expression: Where Load(nfSet) is the LCI for the NF set, and It is the sum of the normalized loads of the producer NF instances.
13. The system of claim 12, wherein the NF set load information generator / collector is configured to calculate the normalized load of the producer NF instance using the following expression: NF n It is the nth producer NF instance that is currently calculating its normalized load, where n is an integer, Load n It is a computational or reporting load and is for producer NF instances. n Calculate LCI and Capacity n It is a producer NF instance NF n Processing capacity.
14. The system of claim 9, comprising a consumer NF, wherein the consumer NF is configured to use NF set load information to select a producer NF set and a producer NF instance to process an SBI request by selecting a first producer NF set having an NF set control information attribute value lower than the NF set load control information attribute value determined for a second producer NF set and selecting a producer NF from the producer NFs in the first producer NF set.
15. The system of claim 14, wherein the producer NF selected from the first NF set has an NF instance load control information attribute value that is higher than the NF instance load control information value for the producer NF in the second producer NF set.
16. A non-transitory computer-readable medium having executable instructions stored thereon, the executable instructions, when executed by a computer's processor, controlling the computer to perform steps including the following: At the Network Function NF Storage Function NRF: Receive NFUpdate messages from the producer NF instance; Collecting or generating NF set load information for NF sets with producer NF instances as members from NFUpdate messages, wherein receiving NFUpdate messages from producer NF instances includes receiving NFUpdate messages including producer NF instance load control information (LCI), and wherein collecting or generating NF set load information includes reading NF instance LCI from NFUpdate messages, calculating NF set LCI based on NF instance LCI, and storing NF set LCI in a database local to the NRF, wherein calculating NF set LCI includes generating a sum using NF instance LCI; Receive NF discovery requests from consumer NF; The NF discovery response is generated using the query parameters in the NF discovery request. The NF discovery response includes the NF profile of the producer NF instance corresponding to the query parameters. The NF discovery response includes NF set load information for the NF set of the producer NF instance included in the NF discovery response, which is used for its NF profile; as well as Forward the NF discovery response, which includes NF set load information, to the consumer NF.
Citation Information
Patent Citations
KR20210023299A