ENERGY MANAGEMENT FOR VIRTUALIZED OPERATIONS

A dynamic power management system for vRANs uses a power control agent and data center to create context-specific policies, addressing inefficiencies in power consumption by allowing vRANs to enter sleep states during low load periods, ensuring efficient energy use without compromising latency and jitter.

DE102022126088B4Active Publication Date: 2026-05-07HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
HEWLETT PACKARD ENTERPRISE DEV LP
Filing Date
2022-10-10
Publication Date
2026-05-07

AI Technical Summary

Technical Problem

The challenge of managing power consumption in virtualized wireless access networks (vRANs) is exacerbated by the increased power consumption of expansion cards due to stringent latency and jitter requirements, leading to inefficiencies in power management during periods of low utilization.

Method used

A dynamic, context-aware architecture that includes a power control agent on an expansion card, an out-of-band management channel, and a data center to generate tailored power control policies based on real-time data, allowing vRANs to enter sleep states during low load periods without compromising latency and jitter.

Benefits of technology

This architecture optimizes power consumption by adapting to actual network conditions, reducing energy waste while maintaining latency and jitter requirements, thus enhancing energy efficiency in vRANs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

One system (100), comprising: a virtualized radio access network, vRAN (102, 104, 106), wherein the vRAN (102, 104, 106) comprises: a computing instance (200, 202, 300) with at least one processor (302); and at least one expansion card (214) connected to the computing instance (200, 202, 300), wherein the at least one expansion card (214) comprises a programmable environment (210) configured for communication without access to the at least one processor (302) of the computing instance (200, 202, 300), wherein the programmable environment (210) comprises: a power control agent (212) configured for this purpose: to obtain data on power consumption in the programmable environment (210); the energy consumption data correlate with at least one first vRAN power control policy; Facilitating communication, at least for correlation, with a data center (260) via an out-of-band management channel (103, 228), wherein the data center (260) is configured to generate vRAN power control policies for a variety of vRANs (102, 104, 106); to obtain at least one second vRAN power control policy from the data center (260), wherein the at least one second vRAN power control policy is based at least partially on correlation; and Adjustment of at least one power setting on the at least one expansion card (214) of the vRAN (102, 104, 106) based on the at least one second vRAN power control policy.
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND

[0001] Radio Access Network (RAN) infrastructure is used in mobile telecommunications networks, such as mobile broadband networks, to connect user devices (UEs) to a core network. RANs perform functions such as radio signal processing, radio resource control, and signal processing so that a subscriber can access core network services. Recently, RAN technology has been virtualized, allowing it to run on general-purpose computing platforms in conjunction with various functional components.

[0002] WO 2021 / 234728A1 discloses a system for deploying a portable virtual radio access network (vRAN) across a variety of RAN hardware platforms. This system includes a waveform development kit and an execution environment with a RAN hypervisor. The hypervisor virtualizes spectral resources to ensure the portability of the vRAN across different hardware platforms. WO 2018 / 009344A1 discloses a method for managing slicing in a vRAN, where a slice identity and an allocation of radio resources are configured for each vRAN slice. A slice manager assigns a subscriber profile identity (SPID) to a specific vRAN slice to control subscriber traffic.US 2022 / 0104119A1 concerns a power and environment orchestration (P&EO) system that uses information about the state of network utilization to reduce the power consumption of elements of a wireless access network (RAN). This is achieved by using predefined scenarios with network utilization thresholds to reconfigure the RAN for reduced power consumption when the load is low. BRIEF DESCRIPTION OF THE DRAWINGS

[0003] Various objects, features, aspects and advantages of the subject matter according to the invention will become clearer from the following description together with the accompanying drawings, in which the same numbers represent the same components. Fig. Figure 1 shows an overview diagram of a system of vRANs that can communicate over a network according to an example. Fig. Figure 2 shows a computing instance communicating with a data center for decentralized sleep management, as shown in an example. Fig. Figure 3 shows an inline architecture for a vRAN compute instance according to an example. Fig. Figure 4 shows a flowchart of steps performed by a power control agent on an extension card of a vRAN according to an example. Fig. Figure 5 shows a flowchart of steps performed by a power control agent operating on an expansion card of a vRAN in accordance with another example. Fig. Figure 6 shows a flowchart of the steps of a vRAN power control function, e.g., on a computer-readable medium, e.g., in a data center, according to an example. Fig. Figure 7 shows a block diagram of a distributed computer system that can be used to implement one or more aspects of the various examples.

[0004] While the examples are described with reference to the drawings above, the drawings are for illustration purposes, and various other examples are consistent with the spirit and within the scope of this revelation. DETAILED DESCRIPTION

[0005] This disclosure relates to a system, a method, and a computer-readable medium that provide a novel dynamic, context-aware architecture for power saving and management. In various examples, this management architecture can be used, in particular, with virtualized wireless access networks (vRANs) that incorporate physical layer functions executed in a programming environment of a peripheral device, such as a PCIe (Peripheral Component Interconnect Express) expansion card.

[0006] The present invention aims to provide a system for the energy-efficient operation of a virtualized wireless access network (vRAN), particularly for architectures where computationally intensive physical layer functions are offloaded to dedicated expansion cards. The goal is to dynamically and contextually reduce power consumption during periods of low or intermittent network utilization without compromising the stringent latency and jitter requirements of the vRAN, which render conventional energy-saving mechanisms unsuitable. This objective is achieved by a system according to claim 1, a method according to claim 11, and a non-transitory, computer-readable medium according to claim 19.

[0007] Recent changes in vRAN architecture have resulted in the vRAN physical layer no longer primarily running on a processor within a computer instance, but rather on an expansion card. Consequently, the expansion card's power consumption has increased significantly. Furthermore, the expansion card has a limited number of idle states, and because it must communicate via the CPU's processor, which has low latency, the expansion card generally needs to remain active most of the time, even when underutilized, as may be the case at night or during other times. To address this issue, a new architecture is being implemented in the vRAN in conjunction with a data center. A data center is a centralized grouping of computing resources, either physical or virtualized, for processing, storing, and distributing data.The new architecture generates and implements tailored, context-specific idle and power control policies that reflect actual power consumption across multiple vRANs. Unlike the hierarchical PCIe standard mechanisms for power control, the power control policies in this architecture are not based on static logic, but rather on dynamically created and adapted policies for a specific network segment, thus providing a platform for further innovation in power control. This allows vRANs to be put into a sleep state during periods of low load, thereby reducing power consumption. Furthermore, the power control described below can include monitoring and controlling parameters to manage the idle phase.

