Selecting radio access technology configuration(s) for communications

EP4728791A1Pending Publication Date: 2026-04-22TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Filing Date
2023-06-19
Publication Date
2026-04-22

AI Technical Summary

Technical Problem

Current methods for selecting radio access technology (RAT) configurations in devices, such as augmented reality head-mounted displays, often fail to consider energy consumption and heat generation, leading to suboptimal performance and battery life due to simplistic approaches that prioritize maximum transmit power or base station optimization without evaluating actual energy and heat factors.

Method used

A method that determines the most energy-efficient and heat-minimal RAT configuration by measuring power consumption and heat generation for each communication component, evaluating performance criteria like data rate and latency, and dynamically selecting the optimal configuration for each data flow to ensure acceptable battery life and heat dissipation.

Benefits of technology

This approach reduces power consumption and heat generation, thereby extending battery life and maintaining performance expectations while ensuring acceptable heat dissipation, even in devices with limited battery capacity and sensitivity to heat, like augmented reality devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SE2023050627_26122024_PF_FP_ABST
    Figure SE2023050627_26122024_PF_FP_ABST
Patent Text Reader

Abstract

A method performed by a device to select at least a first RAT configuration for communications of the device includes determining (104) at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device. The method further includes evaluating (108) whether a performance criteria for the communications of the device is satisfied per RAT configuration based on an available performance of RAT configurations compared with the performance criteria; and selecting (110) at least the first RAT configuration for at least one data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device. Related methods and apparatus are also provided.
Need to check novelty before this filing date? Find Prior Art

Description

Selecting Radio Access Technology Configuration(s) for CommunicationsTECHNICAL FIELD

[0001] The present disclosure relates generally to computer-implemented methods performed by a device to select at least a first radio access technology (RAT) configuration for communications of the device, and related methods and devices.BACKGROUND

[0002] Many devices, such as smartphones for example, have preference settings on how to use different types of wireless connections if multiple types of connections are available, for example whether to use cellular connection or Wi-Fi. Such mechanisms have been derived to try to optimize certain criteria, such as cost for a user. For example, often Wi-Fi may impose no extra fee whereas cellular typically comes with a data cost or a data budget. Furthermore, within the Third Generation Partnership Project (3GPP) standardization, and within mechanisms to control a cellular connection, there can be various different schemes for how to try to optimize parameter settings and frequency bands depending on requirements and current radio channel conditions. Such schemes include, e.g., network controlled inter-RAT handovers for RAT selection while a device is in active mode, and the cell reselection priority indication which can be provided to devices for when they select frequency and cells (and thereby radio access) for camping during idle mode.

[0003] Some devices, such as extended reality (XR) head mounted displays, may use offloading or distributed processing of some functionalities between the device and other types of devices (e.g., smartphone, tablet, gateway, etc.) or a network service (e.g., over-the-top (OTT) or at mobile edge). If the traffic is between the XR device and another local device, communication can be device-to-device by, for example, using cellular sidelink, WiFi direct, or Bluetooth.SUMMARY

[0004] There currently exist certain challenges as a consequence of device constraints in terms of battery capacity and / or heat dissipations when energy is consumed or heat is generated by a device for adequate performance of a communication link (e.g., data rate, latency, etc.). For example, an augmented reality (AR) device may have significant needs in terms of communication rate and latency, while at the same time having limited battery capacity and sensitivity to heat dueto the close proximity to a human head. Some approaches to select a type of communication link for a device may either be controlled by the device based on a scheme that does not take into account energy consumption and / or heat generated by the device (e.g., WiFi has priority over cellular when WiFi coverage is available); focuses on a maximum possible transmit power; or is controlled by a base station to try to optimize traffic in a cellular spectrum. Such approaches may lack selecting a communication link where performance of the communication link(s) is taken into account in combination with energy consumed and / or heat generated by the device.

[0005] Certain aspects of the disclosure and their embodiments may provide solutions to these or other challenges.

[0006] Some embodiments are directed to a method performed by a device to select at least a first RAT configuration for communications of the device. The method includes determining), per RAT configuration from a plurality of RAT configurations for communications of the device comprising at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device. The method further includes evaluating whether a performance criteria for the communications of the device is satisfied per RAT configuration based on an available performance per RAT configuration compared with the performance criteria; and selecting at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

[0007] Other embodiments are directed to a method performed by a first network node to provide to a device at least a first RAT configuration for communications of the device. The method includes receiving, from the device, information regarding the communications of the device comprising at least one data flow; and determining, per RAT configuration from a plurality of RAT configurations for communications comprising the at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device. The method further includes sending, to at least the device, at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies a performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

[0008] Some embodiments are directed to a device. The device comprising processing circuitry configured to perform any of the operations of a method performed by a device to selectat least a first RAT configuration for communications of the device; and power supply circuitry configured to supply power to the processing circuitry.

[0009] Other embodiments are directed to a first network node comprising processing circuitry configured to perform any of the operations of a method performed by a first network node to provide to a device at least a first RAT configuration for communications of the device. The first network node further comprises power supply circuitry configured to supply power to the processing circuitry.

[0010] Some embodiments are directed to a host configured to operate in a communication system to provide an over-the-top (OTT) service. The host comprises processing circuitry configured to provide user data; and a network interface configured to initiate transmission of the user data to a network node in a cellular network for transmission to a device. The network node having a communication interface and processing circuitry, and the processing circuitry of the network node configured to perform any of the operations of a method performed by a first network node herein to transmit the user data from the host to the device.

[0011] Other embodiments are directed to a method implemented in a host configured to operate in a communication system that further includes a network node and a device. The method comprises providing user data for the device; and initiating a transmission carrying the user data to the device via a cellular network comprising the network node, wherein the network node performs any of the operations of a first network node herein to transmit the user data from the host to the device.

[0012] Still other embodiments are directed to a communication system configured to provide an OTT service. The communication system comprises a host comprising processing circuitry configured to provide user data for a device, the user data being associated with the OTT service; and a network interface configured to initiate transmission of the user data toward a cellular network node for transmission to the device, the network node having a communication interface and processing circuitry, the processing circuitry of the network node configured to perform any of the operations of any of a first network node herein to transmit the user data from the host to the device.

[0013] Some embodiments are directed to a configured to operate in a communication system to provide an OTT service. The host comprises processing circuitry configured to initiate receipt of user data; and a network interface configured to receive the user data from a network node in a cellular network, the network node having a communication interface and processing circuitry, the processing circuitry of the network node configured to perform any of the operations of a first network node herein to receive the user data from a device for the host.

[0014] Other embodiments are directed to a method implemented in a host configured to operate in a communication system that further includes a network node and a device. The method comprises at the host, initiating receipt of user data from the device, the user data originating from a transmission which the network node has received from the device, wherein the network node performs any of the operations of a first network node herein to receive the user data from the device for the host.

[0015] Still other embodiments are directed to a host configured to operate in a communication system to provide an OTT service, the host comprising processing circuitry configured to provide user data; and a network interface configured to initiate transmission of the user data to a cellular network for transmission to a device, wherein the device comprises a communication interface and processing circuitry, the communication interface and processing circuitry of the device being configured to perform any of the operations of a device herein to receive the user data from the host.

[0016] Some embodiments are directed to a method implemented by a host operating in a communication system that further includes a network node and a device, the method comprising providing user data for the device; and initiating a transmission carrying the user data to the device via a cellular network comprising the network node, wherein the device performs any of the operations of a device herein to receive the user data from the host.

[0017] Other embodiments are directed to a host configured to operate in a communication system to provide an OTT service. The host comprising processing circuitry configured to provide user data; and a network interface configured to initiate transmission of the user data to a cellular network for transmission to a device, wherein the device comprises a communication interface and processing circuitry, the communication interface and processing circuitry of the device being configured to perform any of the operations of a device herein to transmit the user data to the host.

[0018] Still other embodiments are directed to a method implemented by a host configured to operate in a communication system that further includes a network node and a device, the method comprising at the host, receiving user data transmitted to the host via the network node by the device, wherein the device performs any of the operations of a device herein to transmit the user data to the host.

[0019] Certain embodiments may provide one or more of the following technical advantage(s). Based on selecting a communication link where performance of the communication link(s) is taken into account in combination with energy consumed or heat generated by a device, power consumption of the device may be reduced or minimized in order to have an acceptablebattery lifetime or meet battery lifetime expectations or have acceptable or specified heat dissipation.BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this application, illustrate certain non-limiting embodiments of the present disclosure. In the drawings:

[0021] Figure 1 is a flowchart illustrating operations of a device according to some embodiments;

[0022] Figure 2 is a flowchart illustrating operations of a first network node according to some embodiments;

[0023] Figure 3 is a block diagram showing an example of a device that includes an energy optimization function according to some embodiments;

[0024] Figure 4 is a block diagram showing an example of interfaces of the device of Figure 3 according to some embodiments;

[0025] Figure 5 is a block diagram of a communication system in accordance with some embodiments;

[0026] Figure 6 is a block diagram of a network node in accordance with some embodiments;

[0027] Figure 7 is a block diagram of a host computer communicating with a user equipment in accordance with some embodiments;

[0028] Figure 8 is a block diagram of a virtualization environment in accordance with some embodiments; and

[0029] Figure 9 is a communication diagram of a host communicating via a network node with a UE over a partially wireless connection in accordance with some embodiments.DETAILED DESCRIPTION

