Negotiation-based service autoscaling to ensure qoe

The negotiation-based autoscaling method addresses inefficiencies in existing cloud resource allocation by integrating real-time pricing and user feedback to optimize resource usage and cost, ensuring efficient QoE and cost management.

WO2025248281A1PCT designated stage Publication Date: 2025-12-04TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/IB2024/055175
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-28
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

Existing autoscaling methods for cloud resources, such as Kubernetes, fail to consider dynamic cloud pricing, user feedback on Quality-of-Experience (QoE), and end-to-end latency, leading to inefficient resource allocation and potential QoE degradation.

Method used

A negotiation-based method that incorporates real-time cloud pricing, user-reported QoE feedback, and internal monitoring to optimize autoscaling decisions, allowing for dynamic resource adjustments and negotiation with users for QoE trade-offs.

Benefits of technology

Optimizes resource allocation by balancing QoE and cost, minimizing degradation and reducing infrastructure expenses through proactive scaling and negotiation strategies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000028_0000
    Figure 00000028_0000
  • Figure 00000029_0000
    Figure 00000029_0000
  • Figure 00000030_0000
    Figure 00000030_0000
Patent Text Reader

Abstract

Methods and systems are described for negotiation-based method used by a service provider for scaling out of cloud resources to deliver desired quality of service and quality of experience for a user, balancing user preferences against cloud resource cost. A client application that runs on the UE / end-user can be enhanced with monitoring capabilities to measure the end-to-end performance (i.e., latency and throughput) perceived by the application. These measurements can then be reported back to the service running in the cloud. The service can combine the reports from UE / end-users to estimate the network contribution to the perceived QoS / QoE by the UE / end-user. The real-time price and network state are then combined with the current status and usage of resources (i.e., Pod resources) and the traffic condition in the application (i.e., UE / end-user traffic) to compute a scaling and negotiation action.
Need to check novelty before this filing date? Find Prior Art

Description

NEGOTIATION-BASED SERVICE AUTOSCALING TO ENSURE QOETECHNICAL FIELD

[0001] The present disclosure generally relates to systems and methods for autoscaling of cloud resources.BACKGROUND

[0002] Cloud computing provides on-demand access to shared computing resources and services, such as network infrastructure, storage, operating systems, and applications. Such resources and mechanisms can be easily acquired and released with minimal management effort. See, e.g., Hogan, M.; Liu, F.; Sokol, A.; Tong, J., “Nist cloud computing standards roadmap,” NIST Spec. Publ. 2011, 35, 6-11. Two of the key features of cloud computing are the user’s ability to pay only for what they use and deliver resources elastically. The cloud enables cost reductions while meeting the performance requirements of maintaining an application subject to a variable load.

[0003] Service providers offer UEs (user equipment) / end-users access to digital services. The latter pays the service provider for accessing such services, specifying which Quality-of-Service (QoS) and / or Quality-of-Experience (QoE) levels are needed. Service providers, in turn, contract cloud providers to access IT infrastructures. Cloud providers may offer fixed-price contracts for long-term agreements comprising access to IT resources. These fixed-price offerings are complemented by variable-price opportunities where the service provider buys access to the IT infrastructure for (usually) a lower price.

[0004] In this paradigm, virtualization techniques have become essential as they enable Cloud platforms such as Amazon Web Services™ (AWS), Google Cloud Platform™ (GCP), and Microsoft Azure™ to achieve elasticity in their service offering on a large scale. See e.g., Yadav, A.K.; Garg, M., “Docker containers versus virtual machine-based virtualization,” Emerging Technologies in Data Mining and Information Security; Springer: Singapore, 2019; pp. 141-150.

[0005] One of the emerging virtualization techniques is containerization. With this technology, a lightweight operating system (OS) equipped with ready-to-deploy application components is packaged into a self-sufficient container ready to run on a host machine that supports multi-tenancy. See, e.g., Pahl, C.; Brogi, A.; Soldani, J.; Jamshidi, P. "Cloud Container Technologies: A State-of-the-Art Review." IEEE Trans. Cloud Comput. 2017, 7, 677-692.

