Network entity and method in a wireless communications network

The method of calculating weighted metrics and updating scheduling rules addresses the complexity and inefficiency of existing transmission scheduling algorithms, resulting in improved efficiency and energy savings in wireless communications networks.

WO2025131240A1PCT designated stage expired Publication Date: 2025-06-26TELEFONAKTIEBOLAGET LM ERICSSON (PUBL) +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2023/086442
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-18
Publication Date
2025-06-26

AI Technical Summary

Technical Problem

Existing transmission scheduling algorithms, such as Low Energy Scheduling Solution (LESS), require numerous rules to handle different types of packets and services, leading to complex and sub-optimal solutions. These algorithms struggle with adapting to changing scenarios and may result in performance degradation for certain services.

Method used

A method is introduced where a network entity calculates weighted metrics based on different sets of scheduling trigger rules. By generating comparative performance data, the network entity decides whether to update the scheduling rules to improve transmission scheduling efficiency and reduce energy consumption.

Benefits of technology

This approach leads to improved transmission scheduling efficiency, reduced energy consumption, and better adaptation to dynamic scenarios, enhancing the overall performance of wireless communications networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2023086442_26062025_PF_FP_ABST
    Figure EP2023086442_26062025_PF_FP_ABST
Patent Text Reader

Abstract

A method performed by a network entity for improving transmission scheduling in a wireless communications network is provided The network entity calculates (202) a first weighted metric based on a first set of characteristics, wherein the first set of characteristics is obtained based on transmissions using a first set of scheduling trigger rules. The network entity calculates (204) a second weighted metric based on a second set of characteristics, wherein the second set of characteristics is obtained based on transmissions using the second set of scheduling trigger rules, wherein the second set of scheduling trigger rules differs from the first set of scheduling trigger rules. The network entity generates (205) comparative performance data based on the first weighted metric and the second weighted metric. The network entity decides (206), taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] NETWORK ENTITY AND METHOD IN A WIRELESS COMMUNICATIONS NETWORK

[0002] TECHNICAL FIELD

[0003] Embodiments herein relate to a network entity and method therein. In some aspects, they relate to transmission scheduling in a wireless communications network.

[0004] BACKGROUND

[0005] In a typical wireless communication network, wireless devices, also known as wireless communication devices, mobile stations, stations (STA) and / or User Equipment (UE), communicate via a Wide Area Network or a Local Area Network such as a Wi-Fi network or a cellular network comprising a Radio Access Network (RAN) part and a Core Network (CN) part. The RAN covers a geographical area which is divided into service areas or cell areas, which may also be referred to as a beam or a beam group, with each service area or cell area being served by a radio network node such as a radio access node e.g., a Wi-Fi access point, a Base Station (BS) or a radio base station (RBS), which in some networks may also be denoted, for example, a Base Station (BS), a NodeB, eNodeB (eNB), or gNodeB (gNB) as denoted in Fifth Generation (5G) telecommunications. A service area or cell area is a geographical area where radio coverage is provided by the radio network node. The radio network node communicates over an air interface operating on a radio frequency with the wireless devices within the range of the radio network node.

[0006] 3rd Generation Partnership Project (3GPP) is the standardization body for specifying the standards for the cellular system evolution, e.g., including 3G, 4G, 5G and the future evolutions. Specifications for Evolved Universal Terrestrial Radio Access (E- UTRA) and Evolved Packet System (EPS) have been completed within the 3GPP. In 4G also called a Fourth Generation (4G) network, EPS is core network and E-UTRA is radio access network. In 5G, 5GC is core network, NR is radio access network. As a continued network evolution, the new release of 3GPP specifies a 5G network also referred to as 5G New Radio (NR) and 5G Core (5GC).

[0007] Frequency bands for 5G NR are being separated into two different frequency ranges, Frequency Range 1 (FR1) and Frequency Range 2 (FR2). FR1 comprises sub-6 GHz frequency bands. Some of these bands are bands traditionally used by legacy standards but have been extended to cover potential new spectrum offerings from 410 MHz to 7125 MHz. FR2 comprises frequency bands from 24.25 GHz to 52.6 GHz. Bands in this millimeter wave range have shorter range but higher available bandwidth than bands in the FR1.

[0008] Multi-antenna techniques may significantly increase the data rates and reliability of a wireless communication system. For a wireless connection between a single user, such as UE, and a base station (BS), the performance is in particular improved if both the transmitter and the receiver are equipped with multiple antennas, which results in a Multiple-Input Multiple-Output (MIMO) communication channel. This may be referred to as Single-User (SU)-MIMO. In the scenario where MIMO techniques is used for the wireless connection between multiple users and the base station, MIMO enables the users to communicate with the base station simultaneously using the same time-frequency resources by spatially separating the users, which increases further the cell capacity. This may be referred to as Multi-User (MU)-MIMO. Note that MU-MIMO may benefit when each UE only has one antenna. The cell capacity can be increased linearly with respect to the number of antennas at the BS side. Due to that, more and more antennas are employed in BS. Such systems and / or related techniques are commonly referred to as massive MIMO.

[0009] In addition to faster peak Internet connection speeds, 5G planning aims at higher capacity than current 4G, allowing higher number of mobile broadband users per area unit, and allowing consumption of higher or unlimited data quantities in gigabyte per month and user. This would make it feasible for a large portion of the population to stream high-definition media many hours per day with their mobile devices, when out of reach of Wi-Fi hotspots. 5G research and development also aims at improved support of machine to machine communication, also known as the Internet of things, aiming at lower cost, lower battery consumption and lower latency than 4G equipment.

[0010] Scheduling modifications, e.g. Low Energy Scheduling Solution (LESS), may be used to increase opportunities for micro-sleep during transmission (msTX) by delaying traffic to some users when this is acceptable given current KPIs and the users’ performance targets.

[0011] Reinforcement learning

[0012] Reinforcement learning (RL) is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward. Reinforcement learning is one of three basic machine learning paradigms, alongside supervised learning and unsupervised learning. The focus is on finding a balance between exploration, of uncharted territory, and exploitation, of current knowledge.

[0013] SUMMARY

[0014] As part of developing embodiments herein a problem was identified by the inventor and will first be discussed.

[0015] LESS typically requires many additional rules to ensure good performance. If all packets are treated the same then the LESS algorithm will succeed only in increasing the number of empty subframes, but it will almost certainly result in significant performance degradation for some services. Therefore, special rules for how the LESS algorithm shall handle e.g., Voice over Internet Protocol (VoIP) packets, Ultra Reliable Low Latency Communications (URLLC) packets, Augmented Reality (AR) and / or Virtual Reality (VR) services, cloud gaming, Radio Resource Control (RRC) status message, Medium Access Control (MAC) Control Element (CE) and / or Radio Link Control (RLC) status Packet Data Units (PDUs) are defined. A well-tuned LESS algorithm also needs to consider if e.g., there are multiple packets to the same UE or if multiple packets are to be scheduled to different UEs, how to prioritize retransmissions over new transmissions, etc. This is not a complete list of special exemptions that are needed. Different network operators may have different opinions on what special rules that must be applied together with LESS.

[0016] This result is a complex and sub-optimal solution overall:

[0017] • These rules require tuning, which today is done by manual work.

[0018] • A fixed set of rules cannot adapt to changing scenarios, e.g., different sites and / or different time of day and / or new emerging services.

[0019] • Rules for which scheduling is triggered very often result in low energy saving gains, while rules for which scheduling is triggered very seldom result in degraded quality for some users and / or services.

[0020] • It is unclear if the set of rules is complete or if additional rules is needed to achieve better performance. Furthermore, some rules may be unnecessary, only reducing the energy saving potential without adding any value.

[0021] • Lack of trust in the resulting ad-hoc solutions hampers deployment in live networks. LESS is only used in some LTE networks today, and for NR it may not even implemented and supported as a feature.

[0022] • Energy gains depending on hardware makes trade-offs difficult. • LESS ignores potential gains from modified UL scheduling.

[0023] An object of embodiments herein is to improve the performance of the wireless communications network by providing a more efficient transmission scheduling.

[0024] According to an aspect of embodiments herein, the object is achieved by a method performed by a network entity for improving transmission scheduling in a wireless communications network.

[0025] The network entity calculates a first weighted metric based on a first set of characteristics. The first set of characteristics is obtained based on transmissions using a first set of scheduling trigger rules.

[0026] The network entity calculates a second weighted metric based on a second set of characteristics. The second set of characteristics is obtained based on transmissions using the second set of scheduling trigger rules. The second set of scheduling trigger rules differs from the first set of scheduling trigger rules.

[0027] The network entity generates comparative performance data based on the first weighted metric and the second weighted metric.

[0028] The network entity decides, taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules.

[0029] According to another aspect of embodiments herein, the object is achieved by a network entity configured to improve transmission scheduling in a wireless communications network. The network entity 110 further being configured to:

[0030] - Calculate a first weighted metric based on a first set of characteristics, wherein the first set of characteristics is adapted to be obtained based on transmissions using a first set of scheduling trigger rules, calculate a second weighted metric based on a second set of characteristics, wherein the second set of characteristics is adapted to be obtained based on transmissions using the second set of scheduling trigger rules, wherein the second set of scheduling trigger rules is adapted to differ from the first set of scheduling trigger rules, generate comparative performance data based on the first weighted metric and the second weighted metric, and decide, taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] Examples of embodiments herein are described in more detail with reference to attached drawings in which:

[0032] Figure 1 is a schematic block diagram illustrating embodiments of a wireless communications network.

[0033] Figure 2 is a flowchart depicting embodiments of a method in a network entity.

[0034] Figure 3 is a flowchart depicting examples of embodiments herein.

[0035] Figure 4 is a schematic block diagram illustrating examples of embodiments herein.

[0036] Figure 5 is a schematic block diagram illustrating examples of embodiments herein.

[0037] Figure 6 is a schematic block diagram illustrating examples of embodiments herein.

[0038] Figure 7 is a schematic block diagram illustrating embodiments of a network entity.

[0039] Figure 8 shows an example of a communication system QQ100 in accordance with some embodiments.

[0040] Figure 9 shows a UE QQ200 in accordance with some embodiments.

[0041] Figure 10 shows a network node QQ300 in accordance with some embodiments.

[0042] Figure 11 is a block diagram of a host QQ400, which may be an embodiment of the host QQ116 of Fig. 8, in accordance with various aspects described herein.

[0043] Figure 12 is a block diagram illustrating a virtualization environment QQ500 in which functions implemented by some embodiments may be virtualized.

[0044] Figure 13 shows a communication diagram of a host QQ602 communicating via a network node QQ604 with a UE QQ606 over a partially wireless connection in accordance with some embodiments.

[0045] DETAILED DESCRIPTION

[0046] Embodiments herein relate to a wireless communications network and the determination of scheduling trigger rules.

[0047] As mentioned above, an object of embodiments herein is to improve the performance of the wireless communications network by providing a more efficient transmission scheduling. Embodiments herein provides a method to dynamically obtain a set of scheduling trigger rules that maximizes an aggregate KPI metric in a current scenario, and continuously improve the adaptive rule selection. The method may be implemented using reinforcement learning, where the reward may reflect the aggregated KPI metric.

[0048] Examples of embodiments herein may provide the advantage of improving transmission scheduling and improving the performance of the wireless communications network, by calculating a weighted metric, e.g., a reward value, intended to capture the ‘goodness’ of a set of scheduling triggering rules.

[0049] Further, examples of embodiments herein may provide the advantage of a reduced energy consumption subject to meeting and or / maintaining scenario dependent KPIs, e.g., minimize energy usage while ensuring sufficiently good performance. Unless an observed energy reduction is achieved, delaying some packets makes no sense.

[0050] Yet further, examples of embodiments herein may provide the advantage of a flexible method by a modifiable the function for calculating the weighted metric or reward value. Training data may be obtained with direct interaction with the network. No separate collection of data is required to feed the algorithm.

[0051] Examples of embodiments herein may work in dynamic, uncertain environments, and decisions may be adopted to actual traffic differences, deployment differences, and hardware differences.