[0030] 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, in which examples of embodiments of the present disclosure are shown. Inventive concepts may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the present disclosure to those skilled in the art. It should also be noted thatthese embodiments are not mutually exclusive. Components from one embodiment may be tacitly assumed to be present / used in another embodiment.

[0031] Some approaches may include generic functionality for power consumption aware RAT selection wherein, for example, a user equipment (UE) may select a RAT that has a lower specified maximum transmit power relative to the currently attached RAT. Therefore, the UE may reduce its battery drain to extend its service time per charge when a call is made utilizing the reselected RAT. The UE may intelligently select the RAT when the UE is experiencing a power crunch condition based on the assumption that a RAT with a lower specified maximum uplink transmit power would consume less energy. Such an approach is a rather simplistic method that only considers the specified maximum power consumption and, therefore, may not adjust to a current status of the communication link. Additionally, such an approach may lack evaluation of the available / possible service quality over the selected RAT.

[0032] In some systems, the energy consumed by a device, given adequate performance of the communication link (e.g., data rate and latency), can be a primary criteria due to device constraints in terms of battery capacity or heat dissipation. One example of such device types is Augmented Reality (AR) glasses that may have significant needs in terms of communication rates and latency, while at the same time have limited battery capacity and are sensitive to heat due to close proximity to a human head.

[0033] The energy consumed by the communication in the device depends on several factors, some of which may depend on a radio protocol standard (e.g., signaling schemes, coding, modulation, bandwidth, etc.), regulation and / or implementation; whereas others may depend on an actual situation (e.g., transmit output power level driven mainly by path loss, signal to noise ratio (SNR) of a received signal, level of interference, amount of retransmissions, etc.). Some traditional approaches for how to select the type of communication may be either controlled by the device based on a simplistic approach that does not take energy into consideration, (e.g. WiFi has priority over cellular in case of WiFi coverage), or may be too simplistic (e.g., focusing on a maximum possible transmit power, or control by a base station to try to optimize the traffic in the cellular spectrum).

[0034] Thus, methods for communication link selection may be lacking that take into account use case requirements in combination with energy or heat of the device.

[0035] Certain aspects of the disclosure and their embodiments may provide solutions to these or other challenges.

[0036] While examples of the present disclosure are discussed in the non-limiting context of selecting at least one RAT configuration from a plurality of available RATs for the at least onedata flow, the present disclosure is not limited. Instead, other examples include selecting multiple RATs that correspond to a respective data flow from a plurality of data flows (e.g., for concurrent use of the different RATs for the respective data flows).

[0037] As discussed herein, examples can include an energy estimation operation combined with a performance evaluation operation. Examples include that the output from these two operations are evaluated in order to perform RAT configuration(s) selection. The evaluations can be repeated in order to provide dynamic selection, which may be needed due to, e.g., the natural variations in wireless communication links and variations in data traffic patterns.

[0038] Referring to Figure 1, some embodiments herein are directed to a method performed by a device to select at least a first RAT configuration for communications of the device. The method includes determining (104), per RAT configuration from a plurality of RAT configurations for communications of the device including at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device. The method further includes evaluating (108) whether a performance criteria for the communications of the device is satisfied per RAT configuration based on an available performance per RAT configuration compared with the performance criteria; and selecting (110) at least the first RAT configuration from the plurality of RAT configurations for the data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

[0039] In some embodiments, at least one data flow includes a plurality of data flows, and the selecting (110) at least the first RAT configuration includes selecting at least a subset of the plurality of RAT configurations where respective RAT configurations from the subset are selected for respective data flows from the plurality of data flows.

[0040] As discussed further herein, operations of a device can be performed by the device 300 of Figures 3, 4, the device 5112 of Figure 5, or the device 9606 of Figure 9. Operations of the device (implemented using the structure of Figures 3, 4) are discussed herein with reference to the flow chart of Figure 1 according to some embodiments of the present disclosure. Operation 102, 106, 110, 112, and 114 from the flow chart of Figure 1 may be optional with respect to some embodiments of devices and related methods. Modules may be stored in memory 310 of Figure 3, for example, and these modules may provide instructions so that when the instructions of a module are executed by respective device processor 404 of Figure 4 (also referred to herein as processing circuitry), device 300 performs respective operations of the flow chart of Figure 1.

[0041] In some embodiments, the performance criteria includes a metric related to quality of the communications. Examples of the performance criteria include, without limitation, a metric related to quality of the communications of the device, and / or a quality of performance of an application. Quality of the communications includes, for example, one or more parameters related to communication data rate, packet delay, packet error rate, signal strength, signal quality, etc.

[0042] Examples include operations that can dynamically optimize or improve the use of different RAT configurations based on the actual energy consumed by the device 300 communication components (or heat generated by components of the device 300 such as a graphical processing unit (GPU) or display of the device, for example) as this may be a critical resource in some devices (including emerging devices), while at the same time meeting necessary data link performance criteria. If energy consumed by the device (e.g., power) can be estimated, an estimation of heat generated by the device may not be needed. In contrast, if energy consumed by the device cannot be estimated, then an estimation of heat generated by components of the device can be used.