[0006] As containers can be deployed on a large scale, there is a tremendous need for container orchestration platforms able to deploy, scale, and manage containers automatically. Kubemetes™ has become the de facto standard for its popularity among various orchestration platforms. Kubemetes is an open-source platform that makes it easy to package and run containerized applications, workloads, and services. Additionally, it provides a framework for operating scalable distributed systems. Kubemetes uses Docker™ as the base environment to run portable and self-sufficient containers. Docker provides the control plane to manage and schedule containers to nodes, i.e., clusters of host machines. Each logical instance of Kubemetes is referred to as a cluster, which runs on top of physical IT resources, and orchestrates services that mn on top of these IT resources. These decisions are based on each node's available resources and each container’s specific requirements.

[0007] Each Kubemetes cluster has a set of entry points, also known as load balancers or ingress points. These entry points receive all the traffic destined to any service mnning within the cluster and are responsible for forwarding the traffic to the corresponding service, in addition to providing load balancing among different Pods.

[0008] Pods are the smallest deployable computing units that are created and managed in Kubemetes. A Pod is a group of one or more containers with shared storage and network resources. A Pod also comes with specifications on how to mn its containers, i.e., the number of resources needed.

[0009] In Kubemetes, one critical feature is autoscaling. This procedure allows applications and services to mn on the cloud infrastructure resiliently without human intervention. More specifically, services can be automatically scaled up / down depending on their actual resource needs. Moreover, autoscaling ensures the automatic service recovery from failures of computing resources. One autoscaling method available in Kubemetes is Horizontal Pod Autoscaling (HP A).

[0010] Current solutions for Pod autoscaling may consider several characteristics of the service and infrastmcture. Traditional HPA methods consider the average resource usage across all Pods and compare it to a service-based threshold to start a specific scaling action. See e.g., Kubemetes Horizontal Pod Autoscaling, available at: https : / / kubemetes .io / docs / tasks / mn- application / horizontal-pod-autoscale / . Other approaches proposed in the literature use offered traffic measured at the load balancer (i.e., the entry point of the cluster) as the main triggering condition. See, e.g., Tonini, F. et al. "A service-aware strategy for container orchestration platforms with soft resource isolation." European Conference on Networks and Communications (EuCNC), Gothenburg, Sweden, 2023. Machine learning (ML) has also been integrated into scaling mechanisms. For example, ML can be used to predict traffic levels thus allowing for proactive scaling actions. See, e.g., D. -D. Vu, et al. "Predictive hybrid autoscaling forcontainerized applications." IEEE Access, vol. 10, 2022. Alternatively, reinforcement learning agents can be used to automatically decide the best scaling action at any given moment. See, e.g., Santos, J. et al. "Gym-Hpa: Efficient Auto-scaling Via Reinforcement Learning for Complex Microservice-based Applications in Kubemetes." IEEE / IFIP Network Operations and Management Symposium (NOMS), Miami, FL, USA, 2023.

[0011] There remain certain challenges, such as which parameters and data should be considered, and how to achieve optimized autoscaling operations based on different inputs from cloud infrastructure, UE, and service providers.SUMMARY

[0012] One embodiment under the present disclosure comprises a method performed by a network for making a scaling decision. The method comprises receiving, from a UE, one or more preference data regarding quality of service or quality of experience preferences; receiving, from a cloud provider, one or more current cost data for one or more cloud resources; receiving, from the cloud provider, one or more current usage data for the one or more cloud resources; and receiving, from a time series database, one or more current operating parameters. Further the method includes, if the one or more current operating parameters meet the one or more preference data, then making no scaling adjustments; if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is acceptable according to the one or more preference data, then scaling out the one or more cloud resources; and if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is too high according to the one or more preference data, then negotiating with the UE regarding a scaling decision.

[0013] Another embodiment under the present disclosure is a method performed by a UE for reporting quality of service or quality of experience data to a network. The method comprises transmitting, to the network, one or more preference data regarding quality of service or quality of experience preferences; measuring one or more current operating parameters; and transmitting the one or more current operating parameters to the network.

[0014] Another embodiment under the present disclosure is a network node. The network node comprises processing circuitry; and a memory storing instructions performable by the processing circuity. The performable steps include receiving, from a UE, one or more preference data regarding quality of service or quality of experience preferences; receiving, from a cloud provider, one or more current cost data for one or more cloud resources; receiving, from the cloud provider, one or more current usage data for the one or more cloud resources; and receiving, from a time series database, one or more current operating parameters. Further the method includes, ifthe one or more current operating parameters meet the one or more preference data, then making no scaling adjustments; if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is acceptable according to the one or more preference data, then scaling out the one or more cloud resources; and if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is too high according to the one or more preference data, then negotiating with the UE regarding a scaling decision.