[0052] The state-of-the-art LESS algorithm only focus on DL data. But how UL data is scheduled will have an impact on radio hardware that supports discontinuous transmission (DRX). Examples of embodiments herein may appreciate and utilize all potential energy reductions supported by the hardware.

[0053] By adding scenario parameters as model inputs, the model may learn appropriate behaviour / actions / scheduling strategies over time for a range of scenarios, and infer the suitable action immediately when a scenario occurs again.

[0054] Figure 1 is a schematic overview depicting a wireless communications network 100 wherein embodiments herein may be implemented. The wireless communications network 100 comprises one or more RANs and one or more CNs. The wireless communications network 100 may use a number of different technologies, such as Wi-Fi, Long Term Evolution (LTE), LTE-Advanced, 5G, New Radio (NR), 6G, Wideband Code Division Multiple Access (WCDMA), Global System for Mobile communications / enhanced Data rate for GSM Evolution (GSM / EDGE), or Ultra Mobile Broadband (UMB), just to mention a few possible implementations. Embodiments herein relate to recent technology trends that are of particular interest in a 5G context, however, embodiments are also applicable in further development of the existing wireless communication systems such as e.g. WCDMA and LTE.

[0055] A number of CN nodes operate in the communications network 100 such as e.g., the network entity 110. The CN node, such as the network entity 110, provides CN functionalities.

[0056] A number of RAN nodes operate in the communications network 100 such as e.g., the network entity 110. The network entity 110 provides radio coverage in a number of cells which may also be referred to as a beam or a beam group of beams.

[0057] The network entity 110 may be any of an NG-RAN node, a transmission and reception point e.g. a base station, a radio access network node such as a Wireless Local Area Network (WLAN) access point or an Access Point Station (AP STA), an access controller, a base station, e.g. a radio base station such as a NodeB, an evolved Node B (eNB, eNode B), a gNB, a base transceiver station, a radio remote unit, an Access Point Base Station, a base station router, a transmission arrangement of a radio base station, a stand-alone access point or any other network unit capable of communicating with a UE, such as e.g., a UE 121, within the service area served by the RU 115 depending e.g. on the radio access technology and terminology used. The RU 115 may be referred to as a serving RAN node and communicates with UEs such as the UE 121 , with Downlink (DL) transmissions to the UE121 , and in Uplink (UL) transmissions from the UE 121.

[0058] A number of UEs, such as e.g., the wireless device 121 , operate in the wireless communication network 100. The wireless device 121 may also be referred to as an loT device, a mobile station, a non-access point (non-AP), a STA, and / or a wireless terminal. It should be understood by the skilled in the art that “UE” is a non-limiting term which means any terminal, wireless communication terminal, user equipment, Machine Type Communication (MTC) device, Device to Device (D2D) terminal, a radio device in a vehicle, or node e.g., smart phone, laptop, mobile phone, sensor, relay, mobile tablets or even a small base station communicating within a cell.

[0059] Methods herein may be performed by the network entity 110. As an alternative, a Distributed Node (DN) and functionality, e.g. comprised in the cloud 190 as shown in Figure 1 , may be used for performing or partly performing the methods herein.

[0060] Alternatively, the network entity 110 may be implemented in a remote server (not shown) connected to the wireless communications network 100.

[0061] A number of embodiments will now be described, some of which may be seen as alternatives, while some may be used in combination.

[0062] A method according to embodiments herein will now be described from the view of the network entity 110, together with Figure 2. Figure 2 depicts example embodiments of a method performed by the network entity 110 for improving transmission scheduling in a wireless communications network 100. The method comprises the following actions, which actions may be taken in any suitable order. Actions that are optional are presented in dashed boxes in Figure 2.

[0063] Action 201

[0064] In some embodiments, the network entity 110 determines the first set of scheduling trigger rules. The first set of scheduling trigger rules may be determined based on a first set of current scenario parameters. The scenario parameters may e.g., comprise network utilization or network load in terms of PRB utilization or a number of connected UEs, channel conditions, individual UE or UE group-typical traffic, Quality of Experience (QoE) and / or Quality of Service (QoS) classes, cell bandwidth, number of cells for each radio unit, number of TX and RX antennas, etc.

[0065] In some embodiments, prior to determining the first set of scheduling trigger rules, the network entity obtains the first set of current scenario parameters. The first set of scenario parameters may e.g., be obtained from another network entity or network node.

[0066] The first set of scheduling trigger rules may comprise one or more respective rules. A respective rule of the first set of scheduling trigger rules may be associated to any one of: A maximum scheduling delay related to a size of a packet, a number of packets in a buffer, a number of bytes in a buffer or a function of one or more characteristics.

[0067] Examples of scheduling trigger rules associated with a maximum scheduling delay may e.g., comprise that packets of size Xkbytes can tolerate a scheduling delay of Dk, packets with flow indicator ) can tolerate a scheduling delay of Dt, packets related to control signaling, e.g., transmitted on a specific signaling radio bearer, can tolerate a scheduling delay of Dctrl, packets related to control signaling triggering a certain action on the receiver side, e.g., a Radio Link Control (RLC) Poll Packet Data Unit (PDU) which triggers a Status Report or a scheduling that triggers Medium Access Control (MAC) Buffer Status Report (BSR), with a specific content can tolerate a scheduling delay of DctriTrtg’or aretransmission can tolerate a scheduling latency of Dr.

[0068] Examples of scheduling trigger rules associated with a number of packets in a buffer may e.g., comprise that a total number of buffered packets larger than Ntottriggers immediate scheduling, a total number of buffered bytes larger than Bioitriggers immediate scheduling, a single user having more than Nuserbuffered packets triggers immediate scheduling, or a single UE having more than Buserbuffered bytes triggers immediate scheduling.

[0069] Examples of a scheduling trigger rules associated with a function of one or more characteristics may e.g., comprise a function of one or more characteristics, such as one or more characteristics of the first set of characteristics, or a function expressed as a neural network (NN) with one or more characteristics, such as one or more characteristics of the first set of characteristics, as features, such as input layer, and the scheduling trigger rules as output, such as output layer.

[0070] In some embodiments, determining the first set of scheduling trigger rules further comprises applying the first set of scheduling trigger rules. This may e.g., mean that the first set of scheduling trigger rules is used for transmissions in the wireless communications network 100.

[0071] Action 202

[0072] The network entity calculates a first weighted metric based on a first set of characteristics. The first set of characteristics is obtained based on transmissions using the first set of scheduling trigger rules. The first weighted metric may e.g., be calculated as a sum of characteristics of the first set characteristics, where each characteristic of the first set of characteristics is assigned a weight. This way, the impact of a characteristic on the weighted metric may be adapted. The first set of characteristics may e.g., be obtained based on transmissions using the first set of scheduling trigger rules during a first time period.

[0073] The first set of characteristics may comprise one or more characteristics. A respective characteristic of the first set of characteristics may be associated to any one out of: A measured energy consumption, a total scheduled data volume, an uplink data rate, a downlink data rate, a UE time to content, a scheduling efficiency, or a latency.

[0074] A characteristic associated with a measured energy consumption may e.g., comprise a measured energy consumption of the network entity 110. Examples of characteristics associated with a total scheduled uplink data volume may e.g., comprise a total scheduled data volume in uplink, or a total scheduled data volume in downlink, or a total scheduled data volume in both uplink and downlink.

[0075] A characteristic associated with an uplink data rate may e.g., comprise an X- percentile uplink data rate, where X is a configurable parameter.

[0076] A characteristic associated with a downlink data rate may e.g., comprise a Y- percentile downlink data rate, where Y is a configurable parameter.

[0077] A characteristic associated with a UE time to content (TTC), may e.g., comprise a Z- percentile estimated user TTC, where Z is a configurable parameter.

[0078] X, Y and Z may be the same parameter, or they may be separate parameters that are separately configurable.

[0079] Examples of characteristics associated with a scheduling efficiency may e.g., comprise Physical Downlink Shared Channel (PDSCH) scheduling efficiency per Transmission Time Interval (TTI), or Physical Uplink Shared Channel (PUSCH) efficiency per (TTI).

[0080] Examples of characteristics associated with a latency may e.g., comprise a latency of packets in relation to packet size, QoS and / or packet type.

[0081] In some embodiments, a characteristic of the first set of characteristics is normalized before calculating the weighted metric. The characteristics may e.g., be normalized by a standard scaler in order to make machine learning model operation more balanced and allow all characteristics an equal opportunity to affect the machine learning model output, i.e. the scheduling decisions.

[0082] In some embodiments, a characteristic of the first set of characteristics is related to a characteristic specific threshold. In other words, each characteristic in the second set of characteristics may be associated with a respective characteristic specific threshold. This may e.g., mean that a characteristic is expressed as a difference between a measured value and a threshold.

[0083] In some embodiments, calculating the first weighted metric comprises the network entity 110 associating each respective characteristic with a weight. A characteristic related to energy consumption or latency reduces the weighted metric. By this, an increased energy consumption and / or latency may have a negative impact on the first weighted metric. This may be advantageous since it may encourage the network entity 110 to update, or change, the scheduling trigger rules to achieve a better energy efficiency and reduced latency.

[0084] Action 203 In some embodiments, the network entity 110 determines the second set of scheduling trigger rules. The second set of scheduling trigger rules is determined based on a second set of current scenario parameters, the second set of current scenario parameters being any out of: identical as the first set of current scenario parameters, or different from the first set of current scenario parameters. The second set of scheduling trigger rules are different from the first set of scheduling trigger rules. The second set of scheduling trigger rules may alternatively, or additionally, be determined taking the first set of scheduling rules and / or the first weighted metric into account.

[0085] In some embodiments, prior to determining the second set of scheduling trigger rules, the network entity obtains the second set of current scenario parameters. The second set of scenario parameters may e.g., be obtained from another network entity or network node.

[0086] Examples of scheduling trigger rules associated with a maximum scheduling delay may e.g., comprise that packets of size Xkbytes can tolerate a scheduling delay of Dk, packets with flow indicator f can tolerate a scheduling delay of packets related to control signaling, e.g., transmitted on a specific signaling radio bearer, can tolerate a scheduling delay of Dctrl, packets related to control signaling triggering a certain action on the receiver side, e.g., a Radio Link Control (RLC) Poll Packet Data Unit (PDU) which triggers a Status Report or a scheduling that triggers Medium Access Control (MAC) Buffer Status Report (BSR), with a specific content can tolerate a scheduling delay of DctriTrtg’or aretransmission can tolerate a scheduling latency of Dr.

[0087] Examples of scheduling trigger rules associated with a number of packets in a buffer may e.g., comprise that a total number of buffered packets larger than / Vtottriggers immediate scheduling, a total number of buffered bytes larger than Bioitriggers immediate scheduling, a single user having more than Nuserbuffered packets triggers immediate scheduling, or a single UE having more than Buserbuffered bytes triggers immediate scheduling

[0088] Examples of a scheduling trigger rules associated with a function of one or more characteristics may e.g., comprise a function of one or more characteristics, such as one or more characteristics of the second set of characteristics, or a function expressed as a neural network (NN) with one or more characteristics, such as one or more characteristics of the second set of characteristics, as features, such as input layer, and the scheduling trigger rules as output, such as output layer.

[0089] The second set of scheduling rules differing from the first set of scheduling trigger rules may mean that at least one of the rules in the second set of scheduling trigger rules is different from a corresponding rule in the first set of scheduling trigger rules. Alternatively, or additionally, it may mean that a rule has been added to and / or removed from the second set of scheduling trigger rules compared to the first set of scheduling trigger rules.

[0090] In some embodiments, determining the second set of scheduling trigger rules further comprises applying the second set of scheduling trigger rules. This may e.g., mean that the second set of scheduling trigger rules is used for transmissions in the wireless communications network 100.

[0091] Action 204

[0092] The network entity 110 calculates the second weighted metric based on a second set of characteristics. The second set of characteristics is obtained based on transmissions using the second set of scheduling trigger rules. The second set of scheduling trigger rules differs from the first set of scheduling trigger rules. The second weighted metric may e.g., be calculated as a sum of characteristics of the second set characteristics, where each characteristic of the second set of characteristics is assigned a weight. This way, the impact of a characteristic on the weighted metric may be adapted.