[0043] Some examples include an energy consumption estimation function 306 for actual current modem 312 activities, collecting information, e.g., from a look up table or radio access related sub-entities within the device 300. Further, this can be combined with a radio access quality monitoring function, where requirements or information on the communication links as well as the actual measured performance of the communication links is collected. In the examples, the information from these functions is combined to optimize or improve the usage of the available RATs for local communication, and perform a dynamic selection (or a split selection) of datalinks to optimize or improve the energy consumption of the communication while taking minimum available communication needs into account. In other words, operations are performed to select the RAT configuration(s) having the lowest expected energy consumption while fulfilling quality requirements (where often the only available requirement is a bit rate requirement); or to select the RAT configuration(s) having a significantly lower expected energy consumption while approximately fulfilling quality requirement (e.g., where the quality requirements are almost fulfilled. Selection of a RAT configuration(s) having a significantly lower expected energy consumption while approximately fulfilling quality requirement may result in achieving gains by slightly lowering the demands on the device / communi cation link(s), for example.

[0044] Further, while some examples include selection operations between RATs such as cellular, Wi-Fi, and Bluetooth communication protocols, the present disclosure is not so limited and can also include different frequencies (e.g., high / mid / low) or bandwidth parts within a radio frequency band for cellular or combined cellular and Wi-Fi. The device 300 may send a request ofits preferred radio frequency (RF) configuration (from an energy consumption optimization or improvement point of view, for example) to a network node (e.g., network node 5118) so that the network node can set the RF configuration accordingly. For example, the device 300 may use a 3GPP UE Assistance Information (UAI) framework to send a request of the preferred cellular configuration of the device 300. Moreover, as discussed further herein, some examples include traffic towards far end (e.g. OTT) or towards a local device via different device-to-device links (e.g., cellular sidelink vs. Wi-Fi direct vs. Bluetooth, etc.).

[0045] Operations of examples include a process to schedule / allocate data traffic to different RATs in a device 300.

[0046] In some embodiments, at least one data flow includes a traffic pattern. In some embodiments, the method of Figure 1 further includes performing (102) at least one of extracting and estimating the at least one data flow including the data traffic pattern from at least one application running in the device. For example, a data traffic pattern can be extracted / predicted from, e.g., an application-to-modem API or from one or more specific applications running in the device. The data traffic pattern can be a determined need to transmit data in general, or it can be more complex and include expected data sizes and time latency, for example.

[0047] In some embodiments, determining (operation 104 in Figure 1) includes, based on at least one data flow and a RF setting and / or parameter per RAT configuration of the device, using a historical energy consumption of a communication component (e.g., a modem, a communication interface, etc.) or a historical heat generated by a component of the device (e.g., a GPU or a display) and an actual performance per RAT to determine at least one of the estimated energy consumption and the estimated heat generated per RAT configuration. For example, based on a data traffic pattern and a current RF setting / configuration, the corresponding individual radio access performance quality and power consumption of the utilized, available RAT modules and configurations is estimated.

[0048] A minimum quality requirement level for communication is set in some examples. A default, for example, can be a minimum acceptable data rate level, but for certain applications and systems additional requirement levels can be defined such as communication latency, for example.

[0049] In some embodiments, a subset of RAT configurations from the plurality of RAT configurations that are not selected are placed or kept in an idle mode or a low power mode. For example, estimated power numbers can be compared and a RAT module can be activated that has a lowest power number while offering an acceptable quality level to process the data traffic while keeping other RAT configurations in idle or a low power mode.

[0050] The method of Figure 1, in some embodiments, further includes repeating (112) at least the determining (104), the evaluating (108), and the selecting (110) when there is a change in movement or orientation of the device, when there is a change in the at least one data flow, and / or when there is a change in the performance criteria for the communications of the device; and selecting (110) includes selecting at least one RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the communication component of the device or a lowest heat generated by the component of the device.

[0051] In one example, RAT configuration re-selection may be triggered by the movement (or orientation change) of the device 300, or be triggered by the change of a data traffic pattern (e.g., due to change of applications running in the device 300).

[0052] The RAT selection can include selection between RAT protocol, bandwidth, frequency, device 300 capability (e.g., multiple input multiple output (MIMO) layers supported), parameter setting (e.g., seen by device assistance signaling (e.g. suggesting a discontinuous reception (DRX) configuration), etc.).

[0053] In some embodiments, the measurement of power to a communication component 312, 410 of the device 300 includes at least one measured value or at least one value obtained from at least one parameter of the communication component 312, 410 including at least one of a modem 312 and a communication subsystem 410 of the device 300; and the measurement of heat generated based on at least a measurement of heat generated by the component 312, 410 of the device 300 includes at least one measured value or at least one value obtained from at least one parameter of the component 312, 410 of the device 300.

[0054] In an example, the device 300 estimates the energy consumption for different RATs. The estimation does not need to be exact but, rather, can be relative to each other to guide proper optimization or improvement. For example, information indicative of energy consumption may be used.

[0055] In some embodiments, the at least one parameter comprises at least one of (i) a measured battery current or current drawn of the communication component of the device, (ii) a measurement from a power management component that supplies power to respective RAT configurations from the plurality of RAT configurations, (iii) a comparison of (a) a total amount of current drawn by the device or by the communication component of the device when used for communication with (b) the device or the communication component when the communication is in one of off and an idle mode, (iv) a lookup table of measured energy consumption or measuredheat generated per RAT configuration, and (v) a formula that provides the estimated energy consumption or the estimated heat generated by the communication component of the device .

[0056] In one example, the estimate of heat generation can be based on heat dissipation, e.g. temperature measurements, particularly when a target of the process is to minimize heat dissipation.

[0057] Further examples of how energy consumption or information indicative of the energy consumption per radio access can be collected include: a. Current measurement data collected at battery voltage and / or different voltage regulators (e.g., low dropout regulators (LDOs) or step-down regulators (e.g., Bucks)) which supply power to the respective RATs. This can include collecting power measurements for RAT specific modems / RF frontends / power amplifiers 312, 410, etc. It is noted that there may be multiple LDOs, Bucks, etc. supplying power to different subsystems 410, and that they may be separate for different RATs. The exact power architecture can vary for different chipsets or device 300 designs. b. Analysis based on comparison of aggregated measured energy consumption over time, coupled to different RAT usage. In other words, individual RAT or communication component 312, 410 (e.g., cellular module, WiFi module, etc.) power consumption can be estimated by comparing (i) the total current drawn by the device 300 or by a subset of components 312, 410 of the device 300 when the communication component 312, 410 is used for communication with (ii) when the communication component 312, 410 is off. In one example, this operation can be used if the energy consumption of a modem entity 312 in total can be measured and collected in the device 300 in combination with information on which RAT is being used. c. Usage of lookup tables or formulas that gives estimates based on pre-measured energy consumption (e.g., from when the device 300 is designed). During device 300 product testing, for example, the power consumption of individual components 312, 410 can be measured for different RF configurations. For example, the cellular modem power consumption can be measured for certain configurations as a function of some parameters that are either defined for a protocol and current configuration or being measured (e.g., transmit (Tx) output power, receive (Rx) SNR, bandwidth, data rate, etc.).For each RAT, a lookup table (LUT) can then be formed and stored (e.g., in a memory 310) in the device 300, which contains the RAT communication RF configurations versus the corresponding communication component power consumption. Then, the estimated power consumption for the RAT configuration can be a combination of the relevant LUT forsome parameters in combination with a formula based on the contribution for some other parameters. d. Summing estimated energy consumption from contributing subsystems or functions, where the estimated energy consumption of some of the contributing subsystems or functions are based on measurements and the remainder of the contributing subsystems or functions are based on lookup tables, formulas or other algorithms.

[0058] In an example, the device 300 can extract / predict the data traffic during a period of time (e.g., during 1 second) required from one or more application(s) (e.g., XR application 304) running in the device 300. In this example, the data traffic pattern is extracted, as well as the RF configuration of a RAT (e.g. Rx SNR, Tx transmission power, number of Rx / Tx antenna branches, DRX setting etc.). Then, the corresponding power consumption of the RAT configuration can be found from its LUT directly or estimated (e.g. by interpolation / extrapolation).

[0059] In some embodiments of the method of Figure 1, selecting (110) at least the first RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device includes comparing at least one of the estimated (i) energy consumption of the communication component of the device and (ii) heat generated by the component of the device. The method further includes, based on the comparing, choosing at least the first RAT configuration that satisfies the performance criteria and that has the lowest energy consumption of the communication component of the device or the lowest heat generated by the component of the device.

[0060] Selecting a RAT configuration(s) can be performed for all the RAT configurations in the device 300 so that the power / energy consumption of the RAT modules can be estimated for the data traffic, for example, the device 300 can compare the estimated power numbers of all RAT modules and activate the RAT technology configuration with the lowest estimated power consumption to process the data traffic.

[0061] In some examples, if the selecting is based on measurements during use, the process may include a repeated usage of the different RATs in order to re-evaluate them and maintain up to date information on the energy consumption per RAT. In some examples, specific energy saving optimizations or improvements of such repeated usage can be applied. For example, if one RAT is much worse than the others, its duty cycle can be minimized so as not to lead to too much energy losses. Depending on how close the estimations are, the more frequently they may need to be compared.

[0062] In some embodiments of the method of Figure 1, the method further includes repeating(112) at least the determining (104), the evaluating (108), and the selecting (110) when there is a change in movement or orientation of the device, when there is a change in the at least one data flow, and / or when there is a change in the performance criteria for the communications of the device; and the selecting (110) includes selecting at least one RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the communication component device or a lowest heat generated by the component of the device.

[0063] As previously discussed, in addition to energy consumption per RAT, for example, one or more performance criteria is taken into consideration (e.g., by a radio access quality monitoring function). Such performance criteria may be application specific (e.g., XR application 304) and include requirements on available data rate and latency, for example, and the RAT may not be used if the performance criteria is not met.

[0064] One link (e.g., Bluetooth) can consume lower energy but not satisfy other needs, for example. However, it still may be acceptable to use the link for some traffic due to satisfying the performance criteria.

[0065] In another example, one link may be low energy because of certain parameter settings, but if the needed communication latency becoming shorter and / or the required data rate increasing then its settings must change leading to worse energy: Such a situation can be captured in the repeated re-evaluation operations discussed with regard to operation 112 of Figure 1, for example.

[0066] Different data flows can be used with different performance criteria. For example, an application entity 310, 402 may partition (e.g., split) data flows so that the critical data flows that may demand higher energy do not lead to energy waste for other best-effort data flows which are less critical in terms of, e.g., latency. In other words, optimization or improvement may be performed for not only the complete flow, but also to treat different data flows differently if this is supported by an application subsystem 402, etc.

[0067] Applications such as motion control with critical latency and reliability requirements may be mapped to a specific port (e.g., port ID in a transmission control protocol (TCP) of a connection oriented transport protocol, which in turn gets mapped to a RAT that offers high reliability for such low data rate traffic. High throughput lossy data may be mapped onto a connection-less transport protocol such as a user datagram protocol (UDP) and then in turn can be mapped to a different RAT(s).

[0068] In some embodiments, the method of Figure 1 further includes switching (114) to at least the first RAT configuration from the plurality of RAT configurations that satisfies theperformance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

[0069] If the device 300 estimates that it consumes less energy by using one RAT (e.g. LTE, 5G, WiFi, Bluetooth) instead of another, for example, then the device 300 dynamically switches. In another example, if the device 300 determines that use of multiple simultaneous RATs due to individual data flow optimization consumes more energy compared to only using one RAT which can meet the performance criteria for all data flows, then the device 300 switches all data flows to use that same RAT.

[0070] In some embodiments, the method of Figure 1 further includes setting (106) a parameter of at least one of the communication component and the component of the device with a goal to achieve the estimated energy consumption or the estimated heat generated.

[0071] A modem parameter can be re-configured for energy savings, for example. Such reconfiguration of the modem 312 parameter can be implemented by an application processor 402 via AT-commands transmitted to the modem. The application may change, for example, the settings in the cellular connection to minimize the energy for the cellular link by lowering the maximum power amplifier (PA) output power, and if that is not good enough for performance, then another RAT can be used instead. In other words, PA output power is not optimized or improved from an interference perspective but from a device 300 energy consumption perspective.

[0072] In some embodiments, selecting (operation 110 in Figure 1) includes partitioning at least one data flow among (i) the first RAT configuration for a first portion of the at least one data flow, and (ii) a second RAT configuration for a second portion of the at least one data flow; wherein the first RAT configuration and the second RAT configuration respectively satisfy the performance criteria and the first and the second RAT configurations together have a lowest energy consumption of the communication component of the device or a lowest heat generated by the component of the device compared to a partitioning of the at least one data flow among a remainder of RAT configurations from the plurality of RAT configurations.

[0073] Some embodiments for the partitioning at least one data flow over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow include: performing a first partitioning including an increase of an amount of the first portion of the at least one data flow and a decrease of an amount of the second portion of the at least one data flow, measuring a first energy consumption or a first heat generated by the communication component or component of the device that results from the first partitioning,performing a second partitioning including a decrease of the amount of the first portion of the at least one data flow and an increase of the amount of the second portion of the at least one data flow, and measuring a second energy consumption or a second heat generated by the communication component or component of the device that results from the second partitioning, wherein the selecting (110) includes selecting one of the first partitioning and the second partitioning based on which of the first partitioning and the second partitioning results in the lowest energy consumption or heat generated by the communication component or component of the device.

[0074] A measurement procedure to determine an optimized data partitioning can be used for a data flow if trying to minimize the energy consumption by splitting the data flow to be transmitted over multiple paths using different RATs. Such a procedure may be performed by changing part of traffic from 0 to 100% via one path (e.g., 60%), and the rest of the % via the other path (e.g., 40%). Power consumption can be checked, and then the partitioning that gives lowest power can be selected if the performance criteria is met (e.g., a requirement on delay, etc.), otherwise a second best power / partitioning can be selected, and so on, as described further below:For tracking of such partitioning operations: Start with a currently used partitioning, change the partitioning by a step (e.g., %) upwards and measure power, change the partitioning by a step (%) downwards and measure power. Choose the best partitioning.In the sweep that changes the percentages, by measuring each path supplying power individually, each path power consumption can be obtained also as a function of its absolute data rate, which can be used to calculate new partitioning when the total rate requirement changes.The direction of the sweep changing the percentages can be made dependent on statistical data of which path has highest performance in terms of latency, etc., and the sweep can be continued only to the point where the requirements are no longer met.

[0075] In some embodiments, partitioning the at least one data flow over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow includes receiving the partitioning from a network node. For example, the starting partitioning can be received from, e.g., a remote server when a location is entered for a particular device / operating system etc. (for example, based on the particular device entering a location). The remote server can maintain, e.g., typical usage profiles and, therefore, can be used to speed up the best partitioning result.

[0076] In some embodiments, communications of the device include device-to-device communications.

[0077] For example, selecting a best RAT for device-to-device communication from augmented reality (AR) glasses 300 to another available device. The selecting may be between a RAT configuration for 3 GPP sidelink versus WiFi direct versus Bluetooth, etc.

[0078] As further discussed herein examples also include OTT where the selecting is between cellular versus WiFi versus Bluetooth, etc.

[0079] In some examples, selecting a sidelink versus normal cellular connectivity may be included if both can handle use case performance.

[0080] The device 300 can be a virtual reality (VR), AR, or an XR device or functionality.

[0081] The plurality of RAT configurations can include a plurality from among the following: a device-to device configuration; a 3GPP sidelink configuration; a WiFi configuration; a Bluetooth configuration; a cellular communications configuration; and a 3 GPP configuration for device communications.

[0082] Referring to Figure 2, some embodiments herein are directed to a method performed by a first network node to provide to a device at least a first RAT configuration for communications of the device. The method includes receiving (202), from the device, information regarding the communications of the device comprising at least one data flow; and determining (204), per RAT configuration from a plurality of RAT configurations for communications including the at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device. The method further includes sending (208), to at least the device, at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies a performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device. The first network node knows about a RAT, such as WiFi, that the device knows based upon the first network node covers RATs (such as WiFi) that the first network node supports.

[0083] In some embodiments, at least one data flow includes a plurality of data flows, and the sending (208) at least the first RAT configuration includes sending at least a subset of the plurality of RAT configurations where respective RAT configurations from the subset are sent for respective data flows from the plurality of data flows.

[0084] As discussed further herein, operations of a first network node can be performed by the network node 5110 or 5118 of Figure 5, network node 6300 of Figure 6, or network node 9604 of Figure 9. Operations of the network node (implemented using the structure of Figures 6)are discussed herein with reference to the flow chart of Figure 2 according to some embodiments of the present disclosure. Operations 204, 206, and 210 from the flow chart of Figure 2 may be optional with respect to some embodiments of network nodes and related methods. Modules may be stored in memory 6304 of Figure 6, for example, and these modules may provide instructions so that when the instructions of a module are executed by respective network node processor 6310 of Figure 6 (also referred to herein as processing circuitry), network node 6300 performs respective operations of the flow chart of Figure 2.

[0085] In some embodiments, sending (operation 208 in Figure 2) further includes sending at least the first RAT configuration to at least one of a second network node, an access point, and a base station to which the device is connected.

[0086] Determining (operation 204 in Figure 2), in some embodiments, includes, based on the at least one data flow and a radio frequency setting and / or parameter per RAT configuration of the device, using a historical energy consumption of the communication component or a historical heat generated by the component of the device and the actual performance per RAT to determine at least one of the estimated energy consumption and the estimated heat generated per RAT configuration.

[0087] The measurement of power to a communication component of the device can include at least one measured value or at least one value obtained from at least one parameter of the communication component including at least one of a modem and a communication subsystem of the device, and wherein the measurement of heat generated based on at least a measurement of heat generated by the component of the device includes at least one measured value or at least one value obtained from at least one parameter of the component of the device.

[0088] In some embodiments, at least one parameter includes at least one of (i) a measured battery current or current drawn by the communication component of the device, (ii) a measurement from a power management component that supplies power to respective RAT configurations from the plurality of RAT configurations, (iii) a comparison of (a) a total amount of current drawn by the device or by the communication component of the device when used for communication with (b) the device or the communication component of the device when the communication is in one of off and an idle mode, (iv) a lookup table of measured energy consumption or measured heat generated per RAT configuration, and (v) a formula that provides the estimated energy consumption aor the estimated heat generated by the communication component of the device .

[0089] Some embodiments of the method of Figure 2 further include selecting (206) at least the first RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated.

[0090] The selecting (206), in some embodiments, is based on (i) comparing at least one of the estimated (i) energy consumption of the communication component of the device and (ii) heat generated by the component of the device, and (ii) based on the comparing, selecting the at least the first RAT configuration that satisfies the performance criteria and that has the lowest energy consumption of the communication component of the device or the lowest heat generated by the component of the device.

[0091] Some embodiments of the method of Figure 2 further include repeating (210) at least the determining (204) and the sending (208) when there is a change in movement or orientation of the device, when there is a change in the at least one data flow, and / or when there is a change in the performance criteria for the communications of the device. The sending (208) includes sending to at least the device at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

[0092] In some embodiments, sending (208) at least the first RAT configuration includes a partitioning of the at least one data flow into (i) the first RAT configuration for a first portion of the at least one data flow, and (ii) a second RAT configuration for a second portion of the at least one data flow, wherein the first and second RAT configurations respectively satisfy the performance criteria and the first and the second RAT configurations together have a lowest energy consumption of the communication component of the device or a lowest heat generated by the component of the device compared to a partitioning of the at least one data flow among a remainder of RAT configurations from the plurality of RAT configurations.

[0093] The partitioning of at least one data flow, in some embodiments, over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow includes: performing a first partitioning including an increase of an amount of the first portion of the at least one data flow and a decrease of an amount of the second portion of the at least one data flow, measuring a first energy consumption or a first heat generated by the communication component or component of the device that results from the first partitioning,performing a second partitioning including a decrease of the amount of the first portion of the at least one data flow and an increase of the amount of the second portion of the at least one data flow, and measuring a second energy consumption or a second heat generated by the communication component or component of the device that results from the second partitioning, wherein the sending includes sending one of the first partitioning and the second partitioning based on which of the first partitioning and the second partitioning results in the lowest energy consumption or heat generated by the communication component or component of the device.

[0094] The first network node can include at least one of a server and a computing device.

[0095] In an example of first network node can be a network server 5118. Network server5118 based support for selection of a RAT can include a power model of each RAT (e.g. a lookup table containing the RAT communication RF configurations versus the corresponding RAT power consumption) that can be stored / maintained in the network server 5118. The server can receive ongoing or a potential data traffic profile from the device 300, and can send back a recommended RAT configuration to the device 300 based on the minimum RAT energy consumption that is estimated by the server 5118. The server 5118 also can send the recommended RAT configuration to a second network node 5110 (e.g., a base station and / or an access point) to which the device 300, 5112 is connected. Such a server 5118 may be offering proximity services as well, or communicate with a proximity services server, wherein the device’s 300 location is determined automatically and the device 300 also can be provided with additional connectivity options, such as potential sidelink communication link with a proximity device 5112B which is likely to be possible to setup, and then the lookup table can be adjusted for this additional link if configured.

[0096] The server 5118 may be located in the RAT network or a part of the RAT network. Server 5118 based support may include RAT power models of multiple devices 300, 5112 which are in the coverage of the RAT network.

[0097] Additionally, as discussed herein, such server 5118 also may support a data partitioning procedure between RATs for the device 300, 5112, if a partitioning operation is applied.

[0098] In another or alternative example, the first network node can be a base station 5110 involved in performing a RAT selection to optimize or improve device 300, 5112 energy consumption for a device(s) 300, 5112 (e.g., a device(s) with limited / dimini shing energy resources).

[0099] Figure 3 is a block diagram showing an example of a device 300 that includes an energy optimization function 306. Figure 4 is a block diagram showing an example of interfaces of the device 300.

[0100] As shown in Figures 3 and 4, the device 300 includes processor 404 that is operatively coupled to memory 310, data and control interfaces (shown by the lines with the solid arrows) and power management interfaces (shown by the lines with unfilled arrows), and / or any other component, or any combination thereof. Certain devices may utilize all or a subset of the components shown in Figures 3, 4. The level of integration between the components may vary from one device to another device. Further, certain devices may contain multiple instances of a component, such as multiple processors, memories, etc.

[0101] As shown, the energy optimization function 306 resides in an application entity / memory 310, wherein integration with the data generating application(s) (e.g., XR application 304) can be performed. The energy optimization function 306 can collect energy data from a power supply data collection function 308, while the data communication requirements (e.g. data rate and latency requirements) can be provided by the application (e.g., XR application 304). The application component / memory 310 can control the modem component 312 via an application-to-modem interface.

[0102] As previously described, the power supply data collection 308 may include collecting measured data from LDOs or similar within the device 300, or it may include collecting data from a lookup table.

[0103] Figure 4 translates the logical block diagram in Figure 3 to a high-level implementation architecture depicting components discussed herein. As shown, device 300 includes application processor sub-system 402, communication sub-system 410 and their associated power management units (PMU) 406, 412. One of the PMUs 406, 412 can act as a master and control the other PMUs406, 412 via power management interfaces such as mobile industry processor interface (MIPI) system power management interface (SPMI). In Figure 4, master PMU 406 for the device 300 is shown as a part of the application processing sub-system 402. Master PMU 406 can host the energy optimization function 306 and power consumption calibration and accounting unit 408 on a single micro-controller such as one among ARM cortex series and running at a clock frequency of few tens of MHz. In another or alternative example, PMU 406 can be implemented as hardware state machines. The power consumption calibrating unit 408 can calibrate and normalize voltage and current measurements for variations (e.g., power supply distribution to a PMU 406, 412) in components on a platform, thus providing the energy optimization function 306 with normalized information across different wireless modemconnectivity interfaces. The energy estimation function 306 may be implemented on the power consumption calibration and accounting unit 408, while other functions may be part of the energy optimization function 306.

[0104] While different modems are shown in Figure 4, the different modems may not be in the same communication subsystem in device 300. For example, the different modems may be related to a virtual function, but physically separate from the device 300. Moreover, the application processor subsystem 402 may interface multiple modem subsystems directly.

[0105] 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, vehiclemounted 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-IoT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

[0106] A UE may support device-to-device (D2D) communication, for example by implementing a 3 GPP 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).

[0107] 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 conditioningsystem 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 AR or 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 300 shown in Figures 3, 4.

[0108] 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-IoT 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.

[0109] While examples herein are discussed with reference to the device 300 of Figures 3 and 4, implementation of the device is not so limited and includes, for example, other structures to implement the energy optimization function 306 into the modem component 312, for example. In such an implementation, access to power supply measurements may be available directly via modem 312 subsystem components such as from an analogue base band power management unit of the modem. In such a scenario, data from application requirements (e.g., from XR application 304) may be collected via determining the quality-of-service level of the data flow from the application component to the modem 312.

[0110] The processor 404 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 310. The processor 404 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 processor 404 may include multiple central processing units (CPUs).

[0111] In the example, a communication interface of device 300 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 display, a monitor, a printer, another output device, or any combination thereof. An input device may allow a user to capture information into the device 300. 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, a force sensor, 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.

[0112] The memory 310 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 310 includes one or more application programs, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data. The memory 310 may store, for use by the device 300, any of a variety of various operating systems or combinations of operating systems.

[0113] The memory 310 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 (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as ‘SIM card.’ The memory 310 may allow the device 300 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 310 which may be or comprise a device-readable storage medium.

[0114] The processor 404 may be configured to communicate with a network using a network interface. The network interface may comprise one or more communication subsystems. The network interface 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 device, a server, edge node, cloud node, etc.). Each transceiver may include a transmitter and / or a receiver appropriate to provide network communications (e.g., optical, electrical, and so forth).

[0115] Communication functions of the network interface 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 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.

[0116] Figure 5 shows an example of a communication system 5100 in accordance with some embodiments.

[0117] In the example, the communication system 5100 includes a telecommunication network 5102 that includes an access network 5104, such as a RAN, and a core network 5106, which includes one or more core network nodes 5108. The access network 5104 includes one or more access network nodes, such as network nodes 5110a and 5110b (one or more of which may be generally referred to as network nodes 5110 (and which may be a server or a computing device), or any other similar 3GPP access node or non-3GPP access point. The network nodes 5110 facilitate direct or indirect connection of user equipment (UE) (also referred to herein as “user device”), such as by connecting UEs 5112a, 5112b, 5112c, and 5112d (one or more of which may be generally referred to as UEs 5112) to the core network 5106 over one or more wireless connections. A device (e.g., device 300) can be a UE 5112, or another node comprising a device in communication system 1000; and a network node can be a server 5118 or other computing device, a network node 5110 (such as a base station), an access point, etc. as discussed herein.

[0118] Example wireless communications over a wireless connection include transmitting and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / orother types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system 1000 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 1000 may include and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.

[0119] The UEs 5112 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 5110 and other communication devices. Similarly, the network nodes 5110 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs 5112 and / or with other network nodes or equipment in the telecommunication network 5102 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 5102.

[0120] In the depicted example, the core network 5106 connects the network nodes 5110 to one or more hosts, such as host 5116. 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 5106 includes one more core network nodes (e.g., core network node 5108) 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 5108. 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 (AUSF), Subscription Identifier De-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and / or a User Plane Function (UPF).

[0121] The host 5116 may be under the ownership or control of a service provider other than an operator or provider of the access network 5104 and / or the telecommunication network 5102, and may be operated by the service provider or on behalf of the service provider. The host 5116 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, analyticsfunctionality, 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.

[0122] As a whole, the communication system 5100 of Figure 5 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.

[0123] In some examples, the telecommunication network 5102 is a cellular network that implements 3GPP standardized features. Accordingly, the telecommunications network 5102 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 5102. For example, the telecommunications network 5102 may provide URLLC services to some UEs, while providing eMBB services to other UEs, and / or mMTC / Massive loT services to yet further UEs.

[0124] In some examples, the UEs 5112 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 5104 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 5104. 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 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).

[0125] In the example, the hub 5114 communicates with the access network 5104 to facilitate indirect communication between one or more UEs (e.g., UE 5112c and / or 5112d) and network nodes (e.g., network node 5110b). In some examples, the hub 5114 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 5114 may be a broadband router enabling access to the core network 5106 for the UEs. As another example, the hub 5114 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may bereceived from the UEs, network nodes 5110, or by executable code, script, process, or other instructions in the hub 5114. As another example, the hub 5114 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 5114 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub 5114 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub 5114 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub 5114 acts as a proxy server or orchestrator for the UEs, in particular if one or more of the UEs are low energy loT devices.

[0126] The hub 5114 may have a constant / persistent or intermittent connection to the network node 5110b. The hub 5114 may also allow for a different communication scheme and / or schedule between the hub 5114 and UEs (e.g., UE 5112c and / or 5112d), and between the hub 5114 and the core network 5106. In other examples, the hub 5114 is connected to the core network 5106 and / or one or more UEs via a wired connection. Moreover, the hub 5114 may be configured to connect to an M2M service provider over the access network 5104 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 5110 while still connected via the hub 5114 via a wired or wireless connection. In some embodiments, the hub 5114 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 5110b. In other embodiments, the hub 5114 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 5110b, but which is additionally capable of operating as a communication start and / or end point for certain data channels.

[0127] Figure 6 shows a network node 6300 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 device, such as a UE, and / or with network nodes, or equipment, in a telecommunication network / communication system. Examples of network nodes include, but are not limited to, servers, computing devices, 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)), and O-RAN nodes or components of an O-RAN node (e.g., O-RU, O-DU, O- CU).