[0015] Another embodiment under the present disclosure is a UE for reporting quality of service or quality of experience data to a network. The UE comprises processing circuitry; and a memory storing instructions performable by the processing circuity. The performable steps include transmitting, to the network, one or more preference data regarding quality of service or quality of experience preferences; measuring one or more current operating parameters; and transmitting the one or more current operating parameters to the network.

[0016] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an indication of the scope of the claimed subject matter.BRIEF DESCRIPTION OF THE DRAWINGS

[0017] For a more complete understanding of the present disclosure, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

[0018] Fig. 1 shows an illustration of a possible value chain;

[0019] Fig. 2 illustrates one embodiment of an envisioned network scenario;

[0020] Fig. 3 illustrates method and system embodiments in the network scenario of Figure2;

[0021] Fig. 4 illustrates a flow-chart of a method embodiment under the present disclosure;

[0022] Fig. 5 illustrates a flow-chart of a method embodiment under the present disclosure;

[0023] Fig. 6 shows a schematic of a communication system embodiment under the present disclosure;

[0024] Fig. 7 shows a schematic of a user equipment embodiment under the present disclosure;

[0025] Fig. 8 shows a schematic of a network node embodiment under the present disclosure; and

[0026] Fig. 9 shows a schematic of a virtualization environment embodiment under the present disclosure.DETAILED DESCRIPTION

[0027] Before describing various embodiments of the present disclosure in detail, it is to be understood that this disclosure is not limited to the parameters of the particularly exemplified systems, methods, apparatus, products, processes, and / or kits, which may, of course, vary. Thus, while certain embodiments of the present disclosure will be described in detail, with reference to specific configurations, parameters, components, elements, etc., the descriptions are illustrative and are not to be construed as limiting the scope of the claimed embodiments. In addition, the terminology used herein is for the purpose of describing the embodiments and is not necessarily intended to limit the scope of the claimed embodiments.

[0028] As described above, there currently exist certain challenges in the area of autoscaling e.g, for Kubemetes or other container-based systems. For example, to improve the efficiency of current autoscaling methods, questions to consider include:1. Which parameters should be considered, and which data should be collected to solve the joint QoS / QoE and monetary cost optimization problem of autoscaling?2. How to achieve potentially optimized autoscaling operations based on different inputs from cloud infrastructure, UE, and service providers?

[0029] For question 1, existing solutions miss three critical aspects: (i) none of them takes into account the dynamic nature of cloud resource pricing; (ii) they also do not consider the possibility of negotiating a lower Quality-of-Service / Quality-of-Experience (QoS / QoE) with the UE / end-user in exchange for other benefits; and (iii) they do not consider using the UE / end-user as a sensor that reports the end-to-end latency back to the service provider. Existing autoscaling methods based on resource usage also have two additional critical limitations. First, their reactive nature may lead to QoS / QoE degradation at the beginning of a traffic load increase. Moreover, they may under-provision resources during a traffic surge. As a result, not all traffic will be served. Methods based on offered traffic, where the traffic is measured at the entry point of the Kubemetes cluster, also have limitations. First, they require setting a service-based threshold where service profiling is required. This may require repeated profiling for every service implementation change. Moreover, they have no insight into the UEs / end-users QoS / QoE levels. Methods based on traffic prediction also present limitations. First, inaccuracies in the traffic prediction may lead to large resource inefficiencies and increased costs for the service provider. They also need large amounts of training data, and continuous update of the trained model to cope with changing user patterns. This also leads to slow reactions to sudden changes in the traffic pattern. The aforementioned existing methods focus on collecting and using data that comes from within the cloud infrastructuredomain (i.e., from the server and / or infrastructure). However, to improve autoscaling strategies, a service provider is required to broaden the scope of the collected data and their sources, including real-time cloud pricing data (collected from the cloud provider), and feedback regarding the perceived QoS / QoE by the user (collected from the UE / end-user application).