[0008] The architecture relies on generating optimized sleep and power management policies for use by the vRANs based on updated data compiled by the vRANs. For example, the overall architecture might include one or more of the following elements: (1) A power control agent located in a programmable environment on an expansion card, such as a PCIe card, or other peripheral connected to the computing instance. PCIe cards provide an exemplary solution as an expansion card because they use a serial bus extension standard with relatively high bandwidth, a high data transfer rate between a peripheral device and a computing instance, and low latency.The power supply control agent receives data from the subcomponents in the programmable environment on the expansion card, correlates the data with at least one initial power supply control policy stored on the expansion card, implements the correlated initial power supply control policy on the expansion card, and facilitates communication of the selected correlation data and / or raw data to a non-transmittable, computer-readable medium in a data center, from which it can then receive one or more new dynamic, context-specific power supply control policies that are based at least partially on the correlation data and / or raw data transmitted to the data center. (2) a power control policy function located on the computer-readable medium, for example in a data center, where data is received from the various vRAN infrastructures (i.e., compute instances and, in particular, the peripherals coupled to the compute instances) and optimized power control policies for the vRANs are developed based on the received data; and (3) An out-of-band management channel that enables direct communication between the power management agent and the data center, and is located both on the expansion card and elsewhere in the compute instance. This data can include both recently collected and historically collected data for the vRAN infrastructure. The data that is compiled and forwarded to the base station to determine power consumption policies may include, for example, data on the load, power supply states (e.g., fully active, idle or standby, low-power sleep, and off), and power consumption, which together can be referred to as power consumption data. The policies may take into account, for example, different PCIe usage patterns at different times of day or on different days, actual and forecasted loads, and so on.

[0009] Each of these features can be implemented by a single entity or by separate entities. For example, the policy control agent can be implemented by a first entity and the data center can be operated by a separate entity, while the out-of-band management channel can be operated separately or at least partially by one or more of the other entities. I. Open vRAN Architecture

[0010] The introduction of vRANs has revolutionized the commercial, operational, and technological aspects of RAN technology. This is particularly important because RANs constitute a significant and capital-intensive part of mobile broadband infrastructure. Since vRANs, including their baseband capabilities, are deployed on general-purpose computing platforms, they are typically more cost-effective from a hardware perspective than traditional RANs, which are usually built by network equipment vendors using their own proprietary technology.

[0011] While hardware costs can be reduced by using vRANs, predicting vRAN loads, energy states, and power consumption is challenging. This is because vRAN traffic is intermittent, meaning it tends to occur in bursts at intervals. vRAN power consumption is easier to determine during periods of high vRAN utilization. However, these high-load periods are limited, for example, to about 10% of a vRAN's operating time. Most of the time, for example, 90% of the time, the vRAN infrastructure is underutilized, meaning it is lightly loaded or idle. It is desirable to reduce power consumption during these underload periods while maintaining reasonable latency and jitter for vRAN traffic.In practice, underutilized vRANs cannot frequently enter a predefined idle state to reduce power consumption, as they must meet reasonable latency requirements for sporadic traffic. The power consumption of a vRAN's physical layer is particularly important because the most demanding part of the vRAN workload is the baseband processing physical layer. The physical layer of a vRAN consumes more than half of the total computing resources and typically requires a maximum system latency of less than 10 µs.

[0012] The most important mechanisms for adapting the power consumption of a computing system, such as that used in a vRAN, to lower loads are power consumption control and the idle phase of the CPU and peripherals. However, the vRAN workload is extremely sensitive to processing latency and jitter. Therefore, any power consumption optimization mechanism should adhere to the system's strict latency and jitter targets.

[0013] The open vRAN hardware architecture evolved within the framework of the 5G standard for mobile broadband networks. In a vRAN hardware architecture, a processor in a compute instance, such as the central processing unit (CPU) of a general-purpose computer system, handles the majority of the processing in a physical layer of computer networks, while one or more subordinate expansion cards, such as PCIe cards, connected to the compute instance, handle a limited number of tasks. For example, the compute instance's CPU performs functions such as encoding and decoding baseband channels and networking fronthaul and midhaul. Such functions and networking might include one or more of the following: Compression / decompression, scrambling / descrambling, modulation / demodulation, layer mapping (i.e., mapping codewords to layers), UL channel estimation (uplink), UL equalization / IDFT (Inverse Discrete Fourier Transform), DL BF (downlink beamforming), weighting and precoding, or ORAN M / C / S (Open RAN Modulation and Coding Scheme). The limited set of physical layer functions offloaded to an expansion card might include, for example, a network and synchronization peripheral and an FEC offload peripheral. The network and sync peripheral can be coupled to the CPU and used to provide fronthaul (FH), midhaul (MH), and sync functions, as well as a network interface controller. The FEC offload PCIe peripheral can also be coupled to the compute instance's CPU, e.g., B. with the scrambling / descrambling functionality, and to perform forward error correction (FEC).In some examples, one or more of the peripherals may contain accelerators. The PCI peripherals can be connected to the data link layer 2 and network link layer 3 (L2 / L3) of the computer network, which are handled by the CPU. With this architecture, the physical layer is distributed between the CPU of the computing instance and the peripherals, and the interactions between the CPU and peripherals require low latency.

[0014] Current power and sleep management in a typical general-purpose computer system uses standard power and sleep control mechanisms for CPU processors (e.g., CPU C states, P states) and standardized sleep mechanisms for PCIe peripherals (D states, S states, L states). (C state = idle, no execution; P state = executing functions; D state = device state; S state = system state; L state = link power state). However, given the stringent latency requirements for baseband physical layer processing, these standard sleep and power control mechanisms are not well-suited for vRAN technology. This is because the latency and jitter effects of entering and exiting power and sleep states are too long and exceed the allowable total latency (i.e., the latency budget).In practice, this means that the general-purpose computing system handling a vRAN workload is placed in a high-power active state for both the CPU and PCIe peripherals, regardless of whether there is actually any data traffic to process. This contributes to significant power consumption in low-load and unproductive scenarios. II. Next-generation inline vRAN architecture that communicates with the data center