[0128] 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, ormacro 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).

[0129] 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-cell / 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).

[0130] The network node 6300 includes a processing circuitry 6310, a memory 6304, a communication interface 6306, and a power source 6308. The network node 6300 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 6300 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 NodeB s. 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 6300 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 6304 for different RATs) and some components may be reused (e.g., a same antenna 6310 may be shared by different RATs). The network node 6300 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 6300, 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 6300.

[0131] In certain alternative embodiments, the network node 6300 does not include separate radio front-end circuitry 6318, instead, the processing circuitry 6310 includes radio front-end circuitry and is connected to the antenna 6310. Similarly, in some embodiments, all or some of the RF transceiver circuitry 6312 is part of the communication interface 6306. In still otherembodiments, the communication interface 6306 includes one or more ports or terminals 6316, the radio front-end circuitry 6318, and the RF transceiver circuitry 6312, as part of a radio unit (not shown), and the communication interface 6306 communicates with the baseband processing circuitry 6314, which is part of a digital unit (not shown).

[0132] The antenna 6310 may include one or more antennas, or antenna arrays, configured to send and / or receive wireless signals. The antenna 6310 may be coupled to the radio front-end circuitry 6318 and may be any type of antenna capable of transmitting and receiving data and / or signals wirelessly. In certain embodiments, the antenna 6310 is separate from the network node 6300 and connectable to the network node 6300 through an interface or port.