[0030] For question 2, once the scope of the collected metrics has been broadened, a method should be derived that makes decision based on such data, e.g., current resource usage, QoS / QoE perceived by the UE / end-user, current pricing of cloud resources, and an estimation of the network contribution (latency and throughput) to the perceived QoS / QoE. This estimation can be obtained by combining the feedback from the UE / end-user application with the monitoring of the internal response time at the load balancer, out of which is possible to derive the latency added by the network. Currently, autoscaling mechanisms use no feedback from the UE / end-users.

[0031] Certain aspects of the disclosure and their embodiments may provide solutions to these or other challenges. Certain proposed methods aim at helping service providers balance the QoS / QoE perceived by the users and monetary costs associated with running the service in a cloud environment. Certain proposed methods can take advantage of two critical pieces of information: (i) the variable -pricing offers by the cloud provider (i.e., in this way the service provider can optimize its IT infrastructure cost), and (ii) the feedback from the UE / end-user regarding the perceived QoS / QoE, out of which the network contribution to the experienced latency and throughput can be derived.

[0032] Certain proposed embodiments include a negotiation-based method used by the service provider where real-time cloud computing prices are obtained from the cloud provider. Moreover, the client application that runs on the UE / end-user can be enhanced with monitoring capabilities to measure the end-to-end performance (i.e., latency and throughput) perceived by the application. See e.g., TS 23.501 System architecture for the 5G System (5GS), version 18.1.0., page 445. These measurements can then be reported back to the service running in the cloud. The service can combine the reports from UE / end-users to estimate the network contribution to the perceived QoS / QoE by the UE / end-user. The real-time price and network state are then combined with the current status and usage of resources (i.e., Pod resources) and the traffic condition in the application (i.e., UE / end-user traffic) to compute a scaling and negotiation action.

[0033] The action may be a scaling out (i.e., increasing the resources associated with the service) or scaling in (i.e., decreasing the resources associated with the service). The negotiation action may be to offer to the UE / end-user an option to degrade the QoS / QoE in exchange for a discount in the service price or access to some special content (otherwise accessible upon an extra charge) at a later date.

[0034] Certain embodiments can receive real-time pricing of cloud computing resources from the cloud provider. In addition, embodiments can collect real-time resource usage from its Pods deployed in the cloud. Finally, the service can actively monitor the QoS / QoE perceived by the users and sends this information back to the service provider. The service provider (by means of the proposed autoscaler) can then match the experienced QoS / QoE by the UE / end-user with their SLA. The method combines this information to perform scaling and negotiation actions.

[0035] When prices and traffic are stable, proposed methods can optimize the number of Pods by matching the used resources as close as possible to the user traffic. Under these conditions, the method behaves similarly to the traditional Horizontal Pod Autoscaling (HP A).

[0036] However, two conditions may lead proposed embodiments to take critical decisions: (i) when the traffic increases substantially, and (ii) when the cloud computing prices increase substantially. Under these conditions, the proposed embodiments can compute a strategy that balances two objectives: (i) minimizing the QoS / QoE degradation perceived by the user, and (ii) minimize the cost paid by the service provider to the cloud provider. Disclosed embodiments may lead to UEs / end-users being offered a momentary reduction in QoS / QoE in exchange for a discount or access to otherwise paid content. Another alternative is for the service provider to offer access to content during known low-cost infrastructure hours.

[0037] Certain embodiments may provide one or more of the following technical advantages. Certain embodiments can take advantage of dynamic infrastructure prices offered by cloud providers. Periods where the infrastructure incurs high costs are mitigated by negotiating a reduction in the QoS / QoE perceived by the users, which reduces the number of resources needed by the service provider. To make sure a UE / end-user can make efficient decisions, embodiments can collect information and requirements from the UE / end-user and later negotiates and offers different solutions and possibilities. This can help put UE / end-user at the center of all decisions.

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

[0039] Certain embodiments can be extended to both resources on the edge and cloud. The resources on the edge are limited, so the price can be calculated based on supply-demand. When the demand is high, and availability is low, the prices increase. Under certain embodiments this is taken into account and after negotiating with the UE / end-user, a UE / end-user can decide to postpone using the service until the prices go down.