[0093] The second set of characteristics may e.g., be obtained based on transmissions using the second set of scheduling trigger rules during a second time period, e.g., occurring after the first time period.

[0094] The second set of characteristics may comprise one or more characteristics. A respective characteristic of second set of characteristics may be associated to any one out of: A measured energy consumption, a total scheduled uplink data volume, a total scheduled downlink data volume, an uplink data rate, a downlink data rate, a user equipment time to content, a scheduling efficiency, and a latency.

[0095] A characteristic associated with a measured energy consumption may e.g., comprise a measured energy consumption of the network entity 110.

[0096] Examples of characteristics associated with a total scheduled uplink data volume may e.g., comprise a total scheduled data volume in uplink, or a total scheduled data volume in downlink, or a total scheduled data volume in both uplink and downlink.

[0097] A characteristic associated with an uplink data rate may e.g., comprise an X- percentile uplink data rate, where X is a configurable parameter.

[0098] A characteristic associated with a downlink data rate may e.g., comprise a Y- percentile downlink data rate, where Y is a configurable parameter.

[0099] A characteristic associated with a UE time to content (TTC), may e.g., comprise a Z- percentile estimated user TTC, where Z is a configurable parameter. X, Y and Z may be the same parameter, or they may be separate parameters that are separately configurable.

[0100] Examples of characteristics associated with a scheduling efficiency may e.g., comprise Physical Downlink Shared Channel (PDSCH) scheduling efficiency per Transmission Time Interval (TTI), or Physical Uplink Shared Channel (PUSCH) efficiency per (TTI).

[0101] Examples of characteristics associated with a latency may e.g., comprise a latency of packets in relation to size, QoS and / or packet type.

[0102] In some embodiments, a characteristic of the second set of characteristics is normalized before calculating the weighted metric. The characteristics may e.g., be normalized by a standard scaler in order to make machine learning model operation more balanced and allow all characteristics an equal opportunity to affect the machine learning model output, i.e. the scheduling decisions.

[0103] In some embodiments, a characteristic of the second set of characteristics is related to a characteristic specific threshold. In other words, each characteristic in the second set of characteristics may be associated with a respective characteristic specific threshold. This may e.g., mean that a characteristic is expressed as a difference between a measured value and a threshold.

[0104] In some embodiments, calculating the second weighted metric comprises the network entity 110 associating each respective characteristic with a weight. A characteristic related to energy consumption or latency reduces the weighted metric. By this, an increased energy consumption and / or latency may have a negative impact on the second weighted metric. This may be advantageous since it may encourage the network entity 110 to update, or change, the scheduling trigger rules to achieve a better energy efficiency and reduced latency.

[0105] Action 205

[0106] The network entity generates comparative performance data based on the first weighted metric and the second weighted metric. The comparative performance data may, e.g., comprise a relative performance difference of the wireless communication network 100. The difference may be between transmissions using the first set of scheduling trigger rules and transmissions using the second set of scheduling trigger rules. In other words, the comparative performance data may indicate the performance difference in the wireless communication network 100.

[0107] Action 206 The network entity 110 decides, taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules. The network entity 110 may e.g., decide whether or not to update the second set of scheduling triggering rules by evaluating the comparative performance data. In other words, the network entity 110 may, based on the evaluation of the comparative performance data, decide whether or not to update the second set of scheduling triggering rules.

[0108] In some embodiments, the network entity 110 further decides whether or not to update a scheduling trigger rule updating algorithm based on the comparative performance data. E.g., if the comparative performance data indicates an increased performance in the wireless communications network 100, the scheduling trigger rule updating algorithm may be updated such that it is more likely that the updated scheduling rules, such as the second set of scheduling trigger rules, may be applied in similar scenarios at a future time. Correspondingly, if the comparative performance data indicates a decreased performance in the wireless communications network 100, the scheduling trigger rule updating algorithm may updated such that it is less likely that the updated scheduling rules, such as the second set of scheduling trigger rules, may be applied in similar scenarios at future time. This may mean that the method is implemented as e.g., a reinforced learning method. That is, for each iteration the scheduling trigger rule updating algorithm may be updated based on the result of the iteration, such as the comparative performance data, where the weighted metric may be seen as a reward.

[0109] When decided not to update the second set of scheduling trigger rules, the method may continue with Action 208.

[0110] Action 207

[0111] In some embodiments, when decided to update the second set of scheduling triggering rules, or a preceding subsequent set of scheduling trigger rules, the network entity 110 determines a subsequent set of scheduling trigger rules. The subsequent set of scheduling trigger rules is determined based on a subsequent set of current scenario parameters. The subsequent set of current scenario parameters may be any out of: identical as the second, or a preceding subsequent, set of current scenario parameters, or different from the second, or preceding subsequent, set of current scenario parameters. The subsequent set of scheduling trigger rules are different from the second, or a preceding subsequent, set of scheduling trigger rules. The subsequent set of scheduling trigger rules may alternatively, or additionally, be determined by taking the second, or a preceding subsequent, set of scheduling rules and / or the second, or a preceding subsequent, weighted metric into account. The subsequent set of scheduling trigger rules may further be determined by taking the comparative performance data, or a preceding subsequent comparative performance data, into account.

[0112] In some embodiments, prior to determining the subsequent set of scheduling trigger rules, the network entity obtains the subsequent set of current scenario parameters. The subsequent set of scenario parameters may e.g., be obtained from another network entity or network node.

[0113] Examples of scheduling trigger rules associated with a maximum scheduling delay may e.g., comprise that packets of size Xkbytes can tolerate a scheduling delay of Dk, packets with flow indicator f can tolerate a scheduling delay of packets related to control signaling, e.g., transmitted on a specific signaling radio bearer, can tolerate a scheduling delay of Dctrl, packets related to control signaling triggering a certain action on the receiver side, e.g., a Radio Link Control (RLC) Poll Packet Data Unit (PDU) which triggers a Status Report or a scheduling that triggers Medium Access Control (MAC) Buffer Status Report (BSR), with a specific content can tolerate a scheduling delay of DctriTrtg’or aretransmission can tolerate a scheduling latency of Dr.

[0114] Examples of scheduling trigger rules associated with a number of packets in a buffer may e.g., comprise that a total number of buffered packets larger than Ntottriggers immediate scheduling, a total number of buffered bytes larger than Bioitriggers immediate scheduling, a single user having more than Nuserbuffered packets triggers immediate scheduling, or a single UE having more than Buserbuffered bytes triggers immediate scheduling

[0115] Examples of a scheduling trigger rules associated with a function of one or more characteristics may e.g., comprise a function of one or more characteristics, such as one or more characteristics of the second, or preceding subsequent, set of characteristics, or a function expressed as a neural network (NN) with one or more characteristics, such as one or more characteristics of the second, or preceding subsequent, set of characteristics, as features, such as input layer, and the scheduling trigger rules as output, such as output layer.

[0116] The subsequent set of scheduling rules differing from the second, or preceding subsequent, set of scheduling trigger rules may mean that at least one of the rules in the subsequent set of scheduling trigger rules is different from a corresponding rule in the second, or preceding subsequent, set of scheduling trigger rules. Alternatively, or additionally, it may mean that a rule has been added to and / or removed from the subsequent set of scheduling trigger rules compared to the second, or preceding subsequent, set of scheduling trigger rules. In some embodiments, determining the subsequent set of scheduling trigger rules further comprises applying the subsequent set of scheduling trigger rules. This may e.g., mean that the subsequent set of scheduling trigger rules is used for transmissions in the wireless communications network 100.

[0117] Action 208

[0118] In some embodiments, when decided to update the second set of scheduling triggering rules, or a preceding subsequent set of scheduling trigger rules, the network entity 110 calculates a subsequent weighted metric based on a subsequent set of characteristics. The subsequent set of characteristics is obtained based on transmissions using a subsequent set of scheduling trigger rule. The subsequent set of scheduling trigger rules differs from a preceding set of scheduling trigger rules. The subsequent weighted metric may e.g., be calculated as a sum of characteristics of the subsequent set characteristics, where each characteristic of the subsequent set of characteristics is assigned a weight. This way, the impact of a characteristic on the weighted metric may be adapted.

[0119] The subsequent set of characteristics may e.g., be obtained based on transmissions using the subsequent set of scheduling trigger rules during a subsequent time period, e.g., occurring after the second time period or a preceding subsequent time period.

[0120] The preceding set of scheduling trigger rules may e.g., comprise the second set of scheduling rules, or a preceding subsequent set of scheduling trigger rules. E.g., if the set of scheduling trigger rules to be updated is the second set of scheduling trigger rules, the preceding set of scheduling trigger rules may comprise the second set of scheduling trigger rules. If the set of scheduling trigger rules to be updated is a preceding subsequent set of scheduling trigger rules, the preceding set of scheduling rules may comprise a preceding subsequent set of scheduling rules. In other words, the subsequent set of scheduling rules may differ from the set of scheduling rules that the current set of scheduling rules, i.e., the subsequent set of scheduling trigger rules, was updated from.

[0121] The subsequent set of characteristics may comprise one or more characteristics. A respective characteristic of subsequent set of characteristics may be associated to any one out of: A measured energy consumption, a total scheduled uplink data volume, a total scheduled downlink data volume, an uplink data rate, a downlink data rate, a user equipment time to content, a scheduling efficiency, and a latency.

[0122] A characteristic associated with a measured energy consumption may e.g., comprise a measured energy consumption of the network entity 110. Examples of characteristics associated with a total scheduled uplink data volume may e.g., comprise a total scheduled data volume in uplink, or a total scheduled data volume in downlink, or a total scheduled data volume in both uplink and downlink.

[0123] A characteristic associated with an uplink data rate may e.g., comprise an X- percentile uplink data rate, where X is a configurable parameter.

[0124] A characteristic associated with a downlink data rate may e.g., comprise a Y- percentile downlink data rate, where Y is a configurable parameter.

[0125] A characteristic associated with a UE time to content (TTC), may e.g., comprise a Z- percentile estimated user TTC, where Z is a configurable parameter.

[0126] X, Y and Z may be the same parameter, or they may be separate parameters that are separately configurable.

[0127] Examples of characteristics associated with a scheduling efficiency may e.g., comprise Physical Downlink Shared Channel (PDSCH) scheduling efficiency per Transmission Time Interval (TTI), or Physical Uplink Shared Channel (PUSCH) efficiency per (TTI).

[0128] Examples of characteristics associated with a latency may e.g., comprise a latency of packets in relation to size, QoS and / or packet type.

[0129] In some embodiments, a characteristic of the subsequent set of characteristics is normalized before calculating the weighted metric. The characteristics may e.g., be normalized by a standard scaler in order to make machine learning model operation more balanced and allow all characteristics an equal opportunity to affect the machine learning model output, i.e. the scheduling decisions.

[0130] In some embodiments, a characteristic of the subsequent set of characteristics is related to a characteristic specific threshold. In other words, each characteristic in the subsequent set of characteristics may be associated with a respective characteristic specific threshold. This may e.g., mean that a characteristic is expressed as a difference between a measured value and a threshold.

[0131] In some embodiments, calculating the subsequent weighted metric comprises the network entity 110 associating each respective characteristic with a weight. A characteristic related to energy consumption or latency reduces the weighted metric. By this, an increased energy consumption and / or latency may have a negative impact on the second weighted metric. This may be advantageous since it may encourage the network entity 110 to update, or change, the scheduling trigger rules to achieve a better energy efficiency and reduced latency. In some embodiments, when decided not to update the second set of scheduling triggering rules, or the subsequent set of scheduling trigger rules, the network entity 110 calculates a subsequent weighted metric based on the subsequent set of characteristics. The subsequent set of characteristics is obtained based on transmissions using the second set of scheduling rules, or the subsequent set of scheduling trigger rule.

[0132] This may e.g., be performed in response the network entity 110 deciding not the update the second set of scheduling rules in Action 206 or in response the network entity 110 deciding not the update the subsequent set of scheduling rules in Action 210.

[0133] The subsequent set of characteristics may e.g., be obtained based on transmissions using the subsequent set of scheduling trigger rules, or the second set of scheduling trigger rules, during a subsequent time period, e.g., occurring after the second time period or a preceding subsequent time period.