[0133] The antenna 6310, communication interface 6306, and / or the processing circuitry 6310 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 6310, the communication interface 6306, and / or the processing circuitry 6310 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.

[0134] The power source 6308 provides power to the various components of network node 6300 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 6308 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 6300 with power for performing the functionality described herein. For example, the network node 6300 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 6308. As a further example, the power source 6308 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.

[0135] Embodiments of the network node 6300 may include fewer (e.g., in the case of a server) components or additional components beyond those shown in Figure 6 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 6300 may include user interface equipment to allow input of information into the network node 6300 and to allow output of information from the network node6300. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 6300.

[0136] Figure 7 is a block diagram of a host 7400, which may be an embodiment of the host 5116 of Figure 5, in accordance with various aspects described herein. As used herein, the host 7400 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 7400 may provide one or more services to one or more UEs or computing devices.

[0137] The host 7400 includes processing circuitry 7402 that is operatively coupled via a bus 7404 to an input / output interface 7406, a network interface 7408, a power source 7410, and a memory 7412. 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 Figure 6, such that the descriptions thereof are generally applicable to the corresponding components of host 7400.

[0138] The memory 7412 may include one or more computer programs including one or more host application programs 7414 and data 7416, which may include user data, e.g., data generated by a UE for the host 7400 or data generated by the host 7400 for a UE or computing device. Embodiments of the host 7400 may utilize only a subset or all of the components shown. The host application programs 7414 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., FLAC, 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, headsup display systems). The host application programs 7414 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 7400 may select and / or indicate a different host for over-the-top services for a UE. The host application programs 7414 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.