[0040] Figure 1 helps to illustrate an envisioned value chain, though value chains can vary for various use cases. The service provider wants to provide their services to UE / end-users, and to do so, it needs access to networking and cloud resources. Therefore, the service provider contractsboth networking and cloud providers, deploying its application / service over their infrastructure. This comes at a monetary cost to the service provider, which needs to pay for the access to the networking and cloud resources. Once the service is deployed, the service provider can provide access to the UE / end-users. UE / end-users pay for the access to the service by monetary means, or by agreeing to terms of service that allow the service provider to monetize their access.

[0041] Figure 2 illustrates the envisioned network scenario, where the traffic from the cloud to the UE / end-user traverses several network segments. In this case, it becomes challenging to account for the contribution of the different network segments to the QoS / QoE perceived by the UE / end-user. To mitigate this challenge, our method closely monitors the internal service response time at the load balancer, and also receives feedback from the client application running at the UE / end-user. Once these two data are combined, an estimation of the network state can be derived.

[0042] Figure 2 illustrates one network / system 200 embodiment under the present disclosure. UE 210 may connect to a cellular network 220, which is connected to backend system or fixed system 230 and cloud 240. Fixed system 230 and cloud 240 may be run by service provider 280 which tries to offload some services into the cloud 240 using load balancer 250 and pods 260, each running a service.

[0043] Building off of Figure 2, Figure 3 illustrates a schematic diagram of one possible proposed method 405 and system 400 under the present disclosure. Figure 3 illustrates how one proposed method works and its interaction with other entities of a network. Similar to Figure 2, in Figure 3 UE 410 may connect to a cellular network 420, which is connected to backend system or fixed system 430 and cloud 440. Container orchestration cluster 480 can offload some services using load balancer 450 and pods 460, each running a service. Method steps 401, 402, 403 illustrate one method embodiment 405 for autoscaling under the present disclosure. These method steps can leverage real-time continuous monitoring capabilities of the container orchestration platforms to collect data from several data sources, such as previously described above. The data are saved into a time-series database 470 for easy access. Then, the scaling method 405 accesses all the data and takes a scaling decision which involves interacting with e.g., cloud provider 440, the UE / end-user 410, or both. Scaling method 405 can be performed by e.g., server provider, which may operate any of network 420, fixed network 430, and / or cloud 440. Step 401 is obtaining key performance indicators (KPIs), e.g., from time series database 470. Step 402 is degrading quality of services to a UE based at least in part on the KPIs. Step 403 is making a scaling decision based at least in part on the KPIs.

[0044] Figure 4 illustrates a sequence diagram of a process flow 600 or method under the present disclosure. Participating entities can include e.g.: UE 670 (comprising e.g., client application 675), cloud infrastructure 680 (comprising e.g., cloud provider 685, pods 688), serviceprovider 690 (comprising e.g., server application 692, data collector 694, autoscaler 696, timeseries 698). The workflow is divided into three phases that run concurrently: data collection 601, decision 621, and negotiation 641.

[0045] During data collection 601, data is sent by / collected from the UE / end-users client application 675 (in the form of perceived QoS / QoE) to the server application 692 at step 602. This data is sent from the server application 692 to the time series database 698 at step 603, which sends an acknowledgement at step 604. Current prices of cloud resources are sent by the cloud provider 685 to data collector 694 at step 605. This data is sent to the time series database 698 at step 606, which sends an acknowledgment at step 607. The current resource usage from the Pods 688 that are running is sent to the data collector 694 at step 608. This information is sent to the time series database 698 at step 609, which sends an acknowledgment at step 610. At step 611, the data collector 694 requests KPIs and / or other metrics (e.g., offered traffic, resource usage, response times, end-to-end response times, cost data, and / or other data that may be useful for making scaling decisions) from the time series database 698. At step 612 time series database 698 transmits the data, if available, to the data collector 694.

[0046] During the decision phase 621 , autoscaler 696 requests / fetches the collected data from the time-series database 698 at step 622. Time series database 698 responds with the data at step 623. Autoscaler 696 then combines the data at step 624 in order to take a negotiation and scaling decision. In this case, three possible alternatives include: (i) if all operating parameters are under normal conditions, no changes in the allocated IT resources are necessary; (ii) if QoS / QoE needs improvements and the IT resource cost is relatively low, the strategy may scale out the service (i.e., include more Pods to serve traffic); (iii) if QoS / QoE needs improvement and the IT resource cost is relatively high, the strategy may decide to negotiate with the end-users.

