Method and network node for guided network services
By processing and providing predictive KPM data to application functions, the network node enhances user experience by enabling adaptive operation and efficient resource utilization in wireless communication networks.
Patent Information
- Application Number
- JP2024548421
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-02-17
- Publication Date
- 2026-02-13
- Estimated Expiration
- 2042-02-17
AI Technical Summary
Existing wireless communication networks lack efficient methods to provide accurate and predictive key performance metric (KPM) data to application functions, affecting user experience by failing to adapt application sessions to dynamic network conditions.
A network node obtains and processes various KPM data types, including current and forecasted metrics, to control application functions by sending appropriate parameters, enabling adaptive operation based on resource availability and policy information, and providing predicted and guaranteed KPM data to application functions.
Enhances user experience by allowing application functions to proactively adjust to network conditions, improving quality of service through efficient resource utilization and performance optimization.
Smart Images

Figure 0007813900000001 
Figure 0007813900000002 
Figure 0007813900000003
Abstract
Description
[Technical Field]
[0001] One or more exemplary embodiments relate to wireless communication networks. [Background technology]
[0002] Wireless communication networks include user equipment that interfaces with application functions, the capabilities of which can affect the user experience of the user equipment. Summary of the Invention
[0003] At least one first exemplary embodiment includes a method.
[0004] In at least one exemplary embodiment, the method includes obtaining, by at least one processor of at least one first network node in a communications network, at least one first key performance metric (KPM) data type from a plurality of KPM data types, the plurality of KPM data types including current KPM data, forecasted KPM data, and forecasted guaranteed KPM data; sending, by the at least one processor, at least one first parameter to an application function, the at least one first parameter identifying the at least one first KPM data type; and controlling, by the at least one processor, operation of the application function based on the at least one first parameter.
[0005] In at least one exemplary embodiment, the step of obtaining the at least one first KPM data type includes a first step of determining resource information, the resource information including availability of predicted resources and guaranteed predicted performance resources; a second step of determining policy information for a data flow in the application function, the policy information including policy capability information and guaranteed predicted performance capability information; and a third step of determining advertising information for the data flow based on the resource information and the policy information, the advertising information corresponding to the at least one first KPM data type.
[0006] In at least one exemplary embodiment, the step of sending the at least one first parameter further includes sending the advertising information to the application function, the advertising information including the at least one first parameter, the at least one first parameter identifying the KPM data type for one or more KPMs.
[0007] In at least one exemplary embodiment, the method further includes receiving, from the application function, a selected KPM data type for a first KPM of the one or more KPMs, wherein the selected KPM data type is one of the plurality of KPM data types.
[0008] In at least one exemplary embodiment, the selected KPM data type is one of a first KPM service associated with the current KPM data, a second KPM service associated with the forecast KPM data, or a third KPM service associated with the forecast assurance KPM data, and the selected KPM data type identifies one of the first KPM service, the second KPM service, or the third KPM service.
[0009] In at least one exemplary embodiment, the method further includes processing at least one first data report for at least one first duration for the first KPM based on the selected KPM data type, and controlling operation of the application function includes sending to the application function at least one KPM value for the selected KPM data type and the first KPM to cause the application function to adapt an application session to network conditions.
[0010] In at least one exemplary embodiment, the one or more KPMs include at least one of throughput, latency, jitter, user equipment channel quality, packet loss, or allocated radio access network (RAN) resources.
[0011] In at least one exemplary embodiment, processing the at least one first data report is performed by at least one of: processing the at least one first data report to generate at least one first current KPM value if the selected KPM data type identifies the first KPM service; processing the at least one first data report to generate at least one first forecasted KPM value if the selected KPM data type identifies the second KPM service or the third KPM service; or processing the at least one first data report to generate at least one first forecasted guaranteed KPM value if the selected KPM data type identifies the third KPM service.
[0012] In at least one exemplary embodiment, controlling the operation of the application includes sending the at least one first current KPM value to the application function if the selected KPM data type identifies the first KPM service, sending the at least one first predicted KPM value to the application function if the selected KPM data type identifies the second KPM service, or sending the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value to the application function if the selected KPM data type identifies the third KPM service, wherein the at least one KPM value includes the at least one first current KPM value, the at least one first predicted KPM value, or the at least one first predicted guaranteed KPM value.
[0013] In at least one exemplary embodiment, the selected KPM data type identifies the third KPM service, the processing step processes the at least one first data to generate at least one first predicted KPM value and at least one first predicted guaranteed KPM value, the controlling operation of the application includes sending the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value to the application function, the at least one KPM value comprising the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value, and the method further includes implementing at least one implementation parameter based on the at least one first predicted guaranteed KPM value.
[0014] In at least one exemplary embodiment, the at least one processor is part of at least one of a quasi-real-time (RT) radio access network intelligent controller (RIC) located within the at least one first network node, a non-real-time radio access network intelligent controller (RIC) located within the at least one first network node, a network publishing function (NEF) located within the at least one first network node, a service management and orchestration (SMO) function located within the at least one first network node, or a mobile edge computing (MEC) platform.
[0015] At least one example embodiment includes at least one first network node in a communications network.
[0016] In at least one exemplary embodiment, the at least one first network node comprises: a memory storing computer-readable instructions; and at least one processor operatively coupled to the memory and configured to access the computer-readable instructions to perform the steps of: obtaining at least one first key performance metric (KPM) data type from a plurality of KPM data types, the plurality of KPM data types including current KPM data, forecasted KPM data, and forecasted guaranteed KPM data; sending at least one first parameter to an application function, the at least one first parameter identifying the at least one first KPM data type; and controlling operation of the application function based on the at least one first parameter.
[0017] In at least one exemplary embodiment, the at least one processor is configured to obtain the at least one first KPM data type by: a first step of determining resource information, the resource information including predicted resource availability and guaranteed predicted performance resource availability; a second step of determining policy information for a data flow in the application function, the policy information including policy capability information and guaranteed predicted performance capability information; and a third step of determining advertising information for the data flow based on the resource information and the policy information, the advertising information corresponding to the at least one first KPM data type.
[0018] In at least one exemplary embodiment, the at least one processor is configured to perform a step of transmitting the at least one first parameter by transmitting the advertising information to the application function, the advertising information including the at least one first parameter, the at least one first parameter identifying the KPM data type for one or more KPMs.
[0019] In at least one exemplary embodiment, the at least one processor is further configured to perform the step of receiving, from the application function, a selected KPM data type for a first KPM of the one or more KPMs, wherein the selected KPM data type is one of a plurality of KPM data types.
[0020] In at least one exemplary embodiment, the selected KPM data type is one of a first KPM service associated with the current KPM data, a second KPM service associated with the forecast KPM data, or a third KPM service associated with the forecast assurance KPM data, and the selected KPM data type identifies one of the first KPM service, the second KPM service, or the third KPM service.
[0021] In at least one exemplary embodiment, the at least one processor is further configured to perform the step of processing at least one first data report for at least one first duration for the first KPM based on the selected KPM data type, and controlling the operation of the application function includes sending to the application function the selected KPM data type and at least one KPM value for the first KPM to cause the application function to adapt an application session to network conditions.
[0022] In at least one exemplary embodiment, the one or more KPMs include at least one of throughput, latency, jitter, user equipment channel quality, packet loss, or allocated radio access network (RAN) resources.
[0023] In at least one exemplary embodiment, the at least one processor processes the at least one first data report by performing at least one of the following steps: processing the at least one first data report to generate at least one first current KPM value if the selected KPM data type identifies the first KPM service; processing the at least one first data report to generate at least one first forecasted KPM value if the selected KPM data type identifies the second KPM service or the third KPM service; or processing the at least one first data report to generate at least one first forecasted guaranteed KPM value if the selected KPM data type identifies the third KPM service.
[0024] In at least one exemplary embodiment, the at least one processor is configured to control operation of the application function by performing the steps of: sending the at least one first current KPM value to the application function if the selected KPM data type identifies the first KPM service; sending the at least one first predicted KPM value to the application function if the selected KPM data type identifies the second KPM service; or sending the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value to the application function if the selected KPM data type identifies the third KPM service, wherein the at least one KPM value includes the at least one first current KPM value, the at least one first predicted KPM value, or the at least one first predicted guaranteed KPM value.
[0025] Exemplary embodiments will be more fully understood from the following detailed description and the accompanying drawings, in which like elements are represented by like reference numerals, which are provided for purposes of illustration only and not to limit the disclosure. [Brief explanation of the drawings]
[0026] [Figure 1] FIG. 1 illustrates an Open Radio Access Network (O-RAN) hierarchy, according to at least one example embodiment. [Figure 2] FIG. 1 is a block diagram of a network node in accordance with at least one example embodiment. [Figure 3] 1 is a flowchart of logic for selecting advertising information in accordance with at least one example embodiment. [Figure 4A] FIG. 10 is a communications diagram for service registration by an application function in accordance with at least one exemplary embodiment. [Figure 4B] FIG. 1 illustrates a multi-access edge computing framework including application functionality, according to at least one exemplary embodiment. [Figure 5] FIG. 1 is a communications diagram for guided network service operations in a radio access network intelligent controller (RIC) in accordance with at least one example embodiment. [Figure 6] FIG. 1 illustrates a method for guided network services, according to at least one example embodiment. [Figure 7] FIG. 1 is a functional diagram illustrating information flow for Use Case 1, in accordance with at least one exemplary embodiment. [Figure 8] FIG. 10 is a functional diagram illustrating information flow for Use Case 2, in accordance with at least one example embodiment. [Figure 9] FIG. 10 is a functional diagram illustrating information flow for Use Case 3, in accordance with at least one exemplary embodiment.
[0027] It should be noted that these figures are intended to illustrate the general features of methods, structures, and / or materials utilized in some exemplary embodiments and to supplement the descriptions provided below. However, these figures are not to scale, may not precisely reflect the exact structure or performance characteristics of any given embodiment, and should not be construed as defining or limiting the range of values or properties encompassed by the exemplary embodiments. The use of similar or identical reference numbers in various figures is intended to indicate the presence of similar or identical elements or features. DETAILED DESCRIPTION OF THE INVENTION
[0028] Various exemplary embodiments will now be described more fully with reference to the accompanying drawings, in which several exemplary embodiments are shown.
[0029] Detailed exemplary embodiments are disclosed herein. However, the specific structural and functional details disclosed herein are merely representative for purposes of describing the exemplary embodiments. However, the exemplary embodiments may be embodied in many alternative forms and should not be construed as being limited to only the embodiments set forth herein.
[0030] It is to be understood that there is no intention to limit the example embodiments to the particular forms disclosed. On the contrary, the example embodiments are intended to cover all modifications, equivalents, and alternatives falling within the scope of this disclosure. Like numerals refer to like elements throughout the description of the figures.
[0031] While one or more exemplary embodiments may be described in terms of a wireless network element (e.g., gNB, eNB), user equipment, etc., it should be understood that one or more exemplary embodiments described herein may be performed by one or more processors (or processing circuits) in applicable apparatus. For example, according to one or more exemplary embodiments, at least one memory may include or store computer program code, and the at least one memory and computer program code may be configured, with the at least one processor, to cause the wireless network element (or user equipment) to perform the operations described herein.
[0032] It will be understood that several exemplary embodiments may be used in combination.
[0033] 1 illustrates a system 110 including an open radio access network (O-RAN) hierarchy according to at least one exemplary embodiment. In at least one exemplary embodiment, the system 110 includes radio side entities, including a radio side of the O-RAN system 110 including a near real-time radio access network intelligent controller (near-RT RIC) 100, at least one open RAN control plane (O-CU-CP) 115, an open RAN distributed unit (O-DU) 120, and an open RAN radio unit (O-RU) 125, as defined by 3GPP TR 21.905. The management side includes management side entities, including a service management and orchestration framework (SMO) 130 including non-RT-RIC functions 135, as defined by 3GPP TR 21.905.
[0034] In at least one exemplary embodiment, other entities in system 110 include some or all of the following:
[0035] Open Radio Access Network (O-RAN) Near-Real-Time RAN Intelligent Controller (Near-RT RIC) 100: A logical function that enables near-real-time control and optimization of O-RAN elements and resources through granular data collection and action over the E2 interface.
[0036] O-RAN Non-Real-Time RAN Intelligent Controller (Non-RT RIC) 135: Logic functions that enable non-real-time control and optimization of RAN elements and resources and AI / ML workflows including model training and updates, and policy-based guidance of applications / features in the near-RT RIC 100.
[0037] O-CU145: O-RAN Central Unit: A logical node that hosts the Radio Resource Control (RRC), Service Delivery Automation Platform (SDAP), and Packet Data Convergence Protocol (PDCP).
[0038] O-CU-CP 115: O-RAN Central Unit - Control Plane 115: A logical node that hosts the control plane part of the RRC and PDCP protocols.
[0039] O-CU-UP140: O-RAN Central Unit - User Plane: A logical node that hosts the user plane part of the PDCP protocol and the SDAP protocol.
[0040] O-DU120: O-RAN Distributed Unit: A logical node that hosts the RLC / MAC / High-PHY layers based on lower layer functional division.
[0041] O-RU125: O-RAN Radio Unit: A logical node that hosts the Low-Physical (PHY) layer and Radio Frequency (RF) processing based on a lower layer functional division. It is similar to the 3GPP "TRP" or "RRH" but is more specific in that it includes the Low-PHY layer (FFT / iFFT, PRACH extraction).
[0042] O1 160: For operation and management, it is the interface between the management entities in the service management and orchestration framework and the O-RAN management elements, through which FCAPS management, software management, and file management should be achieved.
[0043] O1* 155: Interface between the service management and orchestration framework and the infrastructure management framework supporting O-RAN virtual network functions.
[0044] In at least one exemplary embodiment, the O-RAN near-RT RIC 100 enables near-real-time RAN key performance metrics (KPMs) (e.g., throughput, latency, jitter, UE channel quality, allocated RAN resources, etc.) to be provided to third-party application services. In at least one exemplary embodiment, examples of such third-party app services may include, but are not limited to, live streaming video, mobile robot control on a smart factory 4.0 floor, mobile gaming, and augmented reality / virtual reality (AR / VR). In at least one exemplary embodiment, knowing the KPMs enables application services to significantly improve quality of experience (QoE) by rapidly adapting application traffic needs to network performance, for example, by adjusting video and data stream resolution, metadata resolution, and speed of autonomously guided vehicles and mobile robots, as well as the amount of data streamed detail.
[0045] FIG. 2 illustrates a block diagram of a network node 200 in accordance with at least one example embodiment.
[0046] In at least one exemplary embodiment, network node 200 is a quasi-RT RIC 100. In at least one exemplary embodiment, network node 200 is a non-real-time RIC 135, an NEF function 170, an SMO function 130, or an MEC platform 450. In at least one exemplary embodiment, network node 200 includes a guidance network service unit 205. In at least one exemplary embodiment, guidance network service unit 205 includes memory 210 operatively connected to processor 200. In at least one exemplary embodiment, the memory includes computer-readable instructions readable by processor 200 to control at least some of the operations of network node 200. In at least one exemplary embodiment, memory 210 includes at least KPM calculation instructions 220, KPM prediction instructions 225, and KPM guidance optimization instructions 230. In at least one exemplary embodiment, network node 200 includes a backhaul 240 and / or a wireless interface 250 for interfacing with entities external to network node 200.
[0047] In at least one exemplary embodiment, the application function (AF) ultimately requires access to accurately predicted KPM data so that prediction can be accomplished by the processor 200 of the network node 200 in order to appropriately adjust to predicted network conditions, as described herein. In at least one exemplary embodiment, there are three use cases associated with the three types of per-UE KPM data information exposed by the network node 200 to the AF.
[0048] Use Case 1 (Service Type 1): The processor 200 of the network node 200 publishes pre-processed "raw" (current) KPM data calculated from RAN DU and / or CU reports. The processor 200 of the network node 200 assumes a trained predictor hosted by the application service and uses the data published by the network node 200 as input to the predictor. There is no special processing (or KPM enforcement) at the RAN DU / CU for UE data flows carrying application traffic.
[0049] Use Case 2 (Service Type 2): The network node 200 hosts an ML prediction function (including KPM prediction instructions 225) and exposes predicted KPM data calculated from RAN DU and / or CU reports to the AF. There is no special processing (or KPM enforcement) at the RAN DU / CU for UE data flows carrying application traffic yet. In at least one example embodiment, the AF does not have a predictor and can be directly exposed to the predicted KPM in order to adapt to the predicted network conditions.
[0050] Use Case 3 (Service Type 3): The network node 200 hosts the ML predictor and also performs spectrum resource allocation optimization. It processes reports from the DU and / or CU to calculate "intermediate KPM" (e.g., UE-channel characteristics, resource allocation, latency, jitter).
[0051] A predictor is applied to predict the intermediate KPM. An optimizer is applied (optimizer inputs: predicted intermediate KPM and resource allocation policy) to calculate the optimal resource allocation across many UEs and the associated predicted guaranteed KPM (e.g., throughput, latency, packet loss, resource allocation). The calculated predicted guaranteed KPM is published (sent) to the AF and also implemented in the DU and / or CU.
[0052] Application services need to distinguish between these three use cases (described above) in order to act appropriately on the information. The differences between the three use cases include the following factors:
[0053] Factor 1: Where is the trained predictor? In the network node 200 or in the application function (AF). In other words, has already predicted KPM data (predictor in network node 200) been received by the AF, or is there historical or current data that still needs to be sent to the predictor to get the predicted KPM data?
[0054] Factor 2: What is the accuracy of the prediction or the prediction error margin? This determines how aggressively (or conservatively) the AF needs to adapt to the predicted network performance. In use case 3, due to the predicted KPM implemented in the RAN, the accuracy of the published prediction data is higher than in the other two use cases. Therefore, in use case 3, the AF can aggressively adapt to the predicted KPM. In the other two use cases, the AF needs to be more conservative in adapting to the predicted KPM and allow a larger error margin due to natural fluctuations in the network KPM (e.g., unpredicted changing patterns of PRB allocation due to new UEs being added or traffic fluctuations for existing UEs, unpredicted fluctuations in channel conditions due to UE mobility, and various temporary channel impairments that cause random packet loss or delays).
[0055] In at least one exemplary embodiment, a new parameter (or set of parameters) is used to indicate the type of KPM (use cases described above), which is used to specify whether the quasi-RT RIC 100 should expose a “raw” (current) KPM (use case 1), a predicted KPM (use case 2), or a predicted derived KPM (use case 3).
[0056] In at least one exemplary embodiment, the parameters are included in the service advertisement (see embodiment below).
[0057] In at least one example embodiment, where different use cases can coexist for different KPM parameters (e.g., use case 1 for latency and use case 3 for overallity), the parameters exist as protocol data fields transmitted with the respective data (data flow).
[0058] In at least one exemplary embodiment, for a particular KPM, network node 200 advertises supported public KPM types based on the capabilities of network node 200 and based on the policy (policy information) for the particular application type (e.g., for a given KPM such as throughput, whether network node 200 has a trained KPM predictor that can be deployed, whether network node 200 supports KPM derivation calculation and implementation, and whether RIC policy allows predictors and derivation to be deployed for the particular application service).
[0059] FIG. 3 is a flow chart of logic for selecting advertising information according to at least one example embodiment.
[0060] In at least one exemplary embodiment, processor 200 of network node 200 performs the steps of Figure 3. In at least one exemplary embodiment, in step S300, processor 200 determines whether network node 200 has available KPM predictor instructions (functions) 225, and in step S305, processor 200 determines whether RIC policy allows a predictor to be used in the RIC. If either answer is "no," processor 200 advertises use case 1 (as described in more detail herein). In at least one exemplary embodiment, in step S315 (as described in more detail herein), processor 200 determines whether network node 200 has guided optimization instructions 230, and in step S320, network node 200 determines whether RIC policy allows guided optimization to be used in the RIC (as described in more detail herein). If either answer is "no," processor 200 advertises use case 2. If steps S315 and S320 are answered affirmatively, then in step S330 the processor advertises use case 3.
[0061] In at least one example embodiment, different policies may apply to different application services; for example, even if network node 200 has the capability to provide predicted and guaranteed KPM (use case 3), for a particular application, the policy may allow only the "current" KPM (use case 1) or only the "predicted" KPM (use case 2) to be exposed.
[0062] In at least one example embodiment, different use cases may apply to different KPMs; for example, network node 200 may have guided enforcement capabilities for throughput KPM (use case 3) and provide “raw” data for latency KPM (use case 1).
[0063] FIG. 4A illustrates a communication diagram for service registration by an application function in accordance with at least one exemplary embodiment.
[0064] In at least one exemplary embodiment, during registration of an application function (AF) 400, in step S410, a processor 700 (see FIG. 7) of the AF 400 first receives an advertised GNI service use case from a GNI service 205. The GNI service represents one of a current, a predicted, or a predicted and guaranteed service.
[0065] In at least one exemplary embodiment, the processor 700 of the AF 400, in step S420, looks at its own capabilities (e.g., whether it can deploy its own predictor) to select the service type to subscribe to. In at least one exemplary embodiment, the GNI service 205 (as part of the network node 200) optionally supports downgrading of its advertised service (e.g., providing "raw insights" (current KPM) use case 1 even if "prediction-guided insights" (prediction-guaranteed KPM) use case 3 is available) if the AF 400 selects a lower tier service.
[0066] As a result of this negotiation by the AF 400 and the GNI service 205, one of use cases 1, 2, or 3 above is selected for the service. In at least one exemplary embodiment, the quasi-RT RIC 100 then proceeds with the service according to the selected use case.
[0067] In at least one exemplary embodiment, a combination of the predictive capabilities of both the network node 200 and the AF 400 is used together, which enables at least some of the exemplary embodiments to:
[0068] First: Using a combination of predictors in the network node 200 for some KPMs and in the AF 400 for other KPMs.
[0069] Second, guaranteed predictions (Use Case 3) enable much more efficient spectrum resource utilization when utilized with application capabilities that reliably adapt to the predicted guaranteed KPM.
[0070] FIG. 4B illustrates a multi-access edge computing framework including at least one application function 400 in accordance with at least one example embodiment.
[0071] In at least one exemplary embodiment, a multi-access edge computing (MEC) platform 450 interfaces with MEC applications, one of which may be the AF 400.
[0072] FIG. 5 illustrates a communications diagram for guided network service operations in a network node 200, in accordance with at least one example embodiment.
[0073] In at least one exemplary embodiment, user equipment (UE) 500, AF 400, and CU 120 / DU 145 have the same main structural elements (processor 200, memory 210, radio interface 250, and / or backhaul 240) as shown in network node 200 of FIG. 2, and processor 200 performs the operations of these entities based on computer-readable instructions in memory 210.
[0074] Step 1 (S410): The AF 400 finds out which use cases for a given KPM k are supported by the network node 200. This step is omitted in the functional diagrams of Figures 7, 8 and 9.
[0075] Step 2 (S420). The AF 400 subscribes to the selected use cases. If use case 1 is selected for KPM k, the AF 400 deploys a trained predictor (FIG. 7). If use case 2 is selected, the network node 200 deploys a trained predictor for KPM k (FIG. 8). If use case 3 is selected, the network node 200 deploys a trained predictor for KPM k and deploys a guidance function for RAN control (FIG. 9). This step is omitted in the functional diagrams of FIGS. 7, 8 and 9.
[0076] Step 3 (S550) - An application session is established between the AF and the user equipment (UE) 500. This step is omitted in the functional diagrams of Figures 7, 8 and 9.
[0077] Step 4 (S560) - The AF 400 requests a KPM report for the UE 500 from the GNI service 205 in the RIC 50, which starts the inner loop operation (step 1 in Figure 7-9).
[0078] Step 5 (S565)—GNI 205 receives “data reports” for UE 500 from RAN DU 120 and / or CU 145, which may be periodic or on-demand (step 2 in FIG. 7-9).
[0079] Step 6 (S570) - Depends on the use case.
[0080] Use Case 1 (Service Type 1): In Use Case 1, the GNI 205 pre-processes the received data.
[0081] Use Case 2 (Service Type 2): In Use Case 2, GNI 250 preprocesses the data and feeds it to a predictor to generate a predicted KPM.
[0082] Use Case 3 (Service Type 3): In use case 3, in addition to the operations in use case 2, the GNI 205 performs a guidance function to calculate a predicted guaranteed KPM and generate control parameters for the RAN to implement the KPM.
[0083] Step 7 (S575)—The reported KPM value is sent to AF 400 along with an indication of the selected use case. AF 400 uses the reported KPM value based on the use case. In the case of use case 1, the received KPM value is used as input to a predictor. The predictor output is used to conservatively adjust application behavior, taking into account a relatively large margin of error. In the case of use case 2, the received KPM value is used to conservatively adjust application behavior, taking into account a relatively large margin of error. In the case of use case 3, the received KPM value is used to proactively adjust application behavior, knowing that the predicted network performance is in effect and the margin of error is small.
[0084] Step 8 (S580): The GNI 205 terminates the connection with the AP 400.
[0085] Step 9 (S585): The application session of the UE 500 with the AF 400 ends.
[0086] FIG. 6 illustrates a method for guided network services in accordance with at least one example embodiment.
[0087] In at least one exemplary embodiment, as shown in step S600, processor 200 of network node 200 obtains a KPM data type. In at least one exemplary embodiment, the KPM data type includes a first KPM service associated with current KPM data (use case 1), a second KPM service associated with predicted KPM data (use case 2), or a third KPM service associated with predicted guaranteed KPM data (use case 3). In at least one exemplary embodiment, obtaining the KPM data type includes determining resource information (availability of predicted resources or guaranteed predicted performance resources), determining policy information (capability of guaranteed predicted performance capacity), and determining advertising information (corresponding to the KPM data type), at least as described in FIG. 3 .
[0088] In at least one exemplary embodiment, in step S610, processor 200 of network node 200 transmits the parameters to AF 400 (as described herein). In an exemplary embodiment, the parameters are transmitted to AF 400 in step 1 of Figure 1, and AF 400 stores the parameters and later associates them with the KPM value transmitted in step 7 of Figure 5. In at least another exemplary embodiment, the parameters are transmitted together with the KPM value in step 7 of Figure 5. In at least an exemplary embodiment, a combination of these embodiments can be used to transmit the parameters.
[0089] In at least one exemplary embodiment, in step S620, processor 200 controls (as described herein) operation of AF 400. In at least one exemplary embodiment, controlling operation of AF 400 may include sending the selected KPM data type and at least one KPM value for the particular KPM to AF 400 to cause AF 400 to adapt the application session to network conditions.
[0090] Figure 7 shows a functional diagram illustrating information flow for use case 1, in accordance with at least one exemplary embodiment. Figure 8 shows a functional diagram illustrating information flow for use case 2, in accordance with at least one exemplary embodiment. Figure 9 shows a functional diagram illustrating information flow for use case 3, in accordance with at least one exemplary embodiment.
[0091] In at least one exemplary embodiment, UE 500 has the same major structural elements (processor 200, memory 210, radio interface 250) as network node 200 of Figure 2. While quasi-RT RIC 100 is shown in Figures 7-9, it should be understood that GNI 205 may be located in any of the entities that may be network node 200, separate from quasi-RT RIC 100.
[0092] In at least one exemplary embodiment, an example of the operation of Use Case 1 is shown as shown in FIG. 7, where step A is step S560 of FIG.
[0093] In at least one exemplary embodiment, an example of the operation of Use Case 2 is shown as shown in FIG. 8, with steps 1-3 described in relation to FIG.
[0094] In at least one exemplary embodiment, an example of the operation of Use Case 3 (e.g., induced prediction of throughput KPM for gaming or live video streaming) is shown as shown in FIG. 9, with steps 1-4 described in connection with FIG. 5 and also described below.
[0095] Step A: This step corresponds to step 4 of Figure 3 in Figure 5. In at least one example embodiment, in step A', the AF 400 transmits a list of allowable throughputs corresponding to different possible video encoding resolutions used in the UE 500 application session.
[0096] Step B: In step B, the GNI service 205 receives periodic (e.g., every T seconds, where T is between 100 ms and 1 second) reports ("data reports") from the DU 145 scheduler for all UEs 500 to which the application service 400 is registered. The reports include data on physical resource block (PRB) allocations and channel conditions for the UEs 500. The KPM calculation module calculates PRB resource allocations and UE 500 channel metrics. The KPM prediction module predicts the channel conditions for the UEs 500. The guided optimization module takes the predicted channel conditions as input and solves an optimization problem to optimally set target throughput rates for all UEs 500 running subscribed applications to maximize a given policy objective. The policy objective may be to maximize the number of UEs 500 with at least video resolution r_max, while the minimum allowable video resolution is r_min (r_min and r_max are mapped to the throughput provided in step 1').
[0097] Step C: In step C, the guided optimization sends a scheduler request to the DU 145 to implement the calculated optimal throughput.
[0098] Step D: In step D, the calculated and implemented target rate (taking into account the predicted channel conditions) is reported to the AF 400. The AF 400 proceeds to precisely adjust the video encoding to the reported KPM, knowing that the error margin is small because the reported predicted guided KPM is implemented in the Radio Access Network (RAN) 710.
[0099] Terms such as "first," "second," and the like may be used herein to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first element can be referred to as a second element, and similarly, a second element can be referred to as a first element, without departing from the scope of the present disclosure. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0100] When an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element, or intervening elements may be present. In contrast, when an element is referred to as being "directly connected" or "directly coupled" to another element, there are no intervening elements present. Other terms used to describe relationships between elements should be interpreted similarly (e.g., "between" vs. "directly between," "adjacent" vs. "directly adjacent," etc.).
[0101] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly dictates otherwise. Furthermore, it will be understood that the terms "comprises," "comprising," "includes," and / or "including," when used herein, indicate the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0102] It should also be noted that in some alternative implementations, the functions / acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may, in fact, be executed substantially concurrently or may even be executed in the reverse order, depending on the functions / acts involved.
[0103] In the following description, specific details are provided to provide a thorough understanding of the exemplary embodiments. However, it will be understood by those skilled in the art that the exemplary embodiments may be practiced without these specific details. For example, systems may be shown in block diagrams so as not to obscure the exemplary embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail to avoid obscuring the exemplary embodiments.
[0104] As described herein, the exemplary embodiments are described with reference to symbolic representations of acts and operations (e.g., in the form of flowcharts, flow diagrams, data flow diagrams, structure diagrams, block diagrams, etc.). They may be implemented as program modules or functional processes, including routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types and may be implemented using existing hardware in, for example, existing user equipment, base stations, Evolved Node Bs (eNBs), Remote Radio Heads (RRHs), 5G base stations (gNBs), femto base stations, network controllers, computers, etc. Such existing hardware may be processing or control circuitry such as, but not limited to, one or more processors, one or more central processing units (CPUs), one or more controllers, one or more arithmetic logic units (ALUs), one or more digital signal processors (DSPs), one or more microcomputers, one or more field programmable gate arrays (FPGAs), one or more systems on a chip (SoCs), one or more programmable logic units (PLUs), one or more microprocessors, one or more application specific integrated circuits (ASICs), or any other device or devices capable of responding to and executing instructions in a defined manner.
[0105] Although a flowchart may describe operations as a sequential process, many of the operations may be performed in parallel, concurrently, or simultaneously. Additionally, the order of operations may be rearranged. A process may be terminated when its operations are completed, but may have additional steps not included in the figures. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or the main function.
[0106] As disclosed herein, the terms "storage medium," "computer-readable storage medium," or "non-transitory computer-readable storage medium" may refer to one or more devices for storing data, including read-only memory (ROM), random-access memory (RAM), magnetic RAM, core memory, magnetic disk storage media, optical storage media, flash memory devices, and / or other tangible, machine-readable media for storing information. The term "computer-readable medium" may include, but is not limited to, portable or fixed storage devices, optical storage devices, and various other media capable of storing, containing, or carrying instructions and / or data.
[0107] Furthermore, the exemplary embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, program code or code segments for performing the necessary tasks may be stored in a machine-readable or computer-readable medium, such as a computer-readable storage medium. When implemented in software, one or more processors perform the necessary tasks. For example, as described above, according to one or more exemplary embodiments, at least one memory may include or store computer program code, and the at least one memory and computer program code may be configured to cause at least one processor to perform the necessary tasks in a network element or network device. Furthermore, the processor, memory, and exemplary algorithms may be encoded as computer program code and act as means for providing or causing the execution of the operations discussed herein.
[0108] A code segment of computer program code may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and / or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. can be passed, forwarded, or transmitted via any suitable techniques including memory sharing, message passing, token passing, network transmission, etc.
[0109] As used herein, the terms "including" and / or "having" are defined as comprising (i.e., open language). As used herein, the term "coupled" is defined as connected, although not necessarily directly and not necessarily mechanically. Terms derived from the term "indicating" (e.g., "indicates" and "indication") are intended to encompass all of the various techniques available for communicating or referencing the object / information being indicated. Some, but not all, examples of techniques available for communicating or referencing the indicated object / information include conveying the indicated object / information, conveying an identifier for the indicated object / information, conveying information used to generate the indicated object / information, conveying some part or portion of the indicated object / information, conveying some derivative of the indicated object / information, and conveying some symbol representing the indicated object / information.
[0110] According to example embodiments, user equipment, base stations, eNBs, RRHs, gNBs, femto base stations, network controllers, computers, etc. may be (or may include) hardware, firmware, hardware executing software, or any combination thereof. Such hardware may include processing or control circuitry such as, but not limited to, one or more processors, one or more CPUs, one or more controllers, one or more ALUs, one or more DSPs, one or more microcomputers, one or more FPGAs, one or more SoCs, one or more PLUs, one or more microprocessors, one or more ASICs, or any other device or devices capable of responding to and executing instructions in a defined manner.
[0111] Benefits, other advantages, and solutions to problems have been described above with regard to particular embodiments of the present disclosure. However, the benefits, advantages, solutions to problems, and any elements that cause or may bring about such benefits, advantages, or solutions, or that may make such benefits, advantages, or solutions more significant, should not be construed as critical, necessary, or essential features or elements of any or all claims.
Claims
1. obtaining, by at least one processor of at least one first network node in a communications network, at least one first key performance metric (KPM) data type from a plurality of KPM data types, the plurality of KPM data types including current KPM data, forecasted KPM data, and forecasted guaranteed KPM data; sending, by the at least one processor, at least one first parameter to an application function, the at least one first parameter identifying the at least one first KPM data type; and controlling, by the at least one processor, operation of the application function based on the at least one first parameter.
2. The step of obtaining at least one first KPM data type includes: a first step of determining resource information, the resource information including predicted resource availability and guaranteed predicted performance resource availability; a second step of determining policy information for data flows in the application function, the policy information including policy capability information and guaranteed predicted performance capability information; and a third step of determining advertising information for the data flow based on the resource information and the policy information, the advertising information corresponding to the at least one first KPM data type.
3. 3. The method of claim 2, wherein the step of sending the at least one first parameter further comprises sending the advertising information to the application function, the advertising information including the at least one first parameter, the at least one first parameter identifying the KPM data type for one or more KPMs.
4. 4. The method of claim 3, further comprising receiving from the application function a selected KPM data type for a first KPM of the one or more KPMs, the selected KPM data type being one of the plurality of KPM data types.
5. The selected KPM data type is: a first KPM service associated with said current KPM data; a second KPM service associated with the predictive KPM data; or a third KPM service associated with the forecast assurance KPM data, and the selected KPM data type identifies one of the first KPM service, the second KPM service, or the third KPM service.
6. processing at least one first data report for at least one first duration for the first KPM based on the selected KPM data type; The step of controlling the operation of the application function includes:
6. The method of claim 5, further comprising: sending to the application function the selected KPM data type and at least one KPM value for the first KPM to cause the application function to adapt an application session to network conditions.
7. The step of processing the at least one first data report includes: if the selected KPM data type identifies the first KPM service, processing the at least one first data report to generate at least one first current KPM value; or if the selected KPM data type identifies the second KPM service or the third KPM service, processing the at least one first data report to generate at least one first predicted KPM value; or if the selected KPM data type identifies the third KPM service, processing the at least one first data report to generate at least one first predicted guaranteed KPM value. The method of claim 6, wherein the method is carried out by at least one of the following:
8. The step of controlling the operation of the application function includes: if the selected KPM data type identifies the first KPM service, sending the at least one first current KPM value to the application function; if the selected KPM data type identifies the second KPM service, sending the at least one first predicted KPM value to the application function; or if the selected KPM data type identifies the third KPM service, transmitting the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value to the application function; The method of claim 7 , wherein the at least one KPM value comprises the at least one first current KPM value, the at least one first forecasted KPM value, or the at least one first forecasted guaranteed KPM value.
9. the selected KPM data type identifies the third KPM service; the processing step processes the at least one first data report to generate at least one first predicted KPM value and at least one first predicted guaranteed KPM value; controlling the operation of the application function includes transmitting the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value to the application function, the at least one KPM value including the at least one first predicted KPM value and the at least one first predicted guaranteed KPM value; The method of claim 6 , further comprising the step of implementing at least one implementation parameter based on the at least one first predicted guaranteed KPM value.
10. The at least one processor a near real-time (RT) radio access network intelligent controller (RIC) in the at least one first network node; a non-real-time radio access network intelligent controller (RIC) in the at least one first network node; a Network Publication Function (NEF), within said at least one first network node; a service management and orchestration (SMO) function located in the at least one first network node; or Mobile Edge Computing (MEC) Platform 2. The method of claim 1, wherein the method is part of at least one of:
11. At least one first network node in a communication network, a memory storing computer readable instructions; operatively connected to the memory; obtaining at least one first key performance metric (KPM) data type from a plurality of KPM data types, the plurality of KPM data types including current KPM data, forecasted KPM data, and forecasted guaranteed KPM data; sending at least one first parameter to an application function, said at least one first parameter identifying said at least one first KPM data type; controlling operation of the application function based on the at least one first parameter; and at least one processor that accesses the computer-readable instructions to execute the instructions.
12. The at least one processor a first step of determining resource information, the resource information including predicted resource availability and guaranteed predicted performance resource availability; a second step of determining policy information for data flows in the application function, the policy information including policy capability information and guaranteed predicted performance capability information; a third step of determining advertising information for the data flow based on the resource information and the policy information, the advertising information corresponding to the at least one first KPM data type; 12. The at least one first network node of claim 11, configured to obtain the at least one first KPM data type by:
13. The at least one processor transmitting the at least one first parameter by sending the advertisement information to the application function, the advertisement information including the at least one first parameter, the at least one first parameter identifying the KPM data type for one or more KPMs; receiving, from the application function, a selected KPM data type for a first KPM of the one or more KPMs, the selected KPM data type being one of a plurality of KPM data types; is configured to run The selected KPM data type is: a first KPM service associated with said current KPM data; a second KPM service associated with the predictive KPM data; or a third KPM service associated with the predictive assurance KPM data, and the selected KPM data type identifies one of the first KPM service, the second KPM service, or the third KPM service.
14. The at least one processor further configured to perform the step of processing at least one first data report for at least one first duration for the first KPM based on the selected KPM data type; The step of controlling the operation of the application function includes:
14. The at least one first network node of claim 13, further comprising: transmitting to the application function the selected KPM data type and at least one KPM value for the first KPM, causing the application function to adapt an application session to network conditions.
15. The at least one processor if the selected KPM data type identifies the first KPM service, processing the at least one first data report to generate at least one first current KPM value; or if the selected KPM data type identifies the second KPM service or the third KPM service, processing the at least one first data report to generate at least one first predicted KPM value; or if the selected KPM data type identifies the third KPM service, processing the at least one first data report to generate at least one first predicted guaranteed KPM value.
15. The at least one first network node of claim 14, further comprising: a) processing the at least one first data report by performing at least one of the following:
Citation Information
Patent Citations
Network parameter optimization method and apparatus
US20200366557A1
Notification of expected event
WO2021018418A1
Microslicing with device groups and service level objectives
WO2021138043A1
Adding per-user equipment controls to radio intelligent controller e2 policy
WO2021176092A1