[0134] Action 209

[0135] In some embodiments, the network entity 110 generates subsequent comparative performance data based on a preceding weighted metric and the subsequent weighted metric. The subsequent comparative performance data may, e.g., comprise a relative performance difference of the wireless communication network 100. The difference may be between transmissions using the second set of scheduling trigger rules and transmissions using the preceding set of scheduling trigger rules. In other words, the comparative performance data may indicate the performance difference in the wireless communication network 100 achieved when changing from the preceding set of scheduling trigger rules to the subsequent set of scheduling trigger rules.

[0136] The preceding weighed metric may e.g., comprise the second weighted metric, or a preceding subsequent weighted metric. E.g., if the set of scheduling trigger rules to be updated is the second set of scheduling trigger rules, the preceding weighted metric may comprise the second weighted metric. If the set of scheduling trigger rules to be updated is a preceding subsequent set of scheduling trigger rules, the preceding weighted metric may comprise a preceding subsequent weighted metric. In other words, the subsequent comparative performance data is generated based on weighted metric of the current set of scheduling rules, i.e. , the subsequent set of scheduling trigger rules, and the weighted metric of the scheduling trigger rules the current set of scheduling trigger rules was updated from.

[0137] In case it was decided not to update the scheduling trigger rules, e.g., in Action 206 or Action 210, the preceding weighted metric may be the second weighted metric or the preceding subsequent weighted metric. Action 210

[0138] In some embodiments, the network entity 110 decides whether or not to update the subsequent set of scheduling triggering rules taking the subsequent comparative performance data into account. The network entity 110 may e.g., decide whether or not to update the subsequent set of scheduling triggering rules by evaluating the subsequent comparative performance data.

[0139] In some embodiments, the network entity 110 further decides whether or not to update the scheduling trigger rule updating algorithm based on the subsequent comparative performance data. E.g., if the subsequent comparative performance data indicates an increased performance in the wireless communications network 100, the scheduling trigger rule updating algorithm may be updated such that it is more likely that the updated scheduling rules, such as the subsequent set of scheduling trigger rules, may be applied in similar scenarios at a future time. Correspondingly, if the comparative performance data indicates a decreased performance in the wireless communications network 100, the scheduling trigger rule updating algorithm may updated such that it is less likely that the updated scheduling rules, such as the subsequent set of scheduling trigger rules, may be applied in similar scenarios at future time. This may mean that the method is implemented as e.g., a reinforced learning method. That is, for each iteration the scheduling trigger rule updating algorithm may be updated based on the result of the iteration, such as the comparative performance data, where the weighted metric may be seen as a reward.

[0140] When decided to update the subsequent set of scheduling trigger rules, the network entity 110 may repeat any one or more out Actions 207, 208, 209 and 210 described above.

[0141] When decided not to update the subsequent set of scheduling trigger rules, the network entity 110 may repeat any one or more out of Actions 208, 209 and 210 described above. This may mean that the repeated Action 208 comprises network entity 110 calculating a new subsequent weighted metric based on a new subsequent set of characteristics. The new subsequent set of characteristics is obtained based on transmissions using the subsequent set of scheduling trigger rule. The new subsequent set of characteristics is obtained in a time period that occurs after the time period when the preceding subsequent set of characteristics was obtained. Further, the repeated Action 209 may comprise the network entity 110 generating new subsequent comparative performance data, based on a preceding weighted metric and the new subsequent weighted metric. Further, the repeated Action 210 may comprise the network entity 110 deciding whether or not to update the subsequent set of scheduling trigger rules based on the new subsequent comparative performance data.

[0142] Embodiments mentioned above will now be further described and exemplified. The embodiments below are applicable to and may be combined with any suitable embodiment described above.

[0143] According to examples of embodiments herein a method for providing scheduling trigger rules is provided, also shown in Figure 3.

[0144] 531. The network node 110 may apply a first set of scheduling trigger rules, e.g., S(t) = [Si(t) ... SL(t)]. This relates to Action 301 below.

[0145] 532. The network node 110 may obtain a first set of two or more network KPIs resulting from applying said first set of scheduling trigger rules, e.g., during a first timeinterval. The first set of network KPIs may also be referred to as a first set of characteristics. This relates to Action 302 below.

[0146] 533. The network node 110 calculates a first weighted metric based on said first set of KPIs, e.g. R(t) = KPIm(t). This relates to Action 302 below.

[0147] 534. The network 110 may change at least one scheduling triggering rule. This results in a second set of scheduling triggering rules, e.g.,

[0148] S(t + 1) = [S'i t + 1) ... S'L(t + 1)]. This relates to Action 303 below.

[0149] 535. The network node 110 may apply said second set scheduling trigger rules, e.g., during a second time interval. This relates to Action 303 below.

[0150] 536. The network node 110 may obtain a second set of two or more network KPIs resulting from applying said second set of scheduling trigger rules during a second timeinterval. The second set of network KPIs may also be referred to as a second set of characteristics. This relates to Action 304 below.

[0151] 537. The network node 110 calculates a second weighted metric based on said second set of KPIs, e.g., R(t + 1) = Sm=iam KPIm(t + 1). This relates to Action 304 below.

[0152] 538. The network node 110 derives information related to the relative performance of the communication network when said first set of rules is applied compared to when said second set of rules is applied. This relates to Actions 305 and 306 below.

[0153] According to some examples of embodiments herein, where the method is performed by an iterative RL algorithm, e.g. Q-learning, SARSA, etc, where a learning iteration of an RL-agent, e.g., the network entity 110 or implemented in the network entity 110, comprises an action followed by a reward evaluation, e.g., a weighted metric. The Action may e.g., comprise updating at least one scheduling triggering rule, resulting in a new set of active scheduling triggering rules S(t + 1) = [S'i(t + 1) ... S'L(t + 1)], such as the second set of scheduling trigger rules or the subsequent scheduling trigger rules. The reward may e.g., comprise evaluating KPIs, such as a set of characteristics, over an observation period and calculating a reward, or weighted metric, R(t + 1).

[0154] According to some examples, the RL agent, e.g., the network entity 110 or implemented in the network entity 110, may further use a set of current scenario parameters when determining a set of scheduling trigger rules, e.g., as model input.

[0155] A scheduling trigger rule Sr(t) can be defined as e.g.:

[0156] Packets of size Xkbytes can tolerate a scheduling delay of Dk.

[0157] Packets with flow indicator ft can tolerate a scheduling delay of Packets related to Control-signaling (e.g., transmitted on a specific signaling radio bearer) can tolerate a scheduling delay of Dctrt.

[0158] Packets related to Control-signaling triggering a certain action on the receiver side, e.g., RLC Poll PDU which triggers a Status Report, or scheduling that triggers MAC BSR, with a specific content can tolerate a scheduling delay of DctriTrig.

[0159] - A retransmission can tolerate a scheduling latency of Dr.

[0160] - A total number of buffered packets larger than Ntottriggers immediate scheduling.

[0161] - A total number of buffered bytes larger than Bioitriggers immediate scheduling.

[0162] - A single user having more than Nuserbuffered packets triggers immediate scheduling.

[0163] - A single user having more than Buserbuffered bytes triggers immediate scheduling.

[0164] - A function of network KPIs, e.g. a weighted sum of factors e.g. xt, ceil ), floors, log(xj), 1 / %j, log(xj) / xt, etc where xtis a network KPI.

[0165] - A function expressed as a NN with network KPIs as features, e.g., input layer, and the scheduling trigger as output, e.g., output layer.

[0166] According to some examples, changing at least one scheduling triggering rule may comprise, e.g.: deleting or deactivating of a rule changing a parameter value used to define a rule, e.g., Xk, Dk, f , Ntot,Buser, etc. duplicating an existing rule and modifying only the duplicate while keeping the original rule intact, hence increasing the total number of rules. any combination of the above According to some examples, a KPIm(t), such as a weighted metric, may be defined as e.g.:

[0167] Measured product energy consumption: pmConsumedEnergy

[0168] Total scheduled data volume in UL (on MAC, alternative on PDCH, or both): pmMacVolUI, pmPdchVolUIDrb

[0169] Total scheduled data volume in DL (on MAC, alternative on PDCH, or both): pmMacVolDI, pmPdchVolDIDrb

[0170] - X-percentile data rate in UL (e.g. X=5%), (possibly filtered e.g. excluding small packets): pmUeThpUIMbbFiltered2Distr

[0171] - X-percentile data rate in DL (e.g. X=5%), (possibly filtered e.g. excluding small packets): pmUeThpDIMbbFiltered2Distr

[0172] - X-percentile estimated user Time-to-content (e.g. X=5%): TTC5pPDSCH scheduling efficiency per TTI:

[0173] Z weighted-pmPdschSchedEntityDistr I Z pmPdschSchedEntityDistr

[0174] PDSCH scheduling efficiency per TTI:

[0175] Z weighted-pmPuschSchedEntitylncIPreschedDistr I

[0176] ZpmPuschSchedEntitylncIPreschedDistr

[0177] RRC connected users: PmRrcConnLevelSumEnDc / PmRrcConnLevelSamp

[0178] - Active UEs in DL: PmActiveUeDISum / PmActiveUeDISamp

[0179] - %Empty TTI in DL: pmPdschSchedEntityDistrO I Z pmPdschSchedEntityDistr ;

[0180] Padding: 1 - (pmMacVolDIDrb + pmMacVolDIDrbSingleBurst + pmMacVolDIDrbLastSlot) / (pmMacVolDI)

[0181] UL ARQ Retransmissions: PmRlcArqUINack / (PmRlcArqUINack+PmRlcArqUIAck) DL ARQ Retransmissions

[0182] DL / UL HARQ Retransmissions

[0183] According to some examples, an observation period may e.g., be 15 minutes, or 1 hour, or 24 hours, or 7 days.

[0184] According to some examples, latency and / or energy consumption related KPIs, or characteristics, may be reducing the reward, or weighted metric. This may correspond to that weights amare negative. Further, KPIs, or characteristics, related to throughput, data volume, number of users, etc are increasing the reward, or weighted metric. This may correspond to that weights amare positive.

[0185] According to some examples, KPIs, or characteristics, may be normalized e.g. by a standard scaler before calculating the reward, or weighted metric, R(t). According to some examples, KPIs, or weighted metrics, may be expressed as relative or differential in relation to target values, or thresholds.

[0186] According to some examples, the target values, or thresholds, may be maximum possible values, e.g., strive towards max possible throughput, min possible latency, etc, minimum required values, e.g., ensure at least predetermined throughput, do not exceed predetermined latency, etc.

[0187] According to some examples, the target values, or thresholds, may be scenariospecific, including UE-specific, traffic type-specific, QoS / QoE category-specific, link / channel-quality specific, etc.

[0188] According to some examples, the reward, or weighted metric, function may combine KPIs, or characteristics, related to one or more hardware units, such as FieldReplaceblellnits, e.g., all data volume counters on all cells that are connected to the same radio unit.

[0189] The optimized scheduling method continuously updates current scheduling rules e.g., considering dynamically changing operating scenarios. The updates may be based on changes in scenario parameters and observed changes in KPIs resulting from the current set of scheduling rules. The notion of update may also include the possibility that the need for a change is evaluated but no change is applied if the current set of scheduling rules is deemed optimal for the current operating scenario.

[0190] Examples of embodiments herein may comprise one or more of the following:

[0191] 1. Obtain network and / or cell scenario parameters. The parameters may e.g., comprise nrof UEs, PRB load, channel conditions, individual UE or UE group-typical traffic / QoE / QoS classes, cell bandwidth, number of cells for each radio unit, number of TX and RX antennas, etc.

[0192] 2. Apply the first set of scheduling trigger rules, e.g., S(t) = [Sx(t) ... SL(t)]. The first set of scheduling trigger rules may e.g., be applied at the scheduler of the network node 110. The first set may e.g., be obtained from a previous iteration of the algorithm or from an initial robust rule set.

[0193] 3. Estimate first network KPIs, such as the first set of characteristics, resulting from the first set of scheduling trigger rules and calculate a first weighted metric, e.g.,