[0047] During the negotiation phase 641, the autoscaler 696 executes the scaling strategy decided in the previous phase. The autoscaler 696 may either request a scaling action to the cloud provider 685 at step 642, or to negotiate with the UEZend-user(s) client application 675 at step 643. In extreme cases, where large fluctuations in traffic or pricing are experienced, it is also possible that the action will both perform scaling 642 and negotiating 643. Ultimately, if the end-user client application 675 does not agree with the negotiation, the autoscaler 696 will need to scale out by increasing the number of Pods 688, hence increasing the total operating cost of the service. It should also be noted that negotiating 643 can occur before scaling 642.

[0048] Method 600 can comprise a variety of alternative, additional or optional steps or other variations. For example, in some situations, time series database 698 may not have much historical or real time data available. In these cases, steps 611 / 612 may be optional.

[0049] Figure 5 displays another possible method embodiment under the present disclosure. Method 800 is a method performed by a UE for reporting QoS / QoE data to a network. Step 810 is transmitting, to the network, one or more preference data regarding QoS / QoE preferences. Step 820 is measuring one or more current operating parameters. Step 830 is transmitting the one or more current operating parameters to the network. Method 800 can comprise a variety of alternative, additional or optional steps or other variations. For example, in some situations, the method can further comprise receiving, from the network when the one or more current operating parameters do not meet the one or more preference data, a request to negotiate a change in the one or more preference data. The method could also comprise accepting or denying the request.

[0050] Figure 6 shows an example of a communication system 3100 in accordance with some embodiments.

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

[0052] Examples of an ORAN network node include an open radio unit (O-RU), an open distributed unit (O-DU), an open central unit (O-CU), including an O-CU control plane (O-CU- CP) or an O-CU user plane (O-CU -UP), a RAN intelligent controller (near-real time or non-real time) hosting software or software plug-ins, such as a near-real time control application (e.g., xApp) or a non-real time control application (e.g., rApp), or any combination thereof (the adjective “open” designating support of an ORAN specification). The network node may support a specification by, for example, supporting an interface defined by the ORAN specification, such as an Al, Fl, Wl, El, E2, X2, Xn interface, an open fronthaul user plane interface, or an openfronthaul management plane interface. Moreover, an ORAN access node may be a logical node in a physical node. Furthermore, an ORAN network node may be implemented in a virtualization environment (described further below) in which one or more network functions are virtualized. For example, the virtualization environment may include an O-Cloud computing platform orchestrated by a Service Management and Orchestration Framework via an 0-2 interface defined by the 0-RAN Alliance or comparable technologies. The network nodes 3110 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs 3112a, 3112b, 3112c, and 3112d (one or more of which may be generally referred to as UEs 3112) to the core network 3106 over one or more wireless connections.

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

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

[0055] In the depicted example, the core network 3106 connects the network nodes 3110 to one or more host computing systems, such as host 3116. 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 3106 includes one more core network nodes (e.g., core network node 3108) 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 3108. 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), SessionManagement 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).

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

[0057] As a whole, the communication system 3100 of Figure 6 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.

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

[0059] In some examples, the UEs 3112 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 3104 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 3104. Additionally, a UE may be configured for operating in single- or multi-RAT or multi-standard mode. For example, a UE mayoperate with any one or combination of Wi-Fi, NR (New Radio) and LTE, i.e., being configured for multi-radio dual connectivity (MR-DC), such as E-UTRA (Evolved-Universal Terrestrial Radio Access) New Radio - Dual Connectivity (EN-DC).

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

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

[0062] Figure 7 shows a UE 3200 in accordance with some embodiments. The UE 3200 presents additional details of some embodiments of the UEs 3112 of Figure 10. 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 / playback device, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), an Augmented Reality (AR) or Virtual Reality (VR) device, wireless customer-premise equipment (CPE), vehicle, vehicle-mounted or vehicle embedded / integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

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

[0064] The UE 3200 includes processing circuitry 3202 that is operatively coupled via a bus 3204 to an input / output interface 3206, a power source 3208, a memory 3210, a communication interface 3212, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in Figure 7. The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.

[0065] The processing circuitry 3202 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 3210. The processing circuitry 3202 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs,general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry 3202 may include multiple central processing units (CPUs).

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

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

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

[0069] The memory 3210 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 harddisk 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 3210 may allow the UE 3200 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 3210, which may be or comprise a device-readable storage medium.

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

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

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

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