[0015] In a next-generation vRAN architecture, the physical layer functions previously performed by one or more compute instance processors (e.g., the CPU silicon) are moved to a PHY-programmable environment on a compute instance extension card. By isolating most of the latency-sensitive processing in a single environment on the extension card, the latency and jitter targets for the compute instance's one or more processors (i.e., the CPU) are relaxed. The most latency-sensitive part of the vRAN stack is confined to a single compute environment on the extension card and no longer requires the lowest-latency interactions between the CPU and the extension card. This enables a more standardized power and idle state control mechanism for one or more compute instance processors (e.g., the CPU).C-states, P-states), which offers more flexibility in adapting the energy consumption of one or more processors of the computing instance to the actual traffic volume.

[0016] Since the entire PHY processing layer has been moved from the compute instance's CPU to one or more expansion cards coupled to the compute instance, the expansion card's power consumption has increased significantly, and the cost of cooling the expansion card has also contributed to this increased power consumption. Much of this increased power consumption is due to the latency requirements for physical layer processing and the need for continuous communication between the expansion card and the CPU's out-of-band processing. Current power consumption controls and sleep modes were designed for expansion cards with far fewer features and do not account for this increased power consumption. Consequently, the expansion card must remain in a more active, high-power state and cannot be put into a sleep mode for extended periods, or at all.This leads to a significant increase in power consumption and is wasteful, especially when the compute instances are only lightly loaded and idle. It is therefore desirable to address the power consumption issues in this newer vRAN architecture.

[0017] The most important mechanisms for adapting a computing system's power consumption to lower loads are power consumption control and the idle phase of the CPU and peripherals. However, the vRAN workload is extremely sensitive to processing latency and jitter. Therefore, any power consumption optimization mechanism should be geared towards adhering to strict system latency and jitter targets. III. Network of vRANs

[0018] Fig. Figure 1 shows an overview diagram of a system that, according to an example, comprises several vRANs. In the example shown, system 100 comprises three vRANs 102, 104, and 106, which may or may not be operated by the same facility. A power control agent can be implemented in each vRAN. Each vRAN includes a corresponding compute instance and can serve as a distributed unit (DU) of a vRAN. The vRANs also include a radio unit / transceiver (not shown) and a central unit (CU) (not shown). vRANs 102, 104, and 106 are implemented in a cellular network to wirelessly connect user devices (UEs), such as the mobile phones 110 and 114 shown, and other cellular-enabled devices, e.g., laptops 112, to a core network 120 via link 107.For example, depending on its location in the mobile network, mobile phone 102 can be connected to vRAN 102 via radio link 102a, mobile phone 106 can be connected to vRAN 106 via radio link 106a, and laptop 112 can be connected to vRAN 102 via radio link 102b. In this example, system 100 also includes a data center 124 where the Power Control Policy Function can be executed.

[0019] The vRANs can communicate with data center 124 via an out-of-band management channel 103 and a connection 105. "Out of band" means that the connection uses a channel that is not used for the primary connection to the core network 120. This shows Fig. 1. The out-of-band management channel 103, which is used for communication between a vRAN, such as vRAN 102, and the out-of-band wide area network (WAN) 122. Additional out-of-band management channels 103a and 103b can be provided to enable mobile communication between the respective vRANs 104 and 106 via the out-of-band WAN 122 and the connection 105 to the data center 124. As described below with reference to Fig. As explained in section 2, the vRANs in the system can contain 100 elements of a respective OOB management channel.

[0020] In some examples, a data center is shared by multiple vRANs, such as data center 124 in Fig. 1, which can be shared by vRANs 102, 104, and 106. This enables the aggregation of data from multiple vRANs, the development of energy control policies that consider energy consumption data across multiple vRANs, and the sharing of energy control policies developed in the data center by one or more vRANs.

[0021] An example of a computing system on which the present invention can be implemented is an HPE ProLiant DL110 server from Hewlett Packard Enterprise Company in Spring, TX.

[0022] Fig. Figure 2 shows a decentralized sleep and power management architecture for vRANs that reduces power consumption, especially for vRANs with an inline architecture. In the Fig. In the example shown, there are two vRANs that use the decentralized sleep and power management architecture, including compute instance 200 and compute instance 202. The programmable PHY environment 210 and the PHY environment BMC 230 are both implemented on an expansion card 214, such as a PCIe card. Although only two vRANs are shown, there can, of course, be more than two. While only the elements of compute instance 200 are shown, the elements of compute instance 202 may be similar.

[0023] As already mentioned, the in Fig. Figure 2 shows a decentralized architecture for standby and energy management with three main components: (1) a power control agent 212, (2) an out-of-band management channel 228, which may include a PHY environment baseboard management controller (BMC), an optional system BMC 240, where data travels over paths 234 and 236, and an out-of-band wide area network (OOB WAN), and (3) a power control function 250. The out-of-band management channel 228 is in Fig. 2. Each of these elements is marked by a dashed box. Each of these elements is described in more detail below.

[0024] Referring to the example in Fig. 2 comprises a first computing instance 200 of a vRAN and an expansion card 214, which includes a programmable environment 210 (e.g., a programmable PHY environment). The programmable environment 210 is a part of the expansion card 214 that can be programmed with instructions that can be executed by a processor within the programmable environment. The programmable environment 210 can also include the system baseboard management controller (BMC) 240, which contains a dedicated processor used to monitor the state of the expansion card, as well as the metrics and policies in use, and to transmit this information to the data center 260. The system BMC can therefore be considered part of the out-of-band management channel 228.The programmable PHY environment 210 comprises a PHY environment processor 216, a non-transient computer-readable memory 214, and a PHY environment BMC 230, which can be considered part of the out-of-band management channel 228. The expansion card 214 may also include one or more subcomponents 217, 218, 219 required to maintain the operation of the expansion card, such as a digital signal processor (DSP), a radio frequency system-on-chip (RFSoC), heat sinks, or capacitors, to name a few. The subcomponents may be located in the PHY programmable environment 210 shown or elsewhere on the expansion card 214. The programmable PHY environment 210 may also include a PHY processing pipeline 270, which performs non-current-controlled functions and handles mobile data traffic at 275.In this example, the processing pipeline 270 is one way to characterize data that is transferred and processed via the pipeline. In some implementations, the PHY processing pipeline 270 can be provided by vendors other than the provider of the distributed sleep and power management architecture.