[0194] 7?(t) = 2m=iam KPIm(t), based on these KPIs.

[0195] 4. Update the first set of scheduling triggering rules to a second set of scheduling triggering rules, e.g., S(t + 1) = [S'i(t + 1) ... S'L(t + 1)]. The update may be based on e.g., the scenario parameters, the first weighted metric, and / or a random update. The updating may be done e.g. using ML approaches, such as RL or supervised learning, a previously determined look-up table (LUT), rule-based algorithms, etc.

[0196] 5. Apply the second set of scheduling trigger rules. The second set of scheduling trigger rules may e.g., be applied at the scheduler of the network node 110.

[0197] 6. Estimate second network KPIs, such as the second set of characteristics, resulting from the second set of rules and calculate the second weighted metric, e.g., R(t + 1) = 2m=iam KPIm(t + 1), based on these KPIs.

[0198] 7. Estimate relative performance difference of the communication network 100 between applying the first and second set of rules and possibly modify the scheduling rule update algorithm for the current scenario based on the difference. The scheduling rule update algorithm for the current scenario may be modified based on the relative performance difference of the communication network between applying the new and the previous set of rules. If the performance difference is favorable, the algorithm may more confidently provide the rules update in similar scenarios in the future. If the performance difference is detrimental to the NW, such update may be applied less forcefully or not at all.

[0199] Some examples of scheduling triggering rules are:

[0200] • Packets of size Xkbytes can tolerate a scheduling delay of Dk. This rule can be modified my changing the parameters Xkand Dk. An initial set of rules may contain a rule of this form e.g. where knowledge related to the size and delay impact of particular packets are captured. It may e.g. be known that a large number of the “RCL status PDlls” packets are exactly 13 Bytes and the performance impact of delaying these packets up to 20 ms is very small, in which case an initial rule is created with Xk= 13 Bytes and Dk= 20 ms.

[0201] • Packets with flow indicator f can tolerate a scheduling delay Some flows may correspond to e.g. VoIP services that are delay sensitive. Other flows may relate to background data transfer that is more delay tolerant.

[0202] • Packets related to Control-signaling (e.g., transmitted on a specific signaling radio bearer) can tolerate a scheduling delay of Dctrt. For example, control signaling done via SRB2 (used for NAS messages), have lower priority and may tolerate larger delay compared to signaling that is done via SRB0 / SRB1.

[0203] • Packets related to Control-signaling triggering a certain action on the receiver side with a specific content can tolerate a scheduling delay of DdriTrigor evensome instances can be skipped occasionally. For example, in the case of RLC AM mode, the RLC Poll PDU from the transmitting side triggers an RLC Status Report on the receiver side for the sake of potential ARQ retransmissions. Depending on certain conditions, e.g., depending on channel conditions the tolerated delay can be different. For example, if the channel conditions are good such as when current (H)ARQ retransmissions are fewer than that of that for poor channel conditions, the more delay can be tolerated or even certain of the RLC Poll PDU transmissions can be skipped.

[0204] • Different users may be up-prioritized (e.g. be associated with a rule with a smaller scheduling triggering delay) or down-prioritized (e.g. be associated with a rule with a larger scheduling triggering delay).

[0205] • A retransmission can tolerate a scheduling latency of Dr. Typically, a retransmission should be handled faster and a rule that generates a triggering of the scheduler in case the buffer contains packet retransmissions can ensure this.

[0206] • A total number of buffered packets larger than Ntottriggers immediate scheduling.

[0207] • A total number of buffered bytes larger than Bioitriggers immediate scheduling.

[0208] • A single user having more than Nuserbuffered packets triggers immediate scheduling.

[0209] • A single user having more than Buserbuffered bytes triggers immediate scheduling.

[0210] • If the data in all buffers is estimated to require X% or more of the available bandwidth (or power, or layers, or some other radio related resource) then scheduling is immediately triggered.

[0211] • A scheduling triggering rule can be any function f using multiple variables describing the current state of the scheduling buffers.

[0212] • Since a Neural Network (NN) can be used to approximate any function, it follows from the above example that one or more scheduling rules may be described as a NN using an input layer, zero or more hidden layers, and one output layer. The input layer size equals the number of features used (i.e the number of parameters used to describe the state of the scheduling buffers) and the output layer of size 1 describes the resulting scheduling triggering condition. In some examples of embodiments there may, in addition to the triggering rules adjusted by the RL agent, or network entity 110, also be additional static rules that the RL agent, or network entity 110, is not allowed to change or deactivate. Such rules may e.g., represent operator policies, special exceptions, etc.

[0213] Examples of embodiments herein, may account for the fact that different scenarios generally require different scheduler behaviors to achieve optimized operation. Therefore, scenario parameters may be provided as inputs when determining the scheduling trigger rule updates. Rule update algorithm modifications based on observed KPI differences may also be applied scenario-specifically. Scenario parameters may be used to determine scenario-specific target values for KPI formulation.

[0214] Fig. 4 shows an example of an RL-based of embodiments herein. Embodiments herein may be implemented as a dynamic reinforcement learning method. The method components may map to an RL architecture as follows:

[0215] Action. Change and / or update to scheduling triggering rule set applied by the network node 110, e.g., to the scheduler of the network node 110. It may be expressed as a new rule set or a delta in relation to the previous rule set.

[0216] Reward. A weighted combined metric, e.g., the first weighted metric, the second weighted metric and / or a subsequent weighted metric, based on current KPIs. The KPIs may be used directly, or one or more KPIs may remapped so as to ensure a positive change when behavior improvement is observed.

[0217] State. Current values of the relevant network and / or cell scenario parameters. “State” may also sometimes also denoted as “Observation”.

[0218] Environment. One or more cells in the wireless communications network 100, comprising the scheduling, operational, such as scenario, parameter estimation providing the state info, and KPI, such as characteristic, evaluation functionality providing the reward, such as weighted metric, in those cells.

[0219] Training data for the RL-agent, or the network entity 110, may be obtained via direct interaction with the network. No separate collection of data is required to train and provide input to the algorithm, or method. The initial state of the rule set may e.g., comprise a set of conservative and robust scheduling principles that will be automatically optimized via the RL process during regular operation. In exploitation mode, the RL agent, or network entity 110, may directly apply the inferred action based on the current state input. This corresponds to the above flow diagram. In an exploration mode, the agent may deliberately perturb the inferred action value, i.e., the rule set that will be provided to the scheduler compared to the inference result. This would correspond to perturbing the second scheduler rule set in step 130. The relation between exploration vs exploitation operations in the agent may be controlled based on the operation criticality and the observed learning rate during the exploration stage. For example, more exploration may be applied in less mission-critical time instances and when the learning rate is high, while the exploitation mode is primarily used, with little exploration, when performance robustness is especially important, or when no significant further learning advances are observed.

[0220] Examples of embodiments herein may be introduced in existing network nodes or entities in the sense that the current scheduler software does not need any major redesign. Figure 5 shows an example of a scheduler function in a prior art. The scheduler is a complex function that controls the L2 and L1 processing performed in a radio base station. Examples of embodiments herein may be introduced in existing products with only very minor modifications of the scheduler, e.g., as shown in Figure 6.

[0221] In a cloud environment, distributed exploration may be performed in different schedulers. The learning so obtained may be jointly processed in a central location to generate a new set of actions to apply, possibly different for each scheduler in the area, in the next observation interval. This may e.g., result in faster exploration. Different schedulers can test out different, possibly minor, adjustments to a current set of “common base rules”. Exploration may be limited to certain time windows, e.g., maintenance windows. Or larger exploration steps, e.g., actions with larger deviation from the current scheduling triggering rules, may be allowed in a maintenance window compared to in other time windows. Exploration may be limited to certain areas, sites, nodes, frequency bands, etc. Exploration may be conditioned on the absence of certain services, e.g. critical MTC, LILLRC, etc. Site specific scheduling triggering, e.g., related to HW, traffic, deployment, etc, cannot be jointly trained. The training may therefore e.g., be separated into two steps, such as e.g., 1. Joint training by a first RL agent in a central location, 2. Individual optimization by a second RL agent in each distributed scheduler. To perform the method actions above, the network entity 110 is configured to improve transmission scheduling in the wireless communications network 100. The network entity 110 may comprise an arrangement depicted in Figure 7.

[0222] The network entity 110 may comprise an input and output interface 700 configured to communicate with each other. The input and output interface 700 may comprise a receiver, e.g. wired and / or wireless, (not shown) and a transmitter, e.g. wired and / or wireless, (not shown).

[0223] The embodiments herein may be implemented through a respective processor or one or more processors, such as at least one processor 710 of a processing circuitry in the network entity 110 depicted in Figure 7, together with computer program code for performing the functions and actions of the embodiments herein. The program code mentioned above may also be provided as a computer program product, for instance in the form of a data carrier carrying computer program code for performing the embodiments herein when being loaded into the network entity 110. One such carrier may be in the form of a CD ROM disc. It is however feasible with other data carriers such as a memory stick. The computer program code may furthermore be provided as pure program code on a server and downloaded to the network entity 110.

[0224] The network entity 110 and / or processor 710 is configured to improve transmission scheduling in the wireless communications network 100.

[0225] The network entity 110 calculates the first weighted metric based on a first set of characteristics. The first set of characteristics is adapted to be obtained based on transmissions using the first set of scheduling trigger rules.

[0226] The network entity 110 calculates the second weighted metric based on a second set of characteristics. The second set of characteristics is adapted to be obtained based on transmissions using the second set of scheduling trigger rules. The second set of scheduling trigger rules is adapted to differ from the first set of scheduling trigger rules.

[0227] The network entity 110 generates comparative performance data based on the first weighted metric and the second weighted metric.

[0228] The network entity 110 decides, taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules.

[0229] In some embodiments, when decided to update the second set of scheduling triggering rules, the network entity 110 and / or processor 710 is further configured to:

[0230] Calculate a subsequent weighted metric based on a subsequent set of characteristics. The subsequent set of characteristics is adapted to be obtained based on transmissions using a subsequent set of scheduling trigger rules. The subsequent set of scheduling trigger rules is adapted to differ from a preceding set of scheduling trigger rules, generate subsequent comparative performance data based on a preceding weighted metric and the subsequent weighted metric, and decide whether or not to update the subsequent set of scheduling triggering rules taking the subsequent comparative performance data into account.

[0231] In some embodiments, when decided to update the second set of scheduling triggering rules, the network entity 110 and / or processor 710 is further configured to repeat the steps of calculate, generate and decide and optionally determine.

[0232] In some embodiments, the network entity 110 and / or processor 710 is further configured to:

[0233] Determine the first set of scheduling trigger rules. The first set of scheduling trigger rules is adapted to be determined based on the first set of current scenario parameters, and determine the second set of scheduling trigger rules. The second set of scheduling trigger rules is adapted to be determined based on a second set of current scenario parameters. The second set of current scenario parameters adapted to be any out of:

[0234] - Identical as the first set of current scenario parameters, or

[0235] - different from the first set of current scenario parameters.

[0236] In some embodiments, a set of scheduling trigger rules is adapted to comprise one or more respective rules. A respective rule of a set of scheduling trigger rules is adapted to be associated to any one of:

[0237] - A maximum scheduling delay related to a size of a packet,

[0238] - a number of packets in a buffer,

[0239] - a number of bytes in a buffer, or

[0240] - a function of one or more characteristics.

[0241] In some embodiments, a set of characteristics is adapted to comprise one or more characteristics. A respective characteristic of a set of characteristics is adapted to be associated to any one out of:

[0242] - A measured energy consumption,

[0243] - a total scheduled uplink data volume,

[0244] - a total scheduled downlink data volume,

[0245] - an uplink data rate,

[0246] - a downlink data rate,

[0247] - a user equipment time to content, - a scheduling efficiency, or

[0248] - a latency.

[0249] In some embodiments, a characteristic of a set of characteristics is adapted to be normalized before calculating the weighted metric.

[0250] In some embodiments, a characteristic of a set of characteristics is adapted to be related to a characteristic specific threshold.