[0074] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door / window sensor, a flood / moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a 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 3200 shown in Figure 7.

[0075] 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 equipmentthat is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

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

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

[0078] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units, distributed units (e.g., in an O-RAN access node) and / or radio units (RUs), sometimes referred to as Remote Radio Units (RRU) and / or 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).

[0079] 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).

[0080] The network node 3300 includes a processing circuitry 3302, a memory 3304, a communication interface 3306, and a power source 3308. The network node 3300 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 3300 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node 3300 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 3304 for different RATs) and some components may be reused (e.g., a same antenna 3310 may be shared by different RATs). The network node 3300 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 3300, 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 3300.

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

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

[0083] The memory 3304 may comprise any form of volatile or non-volatile computer- readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and / or any othervolatile or non-volatile, non-transitory device-readable and / or computer-executable memory devices that store information, data, and / or instructions that may be used by the processing circuitry 3302. The memory 3304 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry 3302 and utilized by the network node 3300. The memory 3304 may be used to store any calculations made by the processing circuitry 3302 and / or any data received via the communication interface 3306. In some embodiments, the processing circuitry 3302 and memory 3304 is integrated.

[0084] The communication interface 3306 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, the communication interface 3306 comprises port(s) / terminal(s) 3316 to send and receive data, for example to and from a network over a wired connection. The communication interface 3306 also includes radio front-end circuitry 3318 that may be coupled to, or in certain embodiments a part of, the antenna 3310. Radio front-end circuitry 3318 comprises filters 3320 and amplifiers 3322. The radio front-end circuitry 3318 may be connected to an antenna 3310 and processing circuitry 3302. The radio front-end circuitry may be configured to condition signals communicated between antenna 3310 and processing circuitry 3302. The radio front-end circuitry 3318 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio frontend circuitry 3318 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 3320 and / or amplifiers 3322. The radio signal may then be transmitted via the antenna 3310. Similarly, when receiving data, the antenna 3310 may collect radio signals which are then converted into digital data by the radio front-end circuitry 3318. The digital data may be passed to the processing circuitry 3302. In other embodiments, the communication interface may comprise different components and / or different combinations of components.

[0085] In certain alternative embodiments, the network node 3300 does not include separate radio front-end circuitry 3318, instead, the processing circuitry 3302 includes radio front-end circuitry and is connected to the antenna 3310. Similarly, in some embodiments, all or some of the RF transceiver circuitry 3312 is part of the communication interface 3306. In still other embodiments, the communication interface 3306 includes one or more ports or terminals 3316, the radio front-end circuitry 3318, and the RF transceiver circuitry 3312, as part of a radio unit (not shown), and the communication interface 3306 communicates with the baseband processing circuitry 3314, which is part of a digital unit (not shown).

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

[0087] The antenna 3310, communication interface 3306, and / or the processing circuitry 3302 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 3310, the communication interface 3306, and / or the processing circuitry 3302 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.

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

[0089] Embodiments of the network node 3300 may include additional components beyond those shown in Figure 8 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 3300 may include user interface equipment to allow input of information into the network node 3300 and to allow output of information from the network node 3300. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 3300. In some embodiments providing a core network node, such as core network node 3108 of Figure 6, some components, such as the radio front-end circuitry 3318 and the RF transceiver circuitry 3312 may be omitted.

[0090] Figure 9 is a block diagram illustrating a virtualization environment 3400 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 includevirtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments 3400 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized. In some embodiments, the virtualization environment 3400 includes components defined by the O-RAN Alliance, such as an O-Cloud environment orchestrated by a Service Management and Orchestration Framework via an O-2 interface. Virtualization may facilitate distributed implementations of a network node, UE, core network node, or host.

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

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

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

[0094] In the context of NFV, a VM 3408 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 3408, and that part of hardware 3404 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 3408 on top of the hardware 3404 and corresponds to the application 3402.

[0095] Hardware 3404 may be implemented in a standalone network node with generic or specific components. Hardware 3404 may implement some functions via virtualization. Alternatively, hardware 3404 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 3410, which, among others, oversees lifecycle management of applications 3402. In some embodiments, hardware 3404 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system 3412 which may alternatively be used for communication between hardware nodes and radio units.

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

[0097] 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 functionalities 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.