[0025] The power control agent 212 operates autonomously within the programmable PHY environment 210 using the PHY environment processor 216. It is autonomous in the sense that it operates without interaction with the processor of a compute instance, such as one of the compute instances 200 or 202. The power control agent 212 comprises one or more vRAN power control policies 220, 222 (represented as Policy 1 and Policy N), a correlation engine 224, and a collection / exposure function 226. The collection / exposure function 226 collects (compiles) power consumption data or load metrics from internal subcomponents 217, 218, 219 of the programmable PHY environment 210 via path 227.The collected data includes at least one of the following elements, but is not limited to them: load, power consumption, power states, throughput, resource block utilization, DSP core utilization and frequency, Radio Frequency System-on-Chip (RFSoC) utilization, silicon utilization, or network chip utilization. For example, the capture / exposure function 226 receives subcomponent utilization and power consumption to determine if and for how long the system can enter a lower sleep state or even an idle state when utilization is low for that period.

[0026] The power control agent 212 correlates the collected power consumption data using the correlation engine 224 with a pattern of at least one initial vRAN power control policy selected from one of the power control policies 220, 222 already present in the vRAN, which most closely correlates with the collected data. For example, an existing power control policy might be to put the extension card into sleep mode after midnight if several measured usage rates fall below a certain threshold. Another power consumption control policy might focus on both underutilization and power consumption, so that if power consumption is below a certain value but utilization is above a second threshold, a different sleep policy can be set.The collected data (metrics) are compared by the correlation machine 224 with the existing energy control strategies 220, 222, and the correlation machine 224 determines which energy control strategy should be implemented on the extension map at this time.

[0027] The power control agent 212 applies at least the first power control policy to a set of policy-specific power and sleep control settings to the power control function of the programmable PHY environment to implement power-saving measures. For example, settings based on policy 220, when that policy is selected, are passed to the PHY processing pipeline 270 via path 225. In some examples, the power-saving settings may include at least one of the following: DSP frequency and voltage, RFSoC voltage, network chip voltage, DSP core sleep, or RFSoC sleep, to name a few. As mentioned earlier, the implemented power control strategy can generally be selected to optimize power consumption, latency, handling of actual and predicted loads, throughput, and so on.

[0028] Computing instance 200 is communicatively connected to data center 260. This means that either the raw data of the collected electricity consumption or correlation data reflecting the currently implemented power control policy can be transmitted to data center 260 via the out-of-band management channel 228. In data center 260, the compiled data is used by the Power Control Policy Function 250, which collects data from one or more vRANs and generates power control policies that can be transmitted back to one or more vRANs. Data center 260 can be located centrally to the vRANs, for example, in a base station.

[0029] While in Fig. While only a single PCIe expansion card is shown, the programming environment can include multiple expansion cards with similar policy control agents connected to a single computing instance and communicating with the data center 260.

[0030] One way to implement the Power Control Agent 212 is to load it onto the Expansion Card 214. The Power Control Agent 212 can be included on the Expansion Card at the time of sale or loaded onto the Expansion Card at a later time, possibly via vRAN management software (not shown). In examples, fields relating to load parameters, power states, power consumption measurements, and other data can be included in the management software to compile the data and implement settings as needed.

[0031] The out-of-band management channel 228 can include the baseboard management controller (BMC) 230 of the programmable PHY environment 210, a system BMC 240, and a communication protocol, which can be an extension of out-of-band communication protocols. The out-of-band management channel 228 facilitates the exchange of granular information regarding energy consumption data (which can include load and power states) and vRAN power control policies with the data center 260, which has the centralized power control policy function 254. An out-of-band communication protocol is a protocol used to transmit information over a channel separate from the main communication channel. A BMC is a specialized processor that monitors the physical state of the hardware and communicates with a system administrator.

[0032] In the Fig. In the example shown, the data transmitted from the power control agent 212 to the data center 260 via the out-of-band management channel 228 is first transmitted via path 233 to the BMC 230 of the PHY environment, then via path 234 to the system BMC 240, and subsequently wirelessly via path 236 to the out-of-band WAN 260. From there, the data is transmitted wirelessly via path 238 to the data center 260. The system BMC 240 is therefore located between the PHY environment BMC 230 and the data center 260. Arrow 237 represents the load and performance data (metrics) and the currently used power control policy that are transmitted to the data center 260. Conversely, the power control policies are transferred from the data center 260 to the power control 212, starting with path 239 and via system BMC 240 to the PHY environment BMC 230 and then to the power control agent 212.Thus, the out-of-band management channel facilitates the exchange of information about the received energy consumption data and the vRAN power control policies.