[0251] In some embodiments, the network entity 110 and / or processor 710 is configured to calculate a weighted metric by further being configured to associate each respective characteristic with a weight. A characteristic related to energy consumption or latency is adapted to reduce the weighted metric.

[0252] In some embodiments, the network entity 110 and / or processor 710 is configured to decide whether or not to update the second set of scheduling trigger rules or the subsequent set of scheduling trigger rules by further being configured to decide whether or not to update a scheduling trigger rule updating algorithm based on the comparative performance data or the subsequent comparative performance data.

[0253] The network entity 110 may further comprise respective a memory 720 comprising one or more memory units. The memory 720 comprises instructions executable by the processor 710 in the network entity 110.

[0254] The memory 720 is arranged to be used to store instructions, data, configurations, identifiers, iterations, scheduling trigger rules, metrics, characteristics, performance data, models, algorithms, decisions, parameters, notifications, resources, allocations, tables, predictions, data traffic loads and applications to perform the methods herein when being executed in the network entity 110.

[0255] In some embodiments, a computer program 730 comprises instructions, which when executed by the at least one processor 710, cause the at least one processor 710 of the network entity 110 to perform the actions above.

[0256] In some embodiments, a respective carrier 740 comprises the respective computer program 730, wherein the carrier 740 is one of an electronic signal, an optical signal, an electromagnetic signal, a magnetic signal, an electric signal, a radio signal, a microwave signal, or a computer-readable storage medium.

[0257] Thus, embodiments herein may disclose the network entity 110 improve transmission scheduling in the wireless communications network 100. The network entity 110 comprises the processor 710 and the memory 720, said memory 720 comprising instructions executable by said processor 710 whereby said network entity 110 is operative to perform any of the methods herein. As will be readily understood by those familiar with communications design, that functions means or modules may be implemented using digital logic and / or one or more microcontrollers, microprocessors, or other digital hardware. In some embodiments, several or all of the various functions may be implemented together, such as in a single application-specific integrated circuit (ASIC), or in two or more separate devices with appropriate hardware and / or software interfaces between them. Several of the functions may be implemented on a processor shared with other functional components of a radio network node, for example.

[0258] Alternatively, several of the functional elements of the processing means discussed may be provided through the use of dedicated hardware, while others are provided with hardware for executing software, in association with the appropriate software or firmware. Thus, the term “processor” or “controller” as used herein does not exclusively refer to hardware capable of executing software and may implicitly include, without limitation, digital signal processor (DSP) hardware, read-only memory (ROM) for storing software, random-access memory for storing software and / or program or application data, and nonvolatile memory. Other hardware, conventional and / or custom, may also be included. Designers of communications receivers will appreciate the cost, performance, and maintenance trade-offs inherent in these design choices.

[0259] Any appropriate steps, methods, features, functions, or benefits disclosed herein may be performed through one or more functional units or modules of one or more virtual apparatuses. Each virtual apparatus may comprise a number of these functional units. These functional units may be implemented via processing circuitry, which may include one or more microprocessor or microcontrollers, as well as other digital hardware, which may include digital signal processors (DSPs), special-purpose digital logic, and the like. The processing circuitry may be configured to execute program code stored in memory, which may include one or several types of memory such as read-only memory (ROM), random-access memory (RAM), cache memory, flash memory devices, optical storage devices, etc. Program code stored in memory includes program instructions for executing one or more telecommunications and / or data communications protocols as well as instructions for carrying out one or more of the techniques described herein. In some implementations, the processing circuitry may be used to cause the respective functional unit to perform corresponding functions according one or more embodiments of the present disclosure.

[0260] ADDITIONAL EXPLANATION Some of the embodiments contemplated herein will now be described more fully with reference to the accompanying drawings. Embodiments are provided by way of example to convey the scope of the subject matter to those skilled in the art.

[0261] Figure 8 shows an example of a communication system QQ100 in accordance with some embodiments.

[0262] In the example, the communication system QQ100 includes a telecommunication network QQ102 that includes an access network QQ104, such as a radio access network (RAN), and a core network QQ106, which includes one or more core network nodes QQ108 (being examples of the network node 110). The access network QQ104 includes one or more access network nodes, such as network nodes QQ110a and QQ110b (one or more of which may be generally referred to as network nodes QQ110 being examples of the network entity 110), or any other similar 3rd Generation Partnership Project (3GPP) access nodes or non-3GPP access points. Moreover, as will be appreciated by those of skill in the art, a network node is not necessarily limited to an implementation in which a radio portion and a baseband portion are supplied and integrated by a single vendor. Thus, it will be understood that network nodes include disaggregated implementations or portions thereof. For example, in some embodiments, the telecommunication network QQ102 includes one or more Open-RAN (ORAN) network nodes. An ORAN network node is a node in the telecommunication network QQ102 that supports an ORAN specification (e.g., a specification published by the O-RAN Alliance, or any similar organization) and may operate alone or together with other nodes to implement one or more functionalities of any node in the telecommunication network QQ102, including one or more network nodes QQ110 and / or core network nodes QQ108.

[0263] Examples of an ORAN network node include an open radio unit (0-Rll), an open distributed unit (0-Dll), an open central unit (O-CU), including an O-CU control plane (O- CLI-CP) or an O-CU user plane (O-CU-UP), a RAN intelligent controller (near-real time or non-real time) hosting software or software plug-ins, such as a near-real time control application (e.g., xApp) or a non-real time control application (e.g., rApp), or any combination thereof (the adjective “open” designating support of an ORAN specification). The network node may support a specification by, for example, supporting an interface defined by the ORAN specification, such as an A1 , F1 , W1, E1 , E2, X2, Xn interface, an open fronthaul user plane interface, or an open fronthaul management plane interface. Moreover, an ORAN access node may be a logical node in a physical node. Furthermore, an ORAN network node may be implemented in a virtualization environment (described further below) in which one or more network functions are virtualized. For example, the virtualization environment may include an O-Cloud computing platform orchestrated by a Service Management and Orchestration Framework via an 0-2 interface defined by the O-RAN Alliance or comparable technologies. The network nodes QQ110 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs QQ112a, QQ112b, QQ112c, and QQ112d (one or more of which may be generally referred to as UEs QQ112 being examples of a wireless device 121) to the core network QQ106 over one or more wireless connections.

[0264] Example wireless communications over a wireless connection include transmitting and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system QQ100 may include any number of wired or wireless networks, network nodes, UEs, and / or any other components or systems that may facilitate or participate in the communication of data and / or signals whether via wired or wireless connections. The communication system QQ100 may include and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.

[0265] The UEs QQ112 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and / or operable to communicate wirelessly with the network nodes QQ110 and other communication devices. Similarly, the network nodes QQ110 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs QQ112 and / or with other network nodes or equipment in the telecommunication network QQ102 to enable and / or provide network access, such as wireless network access, and / or to perform other functions, such as administration in the telecommunication network QQ102.

[0266] In the depicted example, the core network QQ106 connects the network nodes QQ110 to one or more hosts, such as host QQ116. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network QQ106 includes one more core network nodes (e.g., core network node QQ108) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and / or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node QQ108. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (ALISF), Subscription Identifier Deconcealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and / or a User Plane Function (UPF).

[0267] The host QQ116 may be under the ownership or control of a service provider other than an operator or provider of the access network QQ104 and / or the telecommunication network QQ102, and may be operated by the service provider or on behalf of the service provider. The host QQ116 may host a variety of applications to provide one or more service. Examples of such applications include live and pre-recorded audio / video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.

[0268] As a whole, the communication system QQ100 of Figure 8 enables connectivity between the UEs, network nodes, and hosts. In that sense, the communication system may be configured to operate according to predefined rules or procedures, such as specific standards that include, but are not limited to: Global System for Mobile Communications (GSM); Universal Mobile Telecommunications System (UMTS); Long Term Evolution (LTE), and / or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); wireless local area network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards (WiFi); and / or any other appropriate wireless communication standard, such as the Worldwide Interoperability for Microwave Access (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and / or any low-power wide-area network (LPWAN) standards such as LoRa and Sigfox.

[0269] In some examples, the telecommunication network QQ102 is a cellular network that implements 3GPP standardized features. Accordingly, the telecommunications network QQ102 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network QQ102. For example, the telecommunications network QQ102 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and / or Massive Machine Type Communication (mMTC) / Massive loT services to yet further UEs.

[0270] In some examples, the UEs QQ112 are configured to transmit and / or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network QQ104 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network QQ104. Additionally, a UE may be configured for operating in single- or multi- RAT or multi-standard mode. For example, a UE may operate with any one or combination of Wi-Fi, NR (New Radio) and LTE, i.e. being configured for multi-radio dual connectivity (MR-DC), such as E-UTRAN (Evolved-UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).

[0271] In the example, the hub QQ114 communicates with the access network QQ104 to facilitate indirect communication between one or more UEs (e.g., UE QQ112c and / or QQ112d) and network nodes (e.g., network node QQ110b). In some examples, the hub QQ114 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub QQ114 may be a broadband router enabling access to the core network QQ106 for the UEs. As another example, the hub QQ114 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes QQ110, or by executable code, script, process, or other instructions in the hub QQ114. As another example, the hub QQ114 may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub QQ114 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub QQ114 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub QQ114 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub QQ114 acts as a proxy server or orchestrator for the UEs, in particular if one or more of the UEs are low energy loT devices.

[0272] The hub QQ114 may have a constant / persistent or intermittent connection to the network node QQ110b. The hub QQ114 may also allow for a different communication scheme and / or schedule between the hub QQ114 and UEs (e.g., UE QQ112c and / or QQ112d), and between the hub QQ114 and the core network QQ106. In other examples, the hub QQ114 is connected to the core network QQ106 and / or one or more UEs via a wired connection. Moreover, the hub QQ114 may be configured to connect to an M2M service provider over the access network QQ104 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes QQ110 while still connected via the hub QQ114 via a wired or wireless connection. In some embodiments, the hub QQ114 may be a dedicated hub - that is, a hub whose primary function is to route communications to / from the UEs from / to the network node QQ110b. In other embodiments, the hub QQ114 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node QQ110b, but which is additionally capable of operating as a communication start and / or end point for certain data channels.

[0273] Figure 9 shows a UE QQ200 in accordance with some embodiments. As used herein, a UE refers to a device capable, configured, arranged and / or operable to communicate wirelessly with network nodes and / or other UEs. Examples of a UE include, but are not limited to, a smart phone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage device, playback appliance, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop- embedded equipment (LEE), laptop-mounted equipment (LME), smart device, wireless customer-premise equipment (CPE), vehicle, vehicle-mounted or vehicle embedded / integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-loT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

[0274] A UE may support device-to-device (D2D) communication, for example by implementing a 3GPP standard for sidelink communication, Dedicated Short-Range Communication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and / or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller). Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).

[0275] The UE QQ200 includes processing circuitry QQ202 that is operatively coupled via a bus QQ204 to an input / output interface QQ206, a power source QQ208, a memory QQ210, a communication interface QQ212, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in Figure QQ2. The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.

[0276] The processing circuitry QQ202 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory QQ210. The processing circuitry QQ202 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry QQ202 may include multiple central processing units (CPUs).

[0277] In the example, the input / output interface QQ206 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and / or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE QQ200. Examples of an input device include a touch-sensitive or presence-sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or any combination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.

[0278] In some embodiments, the power source QQ208 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source QQ208 may further include power circuitry for delivering power from the power source QQ208 itself, and / or an external power source, to the various parts of the UE QQ200 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source QQ208. Power circuitry may perform any formatting, converting, or other modification to the power from the power source QQ208 to make the power suitable for the respective components of the UE QQ200 to which power is supplied.

[0279] The memory QQ210 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory QQ210 includes one or more application programs QQ214, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data QQ216. The memory QQ210 may store, for use by the UE QQ200, any of a variety of various operating systems or combinations of operating systems.

[0280] The memory QQ210 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital data storage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and / or ISIM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUlCC), integrated UICC (iUICC) or a removable UICC commonly known as ‘SIM card.’ The memory QQ210 may allow the UE QQ200 to access instructions, application programs and the like, stored on transitory or non-transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory QQ210, which may be or comprise a device-readable storage medium.