[0098] The above-described embodiments are examples only. Alterations, modifications, and variations may be effected to the particular embodiments by those of skill in the art without departing from the scope of the description, which is defined solely by the appended claims.

Claims

Claims1. A method (600) performed by a network (3100) for making a scaling decision, the method comprising: receiving (602), from a user equipment, UE (3200), one or more preference data regarding quality of service or quality of experience preferences; receiving (605), from a cloud provider (685), one or more current cost data for one or more cloud resources (688); receiving (608), from the cloud provider (685), one or more current usage data for the one or more cloud resources (688); receiving (611), from a time series database (698), one or more current operating parameters; and if the one or more current operating parameters meet the one or more preference data, then make no scaling adjustments; if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is acceptable according to the one or more preference data, then scale out (642) the one or more cloud resources; and if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is too high according to the one or more preference data, then negotiate (643) with the UE regarding a scaling decision.

2. The method of claim 1, further comprising storing (603, 606, 609), the one or more preference data, one or more current cost data, and the one or more current usage data, in the time series database.

3. The method of any of claims 1 to 2, wherein the one or more cloud resources comprise at least one of: one or more Pods; one or more Kubemetes clusters; one or more Kubemetes resources.

4. The method of any of claims 1 to 3, further comprising making the scaling decision.

5. The method of any of claims 1 to 4, wherein if the UE does not agree with the negotiating, then scale out the one or more cloud resources.

6. The method of any of claims 1 to 5, wherein scaling out the one or more cloud resources comprises requesting, to the cloud provider, increased cloud resources.

7. The method of any of claims 1 to 6, wherein the one or more current operating parameters comprise one or more of: one or more key performance indicators, KPIs; offered traffic data; one or more response times; one or more end-to-end response times; one or more cost data.

8. A method performed by a user equipment, UE (3200), for reporting quality of service or quality of experience data to a network (3100), the method comprising: transmitting (810), to the network (3100), one or more preference data regarding quality of service or quality of experience preferences; measuring (820) one or more current operating parameters; and transmitting (830) the one or more current operating parameters to the network (3100).

9. The method of claim 8, further comprising receiving, from the network when the one or more current operating parameters do not meet the one or more preference data, a request to negotiate a change in the one or more preference data.

10. The method of claim 8, further comprising accepting or denying the request.

11. A network node (3300) for making a scaling decision regarding one or more cloud resources for providing one or more services to a user equipment, UE (3200), the network node comprising: processing circuitry (3402) configured to perform any of the steps of any of claims 1 to 7; power supply circuitry (3408) configured to supply power to the processing circuitry.

12. A user equipment, UE (3200), for reporting quality of service or quality of experience data to a network, comprising: processing circuitry (3202) configured to perform any of the steps of any of claims 8 to 10; power supply circuitry (3208) configured to supply power to the processing circuitry.13 A network node (3300) for making a scaling decision regarding one or more cloud resources for providing one or more services to a user equipment, UE (3200), the network node comprising: processing circuitry (3302); a memory (3304) storing instructions performable by the processing circuity to carry outthe steps of; receiving (602), from a user equipment, UE (3200), one or more preference data regarding quality of service or quality of experience preferences; receiving (605), from a cloud provider (685), one or more current cost data for one or more cloud resources (688); receiving (608), from the cloud provider (685), one or more current usage data for the one or more cloud resources (688); receiving (611), from a time series database (698), one or more current operating parameters; and if the one or more current operating parameters meet the one or more preference data, then make no scaling adjustments; if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is acceptable according to the one or more preference data, then scale out (642) the one or more cloud resources; and if the one or more current operating parameters do not meet the one or more preference data, and the one or more current cost data is too high according to the one or more preference data, then negotiate (643) with the UE regarding a scaling decision.

14. A user equipment, UE (3200), for reporting quality of service or quality of experience data to a network, comprising: processing circuitry (3202); a memory (3204) storing instructions performable by the processing circuity to carry out the steps of; transmitting, to the network (3100), one or more preference data regarding quality of service or quality of experience preferences; measuring one or more current operating parameters; and transmitting the one or more current operating parameters to the network (3100).

Citation Information

Patent Citations

  • Method, system and device for allocating network resources in communication network

    US20080316938A1

  • Dynamic autoscaler for cloud platform

    US20210173719A1