[0139] Functions implemented by some embodiments may be virtualized. In the present context, virtualizing means creating virtual versions of apparatuses or devices or network nodes 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 VMs implemented in one or more virtual environments hosted by one or more of hardware nodes, such as a hardware device that operates as a server, an edge node or cloud node. Further, in embodiments the virtual node may be entirely virtualized.

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

[0141] Figure 8 is a block diagram illustrating a virtualization environment 8500 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 or network node 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 VMs implemented in one or more virtual environments 8500 hosted by one or more of hardware nodes, such as a hardware network node that operates as a device (e.g., a UE), server, computing device, network node, 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.

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

[0143] Hardware 8504 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 8506 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 8508a and 8508b (one or more of which may be generally referred to as VMs 8508), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein.The virtualization layer 8506 may present a virtual operating platform that appears like networking hardware to the VMs 8508.

[0144] The VMs 8508 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 8506. Different embodiments of the instance of a virtual appliance 8502 may be implemented on one or more of VMs 8508, 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.

[0145] In the context of NFV, a VM 8508 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 8508, and that part of hardware 8504 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 8508 on top of the hardware 8504 and corresponds to the application 8502.

[0146] Hardware 8504 may be implemented in a standalone network node with generic or specific components. Hardware 8504 may implement some functions via virtualization. Alternatively, hardware 8504 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 8510, which, among others, oversees lifecycle management of applications 8502. In some embodiments, hardware 8504 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, base station, or a device. In some embodiments, some signaling can be provided with the use of a control system 8512 which may alternatively be used for communication between hardware nodes and radio units.

[0147] Figure 9 shows a communication diagram of a host 9602 communicating via a network node 9604 with a UE 9606 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE 5112a of Figure 5 and / or device 300 of Figures 3, 4), network node (such as network node 5110a, 5118 of Figure 5 and / or network node 6300 of Figure 6), and host (such ashost 5116 of Figure 5 and / or host 7400 of Figure 7) discussed in the preceding paragraphs will now be described with reference to Figure 9.

[0148] Like host 7400, embodiments of host 9602 include hardware, such as a communication interface, processing circuitry, and memory. The host 9602 also includes software, which is stored in or accessible by the host 9602 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 9606 connecting via an OTT connection 9650 extending between the UE 9606 and host 9602. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection 9650.

[0149] The network node 9604 includes hardware enabling it to communicate with the host 9602 and UE 9606. The connection 9660 may be direct or pass through a core network (like core network 5106 of Figure 5) 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.

[0150] The UE 9606 includes hardware and software, which is stored in or accessible by UE 9606 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 9606 with the support of the host 9602. In the host 9602, an executing host application may communicate with the executing client application via the OTT connection 9650 terminating at the UE 9606 and host 9602. 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 9650 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 9650.

[0151] The OTT connection 9650 may extend via a connection 9660 between the host 9602 and the network node 9604 and via a wireless connection 9670 between the network node 9604 and the UE 9606 to provide the connection between the host 9602 and the UE 9606. The connection 9660 and wireless connection 9670, over which the OTT connection 9650 may be provided, have been drawn abstractly to illustrate the communication between the host 9602 and the UE 9606 via the network node 9604, without explicit reference to any intermediary devices and the precise routing of messages via these devices.

[0152] As an example of transmitting data via the OTT connection 9650, in step 9608, the host 9602 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 UE9606. In other embodiments, the user data is associated with a UE 9606 that shares data with the host 9602 without explicit human interaction. In step 9610, the host 9602 initiates a transmission carrying the user data towards the UE 9606. The host 9602 may initiate the transmission responsive to a request transmitted by the UE 9606. The request may be caused by human interaction with the UE 9606 or by operation of the client application executing on the UE 9606. The transmission may pass via the network node 9604, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step 9612, the network node 9604 transmits to the UE 9606 the user data that was carried in the transmission that the host 9602 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step 9614, the UE 9606 receives the user data carried in the transmission, which may be performed by a client application executed on the UE 9606 associated with the host application executed by the host 9602.

[0153] In some examples, the UE 9606 executes a client application which provides user data to the host 9602. The user data may be provided in reaction or response to the data received from the host 9602. Accordingly, in step 9616, the UE 9606 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 9606. Regardless of the specific manner in which the user data was provided, the UE 9606 initiates, in step 9618, transmission of the user data towards the host 9602 via the network node 9604. In step 9620, in accordance with the teachings of the embodiments described throughout this disclosure, the network node 9604 receives user data from the UE 9606 and initiates transmission of the received user data towards the host 9602. In step 9622, the host 9602 receives the user data carried in the transmission initiated by the UE 9606.

[0154] One or more of the various embodiments improve the performance of OTT services provided to the UE 9606 using the OTT connection 9650, in which the wireless connection 9670 forms the last segment. More precisely, the teachings of these embodiments may improve the power consumption of the device, and / or a data rate, latency or other performance criteria of the communications and thereby provide benefits such as extended battery time and / or improved performance.

[0155] In an example scenario, factory status information may be collected and analyzed by the host 9602. As another example, the host 9602 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host 9602 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host 9602 may store surveillance video uploaded by a UE.As another example, the host 9602 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 9602 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.

[0156] 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 9650 between the host 9602 and UE 9606, 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 9602 and / or UE 9606. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection 9650 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 9650 may include message format, retransmission settings, preferred routing etc.; the reconfiguring need not directly alter the operation of the network node 9604. 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 9602. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection 9650 while monitoring propagation times, errors, etc.

[0157] Although the device and the network node described herein may include the illustrated combination of hardware components, other embodiments may comprise devices and network nodes with different combinations of components. It is to be understood that these devices and network nodes 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 device or 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, devices and network nodes 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 processor and the network 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.

[0158] 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.

[0159] Further definitions and embodiments are discussed below.

[0160] In the above-description of certain embodiments of the present disclosure, it is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which concepts of the present disclosure belong. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.

[0161] When an element is referred to as being “connected”, “coupled”, “responsive”, or variants thereof to another element, it can be directly connected, coupled, or responsive to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected”, “directly coupled”, “directly responsive”, or variants thereof to anotherelement, there are no intervening elements present. Like numbers refer to like elements throughout. Furthermore, “coupled”, “connected”, “responsive”, or variants thereof as used herein may include wirelessly coupled, connected, or responsive. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. Well-known functions or constructions may not be described in detail for brevity and / or clarity. The term “and / or” (abbreviated “ / ”) includes any and all combinations of one or more of the associated listed items.

[0162] It will be understood that although the terms first, second, third, etc. may be used herein to describe various elements / operations, these elements / operations should not be limited by these terms. These terms are only used to distinguish one element / operation from another element / operation. Thus a first element / operation in some embodiments could be termed a second element / operation in other embodiments without departing from the teachings of concepts of the present disclosure. The same reference numerals or the same reference designators denote the same or similar elements throughout the specification.

[0163] As used herein, the terms “comprise”, “comprising”, “comprises”, “include”, “including”, “includes”, “have”, “has”, “having”, or variants thereof are open-ended, and include one or more stated features, integers, elements, steps, components, or functions but does not preclude the presence or addition of one or more other features, integers, elements, steps, components, functions, or groups thereof. Furthermore, as used herein, the common abbreviation “e.g ”, which derives from the Latin phrase “exempli gratia,” may be used to introduce or specify a general example or examples of a previously mentioned item, and is not intended to be limiting of such item. The common abbreviation “i.e ”, which derives from the Latin phrase “id est,” may be used to specify a particular item from a more general recitation.

[0164] Example embodiments are described herein with reference to block diagrams and / or flowchart illustrations of computer-implemented methods, apparatus (systems and / or devices) and / or computer program products. It is understood that a block of the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, can be implemented by computer program instructions that are performed by one or more computer circuits. These computer program instructions may be provided to a processor circuit of a general purpose computer circuit, special purpose computer circuit, and / or other programmable data processing circuit to produce a machine, such that the instructions, which execute via the processor of the computer and / or other programmable data processing apparatus, transform and control transistors, values stored in memory locations, and other hardware components within such circuitry to implement the functions / acts specified in the block diagramsand / or flowchart block or blocks, and thereby create means (functionality) and / or structure for implementing the functions / acts specified in the block diagrams and / or flowchart block(s).

[0165] These computer program instructions may also be stored in a tangible computer- readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instructions which implement the functions / acts specified in the block diagrams and / or flowchart block or blocks. Accordingly, embodiments of the present disclosure may be embodied in hardware and / or in software (including firmware, resident software, micro-code, etc.) that runs on a processor such as a digital signal processor, which may collectively be referred to as “circuitry,” “a module” or variants thereof.

[0166] It should also be noted that in some alternate implementations, the functions / acts noted in the blocks may occur out of the order noted in the flowcharts. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality / acts involved. Moreover, the functionality of a given block of the flowcharts and / or block diagrams may be separated into multiple blocks and / or the functionality of two or more blocks of the flowcharts and / or block diagrams may be at least partially integrated. Finally, other blocks may be added / inserted between the blocks that are illustrated, and / or blocks / operations may be omitted without departing from the scope of the present disclosure. Moreover, although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.