[0281] The processing circuitry QQ202 may be configured to communicate with an access network or other network using the communication interface QQ212. The communication interface QQ212 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna QQ222. The communication interface QQ212 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter QQ218 and / or a receiver QQ220 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter QQ218 and receiver QQ220 may be coupled to one or more antennas (e.g., antenna QQ222) and may share circuit components, software or firmware, or alternatively be implemented separately.

[0282] In the illustrated embodiment, communication functions of the communication interface QQ212 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short-range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and / or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol / internet protocol (TCP / IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.

[0283] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface QQ212, via a wireless connection to a network node. Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).

[0284] As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts the control surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.

[0285] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door / window sensor, a flood / moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an loT device comprises circuitry and / or software in dependence of the intended application of the loT device in addition to other components as described in relation to the UE QQ200 shown in Figure QQ2.

[0286] As yet another specific example, in an loT scenario, a UE may represent a machine or other device that performs monitoring and / or measurements, and transmits the results of such monitoring and / or measurements to another UE and / or a network node. The UE may in this case be an M2M device, which may in a 3GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3GPP NB-loT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipment that is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

[0287] In practice, any number of UEs may be used together with respect to a single use case. For example, a first UE might be or be integrated in a drone and provide the drone’s speed information (obtained through a speed sensor) to a second UE that is a remote controller operating the drone. When the user makes changes from the remote controller, the first UE may adjust the throttle on the drone (e.g. by controlling an actuator) to increase or decrease the drone’s speed. The first and / or the second UE can also include more than one of the functionalities described above. For example, a UE might comprise the sensor and the actuator, and handle communication of data for both the speed sensor and the actuators.

[0288] Figure 10 shows a network node QQ300 in accordance with some embodiments. As used herein, network node refers to equipment capable, configured, arranged and / or operable to communicate directly or indirectly with a UE and / or with other network nodes or equipment, in a telecommunication network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points), base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs) and NR NodeBs (gNBs)), O- RAN nodes or components of an O-RAN node (e.g., 0-Rll, 0-Dll, O-CU).

[0289] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units, distributed units (e.g., in an O-RAN access node) and / or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).

[0290] Other examples of network nodes include multiple transmission point (multi-TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi- cel l / multicast coordination entities (MCEs), Operation and Maintenance (O&M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and / or Minimization of Drive Tests (MDTs).

[0291] The network node QQ300 includes a processing circuitry QQ302, a memory QQ304, a communication interface QQ306, and a power source QQ308. The network node QQ300 may be composed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node QQ300 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node QQ300 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory QQ304 for different RATs) and some components may be reused (e.g., a same antenna QQ310 may be shared by different RATs). The network node QQ300 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node QQ300, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node QQ300.

[0292] The processing circuitry QQ302 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and / or encoded logic operable to provide, either alone or in conjunction with other network node QQ300 components, such as the memory QQ304, to provide network node QQ300 functionality.

[0293] In some embodiments, the processing circuitry QQ302 includes a system on a chip (SOC). In some embodiments, the processing circuitry QQ302 includes one or more of radio frequency (RF) transceiver circuitry QQ312 and baseband processing circuitry QQ314. In some embodiments, the radio frequency (RF) transceiver circuitry QQ312 and the baseband processing circuitry QQ314 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry QQ312 and baseband processing circuitry QQ314 may be on the same chip or set of chips, boards, or units.

[0294] The memory QQ304 may comprise any form of volatile or non-volatile computer- readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and / or any other volatile or non-volatile, non-transitory device- readable and / or computer-executable memory devices that store information, data, and / or instructions that may be used by the processing circuitry QQ302. The memory QQ304 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry QQ302 and utilized by the network node QQ300. The memory QQ304 may be used to store any calculations made by the processing circuitry QQ302 and / or any data received via the communication interface QQ306. In some embodiments, the processing circuitry QQ302 and memory QQ304 is integrated. The communication interface QQ306 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, the communication interface QQ306 comprises port(s) / terminal(s) QQ316 to send and receive data, for example to and from a network over a wired connection. The communication interface QQ306 also includes radio front-end circuitry QQ318 that may be coupled to, or in certain embodiments a part of, the antenna QQ310. Radio front-end circuitry QQ318 comprises filters QQ320 and amplifiers QQ322. The radio front-end circuitry QQ318 may be connected to an antenna QQ310 and processing circuitry QQ302. The radio front-end circuitry may be configured to condition signals communicated between antenna QQ310 and processing circuitry QQ302. The radio front-end circuitry QQ318 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry QQ318 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters QQ320 and / or amplifiers QQ322. The radio signal may then be transmitted via the antenna QQ310. Similarly, when receiving data, the antenna QQ310 may collect radio signals which are then converted into digital data by the radio front-end circuitry QQ318. The digital data may be passed to the processing circuitry QQ302. In other embodiments, the communication interface may comprise different components and / or different combinations of components.

[0295] In certain alternative embodiments, the network node QQ300 does not include separate radio front-end circuitry QQ318, instead, the processing circuitry QQ302 includes radio front-end circuitry and is connected to the antenna QQ310. Similarly, in some embodiments, all or some of the RF transceiver circuitry QQ312 is part of the communication interface QQ306. In still other embodiments, the communication interface QQ306 includes one or more ports or terminals QQ316, the radio front-end circuitry QQ318, and the RF transceiver circuitry QQ312, as part of a radio unit (not shown), and the communication interface QQ306 communicates with the baseband processing circuitry QQ314, which is part of a digital unit (not shown).

[0296] The antenna QQ310 may include one or more antennas, or antenna arrays, configured to send and / or receive wireless signals. The antenna QQ310 may be coupled to the radio front-end circuitry QQ318 and may be any type of antenna capable of transmitting and receiving data and / or signals wirelessly. In certain embodiments, the antenna QQ310 is separate from the network node QQ300 and connectable to the network node QQ300 through an interface or port. The antenna QQ310, communication interface QQ306, and / or the processing circuitry QQ302 may be configured to perform any receiving operations and / or certain obtaining operations described herein as being performed by the network node. Any information, data and / or signals may be received from a UE, another network node and / or any other network equipment. Similarly, the antenna QQ310, the communication interface QQ306, and / or the processing circuitry QQ302 may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and / or signals may be transmitted to a UE, another network node and / or any other network equipment.

[0297] The power source QQ308 provides power to the various components of network node QQ300 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source QQ308 may further comprise, or be coupled to, power management circuitry to supply the components of the network node QQ300 with power for performing the functionality described herein. For example, the network node QQ300 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source QQ308. As a further example, the power source QQ308 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.

[0298] Embodiments of the network node QQ300 may include additional components beyond those shown in Figure 10 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and / or any functionality necessary to support the subject matter described herein. For example, the network node QQ300 may include user interface equipment to allow input of information into the network node QQ300 and to allow output of information from the network node QQ300. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node QQ300.

[0299] Figure 11 is a block diagram of a host QQ400, which may be an embodiment of the host QQ116 of Figure 8, in accordance with various aspects described herein. As used herein, the host QQ400 may be or comprise various combinations hardware and / or software, including a standalone server, a blade server, a cloud-implemented server, a distributed server, a virtual machine, container, or processing resources in a server farm. The host QQ400 may provide one or more services to one or more UEs.

[0300] The host QQ400 includes processing circuitry QQ402 that is operatively coupled via a bus QQ404 to an input / output interface QQ406, a network interface QQ408, a power source QQ410, and a memory QQ412. Other components may be included in other embodiments. Features of these components may be substantially similar to those described with respect to the devices of previous figures, such as Figures 14 and QQ3, such that the descriptions thereof are generally applicable to the corresponding components of host QQ400.

[0301] The memory QQ412 may include one or more computer programs including one or more host application programs QQ414 and data QQ416, which may include user data, e.g., data generated by a UE for the host QQ400 or data generated by the host QQ400 for a UE. Embodiments of the host QQ400 may utilize only a subset or all of the components shown. The host application programs QQ414 may be implemented in a container-based architecture and may provide support for video codecs (e.g., Versatile Video Coding (VVC), High Efficiency Video Coding (HEVC), Advanced Video Coding (AVC), MPEG, VP9) and audio codecs (e.g., FLAG, Advanced Audio Coding (AAC), MPEG, G.711), including transcoding for multiple different classes, types, or implementations of UEs (e.g., handsets, desktop computers, wearable display systems, heads-up display systems). The host application programs QQ414 may also provide for user authentication and licensing checks and may periodically report health, routes, and content availability to a central node, such as a device in or on the edge of a core network. Accordingly, the host QQ400 may select and / or indicate a different host for over-the-top services for a UE. The host application programs QQ414 may support various protocols, such as the HTTP Live Streaming (HLS) protocol, Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Dynamic Adaptive Streaming over HTTP (MPEG-DASH), etc.

[0302] Figure 12 is a block diagram illustrating a virtualization environment QQ500 in which functions implemented by some embodiments may be virtualized. In the present context, virtualizing means creating virtual versions of apparatuses or devices which may include virtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments QQ500 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized. In some embodiments, the virtualization environment QQ500 includes components defined by the O-RAN Alliance, such as an O- Cloud environment orchestrated by a Service Management and Orchestration Framework via an 0-2 interface.

[0303] Applications QQ502 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment Q400 to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein.

[0304] Hardware QQ504 includes processing circuitry, memory that stores software and / or instructions executable by hardware processing circuitry, and / or other hardware devices as described herein, such as a network interface, input / output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers QQ506 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs QQ508a and QQ508b (one or more of which may be generally referred to as VMs QQ508), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein. The virtualization layer QQ506 may present a virtual operating platform that appears like networking hardware to the VMs QQ508.

[0305] The VMs QQ508 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer QQ506. Different embodiments of the instance of a virtual appliance QQ502 may be implemented on one or more of VMs QQ508, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.

[0306] In the context of NFV, a VM QQ508 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs QQ508, and that part of hardware QQ504 that executes that VM, be it hardware dedicated to that VM and / or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs QQ508 on top of the hardware QQ504 and corresponds to the application QQ502.

[0307] Hardware QQ504 may be implemented in a standalone network node with generic or specific components. Hardware QQ504 may implement some functions via virtualization. Alternatively, hardware QQ504 may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration QQ510, which, among others, oversees lifecycle management of applications QQ502. In some embodiments, hardware QQ504 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system QQ512 which may alternatively be used for communication between hardware nodes and radio units.

[0308] Figure 13 shows a communication diagram of a host QQ602 communicating via a network node QQ604 with a UE QQ606 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE QQ112a of Figure 8 and / or UE QQ200 of Figure QQ2), network node (such as network node QQ110a of Figure 8 and / or network node QQ300 of Figure QQ3), and host (such as host QQ116 of Figure 8 and / or host QQ400 of Figure QQ4) discussed in the preceding paragraphs will now be described with reference to Figure QQ6.

[0309] Like host QQ400, embodiments of host QQ602 include hardware, such as a communication interface, processing circuitry, and memory. The host QQ602 also includes software, which is stored in or accessible by the host QQ602 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE QQ606 connecting via an over-the-top (OTT) connection QQ650 extending between the UE QQ606 and host QQ602. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection QQ650. The network node QQ604 includes hardware enabling it to communicate with the host QQ602 and UE QQ606. The connection QQ660 may be direct or pass through a core network (like core network QQ106 of Figure QQ1) and / or one or more other intermediate networks, such as one or more public, private, or hosted networks. For example, an intermediate network may be a backbone network or the Internet.

[0310] The UE QQ606 includes hardware and software, which is stored in or accessible by UE QQ606 and executable by the UE’s processing circuitry. The software includes a client application, such as a web browser or operator-specific “app” that may be operable to provide a service to a human or non-human user via UE QQ606 with the support of the host QQ602. In the host QQ602, an executing host application may communicate with the executing client application via the OTT connection QQ650 terminating at the UE QQ606 and host QQ602. In providing the service to the user, the UE's client application may receive request data from the host's host application and provide user data in response to the request data. The OTT connection QQ650 may transfer both the request data and the user data. The UE's client application may interact with the user to generate the user data that it provides to the host application through the OTT connection QQ650.