[0033] The power supply control function 250 in the data center 260 can include at least two programmable functions for which instructions can be stored on a non-transitory, computer-readable medium (an example of this is shown in Fig. (Figure 6). These functions include a capture / exposure function 252, which receives data from the vRANs, and a policy optimization function 254, which generates optimized power control policies, at least in part, based on the data received from the vRANs. The power control function 250's data can be forwarded to a RAN service management and orchestration (SMO) platform for open RAN radio resources at 256. Once one or more new power control policies have been generated in the data center 260, the policies are sent back to the power control agent 212 via the out-of-band management channel 228, as described. The correlation engine can then determine which of the power control policies to apply, taking into account the newly received one or more policies.The new settings are then transferred via path 225 to the PHY processing pipeline 270 and any other element (not shown) that is intended to control the power control policy.

[0034] As shown, the PCI environment processor 216 can perform the power control functions. Instructions for executing the functions of the power control agent 212 can be stored in at least one non-transient, computer-readable memory, such as a persistent storage device and a main memory device. A person skilled in the art will recognize that the data center 260 in which the power control function is performed may also include other systems, subsystems, and / or components (such as a display, keyboard, mouse, speakers, buttons, batteries, fans, motherboards, power supplies, etc.) for implementing the various power control functions described herein.

[0035] Fig. Figure 3 shows additional details of a computing instance 300 with an inline architecture. In examples, the processor 302 (e.g., the CPU) can execute functions for layers 2 and 3 (L2 / L3) 320. In this architecture, the programmable PHY environment 304 can contain one or more processors, such as the PHY environment processor 216, which performs one or more data processing techniques such as forward error correction (FEC) 306, encryption / decryption 308, modulation / demodulation 310, layer assignment 312, UL channel estimation, UL (uplink channel estimation), equalization / inverse discrete Fourier transform (IDFT) and downlink beamforming (DL BF), computation and precoding 314, compression / decompression and ORAN M / C / S 316 (Open RAN Modulation and Coding Scheme), as well as fronthaul (FH), midhaul (MH) and sync functions, or a network interface controller (FH / MH / sync) and NIC 318.Most of these functions were performed by the CPU of the computer instance in the prior art. Examples of these techniques are known to those skilled in the art. The programmable PHY environment 304 can further comprise subcomponents 322, 323, 324, as well as a processor 330 and a computer-readable medium 332. Alternatively, the subcomponents can be located on the expansion card 214 outside the PHY-programmable environment 210. If the computing instance 300 is extended with the idle time and power control architecture described in [reference to...] Fig. As shown and described in Figure 2, the programmable environment 304 also includes an energy control agent 320 similar to the one in Figure 2. Fig. 2 energy control agents shown.

[0036] Fig. Figure 4 shows a flowchart 400 of a power control agent in the vRAN programming environment. In one example, the programming environment includes a processor that performs the following steps.

[0037] In step 410, energy consumption data, including load and power states, are compared to the programming environment, such as the one in Fig. The energy consumption data shown in the two subcomponents is determined. For example, the energy consumption data may include at least one of the following elements: data relating to load, energy consumption, power states, throughput, resource block utilization, utilization and frequency of digital signal processor cores (DSP), utilization of radio frequency system-on-chip (RFSoC), or utilization of network chips.

[0038] In step 420, the electricity consumption data is correlated with at least one initial electricity control policy, e.g., a policy stored in the memory of the Fig. The power control policy is stored in the programmable environment shown in Figure 2. This power control policy may be the only power control policy originally stored in the programmable environment, or multiple power control policies may be stored in the programmable environment. The at least one power control policy may be a default policy, such as a standard power control policy (including sleep mode) implemented on expansion cards; it may be a power control policy obtained from the data center; or it may be a power control policy obtained by other means and initially stored in the programmable environment.

[0039] Power consumption data is compared to the settings of one or more policies to determine the correlation between the policy in the programmable environment that most closely reflects current power consumption, including actual power consumption, load, and power states. For example, an initial policy for a given power consumption might set a sleep state to "idle." Actual power consumption is compared to the policies, and the policy that most closely matches reality is identified. A different power control strategy with different sleep state parameters can be implemented if components in the programmable environment exhibit higher power consumption. A data center can use the correlation data to create power control policies.

[0040] In step 430, an out-of-band management channel facilitates the transmission of the correlation to a data center, e.g., the one in Fig. 2. Data center depicted. The data transmitted over the out-of-band communication channel could, for example, be correlation data that correlates power consumption with the policy. Using this data, the data center can create policies that differ from those already in place for a computer instance, e.g., for one in Fig. 2 represented computing instance.

[0041] In step 440, at least one second vRAN power control policy is retrieved from the data center. In step 450, the power control agent can apply at least one power setting to the at least one vRAN expansion card based on the at least one second vRAN power control policy in a compute instance, such as one in Fig. The at least one first and at least one second vRAN power control policy must be adapted to at least one of the following elements: a DSP frequency and voltage, an RFSoC voltage, a network chip voltage, a DSP core idle state, or an RFSoC idle state. In some examples, the at least one first and at least one second vRAN power control policy are dynamically created and adapted for at least one segment of a telecommunications network. In other words, the policies are dynamically modified when justified by energy consumption data, loads, power states, etc., and the adaptation is performed for at least one segment of vRANs in a telecommunications network.

[0042] A power supply rule can, for example, contain parameters that are defined by a power supply control agent, as in Fig. Figure 2 shows how these parameters can be used to evaluate current parameters such as power consumption, load, power supply states, or other variables that the power supply control agent should use when correlating the rule with the current actual values. The policy also includes energy settings to be implemented on an extension board based on the selected, correlated policy. For example, the policies can differ depending on variables such as time of day, time of week, or a different date or time.

[0043] Another example of a 500-page flowchart is in Fig. Figure 5 illustrates this. In this example, the out-of-band management channel can facilitate the transmission of raw data, such as power consumption data for the subcomponents, to the data center. In this example, a correlation can optionally be transmitted in addition to the energy consumption data, or none at all. Thus, in the example of Fig. 5 in step 510 Energy consumption data, including load and power states relating to the programming environment, such as data from the in Fig. The two depicted subcomponents are obtained. In step 520, the power consumption data is correlated with at least one initial power control policy, such as a policy stored in the memory of the programmable environment 210. Fig. 2 is resident. In step 530, an out-of-band management channel facilitates the communication of at least energy consumption data to a data center. The data transmitted via the out-of-band communication channel could, for example, be correlation data relating electricity consumption to the policy. Using this data, the data center can generate policies that differ from those already in effect on a computer instance, such as in the Fig. 2 computer instances shown. In step 540, at least one second vRAN power control policy is retrieved from the data center. Next, in step 550, the power control agent can apply at least one power setting to the at least one vRAN expansion card based on the at least one second vRAN power control policy in a computer instance, such as one in Fig. Adjust the computer instance shown in the image.

[0044] In both in Fig. 4 and Fig. Based on the 5 examples shown, the data center can formulate guidelines based on the received correlation data and / or the raw data delivered to the data center.

[0045] Fig. Figure 6 shows a flowchart of 600 steps that take place in a data center such as the one in Fig. The two methods shown can be carried out. Fig. Figure 6 is presented from the perspective of exemplary actions performed in the data center. In these examples, the instructions for performing the steps of the flowchart are stored on a computer-readable medium (601). In step 610, a correlation of energy consumption data is received with at least one initial vRAN power control policy from at least one vRAN out of a plurality of vRANs. (See, for example, a collection / exposure function in Fig. 2) The power consumption data refers to the programmable environment on at least one expansion card in the at least one vRAN (e.g., the PCIe card). The power consumption data may also include the load and power supply states on the at least one expansion card.

[0046] In step 620, at least one second vRAN power control policy is created, at least partially, based on the correlation of the energy consumption data with the at least one first vRAN power control policy. (See, for example, data obtained from the vRANs and one in Fig. (2 shown optimization function for the policy). In step 640, at least one second vRAN power control policy is transferred to at least one of the multiple vRANs. In addition to the at least one second vRAN power control policy, further vRAN power control policies can also be created.

[0047] In the Fig. In the example described in section 6, the at least one expansion card can be connected to a computing instance on which at least one vRAN can be connected, and the expansion card on which at least one vRAN can be configured to communicate outside the computing instance without accessing a CPU of the computing instance.

[0048] In an alternative example, the energy consumption data can be received in step 610 instead of or in addition to correlation data and used in step 620 to create at least one second VRAN power control policy.

[0049] With power control policies formulated in the data center and adapted to the current conditions in the vRANs, the energy efficiency and power management architecture described here enables individual and context-dependent power consumption for the vRANs. Thus, the power control policies available in the programming environment are tailored to the latency and jitter requirements of the vRAN(s) communicating with the data center, rather than relying on a few predefined power control policies more suited to a programming environment on the expansion card with a lower load. In contrast to the hierarchical PCle standard mechanisms for power and sleep control, this architecture shifts the decision-making and enforcement mechanism for power control to the PHY processing environment itself.The architecture also requires no interaction between the power supply and sleep state control mechanisms and a processor of a computing instance, such as the CPU of a general-purpose computer system. This achieves the necessary latency in the power control mechanisms in response to network load.

[0050] Furthermore, the architecture described here enables the sharing of power control data via an out-of-band management channel, thereby enabling the large-scale collection of this data to further optimize power control strategies that correspond to the realities of a traffic profile in a specific network segment.

[0051] A high-level block diagram of an exemplary system that can be used to implement the systems and procedures described here is shown in Fig. Figure 7 illustrates the System 700 as an example of an expansion card. The System 700 comprises a processor 710, which is operationally connected to a persistent storage device 720 and a main memory device 730. In examples, the processor 710 is located on an expansion card 214. The processor 710 controls the overall operation of the System 700 by executing computer program instructions that define such operations. The computer program instructions can be stored in a persistent storage device 720 or another computer-readable medium and loaded into the main memory device 730 when execution of the computer program instructions is desired. Thus, the process steps of the Fig. 4, Fig. 5 and Fig. 6 are defined by the computer program instructions, which are stored in the main memory device 730 and / or the continuous storage device 720 and are controlled by the processor 710, which executes the computer program instructions. For example, the computer program instructions can be implemented as computer executable code, which is programmed by a person skilled in the art to execute one or more algorithms defined by the process steps of the Fig. 4, Fig. 5 and Fig. 6 are defined. Accordingly, the 710 processor executes an algorithm by carrying out the computer program instructions, which is defined by the process steps of the Fig. 4, Fig. 5 and Fig. 6 is defined. Additionally or alternatively, the computer program product 750 may contain instructions for implementing the process steps of the Fig. 4, Fig. 5 and Fig. 6 in accordance with the disclosed examples. When the 710 processor executes the instructions of the 750 computer program product, the instructions, or a portion thereof, are typically loaded into the 730 main memory, from which the 710 processor can easily access the instructions.

[0052] The System 700 or devices connected to it may also include one or more network interfaces 780, which can be used to communicate with a data center to obtain policy information. The System 700 may also include one or more input / output devices 790, which enable user interaction with the System 700 (e.g., a display, keyboard, mouse, speakers, buttons, etc.).

[0053] The Processor 710 can include both general-purpose and specialized microprocessors and can be the sole processor or one of several processors in the System 700. The Processor 710 can include one or more central processing units (CPUs) and one or more graphics processing units (GPUs), which can operate independently and / or in multitasking with one or more CPUs to accelerate processing, for example, for various image processing applications described herein. The Processor 710, the Permanent Storage Device 720, and / or the Main Storage Device 730 can include, be augmented by, or be integrated with one or more application-specific integrated circuits (ASICs) and / or one or more field-programmable gate arrays (FPGAs).

[0054] The Permanent Storage Device 720 and the Main Storage Device 730 each comprise a tangible, non-transferable, computer-readable storage medium. The Permanent Storage Device 720 and the Main Storage Device 730 can each comprise high-speed random-access memory, such as dynamic random-access memory (DRAM), static random-access memory (SRAM), synchronous dynamic random-access memory double data rate (DDR RAM), or other random-access solid-state memory devices, and non-volatile memory, such as one or more magnetic disk storage devices.Internal hard disks and removable storage media include magneto-optical disk storage, optical disk storage, flash memory, semiconductor storage such as EPROM (erasable programmable read-only memory), EEPROM (electrically erasable programmable read-only memory), CD-ROM (compact disc read-only memory), DVD-ROM (digital versatile disc read-only memory), or other non-volatile solid-state storage.

[0055] The System 700 input / output devices can include peripherals such as printers, scanners, displays, etc., that are connected to the System 700. For example, the System 790 input / output devices can include a display device such as a cathode ray tube (CRT), plasma, or liquid crystal display (LCD) for showing information (e.g., a DNA accessibility prediction result) to a user, a keyboard, and a pointing device such as a mouse or trackball with which the user can input data into the System 700.

[0056] Any or all of the systems described here can be run by and / or integrated into a system such as System 700. Furthermore, System 700 can utilize one or more neural networks or other deep learning techniques for the systems and methods described here.

[0057] A professional will recognize that the implementation of an actual computer or computer system may have different structures and also contain different components (e.g., batteries, fans, motherboards, power supplies, etc.), and that Fig. 7 is a clear representation of some components of such a computer for illustration purposes.

[0058] It should be understood that the disclosed techniques offer many beneficial technical effects, including improved power consumption through the generation of context-sensitive idle and control strategies. It should also be acknowledged that the following description is not intended as a comprehensive overview, and that concepts may be simplified for the sake of clarity and brevity.

[0059] The in the Fig. 1 and Fig. The two elements shown and the various functions assigned to each element are described as examples only, for the sake of clarity. A person skilled in the art will understand that one or more of the functions assigned to the various elements can be performed by any of the other elements and / or by an element (not shown) configured to perform a combination of the different functions.Therefore, it should be noted that any language referring to a programming environment of a computing instance, a client device, a power control function, at least one processor, a non-transient (or persistent) storage device, or a main memory device is to be understood as encompassing any suitable combination of computing devices, including servers, interfaces, systems, databases, agents, peers, controllers, or other types of computing devices, operating individually or collectively to perform the functions attributed to the various elements. Furthermore, a person skilled in the art will understand that one or more of the functions of the system described herein are... Fig. 1 can be executed within a client-server relationship, e.g. by one or more servers, one or more client devices (e.g. one or more user devices) and / or by a combination of one or more servers and client devices.

[0060] The systems and procedures described herein can be implemented using a computer program product that is tangibly embodied in an information carrier, e.g., in a non-transient, machine-readable storage device, for execution by a programmable processor; and the procedure steps described herein, including one or more of those described in Fig. 4, Fig. 5 and Fig.6. can be implemented using one or more computer programs that can be executed by such a processor. A computer program is a set of computer program instructions that can be used directly or indirectly in a computer to perform a specific activity or achieve a specific result. A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be used in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computer environment.

[0061] The various examples have been described with reference to the accompanying drawings, which form part of this document and show specific embodiments of the examples for illustrative purposes. However, this description can be implemented in many different forms and should not be interpreted as being limited to the examples presented here. Rather, these examples are provided to ensure that this description is thorough and complete and to fully convey the scope of the examples to the person skilled in the art. This description can be implemented, among other things, in the form of methods or devices. Accordingly, each of the various examples contained herein can take the form of a purely hardware example, a purely software example, or an example that combines software and hardware aspects. The following description is therefore not to be understood in a restrictive sense.

[0062] In the description and claims, the following terms have the meanings expressly assigned herein, unless the context clearly prescribes otherwise:

[0063] The phrase "in an example," as used here, does not necessarily refer to one and the same example, but it can. Thus, as described below, different examples can easily be combined without deviating from the scope or spirit of the directive.

[0064] The term “or” used here is a comprehensive “or” operator and is equivalent to the term “and / or”, unless the context clearly indicates otherwise.

[0065] The term “based on” is not exclusive and may be based on additional, unspecified factors unless the context clearly indicates otherwise.

[0066] The term "coupled to" as used here encompasses both direct coupling (where two coupled elements are in physical contact) and indirect coupling (where at least one additional element is located between the two elements), unless the context specifies otherwise. Therefore, the terms "coupled to" and "coupled with" are used synonymously. In the context of a networked environment where two or more components or devices can exchange data, the terms "coupled to" and "coupled with" are also used to mean "communicatively coupled with," possibly via one or more intermediary devices.

[0067] Furthermore, the meaning of "ein", "ein" and "die" throughout the description includes the plural, and the meaning of "in" includes "in" and "auf".

[0068] Although some of the examples presented here represent a single combination of inventive elements, the subject matter of the invention is deemed to encompass all possible combinations of the disclosed elements. Thus, if one example includes elements A, B, and C, and another example includes elements B and D, then the subject matter of the invention is also deemed to encompass other remaining combinations of A, B, C, or D, even if they are not expressly discussed here. Furthermore, the transitional term "encompassing" means that it is present as parts or components, or that it is such parts or components. As used here, the transitional term "encompassing" is comprehensive or open-ended and does not exclude additional, unmentioned elements or process steps.

[0069] Throughout this discussion, it is assumed that references to servers, services, interfaces, clients, peers, portals, platforms, or other systems comprised of computer devices represent one or more computer devices with at least one processor (e.g., ASIC, FPGA, DSP, x86, ARM, ColdFire, GPU, multi-core processors, etc.) configured to execute software instructions stored on a computer-readable, tangible, non-transient medium (e.g., hard disk, solid-state drive, RAM, flash memory, ROM, etc.). For example, a server might comprise one or more computers operating as web servers, database servers, or some other type of computer server in a manner that fulfills the described roles, responsibilities, or functions.It should also be noted that the disclosed computer-based algorithms, processes, methods, or other types of instruction sets can be embodied as a computer program product, comprising a non-transitory, tangible, machine-readable medium that stores the instructions that cause a processor to execute the disclosed steps. The various servers, systems, databases, or interfaces can exchange data using standardized protocols or algorithms, possibly based on HTTP, HTTPS, AES, public and private key exchange, web service APIs, well-known financial transaction protocols, or other electronic information exchange methods. Data exchange can occur over a packet-switched network, a circuit-switched network, the Internet, LAN, WAN, VPN, or another type of network.

[0070] When, in the present description and in the following claims, a system, server, device, or other computer element is described as being configured to perform or execute functions on data in a memory, "configured" or "programmed" means that one or more processors or cores of the computer element are programmed by a set of software instructions stored in the memory of the computer element to execute the set of functions on target data or data objects stored in memory.

[0071] It should be noted that any wording referring to a computer or computing instance should be read as including any suitable computing device or combination of computing devices, including, for example, one or more servers, interfaces, systems, databases, agents, peers, controllers, or other types of computing devices, operating individually or collectively. Computing devices comprise a processor configured to execute software instructions stored on a tangible, non-transient, computer-readable storage medium (e.g., hard disk, FPGA, PLA, solid-state drive, RAM, flash memory, ROM, etc.) and may include various other components such as batteries, fans, motherboards, power supplies, etc.The software instructions configure or program the computer device to provide the roles, responsibilities, or other functions as discussed below in relation to the disclosed system. Furthermore, the disclosed technologies may be embodied as a computer program product that includes a non-transitory, machine-readable medium storing the software instructions and causing a processor to execute the disclosed steps associated with implementations of computer-based algorithms, processes, methods, or other instructions. In some examples, the various servers, systems, databases, or interfaces exchange data using standardized protocols or algorithms, possibly based on HTTP, HTTPS, AES, public-private key exchange, web service APIs, or other electronic information exchange methods.Data exchange between devices can take place via a packet-switched network, the Internet, LAN, WAN, VPN or another type of packet-switched network, a circuit-switched network, a cell-switched network or another type of network.

Claims

[1] A system (100), comprising: a virtualized radio access network, vRAN (102, 104, 106), wherein the vRAN (102, 104, 106) comprises: a computing instance (200, 202, 300) with at least one processor (302); and at least one expansion card (214) connected to the computing instance (200, 202, 300), wherein the at least one expansion card (214) comprises a programmable environment (210) configured for communication without access to the at least one processor (302) of the computing instance (200, 202, 300), wherein the programmable environment (210) comprises: a power control agent (212) configured for this purpose: to obtain data on power consumption in the programmable environment (210); the energy consumption data correlate with at least one first vRAN power control policy; Facilitating communication, at least for correlation, with a data center (260) via an out-of-band management channel (103, 228), wherein the data center (260) is configured to generate vRAN power control policies for a variety of vRANs (102, 104, 106); to obtain at least one second vRAN power control policy from the data center (260), wherein the at least one second vRAN power control policy is based at least partially on correlation; and Adjustment of at least one power setting on the at least one expansion card (214) of the vRAN (102, 104, 106) based on the at least one second vRAN power control policy. [2] System (100) according to claim 1, wherein the at least one expansion card (214) is a Peripheral Component Interconnect Express (PCIe) card. [3] System (100) according to claim 1, wherein the energy consumption data includes at least one of the following elements: data relating to load, energy consumption, power states, throughput, resource block utilization, utilization and frequency of digital signal processor cores (DSP), utilization of high frequency system-on-chip (RFSoC) or utilization of network chips. [4] System (100) according to claim 1, wherein the power control agent (212) enables communication with the data center (260) via an out-of-band management channel (103, 228), and wherein the out-of-band management channel (103, 228) comprises a baseboard management controller, BMC (230, 240) and a communication protocol that enables an exchange of information regarding the received power consumption data and the vRAN power control policies. [5] The system (100) according to claim 4 further comprises a second BMC (230, 240) on the computing instance (200, 202, 300) located between the first BMC (230, 240) and the data center (260). [6] System (100) according to claim 1, wherein the computing instance (200, 202, 300) is communicatively coupled with the data center (260). [7] System (100) according to claim 1, wherein the at least one first and at least one second vRAN power control policy provides for an adjustment to at least one of the following elements: a DSP frequency and voltage, an RFSoC voltage, a network chip voltage, a DSP core idle state or an RFSoC idle state. [8] System (100) according to claim 1, wherein the at least one first and at least one second vRAN power control policy are dynamically created and adapted for at least one segment of a telecommunications network. [9] System (100) according to claim 1, wherein the at least one second vRAN power control policy is shared by the majority of the vRANs (102, 104, 106). [10] System (100) according to claim 1, wherein the programmable environment (210) is configured to include a PHY processing pipeline (270) in which non-current-controlled functions are performed. [11] A method (400) comprising the following: Acquisition (410) of energy consumption data in a virtualized wireless access network, vRAN (102, 104, 106) via a power control agent (212) relating to a programmable environment (210) of at least one expansion card (214) coupled to a computing instance (200, 202, 300) without accessing at least one processor (302) of the computing instance (200, 202, 300); Correlate (420) the energy consumption data with at least one first vRAN power control policy; Facilitation (430) of communication of at least the energy consumption data to a data center (260), wherein the data center (260) is configured to generate vRAN power control policies for a plurality of vRANs (102, 104, 106); Received (440) from at least one second vRAN power control policy from the data center (260), wherein the at least one second vRAN power control policy is based at least partially on power consumption data; and Setting (450) at least one power setting on the at least one expansion card (214) of the vRAN (102, 104, 106) by the power control agent (212) based on the at least one second vRAN power control policy. [12] Method (400) according to claim 11, wherein the at least one expansion card (214) is a Peripheral Component Interconnect Express (PCIe) card. [13] Method (400) according to claim 11, wherein the energy consumption data includes at least one of the following elements: data relating to load, energy consumption, power states, throughput, resource block utilization, utilization and frequency of digital signal processor cores (DSP), utilization of radio frequency system-on-chip (RFSoC) or network chip utilization. [14] Method (400) according to claim 11, wherein an out-of-band management channel (103, 228) facilitates communication with the data center (260) and wherein the out-of-band management channel (103, 228) comprises a baseboard management controller, BMC (230, 240) and a communication protocol that facilitates the exchange of information regarding at least one of energy consumption data and vRAN power control policies. [15] Method (400) according to claim 14, wherein the out-of-band management channel (103, 228) further comprises a second BMC (230, 240) on the computing instance (200, 202, 300) located between the first BMC (230, 240) and the power control agent (212). [16] Method (400) according to claim 11, wherein the at least one first and at least one second vRAN power control policy comprises an adaptation to at least one of the following elements: a DSP frequency and voltage, an RFSoC voltage, a network chip voltage, a DSP core idle state or an RFSoC idle state. [17] Method (400) according to claim 11, wherein the at least one first and the at least one second vRAN power control policy are dynamically created and adapted for at least one segment of a telecommunications network and wherein the at least one second vRAN power control policy is shared by the plurality of vRANs (102, 104, 106). [18] The method (400) according to claim 11 further comprises the execution of non-current-controlled functions by the computing instance (200, 202, 300) via a PHY processing pipeline (270). [19] A non-transitory computer-readable medium comprising the following: computer-readable instructions which, when executed by at least one processor connected to at least one memory, cause the at least one processor to: from at least one virtualized wireless access network, vRAN (102, 104, 106) of a plurality of vRANs (102, 104, 106) receive a correlation of power consumption data with at least one first vRAN power control policy, wherein the power consumption data relates to a programmable environment (210) on at least one expansion card (214) in the at least one vRAN (102, 104, 106); to generate at least a second vRAN performance control guideline, at least partially, based on correlation; and which transmit at least one second vRAN performance control policy to at least one of the several vRANs (102, 104, 106). [20] Non-transitory computer-readable medium according to claim 19, wherein the at least one expansion card (214) is coupled to a computing instance (200, 202, 300) on the at least one vRAN (102, 104, 106), and wherein the expansion card (214) on the at least one vRAN (102, 104, 106) is configured to communicate outside the computing instance (200, 202, 300) without accessing a CPU of the computing instance (200, 202, 300).

Citation Information

Patent Citations

  • System and method for ran power and environmental orchestration

    US20220104119A1

  • System and method for managing virtual radio access network slicing

    WO2018009344A1

  • System and method for provisioning a portable virtual ran across a plurality of ran hardware platforms

    WO2021234728A1