[0167] Many variations and modifications can be made to the embodiments without substantially departing from the principles of the present disclosure. All such variations and modifications are intended to be included herein within the scope of present disclosure. Accordingly, the above disclosed subject matter is to be considered illustrative, and not restrictive, and the examples of embodiments are intended to cover all such modifications, enhancements, and other embodiments, which fall within the spirit and scope of the present disclosure. Thus, to the maximum extent allowed by law, the scope of the present disclosure is to be determined by the broadest permissible interpretation of the present disclosure including the examples of embodiments and their equivalents, and shall not be restricted or limited by the foregoing detailed description.

Claims

Claims:

1. A method performed by a device to select at least a first radio access technology,RAT, configuration for communications of the device, the method comprising: determining (104), per RAT configuration from a plurality of RAT configurations for communications of the device comprising at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device; evaluating (108) whether a performance criteria for the communications of the device is satisfied per RAT configuration based on an available performance per RAT configuration compared with the performance criteria; and selecting (110) at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

2. The method of Claim 1, wherein the at least one data flow comprises a plurality of data flows, and the selecting (110) at least the first RAT configuration comprises selecting at least a subset of the plurality of RAT configurations where respective RAT configurations from the subset are selected for respective data flows from the plurality of data flows.

3. The method of any one of Claims 1 to 2, wherein the performance criteria comprises a metric related to quality of the communications .

4. The method of any one of Claims 1 to 3, wherein the at least one data flow comprises a data traffic pattern.

5. The method of any one of Claims 1 to 4, further comprising: performing (102) at least one of extracting and estimating the at least one data flow comprising a data traffic pattern from at least one application running in the device.

6. The method of any one of Claims 1 to 5, wherein the determining (104) comprises based on the at least one data flow and a radio frequency setting and / or parameter per RAT configuration of the device, using a historical energy consumption of the communicationcomponent or a historical heat generated by the component of the device and an actual performance per RAT to determine at least one of the estimated energy consumption and the estimated heat generated per RAT configuration.

7. The method of any one of Claims 1 to 6, wherein the measurement of power to a communication component of the device comprises at least one measured value or at least one value obtained from at least one parameter of the communication component comprising at least one of a modem and a communication subsystem of the device , and wherein the measurement of heat generated based on at least a measurement of heat generated by the component of the device comprises at least one measured value or at least one value obtained from at least one parameter of the component of the device.

8. The method of Claim 7, wherein the at least one parameter comprises at least one of(i) a measured battery current or current drawn by the communication component of the device,(ii) a measurement from a power management component that supplies power to respective RAT configurations from the plurality of RAT configurations,(iii) a comparison of (a) a total amount of current drawn by the device or by the communication component of the device when used for communication with (b) the device or the communication component when the communication is in one of off and an idle mode,(iv) a lookup table of measured energy consumption or measured heat generated per RAT configuration, and(v) a formula that provides the estimated energy consumption or the estimated heat generated by the communication component of the device.

9. The method of any one of Claims 1 to 8, wherein the selecting (110) at least the first RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device comprises comparing at least one of the estimated (i) energy consumption of the communication component of the device and (ii) heat generated by the component of the device, and based on the comparing, choosing at least the first RAT configuration that satisfies the performance criteria and that has the lowest energy consumption of the communication component of the device or the lowest heat generated by the component of the device.

10. The method of Claim 9, wherein a subset of RAT configurations from the plurality of RAT configurations that are not selected are placed or kept in an idle mode or a low power mode.

11. The method of any one of Claims 1 to 10, further comprising: repeating (112) at least the determining (104), the evaluating (108), and the selecting (110) when there is a change in movement or orientation of the device, when there is a change in the at least one data flow, and / or when there is a change in the performance criteria for the communications of the device, wherein the selecting (110) comprises selecting at least one RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the communication component device or a lowest heat generated by the component of the device.

12. The method of any one of Claims 1 to 11, wherein the selecting (110) comprises partitioning the at least one data flow among (i) the first RAT configuration for a first portion of the at least one data flow, and (ii) a second RAT configuration for a second portion of the at least one data flow, wherein the first RAT configuration and the second RAT configuration respectively satisfy the performance criteria and the first and the second RAT configurations together have a lowest energy consumption of the communication component of the device or a lowest heat generated by the component of the device compared to a partitioning of the at least one data flow among a remainder of RAT configurations from the plurality of RAT configurations.

13. The method of Claim 12, wherein the partitioning the at least one data flow over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow comprises: performing a first partitioning comprising an increase of an amount of the first portion of the at least one data flow and a decrease of an amount of the second portion of the at least one data flow, measuring a first energy consumption or a first heat generated by the communication component or component of the device that results from the first partitioning,performing a second partitioning comprising a decrease of the amount of the first portion of the at least one data flow and an increase of the amount of the second portion of the at least one data flow, and measuring a second energy consumption or a second heat generated by the communication component or component of the device that results from the second partitioning, wherein the selecting (110) comprises selecting one of the first partitioning and the second partitioning based on which of the first partitioning and the second partitioning results in the lowest energy consumption or heat generated by the communication component or component of the device.

14. The method of Claim 13, wherein the partitioning the at least one data flow over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow comprises receiving the partitioning from a network node.

15. The method of any one of Claims 1 to 14, further comprising: switching (114) to at least the first RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

16. The method of any one of Claims 1 to 15, further comprising: setting (106) a parameter of at least one of the communication component and the component of the device with a goal to achieve the estimated energy consumption or the estimated heat generated.

17. The method of Claim 16, wherein if the setting (106) of the parameter does not satisfy the performance criteria for communications of the device for the at least the first RAT configuration, switching (114) to a second RAT configuration that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

18. The method of any one of Claims 1 to 17, wherein the communications of the device comprise device-to-device communications.

19. The method of any one of Claims 1 to 18, wherein the device comprises a virtual reality, VR, an augmented reality, AR, or an extended reality, XR, device or functionality.

20. The method of any one of Claims 1 to 19, wherein the plurality of RAT configurations comprise a plurality from among the following: a device-to device configuration, a Third Generation Partnership Project, 3 GPP, sidelink configuration a WiFi configuration, a Bluetooth configuration, a cellular communications configuration, and a 3 GPP configuration for device communications.

21. A method performed by a first network node to provide to a device at least a first radio access technology, RAT, configuration for communications of the device, the method comprising: receiving (202), from the device, information regarding the communications of the device comprising at least one data flow; determining (204), per RAT configuration from a plurality of RAT configurations for communications comprising the at least one data flow, at least one of an estimated (i) energy consumption of the device based on at least a measurement of power to a communication component the device and (ii) heat generated by the device based on at least a measurement of heat generated by a component of the device; and sending (208), to at least the device, at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies a performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

22. The method of Claim 21, wherein the at least one data flow comprises a plurality of data flows, and the sending (208) at least the first RAT configuration comprises sending at least a subset of the plurality of RAT configurations where respective RAT configurations from the subset are sent for respective data flows from the plurality of data flows.

23. The method of Claim 22, wherein the sending (208) further comprises sending at least the first RAT configuration to at least one of a second network node, an access point, and a base station to which the device is connected.

24. The method of any one of Claims 21 to 23, wherein the performance criteria comprises a metric related to quality of the communications.

25. The method of any one of Claims 21 to 24, wherein the at least one data flow comprises a data traffic pattern.

26. The method of any one of Claims 21 to 25, wherein the determining (204) comprises based on the at least one data flow and a radio frequency setting and / or parameter per RAT configuration of the device, using a historical energy consumption of the communication component or a historical heat generated by the component of the device and the actual performance per RAT to determine at least one of the estimated energy consumption and the estimated heat generated per RAT configuration.

27. The method of any one of Claims 21 to 26, wherein the measurement of power to a communication component of the device comprises at least one measured value or at least one value obtained from at least one parameter of the communication component comprising at least one of a modem and a communication subsystem of the device , and wherein the measurement of heat generated based on at least a measurement of heat generated by the component of the device comprises at least one measured value or at least one value obtained from at least one parameter of the component of the device.

28. The method of Claim 27, wherein the at least one parameter comprises at least one of(i) a measured battery current or current drawn by the communication component of the device,(ii) a measurement from a power management component that supplies power to respective RAT configurations from the plurality of RAT configurations,(iii) a comparison of (a) a total amount of current drawn by the device or by the communication component of the device when used for communication with (b) the device or the communication component of the device when the communication is in one of off and an idle mode,(iv) a lookup table of measured energy consumption or measured heat generated per RAT configuration, and(v) a formula that provides the estimated energy consumption or the estimated heat generated by the communication component of the device .

29. The method of any one of Claims 21 to 28, furthering comprising: selecting (206) at least the first RAT configuration from the plurality of RAT configurations that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated.

30. The method of Claim 29, wherein the selecting (206) is based on(i) comparing at least one of the estimated (i) energy consumption of the communication component of the device and (ii) heat generated by the component of the device, and(ii) based on the comparing, selecting the at least the first RAT configuration that satisfies the performance criteria and that has the lowest energy consumption of the communication component of the device or the lowest heat generated by the component of the device.

31. The method of any one of Claims 21 to 30, further comprising: repeating (210) at least the determining (204) and the sending (208) when there is a change in movement or orientation of the device, when there is a change in the at least one data flow, and / or when there is a change in the performance criteria for the communications of the device, wherein the sending (208) comprises sending to at least the device at least the first RAT configuration from the plurality of RAT configurations for the at least one data flow that satisfies the performance criteria and that has a lowest energy consumption of the device or a lowest heat generated by the device.