[0311] The OTT connection QQ650 may extend via a connection QQ660 between the host QQ602 and the network node QQ604 and via a wireless connection QQ670 between the network node QQ604 and the UE QQ606 to provide the connection between the host QQ602 and the UE QQ606. The connection QQ660 and wireless connection QQ670, over which the OTT connection QQ650 may be provided, have been drawn abstractly to illustrate the communication between the host QQ602 and the UE QQ606 via the network node QQ604, without explicit reference to any intermediary devices and the precise routing of messages via these devices.

[0312] As an example of transmitting data via the OTT connection QQ650, in step QQ608, the host QQ602 provides user data, which may be performed by executing a host application. In some embodiments, the user data is associated with a particular human user interacting with the UE QQ606. In other embodiments, the user data is associated with a UE QQ606 that shares data with the host QQ602 without explicit human interaction. In step QQ610, the host QQ602 initiates a transmission carrying the user data towards the UE QQ606. The host QQ602 may initiate the transmission responsive to a request transmitted by the UE QQ606. The request may be caused by human interaction with the UE QQ606 or by operation of the client application executing on the UE QQ606. The transmission may pass via the network node QQ604, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step QQ612, the network node QQ604 transmits to the UE QQ606 the user data that was carried in the transmission that the host QQ602 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step QQ614, the UE QQ606 receives the user data carried in the transmission, which may be performed by a client application executed on the UE QQ606 associated with the host application executed by the host QQ602.

[0313] In some examples, the UE QQ606 executes a client application which provides user data to the host QQ602. The user data may be provided in reaction or response to the data received from the host QQ602. Accordingly, in step QQ616, the UE QQ606 may provide user data, which may be performed by executing the client application. In providing the user data, the client application may further consider user input received from the user via an input / output interface of the UE QQ606. Regardless of the specific manner in which the user data was provided, the UE QQ606 initiates, in step QQ618, transmission of the user data towards the host QQ602 via the network node QQ604. In step QQ620, in accordance with the teachings of the embodiments described throughout this disclosure, the network node QQ604 receives user data from the UE QQ606 and initiates transmission of the received user data towards the host QQ602. In step QQ622, the host QQ602 receives the user data carried in the transmission initiated by the UE QQ606.

[0314] One or more of the various embodiments improve the performance of OTT services provided to the UE QQ606 using the OTT connection QQ650, in which the wireless connection QQ670 forms the last segment.

[0315] In an example scenario, factory status information may be collected and analyzed by the host QQ602. As another example, the host QQ602 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host QQ602 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host QQ602 may store surveillance video uploaded by a UE. As another example, the host QQ602 may store or control access to media content such as video, audio, VR or AR which it can broadcast, multicast or unicast to UEs. As other examples, the host QQ602 may be used for energy pricing, remote control of non-time critical electrical load to balance power generation needs, location services, presentation services (such as compiling diagrams etc. from data collected from remote devices), or any other function of collecting, retrieving, storing, analyzing and / or transmitting data. In some examples, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve. There may further be an optional network functionality for reconfiguring the OTT connection QQ650 between the host QQ602 and UE QQ606, in response to variations in the measurement results. The measurement procedure and / or the network functionality for reconfiguring the OTT connection may be implemented in software and hardware of the host QQ602 and / or UE QQ606. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection QQ650 passes; the sensors may participate in the measurement procedure by supplying values of the monitored quantities exemplified above, or supplying values of other physical quantities from which software may compute or estimate the monitored quantities. The reconfiguring of the OTT connection QQ650 may include message format, retransmission settings, preferred routing etc.; the reconfiguring need not directly alter the operation of the network node QQ604. Such procedures and functionalities may be known and practiced in the art. In certain embodiments, measurements may involve proprietary UE signaling that facilitates measurements of throughput, propagation times, latency and the like, by the host QQ602. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection QQ650 while monitoring propagation times, errors, etc.

[0316] Although the computing devices described herein (e.g., UEs, network nodes, hosts) may include the illustrated combination of hardware components, other embodiments may comprise computing devices with different combinations of components. It is to be understood that these computing devices may comprise any suitable combination of hardware and / or software needed to perform the tasks, features, functions and methods disclosed herein. Determining, calculating, obtaining or similar operations described herein may be performed by processing circuitry, which may process information by, for example, converting the obtained information into other information, comparing the obtained information or converted information to information stored in the network node, and / or performing one or more operations based on the obtained information or converted information, and as a result of said processing making a determination. Moreover, while components are depicted as single boxes located within a larger box, or nested within multiple boxes, in practice, computing devices may comprise multiple different physical components that make up a single illustrated component, and functionality may be partitioned between separate components. For example, a communication interface may be configured to include any of the components described herein, and / or the functionality of the components may be partitioned between the processing circuitry and the communication interface. In another example, non-computationally intensive functions of any of such components may be implemented in software or firmware and computationally intensive functions may be implemented in hardware.

[0317] In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer-readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer-readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and / or by end users and a wireless network generally.

[0318] When using the word "comprise" or “comprising” it shall be interpreted as nonlimiting, i.e. meaning "consist at least of".

[0319] The embodiments herein are not limited to the preferred embodiments described above. Various alternatives, modifications and equivalents may be used.

Claims

CLAIMS1. A method performed by a network entity (110) for improving transmission scheduling in a wireless communications network (100), the method comprising: calculating (302) a first weighted metric based on a first set of characteristics, wherein the first set of characteristics is obtained based on transmissions using a first set of scheduling trigger rules, calculating (304) a second weighted metric based on a second set of characteristics, wherein the second set of characteristics is obtained based on transmissions using the second set of scheduling trigger rules, wherein the second set of scheduling trigger rules differs from the first set of scheduling trigger rules, and generating (305) comparative performance data based on the first weighted metric and the second weighted metric, and deciding (306), taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules.

2. The method according to claim 1 , wherein when deciding (306) to update the second set of scheduling triggering rules, the method further comprises: calculating (308) a subsequent weighted metric based on a subsequent set of characteristics, wherein the subsequent set of characteristics is obtained based on transmissions using a subsequent set of scheduling trigger rules, wherein the subsequent set of scheduling trigger rules differs from a preceding set of scheduling trigger rules, generating (309) subsequent comparative performance data based on a preceding weighted metric and the subsequent weighted metric, and deciding (310) whether or not to update the subsequent set of scheduling triggering rules taking the subsequent comparative performance data into account.

3. The method according to claim 2, wherein when deciding (310) to update the second set of scheduling triggering rules, repeating the calculating (308), generating (309) and deciding (310) according to claim 2.

4. The method according to any of claims 1-3, the method further comprising: determining (301) the first set of scheduling trigger rules, which first set of scheduling trigger rules is determined based on a first set of current scenario parameters, anddetermining (303) the second set of scheduling trigger rules, which second set of scheduling trigger rules is determined based on a second set of current scenario parameters, the second set of current scenario parameters being any out of:- identical as the first set of current scenario parameters, or- different from the first set of current scenario parameters.

5. The method according to any of claims 1-4, wherein a set of scheduling trigger rules comprises one or more respective rules, and wherein a respective rule of a set of scheduling trigger rules is associated to any one of:- a maximum scheduling delay related to a size of a packet,- a number of packets in a buffer,- a number of bytes in a buffer,- a function of one or more characteristics, or6. The method according to any of claims 1-5, wherein a set of characteristics comprises one or more characteristics, and wherein a respective characteristic of a set of characteristics is associated to any one out of:- a measured energy consumption,- a total scheduled uplink data volume,- a total scheduled downlink data volume,- an uplink data rate,- a downlink data rate,- a user equipment time to content,- a scheduling efficiency,- a latency.

7. The method according to any of claims 1-6, a characteristic of a set of characteristics is normalized before calculating the weighted metric.

8. The method according to any of claim 1-7, wherein a characteristic of a set of characteristics is related to a characteristic specific threshold.

9. The method according to any of claims 1-8, wherein calculating a weighted metric comprises associating each respective characteristic with a weight, wherein a characteristic related to energy consumption or latency reduces the weighted metric.

10. The method according to any of claims 1-9, wherein deciding (306, 310) further comprises deciding whether or not to update a scheduling trigger rule updating algorithm based on the comparative performance data.

11. The method according to any of claims 1-10, wherein the method is a Reinforced Learning, RL, method.

12. A computer program (730) comprising instructions, which when executed by a processor (710), causes the processor (710) to perform actions according to any of the claims 1-11.

13. A carrier (740) comprising the computer program (730) of claim 12, wherein the carrier (740) is one of an electronic signal, an optical signal, an electromagnetic signal, a magnetic signal, an electric signal, a radio signal, a microwave signal, or a computer- readable storage medium.

14. A network entity (110) configured to improve transmission scheduling in a wireless communications network (100), the network entity (110) further being configured to: calculate a first weighted metric based on a first set of characteristics, wherein the first set of characteristics is adapted to be obtained based on transmissions using a first set of scheduling trigger rules, calculate a second weighted metric based on a second set of characteristics, wherein the second set of characteristics is adapted to be obtained based on transmissions using the second set of scheduling trigger rules, wherein the second set of scheduling trigger rules is adapted to differ from the first set of scheduling trigger rules, generate comparative performance data based on the first weighted metric and the second weighted metric, and decide, taking the comparative performance data into account, whether or not to update the second set of scheduling triggering rules.

15. The network entity according to claim 14, wherein when decided to update the second set of scheduling triggering rules, the network entity (110) is further configured to: calculate a subsequent weighted metric based on a subsequent set of characteristics, wherein the subsequent set of characteristics is adapted to be obtainedbased on transmissions using a subsequent set of scheduling trigger rules, wherein the subsequent set of scheduling trigger rules is adapted to differ from a preceding set of scheduling trigger rules, generate subsequent comparative performance data based on a preceding weighted metric and the subsequent weighted metric, and decide whether or not to update the subsequent set of scheduling triggering rules taking the subsequent comparative performance data into account.

16. The network entity (110) according to claim 15, wherein when decided to update the second set of scheduling triggering rules, the network entity (110) is further configured to repeat the calculate, generate and decide according to claim 15.

17. The network entity (110) according to any of claims 14-16, the network entity (110) further being configured to: determine the first set of scheduling trigger rules, which first set of scheduling trigger rules is adapted to be determined based on a first set of current scenario parameters, and determine the second set of scheduling trigger rules, which second set of scheduling trigger rules is adapted to be determined based on a second set of current scenario parameters, the second set of current scenario parameters adapted to be any out of:- identical as the first set of current scenario parameters, or- different from the first set of current scenario parameters.

18. The network entity (110) according to any of claims 14-17, wherein a set of scheduling trigger rules is adapted to comprise one or more respective rules, and wherein a respective rule of a set of scheduling trigger rules is adapted to be associated to any one of:- a maximum scheduling delay related to a size of a packet,- a number of packets in a buffer,- a number of bytes in a buffer,- a function of one or more characteristics, or19. The network entity (110) according to any of claims 14-18, wherein a set of characteristics is adapted to comprise one or more characteristics, and wherein arespective characteristic of a set of characteristics is adapted to be associated to any one out of:- a measured energy consumption,- a total scheduled uplink data volume,- a total scheduled downlink data volume,- an uplink data rate,- a downlink data rate,- a user equipment time to content,- a scheduling efficiency,- a latency.

20. The network entity (110) according to any of claims 14-19, a characteristic of a set of characteristics is adapted to be normalized before calculating the weighted metric.

21. The network entity (110) according to any of claims 14-20, wherein a characteristic of a set of characteristics is adapted to be related to a characteristic specific threshold.

22. The network entity (110) according to any of claims 14-21, wherein the network entity (110) is configured to calculate a weighted metric by further being configured to associate each respective characteristic with a weight, wherein a characteristic related to energy consumption or latency is adapted to reduce the weighted metric.

23. The network entity (110) according to any of claims 14-22, wherein the network entity (110) is configured to decide whether or not to update the second set of scheduling trigger rules or the subsequent set of scheduling trigger rules by further being configured to decide whether or not to update a scheduling trigger rule updating algorithm based on the comparative performance data or the subsequent comparative performance data.