Task responsibility coordination
By using 5G service architecture APIs based on NRF or UDSF, the problem of task responsibility coordination in network function groups is solved, achieving flexibility and reliability in task coordination, supporting geographically distributed deployment, and enhancing integration with 5G APIs.
Patent Information
- Application Number
- CN202080107597.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-30
- Publication Date
- 2025-12-02
- Estimated Expiration
- 2040-09-30
AI Technical Summary
The existing leader election mechanism is not suitable for coordinating task responsibilities within network function groups, resulting in task duplication or non-execution, lack of flexibility and integration with 5G application programming interfaces, inability to operate in geographically separated locations, and reliance on the same infrastructure and security framework.
By leveraging the 5G service architecture API based on NRF or UDSF, a leader election mechanism is provided. The UDSF API and NRF API are used to store task coordination responsibility information, enabling the coordination of NF instances. Customizable leader granularity and scope are supported, and task coordinators are dynamically elected through priority and expiration mechanisms.
It enables flexible coordination of task responsibilities within network function groups, avoids task duplication or omission, supports geographically dispersed deployments, enhances integration with 5G APIs, and improves system reliability and flexibility.
Smart Images

Figure CN116648948B_ABST
Abstract
Description
Technical Field
[0001] Various example embodiments relate to task responsibility coordination. More specifically, various example embodiments exemplarily relate to measures (including methods, apparatus, and computer program products) for achieving task responsibility coordination. Background Technology
[0002] This specification generally addresses the task responsibilities within a group of network functions acting as a redundant system. Equivalent control plane (CP) network function (NF) instances can be deployed as an “NF set” to provide distribution, redundancy, and scalability. Here, an NF set is an example of a group of network functions acting as a redundant system.
[0003] NF instances within an NF set are considered interchangeable because they share the same context data. 5G-AN or 5GC network elements requiring services from an NF set can choose any NF instance within the set to perform the service.
[0004] Figure 7 A schematic diagram illustrating an example of a network functional group acting as a redundant system is shown. Specifically, Figure 7 The diagram illustrates an example of a network function group that serves as a redundant system, comprising a set of multiple NFs (NF instances), and the selection and access of one NF (NF instance) within the set of NFs.
[0005] In 3GPP Release 15, the Access and Mobility Management Function (AMF) supported this concept, and in Release 16, this concept was extended to all NF types that make up the 5G core network.
[0006] Because NFs (NF instances) within an NF set share the same context data, when the corresponding user equipment (UE) is not served by any NF, the context data does not have clear "ownership" (e.g., context for an inactive or idle UE) or the context data is public to all NFs (NF instances) in the NF set (e.g., configuration-related data).
[0007] Ownership is clear when activities are triggered on individual context resources by 5G-AN or 5GC network elements. For example, a 5G-AN or 5GC network element can be a consumer / producer of network functions. In this case, the NF instance selected by the 5G-AN or 5GC network element is responsible for completing the task.
[0008] However, NF (NF instance) must also perform activities that are independent of individual resources and not triggered by 5G-AN or 5GC network elements (such as consumers).
[0009] In this scenario, the NF instance must act as a "delegate" for the NF collection and perform tasks on behalf of the NF collection. Without a delegate / coordination, the same action might be performed multiple times: multiple or all NF instances within the NF collection might repeat the same task.
[0010] - Not executed at all: No NF instance considers itself responsible for completing the task.
[0011] Figure 8 This is a diagram illustrating an example of leader selection within a Network Functional Group (AMF set). Specifically, Figure 8 This section presents example use cases where leader election can be used to achieve coordination at the NF set level. The possibilities outlined above (performing the same action multiple times, performing the same action at all) are illustrated along with the ideal situation ( Figure 8 The upper and middle parts), in which only one NF (NF instance) performs a task at the level of an NF set ( Figure 8 (the lower half).
[0012] Figure 9 This is a schematic diagram illustrating an example scenario where a leader in a network function group chooses to handle a situation.
[0013] Some examples of delegation / coordination within an NF set are:
[0014] -AMF updates Network Slice Selection Function (NSSF) with support for slices in Radio Access Networks (RAN): According to TS 23.501 5.18.8: "One or all AMFs in each AMF set provide and update NSSF with support for S-NSSAIs for each TA".
[0015] - Send a notification for bulk subscription (TS 23.502 4.15.3.2.4),
[0016] -Disable all established Packet Data Unit (PDU) sessions in slices removed from the n Session Management Function (SMF) set, and
[0017] - Clear inactive UEs from the set of AMFs implemented using stateless AMFs that use Unstructured Data Storage Function (UDSF) for backend storage.
[0018] When operations are implemented by a replication / distributed service, leader election is often required. Various leader election mechanisms are available (e.g., Kubernetes, Zookeeper, and Amazon AWS provide such services), however, existing solutions are not suitable for leader selection in NF sets for the following reasons:
[0019] - Infrastructure Dependencies: They require all NFs (NF instances) to be deployed on the same infrastructure and implemented using the same technology (e.g., it is impossible to mix containers and Virtual Network Functions (VNFs) through Kubernetes leader election).
[0020] - Deployment limitations: In many cases, services are only available within the same data center and are not designed to operate in geographically dispersed locations.
[0021] - Requires a separate security framework: Dedicated / manual configuration is needed to control whether only NFs (NF instances) belonging to the NF set can participate in the NF set leader election process, and
[0022] - Lack of integration with 5G application programming interfaces (APIs): Unable to utilize NF status notifications from features such as Network Repository Functions (NRF).
[0023] Therefore, the problem arises in how to flexibly elect task-related leaders for network functional groups that act as redundant systems, without the constraints imposed by any known leader election mechanism available.
[0024] Therefore, it is necessary to provide coordination of task responsibilities. Summary of the Invention
[0025] Various example embodiments are intended to address at least some of the problems and / or questions and disadvantages described above.
[0026] Various aspects of the exemplary embodiments are set forth in the appended claims.
[0027] According to one example aspect, a method for providing a network functional entity is provided, the method comprising: identifying the network functional entity to be added to a network entity composition; obtaining task coordination responsibility information about the network entity composition; analyzing the task coordination responsibility information; and, if the task coordination responsibility information does not define a valid task coordination responsible for a specific task, initiating the addition of the network functional entity as a task coordination responsible for the specific task.
[0028] According to one example aspect, a method is provided for an information management entity to provide task coordination responsibility information, the method comprising: receiving a request for task coordination responsibility information regarding the network entity composition from a network functional entity in a network entity composition, and transmitting the task coordination responsibility information.
[0029] According to one example aspect, an apparatus for a network functional entity is provided, the apparatus comprising: an identification circuit configured to identify adding the network functional entity to a network entity composition; an acquisition circuit configured to acquire task coordination responsibility information regarding the network entity composition; an analysis circuit configured to analyze the task coordination responsibility information; and an initiation circuit configured to: if the task coordination responsibility information does not define a valid task coordination responsible for a specific task, then initiate adding the network functional entity as the task coordination responsible for the specific task.
[0030] According to one example aspect, an apparatus is provided for an information management entity that provides task coordination responsibility information, the apparatus comprising: a receiving circuit configured to receive a request for task coordination responsibility information regarding the network entity configuration from a network functional entity in the network entity configuration, and a transmitting circuit configured to transmit the task coordination responsibility information.
[0031] According to one example aspect, an apparatus for a network functional entity is provided, the apparatus including at least one processor, at least one memory including computer program code, and at least one interface configured to communicate with at least one other apparatus, the at least one processor, together with the at least one memory and the computer program code, being configured to cause the apparatus to perform: identifying adding the network functional entity to a network entity composition, obtaining task coordination responsibility information about the network entity composition, analyzing the task coordination responsibility information, and, if the task coordination responsibility information does not define a valid task coordination responsible for a specific task, initiating the addition of the network functional entity as the task coordination responsible for the specific task.
[0032] According to one example aspect, an apparatus is provided for an information management entity that provides task coordination responsibility information. The apparatus includes at least one processor, at least one memory including computer program code, and at least one interface configured to communicate with at least one other apparatus. The at least one processor, together with the at least one memory and the computer program code, is configured to cause the apparatus to perform: receiving a request for task coordination responsibility information regarding the network entity configuration from a network functional entity in the network entity configuration, and transmitting the task coordination responsibility information.
[0033] According to one example aspect, a computer program product including computer-executable computer program code is provided, which, when run on a computer (e.g., a computer of an apparatus related to any of the foregoing apparatus-related exemplary aspects of this disclosure), is configured to cause the computer to perform a method according to any of the foregoing method-related exemplary aspects of this disclosure.
[0034] Such computer program products may include (or embody) (tangible) computer-readable (storage) media, etc., on which computer-executable computer program code is stored, and / or the program may be directly loaded into the internal memory of the computer or its processor.
[0035] Any of the above aspects can effectively elect a task-related leader for a network functional group that acts as a redundant system, thereby addressing at least in part the problems and deficiencies identified in relation to the prior art.
[0036] As an example embodiment, task responsibility coordination is provided. More specifically, through preferred embodiments, measures and mechanisms for achieving task responsibility coordination are provided.
[0037] Therefore, improvements have been achieved through methods, apparatuses, and computer program products for realizing / completing task responsibility coordination. Attached Figure Description
[0038] In the following, the present disclosure will be described in more detail by way of non-limiting example with reference to the accompanying drawings, wherein
[0039] Figure 1 This is a block diagram illustrating an apparatus according to an example embodiment.
[0040] Figure 2 This is a block diagram illustrating an apparatus according to an example embodiment.
[0041] Figure 3 This is a block diagram illustrating an apparatus according to an example embodiment.
[0042] Figure 4 This is a block diagram illustrating an apparatus according to an example embodiment.
[0043] Figure 5 This is a schematic diagram of a process according to an example embodiment.
[0044] Figure 6 This is a schematic diagram of a process according to an example embodiment.
[0045] Figure 7 A schematic diagram illustrating an example of a network function group acting as a redundant system is shown.
[0046] Figure 8 This is a diagram illustrating an example of leader selection within a Network Functional Group (AMF set).
[0047] Figure 9 This is a diagram illustrating an example of leader selection and processing within a network function group.
[0048] Figure 10 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0049] Figure 11 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0050] Figure 12 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0051] Figure 13 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0052] Figure 14 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0053] Figure 15 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0054] Figure 16 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0055] Figure 17 A schematic diagram of a signaling sequence according to an example embodiment is shown, and
[0056] Figure 18 The diagram alternatively illustrates a block diagram of an apparatus according to an example embodiment. Detailed Implementation
[0057] This disclosure is described herein with reference to specific, non-limiting examples and embodiments that are presently considered conceivable. Those skilled in the art will understand that this disclosure is by no means limited to these examples, but can be applied more broadly.
[0058] It should be noted that the following description of this disclosure and its embodiments primarily refers to specifications used as non-limiting examples of certain exemplary network configurations and deployments. That is, this disclosure and its embodiments are primarily described with respect to 3GPP specifications used as non-limiting examples of certain exemplary network configurations and deployments. Therefore, the description of the exemplary embodiments given herein specifically refers to terms directly related to them. Such terms are used only in the context of the presented non-limiting examples and naturally do not limit this disclosure in any way. Conversely, any other communication or communication-related system deployments, etc., may be utilized, as long as they conform to the characteristics described herein.
[0059] In the following, various embodiments and implementations of this disclosure, as well as aspects or embodiments thereof, are described using several variations and / or alternatives. It should be noted that, depending on certain needs and limitations, all described variations and / or alternatives may be provided individually or in any conceivable combination (including combinations of individual features of the various variations and / or alternatives).
[0060] According to the example embodiments, measures and mechanisms are generally provided for coordinating (implementation / completion) task responsibilities.
[0061] In summary, based on the example implementation, a leader election mechanism is provided based on an architecture API using NRF or UDSF-based 5G services.
[0062] Figure 1 This is a block diagram illustrating an apparatus according to an example embodiment. The apparatus may be a network functional entity 10, including an identification circuit 11, an acquisition circuit 12, an analysis circuit 13, and an initiation circuit 14. The identification circuit 11 identifies the network functional entity to be added to a network entity configuration. The acquisition circuit 12 acquires task coordination responsibility information regarding the network entity configuration. The analysis circuit 13 analyzes the task coordination responsibility information. If the task coordination responsibility information does not define a valid task coordinator responsible for a specific task, the initiation circuit 14 initiates the addition of the network functional entity as the task coordinator responsible for that specific task. Figure 5 This is a schematic diagram of a process according to an example embodiment. According to Figure 1 The device can perform Figure 5 The method is not limited to this method. Figure 5 The method can be derived from Figure 1 The device performs, but is not limited to, the execution by that device.
[0063] like Figure 5 As shown, the process according to the example embodiment includes an operation of identifying (S51) adding the network function entity to the network entity composition, an operation of obtaining (S52) task coordination responsibility information about the network entity composition, an operation of analyzing (S53) the task coordination responsibility information, and an operation of initiating (S54) adding the network function entity as the task coordination responsible for the specific task if the task coordination responsibility information does not define a valid task coordination responsible for a specific task.
[0064] Figure 2 This is a block diagram illustrating an apparatus according to an example embodiment. Specifically, Figure 2 The diagram shows Figure 1 A variation of the device shown. Therefore, according to Figure 2 The device may also include a transmitting circuit 21, a comparing circuit 22, a determining circuit 23 and / or a receiving circuit 24.
[0065] In an embodiment, Figure 1 (or Figure 2 At least some of the functionality of the apparatus shown in the diagram can be shared between two physically separate devices forming an operational entity. Therefore, the apparatus can be considered as depicting an operational entity comprising one or more physically separate devices for performing at least some of the described processes.
[0066] according to Figure 5 The variations of the process shown provide exemplary details of the initiation operation (S54), which are essentially independent of each other. Such an exemplary initiation operation (S54) according to the example embodiment may include the transmission of a new task coordination responsibility information record, which includes information about the specific task and an identifier of the network function entity.
[0067] According to another example embodiment, the new task coordination responsibility information record is sent to the unstructured data storage function entity.
[0068] Alternatively, according to a further example embodiment, the new task coordination responsibility information record is sent to the network repository functional entity.
[0069] according to Figure 5 The variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to this variation, an exemplary method according to an example embodiment may include the following operations: if the task coordination responsibility information defines a valid task coordination responsible for the specific task, then comparing the priority of the task coordination responsible for the specific task with the priority of the network function entity for the specific task; and if the priority of the network function entity for the specific task is higher than the priority of the task coordination responsible for the specific task, then initiating the replacement of the task coordination responsible for the specific task by the network function entity as a new task coordination responsible for the specific task.
[0070] according to Figure 5 The variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to this variation, an exemplary method according to an example embodiment may include the following operations: if the task coordination responsibility information defines a valid task coordination responsible for the specific task, then comparing information regarding the expiration of the task coordination responsibility of the task coordination responsible for the specific task with the current point in time; and if the information regarding the expiration of the task coordination responsibility of the task coordination responsible for the specific task indicates that the task coordination responsibility of the task coordination responsible for the specific task expires at the current point in time, then initiating the replacement of the task coordination responsible for the specific task by the network function entity as a new task coordination responsible for the specific task.
[0071] according to Figure 5Variations of the process shown provide exemplary additional operations that are essentially independent of each other. According to such a variation, an exemplary method according to an example embodiment may include: determining the availability of the task coordination responsible for the specific task; and if the task coordination responsible for the specific task is determined to be unavailable, initiating an operation to have the network functional entity replace the task coordination responsible for the specific task as a new task coordination responsible for the specific task.
[0072] according to Figure 5 Variations of the process shown provide exemplary details of initiating an operation (initiating the replacement), which are essentially independent of each other. Such an exemplary initiation operation (initiating the replacement) according to an example embodiment may include: sending an operation to update a task coordination responsibility information record, which includes information about the specific task and an identifier of the network function entity.
[0073] According to a further example embodiment, the update task coordination responsibility information record is sent to the unstructured data storage function entity.
[0074] Alternatively, according to a further example embodiment, the update task coordination responsibility information record is transmitted to the network repository functional entity.
[0075] according to Figure 5 Variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to such a variation, an exemplary method according to an example embodiment may include sending an instruction to the task coordinator responsible for the specific task to replace the task coordinator responsible for the specific task with the new task coordinator responsible for the specific task.
[0076] according to Figure 5 Variations of the process shown provide exemplary additional operations that are essentially independent of each other. According to such a variation, an exemplary method according to an example embodiment may include receiving information about changes in task coordination responsibilities for the specific task from a network repository functional entity or an unstructured data storage entity.
[0077] according to Figure 5 The variation of the process shown provides exemplary additional operations, which are essentially independent of each other. According to this variation, the network functional entity has been registered as a task coordinator responsible for a first task, and the exemplary method according to the example embodiment may include receiving an instruction from a new task coordinator responsible for the first task, indicating that the network functional entity replaces the new task coordinator responsible for the first task as the new task coordinator responsible for the first task.
[0078] According to a further example embodiment, the task coordination responsibility information specific to a particular task includes at least information about the particular task, an identifier for the task coordination responsible for the particular task, the priority of the task coordination responsible for the particular task, information about the expiration of the task coordination responsibility responsible for the particular task, and a Uniform Resource Identifier for the task coordination responsible for the particular task.
[0079] According to a further example embodiment, the network entity constitutes one of a network function set, a network function service set, and a network function group that acts as a redundant system.
[0080] Figure 3 This is a block diagram illustrating an apparatus according to an example embodiment. The apparatus may be an information management entity 30 (providing task coordination responsibility information), such as an unstructured data storage function entity or a network repository function entity, and includes a receiving circuit 31 and a transmitting circuit 32. The receiving circuit 31 receives a request for task coordination responsibility information regarding the network entity configuration from a network function entity within the network entity configuration. The transmitting circuit 32 transmits the task coordination responsibility information. Figure 6 This is a schematic diagram of a process according to an example embodiment. According to Figure 3 The device can perform Figure 6 The method is not limited to this method. Figure 6 The method can be derived from Figure 3 The device performs, but is not limited to, the execution by that device.
[0081] like Figure 6 As shown, the process according to the example embodiment includes: receiving (S61) a request for task coordination responsibility information regarding the network entity composition from a network functional entity in the network entity composition, and sending (S62) the task coordination responsibility information.
[0082] Figure 4 This is a block diagram illustrating an apparatus according to an example embodiment. Specifically, Figure 4 The diagram shows Figure 3 A variation of the device shown. Therefore, according to Figure 4 The device may also include a storage circuit 41 and / or a replacement circuit 42.
[0083] In one embodiment, Figure 3 (or Figure 4 At least some of the functionality of the apparatus shown in the diagram can be shared between two physically separate devices forming an operational entity. Therefore, the apparatus can be considered as depicting an operational entity comprising one or more physically separate devices for performing at least some of the described processes.
[0084] according to Figure 6Variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to this variation, an exemplary method according to an example embodiment may include: receiving a new task coordination responsibility information record, the new task coordination responsibility information record including information about a specific task and an identifier of the network functional entity; and storing the new task coordination responsibility information record into the task coordination responsibility information.
[0085] according to Figure 6 Variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to this variation, an exemplary method according to an example embodiment may include: receiving an updated task coordination responsibility information record, the updated task coordination responsibility information record including information about a specific task and an identifier of the network functional entity; and replacing a previously valid task coordination responsibility information record for the specific task with the updated task coordination responsibility information record in the task coordination responsibility information.
[0086] according to Figure 6 Variations of the process shown provide exemplary additional operations, which are essentially independent of each other. According to such variations, an exemplary method based on an example embodiment may include operations for transmitting information regarding changes in task coordination responsibilities for the specific task.
[0087] According to another example embodiment, the information management entity is an unstructured data storage functional entity.
[0088] Alternatively, according to another example embodiment, the information management entity is a web repository functional entity.
[0089] According to another example embodiment, the task coordination responsibility information specific to a particular task includes at least information about the particular task, an identifier for the task coordination responsible for the particular task, the priority of the task coordination responsible for the particular task, information about the expiration of the task coordination responsibility responsible for the particular task, and a Uniform Resource Identifier for the task coordination responsible for the particular task.
[0090] According to another example embodiment, the network entity constitutes one of a network function set, a network function service set, and a network function group that acts as a redundant system.
[0091] More specifically, according to the example implementation, the coordination of NF instances in an NF set is facilitated through a "leader election" mechanism based on the 3GPP 5GC API.
[0092] It is important to note here that the example embodiments are described using NF sets and NF instances as examples only. However, the concepts described can also be applied to NF service sets and NF groups or any other implementation that deploys multiple NFs (NF instances) to establish system redundancy, i.e., network function groups that act as redundant systems (e.g., if the Authentication Server Function (AUSF) is deployed to support the NG group concept, then the AUSF instances in the AUSF group can utilize this concept to perform leader selection).
[0093] According to the example embodiment, a leader election mechanism can be used to nominate NF instances that will coordinate the execution of certain tasks, which are not triggered by 5G-AN or 5GC network elements (e.g., consumers) acting on individual resources. For example, a 5G-AN or 5GC network element can be a consumer / producer of network functions. If such a consumer / producer is mentioned in this specification (e.g., as some kind of actor), the mention is considered merely illustrative, and the concept applies to 5G-AN or 5GC network elements (e.g., generally, as some kind of actor).
[0094] Therefore, according to the example implementation, customizable leader granularity and scope are supported:
[0095] - An elected leader can perform tasks but does not need to perform tasks (e.g., a leader can delegate some actions to other NF instances in the NF set in the case of a large-scale event).
[0096] - NF sets can have different NFs (NF instances) elected as leaders for different tasks (e.g., one AMF instance in the AMF set can be delegated to update the NSSF for RAN / slice changes, while another AMF instance in the AMF set can be responsible for coordinating the UE purge process).
[0097] The example implementation is based on the UDSF API.
[0098] Further example implementations are based on the NRF API.
[0099] In the following text, example implementations based on the UDSF API will be described using the more specific terminology (UDSF-based leader selection).
[0100] According to the example implementation, UDSF-based leader election is based on the Nudsf_DataRepository API specified in version 16TS 29.598.
[0101] According to the example embodiment, the data model related to UDSF-based leader election is as follows:
[0102] -NF set leadership information is stored in the "Label" field of the RecordMeta information element (IE) under a predefined resource in UDSF, such as "realmId / storageId(nfSetID) / records / {nfSetLeaderTaskMap} / meta".
[0103] - Leadership information is stored in a tab IE that serves as a mapping. The tab name is a concatenation of the task name and task attributes. According to the example embodiment, each task has the following attributes:
[0104] - Leader UUID: Used to check overall NF availability or service URI via NRF (e.g., for request forwarding).
[0105] -Still-lead-CallbackURI: Published to check the validity of leadership or negotiate the transfer of leadership between NFs (NF instances); this attribute is only required if UDSF does not support data change notifications, otherwise its presence is optional.
[0106] - Priority: Indicates the current leader's priority and is used to determine whether an NF (NF instance) should attempt to reclaim leadership for this task.
[0107] -Expires: Indicates when the current leadership expires.
[0108] According to an alternative example embodiment, a separate RecordId is defined for each task name and includes only task attributes as keywords.
[0109] The RecordMeta IE is defined in TS 29.598 as follows (Table 6.1.6.2.3-1: Definition of Type RecordMeta)
[0110]
[0111] According to an example embodiment, the leader election process is performed as follows.
[0112] When an NF instance is added to an NF collection, the NF instance reads the nfSetLeaderTaskMap from the UDSF at a predefined location.
[0113] If no record is stored, the unique (new) NF instance is regarded as the leader by default, and the NF instance creates a record and adds itself as the leader of all tasks.
[0114] According to the example embodiment, the priority and expiration duration set for each task by each NF instance are pre-configured (e.g., via Operations, Administration and Maintenance (OAM)).
[0115] If a record exists, according to the example embodiment, the NF instance compares the priority stored in the record with its own priority for each task.
[0116] If NF instances have the same or lower priority, the existing leader of the task will retain task leadership.
[0117] On the other hand, if the NF instance has a higher priority, the NF instance updates the task leader. In this case, if UDSF does not support data change notifications (Alternative 1), the NF instance (the new leader of the task) sends a message to the old leader's Still-lead-Callback URI to update ownership (i.e., elects itself as leader and notifies the old leader of its demotion). Alternatively, in this case, if UDSF supports data change notifications (Alternative 2), UDSF can notify all consumer NFs (NF instances) subscribed to nfSetLeaderTaskMap of the data change notification regarding the new task leader by communicating the new nfSetLeaderTaskMap.
[0118] According to the example implementation, when an NF instance is no longer available (i.e., due to planned or unplanned failure), the NFs (NF instances) in the NF set can be notified by the NRF.
[0119] When an NF (NF instance) (e.g., via NRF) realizes that the current task leader is no longer available, according to an example embodiment, the NF (NF instance) attempts to gain leadership.
[0120] When the current leader relinquishes leadership of a task, if the UDSF does not support data change notifications, the current leader can notify the other remaining NFs (NF instances) in the NF set to allow them to gain leadership of the corresponding task. According to the example embodiment, this optional step can be implemented by announcing the callback URI in the default notification URI in the NF configuration file. Otherwise, when the current leader relinquishes leadership of a task, and if the UDSF supports data change notifications, the UDSF can notify all consumer NFs (NF instances) subscribed to `nfSetLeaderTaskMap` about the new task leader's data change notification by communicating the new `nfSetLeaderTaskMap`.
[0121] In the event that multiple NFs (NF instances) attempt to gain leadership of a task, a conflict resolution mechanism based on the Still-Lead-CallbackURI and eTag HTTP header is used, according to the example embodiment. If the current task leader, which is no longer leading the task for any reason, receives a request in the Still-Lead-CallbackURI, the current task leader responds with a "404 Not Found" error, according to the example embodiment.
[0122] According to the example embodiment, the expired leader label is processed as follows.
[0123] If an NF instance is currently the leader of a task and wants to retain leadership for a task that is about to expire, the current leader must extend the "expiration" by updating the relevant label in nfSetLeaderTaskMap.
[0124] In addition, whenever the leadership of a task expires, non-leader NF instances poll the UDSF. If the "expired" field indicates that the leadership has expired, the NF instance attempts to acquire leadership.
[0125] In the following text, example implementations based on the NRF API will be described using the more specific terminology (NRF-based leader selection).
[0126] NRF-based leader election is based on the NnrF API specified in version 16TS 29.510 and is extended through the NF collection configuration file.
[0127] An NF set configuration file, or more generally, a network entity composition configuration file, is a registered configuration file that can contain attributes valid for all members of a network entity composition (e.g., an NF set). Thus, (public) attributes of a network entity configuration file (e.g., an NF configuration file) can be outsourced to a network entity composition configuration file (e.g., an NF set configuration file).
[0128] According to the example embodiment, a network entity composition profile (e.g., an NF set profile) is identified by a network entity composition profile identifier (e.g., an NF set profile ID), and the attribution of a network entity (e.g., an NF instance) to a network entity composition (e.g., an NF set) can be specified as follows: the network entity profile (e.g., an NF profile) references the corresponding network entity composition profile identifier (e.g., an NF set profile ID).
[0129] According to the example embodiment, in order to reduce the parameters of the NF profile for each NF instance, an NF set can be created separately and registered in the NRF via OAM or one of the NF instances. When an NF (NF instance) is initially added to the NF set, the NF (instance) reads the nfSetLeaderTaskMapIE from the nfSet profile (NF set profile) to which the NF (instance) belongs.
[0130] According to the example embodiment, the data model related to NRF-based leader election is as follows:
[0131] The -NF collection configuration file includes nfSetLeaderTaskMap IE, where the task name is the keyword and contains the following values:
[0132] - Leader UUID: Used to check the overall availability of the NF (NF instance) or the service URI via NRF (e.g., for request forwarding).
[0133] -Still-lead-CallbackURI: Used to check the validity of leadership.
[0134] - Priority: Indicates the current leader's priority and is used to determine whether an NF (NF instance) should attempt to reclaim leadership for this task.
[0135] -Expires: Indicates when the leadership expires.
[0136] According to an example embodiment, the leader election process is performed as follows.
[0137] When an NF (NF instance) is initially added to the NF collection, the NF (instance) reads the nfSetLeaderTaskMap IE from the nfSet configuration file to which the NF (instance) belongs.
[0138] If no NF collection configuration file exists, the unique (new) NF instance is treated as the leader by default, and the NF instance creates a record and sets itself as the leader of all tasks.
[0139] If the NF set configuration file already exists, the NF instance compares the task priorities stored in nfSetLeaderTaskMap with its own per-task priorities. According to the example embodiment, the priorities and expiration durations set for each task by each NF are pre-configured within the NF instance (e.g., provided via OAM).
[0140] If NFs (instances) have the same or lower priority, the existing leader of the task remains.
[0141] If an NF (instance) has a higher priority, the NF instance issues an NFUpdate request to the NRF to update the nfSetLeaderTaskMap in the NF collection configuration file so that it sets itself as the leader of the task.
[0142] According to the example embodiment, the NRF notifies other NFs (NF instances) in the NF set about updates to the NFSetProfile (in a similar manner to how it notifies any other NFProfile updates). According to the example embodiment, all NFs (NF instances) in the NF set subscribe to the NRF to update about state changes to the NF set profile or NFs (NF instances) within the set.
[0143] According to a further example embodiment, all NFs (NF instances) subscribe to the NRF to receive notifications about changes to the NF collection configuration file. When an NF instance becomes unavailable (i.e., due to a planned or unplanned failure), the NFs (NF instances) in the NF collection can be notified by the NRF.
[0144] When an NF (NF instance) realizes that the current NF task leader is no longer available or the NF collection profile indicates that (multiple) NFs ((multiple) NF instances) have a higher priority than the stored leader, according to the example embodiment, (multiple) NFs ((multiple) NF instances) attempt to acquire leadership.
[0145] According to the example implementation, when multiple NFs (NF instances) attempt to gain leadership simultaneously, the eTag header is used to resolve conflict handling.
[0146] According to the example implementation, for instance, if the standard NRF-based configuration file update mechanism is deemed insufficiently responsive to the time criticality of a task, then the "still-lead-check-URI" can be directly used as an optional supplementary "leadership heartbeat" mechanism between NFs (NF instances). The heartbeat cycle may differ for each task.
[0147] According to a further example embodiment, if the current owner no longer leads the task for any reason, the current owner responds with a "404 Not Found" (e.g., by contacting via the Still-Lead-Callback URI).
[0148] As mentioned above, the example implementation has been described using an example scenario of NF sets. However, based on the example implementation, the disclosed concepts can also be applied to any other implementation of NF service sets and NF groups or deploying multiple NFs (NF instances) to make the system redundant (e.g., if AUSF is deployed to support the NG group concept, then the AUSF instances in the AUSF group can use this concept to perform leader selection).
[0149] The following section describes a sample implementation based on the UDSF API (UDSF-based Leader Selection) in more detail.
[0150] When an NF instance is initially added to an NF collection, according to the example embodiment, the NF instance obtains an nfSetLeaderTaskMap from the UDSF. The task map is stored in a predefined location within the RecordMeta tag IE of the records (e.g., realmId / storageId(nfSetID) / records / {nfSetLeaderTaskMap}).
[0151] If NF(instance) is the first NF(NF instance) added to the NF set and does not store nfSetLeaderTaskMap, according to the example embodiment, the NF(NF instance) creates a record to set itself as the leader NF(NF instance) for all tasks so that it can be retrieved by NF instances that will subsequently be added to the NF set.
[0152] For example, if an NF set has two tasks, one named "purgeUe" and the other named "smfFail", and leader election is required for them, according to the example embodiment, the nfSetLeaderTaskMapRecordMeta tag IE can be set as follows: map:
[0153] purgeUe-LeaderUUID:['123e4567-e89b-12d3-a456-426614174000']
[0154] purgeUe-StillLeadCallbackURI:
[0155] ['https: / / / www.exmaple.com / purgeUe']
[0156] purgeUe-Priority:['4']
[0157] purgeUe-Expires:['2020-09-06T00:03:04+02:00']
[0158] smfFail-LeaderUUID:['123e4567-e89b-12d3-a456-426614174000']smfFail-StillLeadCallbackURI:['https: / / / www.exmaple.com / smf']smfFail-Priority:['5']
[0159] smfFail-Expires:['2020-09-06T00:01:03+02:00']
[0160] When NF—NF 1 to NF 3—is mentioned below, these will be considered as NF instances, and in particular as NF instances that belong to the same NF set at least when entering the NF set.
[0161] Figure 10 A schematic diagram of a signaling sequence according to an example embodiment is shown. Specifically, Figure 10 This document presents a sample call flow for obtaining and storing the leadership RecordMeta for NF instances belonging to the NF set in UDSF.
[0162] like Figure 10 As shown, NF (NF 1) retrieves nfSetLeaderTaskMap from UDSF (GET request), and this request responds with "404 Not found" (if nfSetLeaderTaskMap is not stored).
[0163] Therefore, NF 1 adds itself as the leader of the tasks “smfFailure” and “purgeUe” [“purgeUEs”] (PUT requests).
[0164] Once another NF (NF 2) requests nfSetLeaderTaskMap from UDSF, NF 2 will be provided with the current leader entry.
[0165] If the task leader has expired or the NF instance has a higher priority for one or more tasks, according to the example implementation, the NF instance updates the relevant tags in the RecordMeta of nfSetLeaderTaskMap in UDSF.
[0166] According to the example implementation, if UDSF does not support data change notifications, the NF instance notifies the previous task leader of the change in leadership ownership by sending a relevant request to the Still-lead-Callback URI. If UDSF supports data change notifications, then UDSF will notify all subscribed network entities accordingly.
[0167] Note that, according to the example implementation, if UDSF does not support data change notifications, other NFs (NF instances) in the NF set do not need to be notified of the leadership change at this stage. Other NFs (NF instances) in the NF set will be automatically notified to refresh the leadership data (based on the expiration attribute) when they poll the UDSF.
[0168] Figure 11 A schematic diagram of a signaling sequence according to an example embodiment is shown. Specifically, Figure 11 The above-described example call flow is provided.
[0169] like Figure 11 As shown, once NF 2 realizes that it has a higher priority than the current leader of the "purgeUe" task, NF 2 will initiate an update (PATCH request) for the "purgeUe" task at UDSF.
[0170] Furthermore, if UDSF does not support data change notifications (Alternative 1), NF 2 contacts the former task leader (NF 1) and notifies it of the change in leadership (deletion request). Otherwise, if UDSF supports data change notifications (Alternative 2), UDSF can notify all consumer NFs (NF instances) subscribed to nfSetLeaderTaskMap of the data change notification regarding the new task leader by communicating the new nfSetLeaderTaskMap.
[0171] According to the example embodiment, where UDSF does not support data change notifications, optionally, all NFs (NF instances) in the NF set can be registered to a callback URI in the NRF to receive notifications. The URI can be added to the NF configuration file as a DefaultNotificationSubscription, using, for example, a new notification type (e.g., "NF_SET_TASK_LEADER_CHANGE_NOTIFICATION"), as shown in the third table below.
[0172] The following three tables represent the definitions of type NFProfile (the first table below: Table 6.2.6.2.3-1: Definition of type NFProfile (NF Profile)) according to TS 29.510, the definition of type DefaultNotificationSubscription (the second table below: Table 6.1.6.2.4-1: Definition of type DefaultNotificationSubscription (Default Notification Subscription)), and the definition of enumeration notification type (the third table below: Table 6.1.6.3.4-1: Enumeration NotificationType) (Note: For clarity, only a subset of the fields “NotificationType”, “NFProfile”, and “DefaultNotificationSubscription” as defined in TS 29.510 are shown).
[0173]
[0174]
[0175]
[0176]
[0177] If an NF instance in an NF set realizes that the NF instance that is the leader is no longer available, the NF instance will attempt to take over the leadership, regardless of whether the NF instance has a lower priority than the current leader.
[0178] Figure 12 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0179] like Figure 12 As shown, once NF 2 identifies that NF 1 is unavailable, according to the example embodiment, NF 2 uses UDSF to check whether NF 1 is the leader of any task (GET request).
[0180] NF 2 is notified of the current entry. Based on this, NF 2 recognizes that NF 1 is still the leader of the task "smfFailure".
[0181] In response, according to the example embodiment, NF 2 acquires ownership of the task “smfFailure” regardless of its lower priority; that is, NF 2 initiates an update (PATCH request) for the “smfFailure” task at UDSF.
[0182] According to the example embodiment, conflict resolution when multiple NFs (NF instances) attempt to acquire leadership for the same task is achieved using an eTag. Whenever leadership for a task expires, the NFs (NF instances) in the NF set poll the UDSF to obtain the latest NF set leader information, such as... Figure 13 As shown, it illustrates a schematic diagram of a signaling sequence according to an example embodiment.
[0183] like Figure 13 As shown, once NF 3 identifies that NF 1 is unavailable, according to the example embodiment, NF 3 also checks with UDSF whether NF 1 is the leader of any task (GET request).
[0184] Since the task “smfFailure” has been taken over by NF 2, the response from UDSF indicates that no task is led by NF 1 (therefore no further update is needed unless NF 3 has a higher priority for the task than NF 2).
[0185] After the "Expiration" tag of "smfFailure" expires, NF 3 refreshes the leadership data (GET request).
[0186] Note that if the leader election implementation according to the example embodiment chooses not to use the option of broadcasting the acquisition of leadership to all NFs (NF instances) in the set (e.g., if UDSF does not support data change notifications and the callback URI is not added to the configuration file in the NRF, as explained above), once an NF (NF instance) acquires leadership of a task, it cannot pass leadership to another NF (NF instance) before its expiration, because only the callback URI / priority of the task leader is known to all NFs (NF instances). This is taken into account at deployment time when an appropriate expiration duration is defined for each task leadership according to the example embodiment.
[0187] The following section describes a sample implementation based on the NRF API (NRF-based leader selection) in more detail.
[0188] When an NF instance is initially added to an NF collection, the NF instance obtains an nfSetLeaderTaskMap from the NRF. According to the example embodiment, the task map is stored in the NF collection configuration file.
[0189] If the NF instance is the first NF instance added to the NF set and nfSetLeaderTaskMap is not stored, then the NF instance creates a record to set itself as the leader NF instance for all tasks, so that it can be retrieved by NF instances that will be subsequently added to the NF set.
[0190] Figure 14 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0191] like Figure 14 As shown, NF (NF 1) retrieves nfSetLeaderTaskMap from NRF (GET request), and this request responds with "404 Not found" (if nfSetLeaderTaskMap is not stored).
[0192] Therefore, NF 1 adds itself as the leader (PUT request) of the tasks “smfFailure” and “purgeUe” [“purgeUEs”].
[0193] Once another NF (NF 2) requests nfSetLeaderTaskMap from NRF, NF 2 will be provided with the current leader entry.
[0194] If an NF instance has a higher priority for a task than the current task leader, it updates the relevant task in the nfSetLeaderTaskMap. According to the example embodiment, NRF notifies other NF instances in the NF set of the leadership change accordingly by sending a new NF set profile.
[0195] Figure 15 A schematic diagram of a signaling sequence according to an example embodiment is shown. Specifically, Figure 15 The above process is illustrated in the diagram.
[0196] like Figure 15 As shown, once NF2 realizes that it has a higher priority than the current leader of the "purgeUe" task, NF2 will initiate an update (PATCH request) for the "purgeUe" task at the NRF.
[0197] In addition, NRF notifies other NF instances (NF 1, NF 3) of the leadership change via a new NFSetProfile (POST request).
[0198] NFs (NF instances) in an NF set can detect the loss of availability of an NF (NF instance) as a task leader via NRF status notifications or by directly polling the task leader callback URI. If an NF instance in the NF set realizes that the NF instance as leader is no longer available, the aware NF instance will attempt to acquire leadership, regardless of whether it has a lower priority than the current leader. According to the example embodiment, before attempting to do so, the aware NF instance may check whether another NF (NF instance) has already managed to acquire leadership.
[0199] Figure 16 A schematic diagram of a signaling sequence according to an example embodiment is shown. Specifically, Figure 16 The above process is illustrated in the diagram.
[0200] like Figure 16 As shown, NF 2 (and NF 3) may become aware that NF 1 is unavailable via notification from the NRF or by pinging the task leader (NF 1).
[0201] According to the example embodiment, once NF 2 recognizes that NF 1 is unavailable, NF 2 may optionally refresh the configuration file before attempting to acquire leader ownership.
[0202] According to the example embodiment, if an optional refresh reveals the existence of an unleaded task, or if the configuration file is not refreshed, NF 2 acquires ownership of the task "smfFailure" regardless of its lower priority; that is, NF 2 initiates an update (PATCH request) for the "smfFailure" task at the NRF.
[0203] Figure 17 A schematic diagram of a signaling sequence according to an example embodiment is shown.
[0204] like Figure 17 As shown, once NF3 identifies that NF1 is unavailable, according to the example embodiment, NF3 also uses NRF to check whether NF1 is the leader of any task (GET request).
[0205] Since the task “smfFailure” has been taken over by NF 2, the response from the NRF indicates that no task is led by NF 1 (therefore no further update is needed unless NF 3 has a higher priority for the task than NF 2).
[0206] According to the example embodiment, the benefits of NF sets are advantageously retained, while additional efficient mechanisms are introduced to perform tasks that are common to all NFs (NF instances) within the NF set.
[0207] Furthermore, according to the example implementation, advantageously, 3GPP NF (NF instance) and API are used, and thus the existing security and availability framework is reused.
[0208] Furthermore, according to the example embodiment, the standard 3GPP API is advantageously used, which allows for multi-vendor implementations (e.g., UDSF / NRF and NF (NF instance) within an NF set can come from different vendors).
[0209] Furthermore, according to the example embodiment, it is advantageous to support customizable leader scope granularity and leader failure detection time to accommodate a variety of use cases.
[0210] Furthermore, advantageously, the example implementations are infrastructure-independent (e.g., Kubernetes, Zookeeper, Amazon AWS, etc.).
[0211] Furthermore, advantageously, example implementations related to UDSF can be implemented without adding to the existing version 16 UDSF API.
[0212] Furthermore, advantageously, example embodiments related to NRF can be used as a standard for leadership election in multi-vendor NF set implementations, and can be supported even if the deployment does not include UDSF.
[0213] Furthermore, advantageously, at least the example embodiments related to NRF can also be extended to support common tasks for all NFs (NF instances) within a specific group (e.g., in the case of Unified Data Management (UDM), Unified Data Repository (UDR), or AUSF groups). The above processes and functions can be implemented by corresponding functional elements, processors, etc., as described below.
[0214] In the above exemplary description of network entities, only functional blocks are used to describe units relevant to understanding the principles of this disclosure. A network entity may include other units necessary for its respective operation. However, descriptions of these units are omitted in this specification. The arrangement of functional blocks of the device is not to be construed as limiting this disclosure, and functions may be performed by a single block or further subdivided into sub-blocks.
[0215] When a device (i.e., a network entity (or some other component)) is described in the foregoing as being configured to perform certain functions, this will be interpreted as equivalent to a description stating that a processor (i.e., at least one) or corresponding circuitry may be configured, in cooperation with computer program code stored in the memory of the respective device, to cause the device to perform at least the functions mentioned herein. Furthermore, such functions should be interpreted as being equivalent to those implemented by specially configured circuitry or components for performing the corresponding functions (i.e., the expression "a unit configured as..." is interpreted as equivalent to expressions such as "a component for...").
[0216] exist Figure 18 Alternate illustrations of a device according to an example embodiment are depicted. Figure 18As indicated in the exemplary embodiment, device (network node / network function entity) 10' (corresponding to network function entity 10) includes a processor 181, a memory 182, and an interface 183, which are connected via a bus 184, etc. Further, according to an example embodiment, device (network node / information management entity) 30' (corresponding to information management entity 30) includes a processor 185, a memory 186, and an interface 187, which are connected via a bus 188, etc., and these devices can be connected via links 189 respectively.
[0217] Processors 181 / 185 and / or interfaces 183 / 187 may also include modems, etc., to facilitate communication over (hardwired or wireless) links, respectively. Interfaces 183 / 187 may include suitable transceivers coupled to one or more antennas or communication components for (hardwired or wireless) communication with linked or connected devices, respectively. Interfaces 183 / 187 are typically configured to communicate with at least one other device, i.e., its interface.
[0218] The memory 182 / 186 may store a corresponding program, which is assumed to include program instructions or computer program code, and when executed by the corresponding processor, the corresponding electronic device or apparatus is able to operate according to the example embodiment.
[0219] Generally speaking, a corresponding device / apparatus (and / or part thereof) may refer to a component for performing a corresponding operation and / or demonstrating a corresponding function, and / or a corresponding device (and / or part thereof) may have a function for performing a corresponding operation and / or demonstrating a corresponding function.
[0220] When a processor (or some other component) is described in the following description as being configured to perform certain functions, this will be interpreted as equivalent to a description stating that at least one processor may be configured, in cooperation with computer program code stored in the memory of the respective device, to cause the device to perform at least the functions mentioned herein. Furthermore, such functions should be interpreted as being equivalent to those implemented by components specifically configured to perform the corresponding functions (i.e., the statement "a processor configured to [cause the device] to perform xxx" is interpreted as equivalent to a statement such as "components for xxx").
[0221] According to an example embodiment, an apparatus representing a network node / network functional entity 10 includes at least one processor 181, at least one memory 182 including computer program code, and at least one interface 183 configured to communicate with at least one other apparatus. The processor (i.e., at least one processor 181, together with at least one memory 182 and the computer program code) is configured to perform the following actions: identifying the network functional entity to be added to a network entity composition (therefore the apparatus includes a corresponding component for identification); acquiring task coordination responsibility information regarding the network entity composition (therefore the apparatus includes a corresponding component for acquisition); analyzing the task coordination responsibility information (therefore the apparatus includes a corresponding component for analysis); and, if the task coordination responsibility information does not define a valid task coordination responsible for a specific task, initiating the addition of the network functional entity as a task coordination responsible for the specific task (therefore the apparatus includes a corresponding component for initiation).
[0222] According to an example embodiment, an apparatus representing a network node / information management entity 30 (providing task coordination responsibility information) includes at least one processor 185, at least one memory 186 including computer program code, and at least one interface 187 configured to communicate with at least one other apparatus. The processor (i.e., at least one processor 185, together with at least one memory 186 and computer program code) is configured to perform a request to receive task coordination responsibility information regarding the network entity configuration from a network functional entity within the network entity configuration (therefore the apparatus includes corresponding components for receiving), and to perform the transmission of the task coordination responsibility information (therefore the apparatus includes corresponding components for transmission).
[0223] For further details regarding the operability / functionality of individual devices, please refer to the respective [references / contacts]. Figures 1 to 17 The above description of any one of them.
[0224] For the purposes of this disclosure as described above, it should be noted that
[0225] - Method steps that may be implemented as part of software code and run on a processor at a network server or network entity (as an example of a device, apparatus and / or its modules, or as an example of an entity including an apparatus and / or its modules) are independent of the software code and can be specified using any known or future-developed programming language, provided that the functionality defined by the method steps is preserved;
[0226] - Generally, any method steps are suitable to be implemented in software or by hardware without changing the idea of the embodiment and its modifications in terms of the functionality implemented;
[0227] - The method steps and / or devices, units or components may be implemented as hardware components in the devices or any modules thereof as defined above (e.g., devices that perform the functions of the apparatus according to the above embodiments) are hardware-independent and can be implemented using any known or future-developed hardware technology or any combination of these technologies, such as MOS (Metal-Oxide-Semiconductor), CMOS (Complementary MOS), BiMOS (Bipolar MOS), BiCMOS (Bipolar CMOS), ECL (Emitter-Coupled Logic), TTL (Transistor-Transistor Logic), etc., using, for example, ASIC (Application-Specific Integrated Circuit) components, FPGA (Field-Programmable Gate Array) components, CPLD (Complex Programmable Logic Device) components or DSP (Digital Signal Processor) components;
[0228] - Devices, units, or components (such as network entities or network registers as defined above, or any of their corresponding units / components) can be implemented as individual devices, units, or components, but this does not preclude them from being implemented in a distributed manner throughout the system, as long as the functionality of the devices, units, or components is preserved;
[0229] Devices such as user equipment and network entities / network registers can be represented by semiconductor chips, chipsets, or (hardware) modules including such chips or chipsets; however, this does not preclude the possibility that the functionality of the device or module is not implemented in hardware but is implemented as software in (software) modules, such as computer programs or computer program products, including executable software code portions for execution / running on a processor.
[0230] - A device can be viewed as an assembly of more than one device, whether they are functionally complementary or functionally independent but housed in the same device housing.
[0231] Generally, it should be noted that the corresponding functional blocks or elements according to the foregoing aspects can be implemented in hardware and / or software in any known manner, provided that it is only applicable to performing the functions described in the corresponding section. The mentioned method steps can be implemented in the respective functional blocks or by the respective devices, or one or more method steps can be implemented in a single functional block or by a single device.
[0232] Generally, without altering the spirit of this disclosure, any method steps are suitable for implementation in software or in hardware. Devices and apparatuses can be implemented as individual devices, but this does not preclude them from being implemented in a distributed manner throughout the system, provided that the functionality of the devices is preserved. Such and similar principles are considered to be known to those skilled in the art.
[0233] Software in the sense of this specification includes the software code itself, such as code components or portions for performing corresponding functions, or computer programs or computer program products, as well as software (or computer programs or computer program products) embodied thereon on tangible media such as computer-readable (storage) media on which corresponding data structures or code components / portions are stored, or software (or computer programs or computer program products) that may be embodied in signals or chips during their processing.
[0234] This disclosure also covers any conceivable combination of the above-described method steps and operations, as well as any conceivable combination of the above-described nodes, devices, modules or elements, provided that the concepts of the above-described methodology and structural arrangement are applicable.
[0235] In view of this, measures for coordinating task responsibilities are proposed. Such measures include, exemplarily, identifying the network functional entity to be added to the network entity composition, obtaining task coordination responsibility information about the network entity composition, analyzing the task coordination responsibility information, and, if the task coordination responsibility information does not define a valid task coordination responsible for a specific task, initiating the addition of the network functional entity as the task coordination responsible for the specific task.
[0236] Although the present disclosure has been described above with reference to the accompanying drawings and examples, it should be understood that the present disclosure is not limited thereto. Rather, it will be apparent to those skilled in the art that the present disclosure can be modified in various ways without departing from the scope of the inventive concept disclosed herein.
[0237] List of acronyms and abbreviations
[0238] 3GPP Third Generation Partner Program
[0239] 5GC 5G Core Network
[0240] AMF Access and Mobility Management Functions
[0241] API (Application Programming Interface)
[0242] AUSF Authentication Server Functionality
[0243] CP control plane
[0244] IE Information
[0245] NF Network Functions
[0246] NRF Network Repository Functionality
[0247] NSSF Network Slice Selection Function
[0248] OAM Operation, Management and Maintenance
[0249] PDU (Packet Data Unit)
[0250] RAN (Radio Access Network)
[0251] SMF Session Management Function
[0252] UDM Unified Data Management
[0253] UDR Unified Data Repository
[0254] UDSF Unstructured Data Storage Function
[0255] UE User Equipment
[0256] VNF (Virtual Network Function)
Claims
1. A method for a 3GPP (Third Generation Partnership Project) 5G control plane network function entity, the method comprising: The network function entity is identified as being added to a network entity composition, wherein the network entity composition is one of the following: a network function set, a network function service set, and a network function group that acts as a redundant system. Obtain task coordination responsibility information regarding the network entities. Analyze the task coordination responsibility information, and If the task coordination responsibility information does not define a valid task coordinator responsible for a specific task, then the network function entity is added as the task coordinator responsible for the specific task.
2. The method according to claim 1, wherein Regarding the initiation, the method also includes Send a new task coordination responsibility information record, which includes information about the specific task and the identifier of the network function entity.
3. The method according to claim 2, wherein Send the new task coordination responsibility information record to the unstructured data storage function entity, or The new task coordination responsibility information record is sent to the network repository functional entity.
4. The method according to claim 1, further comprising: If the task coordination responsibility information defines a valid task coordination responsible for the specific task, then the priority of the task coordination responsible for the specific task is compared with the priority of the network function entity used for the specific task, and If the priority of the network function entity for the specific task is higher than the priority of the task coordinator responsible for the specific task, then the network function entity is initiated to replace the task coordinator responsible for the specific task as a new task coordinator responsible for the specific task.
5. The method according to claim 1, further comprising: If the task coordination responsibility information defines a valid task coordinator responsible for the specific task, then the information regarding the expiration of the task coordination responsibility for the specific task is compared with the current time. If the information regarding the expiration of the task coordination responsibility for the specific task indicates that the task coordination responsibility for the specific task expires at the current point in time, then an initiative is initiated to have the network functional entity replace the task coordination responsible for the specific task as a new task coordination responsible for the specific task.
6. The method according to any one of claims 1 to 5, further comprising: Determine the availability of task coordination responsible for the specific task, and If the task coordinator responsible for the specific task is determined to be unavailable, an initiative is initiated to replace the task coordinator responsible for the specific task with a new task coordinator responsible for the specific task by the network function entity.
7. The method according to claim 4, wherein Regarding initiating the replacement, the method further includes Send an updated task coordination responsibility information record, which includes information about the specific task and the identifier of the network function entity.
8. An apparatus for a 3GPP (3rd Generation Partnership Project) 5G control plane network function entity, the apparatus comprising: At least one processor, At least one memory including computer program code, and At least one interface, said at least one interface being configured to communicate with at least another device, The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: The network function entity is identified as being added to a network entity composition, wherein the network entity composition is one of the following: a network function set, a network function service set, and a network function group that acts as a redundant system. Obtain task coordination responsibility information regarding the network entities. Analyze the task coordination responsibility information, and If the task coordination responsibility information does not define a valid task coordinator responsible for a specific task, then the network function entity is added as the task coordinator responsible for the specific task.
9. The apparatus according to claim 8, wherein Regarding the initiation, the at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to execute: Send a new task coordination responsibility information record, which includes information about the specific task and the identifier of the network function entity.
10. The apparatus according to claim 9, wherein Send the new task coordination responsibility information record to the unstructured data storage function entity, or The new task coordination responsibility information record is sent to the network repository functional entity.
11. The apparatus according to claim 8, wherein The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: If the task coordination responsibility information defines a valid task coordination responsible for the specific task, then the priority of the task coordination responsible for the specific task is compared with the priority of the network function entity used for the specific task, and If the priority of the network function entity for the specific task is higher than the priority of the task coordinator responsible for the specific task, then the network function entity is initiated to replace the task coordinator responsible for the specific task as a new task coordinator responsible for the specific task.
12. The apparatus according to claim 8, wherein The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: If the task coordination responsibility information defines a valid task coordinator responsible for the specific task, then the information regarding the expiration of the task coordination responsibility for the specific task is compared with the current time. If the information regarding the expiration of the task coordination responsibility for the specific task indicates that the task coordination responsibility for the specific task expires at the current point in time, then an initiative is initiated to have the network functional entity replace the task coordination responsible for the specific task as a new task coordination responsible for the specific task.
13. The apparatus according to claim 8, wherein The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: Determine the availability of task coordination responsible for the specific task, and If the task coordinator responsible for the specific task is determined to be unavailable, an initiative is initiated to replace the task coordinator responsible for the specific task with a new task coordinator responsible for the specific task by the network function entity.
14. The apparatus of claim 11, wherein Regarding the initiation of the replacement, the at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to execute: Send an updated task coordination responsibility information record, which includes information about the specific task and the identifier of the network function entity.
15. The apparatus of claim 14, wherein Send the updated task coordination responsibility information record to the unstructured data storage function entity, or The update task coordination responsibility information record is sent to the network repository functional entity.
16. The apparatus of claim 11, wherein The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: Send the following instruction to the task coordinator responsible for the specific task: replace the task coordinator responsible for the specific task with the new task coordinator responsible for the specific task by the network function entity.
17. The apparatus according to claim 8, wherein The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: Receive information from the network repository functional entity or the unstructured data storage entity regarding changes to task coordination responsibilities for the specific task.
18. The apparatus of claim 8, wherein The network functional entity has been registered as the task coordinator responsible for the first task, and The at least one processor, together with the at least one memory and the computer program code, is configured to cause the device to perform: The following instruction is received from the new task coordinator responsible for the first task: the network function entity is replaced by the new task coordinator responsible for the first task.
19. The apparatus of claim 8, wherein The task coordination responsibility information includes task-specific entries, such as: At least information about the task, an identifier for the task coordinator responsible for the task, the priority of the task coordinator responsible for the task, information about the expiration of the responsibility for the task coordinator responsible for the task, and a Uniform Resource Identifier for the task coordinator responsible for the task.
20. A computer program product comprising computer-executable computer program code, wherein when the program is run on a computer, the computer program code is configured to cause the computer to perform the method according to claim 1.
21. The computer program product of claim 20, wherein the computer program product includes a computer-readable medium having computer program code executable thereon stored thereon, and / or wherein the program can be directly loaded into the internal memory of the computer or its processor.
Citation Information
Patent Citations
Stable leader selection for distributed services
US10367676B1