32. The method of any one of Claims 21 to 31, wherein sending (208) at least the first RAT configuration comprises a partitioning of the at least one data flow into (i) the first RAT configuration for a first portion of the at least one data flow, and (ii) a second RAT configuration for a second portion of the at least one data flow, wherein the first and second RAT configurations respectively satisfy the performance criteria and the first and the second RAT configurations together have a lowest energy consumption of the communication component of the device or a lowest heat generated by the component of the device compared to a partitioning of the at least one data flow among a remainder of RAT configurations from the plurality of RAT configurations.

33. The method of Claim 32, wherein the partitioning of the at least one data flow over (i) the first RAT configuration for the first portion of the at least one data flow, and (ii) the second RAT configuration for the second portion of the at least one data flow comprises: performing a first partitioning comprising an increase of an amount of the first portion of the at least one data flow and a decrease of an amount of the second portion of the at least one data flow, measuring a first energy consumption or a first heat generated by the communication component or component of the device that results from the first partitioning, performing a second partitioning comprising a decrease of the amount of the first portion of the at least one data flow and an increase of the amount of the second portion of the at least one data flow, and measuring a second energy consumption or a second heat generated by the communication component or component of the device that results from the second partitioning, wherein the sending comprises sending one of the first partitioning and the second partitioning based on which of the first partitioning and the second partitioning results in the lowest energy consumption or heat generated by the communication component or component of the device.

34. The method of any one of Claims 21 to 33, wherein the communications comprise device-to-device communications.

35. The method of any one of Claims 21 to 34, wherein the first network node comprises at least one of a server and a computing device.

36. The method of any one of Claims 21 to 35, wherein the device comprises a virtual reality, VR, an augmented reality, AR, or an extended reality, XR, device or functionality.

37. The method of any one of Claims 21 to 36, wherein the plurality of RAT configurations comprise a plurality from among the following: a device-to device configuration, a Third Generation Partnership Project, 3 GPP, sidelink configuration, a WiFi configuration, a Bluetooth configuration,a cellular communications configuration, and a 3 GPP configuration for device communications.

38. A device (300, 5112, 9606) comprising: processing circuitry (404) configured to perform any of the operations of any of Claims 1 to 20; and power supply circuitry (406) configured to supply power to the processing circuitry (404).

39. A network node (5110, 5118, 6300, 9604) comprising: processing circuitry (6302) configured to perform any of the operations of any of Claims 21 to 37; and power supply circuitry (6308) configured to supply power to the processing circuitry (6302).

40. A host (5116, 7400, 9602) configured to operate in a communication system (5100) to provide an over-the-top (OTT) service, the host comprising: processing circuitry (7402) configured to provide user data; and a network interface (7408) configured to initiate transmission of the user data to a network node (5110, 6300, 9604) in a cellular network for transmission to a device (300, 5112, 9606), the network node having a communication interface (6306) and processing circuitry (6302), the processing circuitry (6302) of the network node configured to perform any of the operations of any of Claims 21 to 37 to transmit the user data from the host to the device.

41. The host (5116, 7400, 9602) of Claim 40, wherein: the processing circuitry (7402) of the host is configured to execute a host application (7414) that provides the user data; and the device comprises processing circuitry (404) configured to execute a client application (304) associated with the host application (7414) to receive the transmission of user data from the host.

42. A method implemented in a host (5116, 7400, 9602) configured to operate in a communication system (5100) that further includes a network node (5110, 5118, 6300, 9604) and a device (300, 5112, 9606), the method comprising: providing user data for the device; andinitiating a transmission carrying the user data to the device via a cellular network comprising the network node, wherein the network node performs any of the operations of any of Claims 21 to 37 to transmit the user data from the host to the device.

43. The method of Claim 42, further comprising, at the network node (5110, 5118, 6300, 9604), transmitting the user data provided by the host (5116, 7400, 9602) for the device (300, 5112, 9606).

44. The method of any of Claims 42 to 43, wherein the user data is provided at the host (5116, 7400, 9602) by executing a host application (7414) that interacts with a client application (304) executing on the device (300, 5112, 9606), the client application being associated with the host application.

45. A communication system (5100) configured to provide an over-the-top (OTT) service, the communication system comprising: a host (5116, 7400, 9602) comprising: processing circuitry (404) configured to provide user data for a device (300, 5112, 9606), the user data being associated with the over-the-top service; and a network interface (410) configured to initiate transmission of the user data toward a cellular network node (5110, 5118, 6300, 9604) for transmission to the device, the network node having a communication interface (6306) and processing circuitry (6302), the processing circuitry (6302) of the network node configured to perform any of the operations of any of Claims 21 to 37 to transmit the user data from the host to the device.

46. The communication system (5100) of Claim 45, further comprising: the network node (5110, 5118, 6300, 9604); and / or the device (300, 5112, 9606).

47. A host (5116, 7400, 9602) configured to operate in a communication system (5100) to provide an over-the-top (OTT) service, the host comprising: processing circuitry (7402) configured to initiate receipt of user data; and a network interface (7408) configured to receive the user data from a network node (5110, 5118, 6300, 9604) in a cellular network, the network node having a communication interface (6306) and processing circuitry (6302), the processing circuitry of the network node configuredto perform any of the operations of any Claims 21 to 37 to receive the user data from a device (300, 5112, 9606) for the host.

48. The host (5116, 7400, 9602) of any of Claims 44 to 435 wherein: the processing circuitry (7402) of the host is configured to execute a host application (7414) that receives the user data; and the host application is configured to interact with a client application (304) executing on the device (300, 5112, 9606), the client application being associated with the host application.

49. The host (5116, 7400, 9602) of any of Claims 47 and 48, wherein the initiating receipt of the user data comprises requesting the user data.

50. A method implemented by a host (5116, 7400, 9602) configured to operate in a communication system (511) that further includes a network node (5110, 5118, 6300, 9604) and a device (300, 5112, 9606), the method comprising: at the host, initiating receipt of user data from the device, the user data originating from a transmission which the network node has received from the device, wherein the network node performs any of the operations of any of the Claims 21 to 37 to receive the user data from the device for the host.

51. The method of Claim 50, further comprising at the network node (5110, 5118, 6300, 9604), transmitting the received user data to the host (5116, 7400, 9602).

52. A host (5116, 7400, 9602) configured to operate in a communication system (5100) to provide an over-the-top (OTT) service, the host comprising: processing circuitry (7402) configured to provide user data; and a network interface (7408) configured to initiate transmission of the user data to a cellular network for transmission to a device (300, 5112, 9606), wherein the device comprises a communication interface (410) and processing circuitry (404), the communication interface and processing circuitry of the device being configured to perform any of the operations of any of Claims 1 to 20 to receive the user data from the host.

53. The host (5116, 7400, 9602) of Claim 52, wherein the cellular network further includes a network node (5110, 5118, 6300, 9604) configured to communicate with the device to transmit the user data to the device from the host.

54. The host (5116, 7400, 9602) of any of Claims 52 and 53, wherein: the processing circuitry (7402) of the host is configured to execute a host application (7414), thereby providing the user data; and the host application is configured to interact with a client application executing on the device, the client application being associated with the host application.

55. A method implemented by a host (5116, 7400, 9602) operating in a communication system (5100) that further includes a network node (5110, 5118, 6300, 9604) and a device (300, 5112, 9606), the method comprising: providing user data for the device; and initiating a transmission carrying the user data to the device via a cellular network comprising the network node, wherein the device performs any of the operations of any of Claims 1 to 20 to receive the user data from the host.

56. The method of Claim 55, further comprising: at the host (5116, 7400, 9602), executing a host application (7414) associated with a client application (304) executing on the device to receive the user data from the host application.

57. The method of Claim 56, further comprising: at the host (5116, 7400, 9602), transmitting input data to the client application executing on the device, the input data being provided by executing the host application, wherein the user data is provided by the client application in response to the input data from the host application.

58. A host (5116, 7400, 9602) configured to operate in a communication system (5100) to provide an over-the-top (OTT) service, the host comprising: processing circuitry (7402) configured to provide user data; and a network interface (7408) configured to initiate transmission of the user data to a cellular network for transmission to a device (300, 5112, 9606), wherein the device comprises a communication interface (410) and processing circuitry (404), the communication interface andprocessing circuitry of the device being configured to perform any of the operations of any of Claims 1 to 20 to transmit the user data to the host.

59. The host (5116, 7400, 9602) of Claim 58, wherein the cellular network further includes a network node (5110, 5118, 6300, 9604) configured to communicate with the device to transmit the user data from the device to the host.

60. The host (5116, 7400, 9602) of Claims 58 and 59, wherein: the processing circuitry (7402) of the host is configured to execute a host application (7414), thereby providing the user data; and the host application is configured to interact with a client application (304) executing on the device, the client application being associated with the host application.

61. A method implemented by a host (5116, 7400, 9602) configured to operate in a communication system (5100) that further includes a network node (5110, 5118, 6300, 9604) and a device (300, 5112, 9606), the method comprising: at the host, receiving user data transmitted to the host via the network node by the device, wherein the device performs any of the operations of any of Claims 1 to 20 to transmit the user data to the host.

62. The method of Claim 61, further comprising: at the host (5116, 7400, 9602), executing a host application (7414) associated with a client application (304) executing on the device to receive the user data from the device.

63. The method of any of Claims 61 and 62, further comprising: at the host (5116, 7400, 9602), transmitting input data to the client application executing on the device, the input data being provided by executing the host application, wherein the user data is provided by the client application in response to the input data from the host application.