Deployment of Distributed Unit Network Functions (DU NF) in a Network

The DQN-based DRL scheme optimizes DU network function placement for carrier aggregation, addressing latency and node usage challenges, enhancing network efficiency and reducing costs through automated DU placement.

JP2026515752APending Publication Date: 2026-05-19TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Filing Date
2024-04-12
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

Current communication network technologies face challenges in optimizing the placement of DU network functions for carrier aggregation, leading to long delays and complex, time-consuming tasks due to fixed node operations, which hinder network efficiency and cost-effectiveness.

Method used

Employing a Deep Q-Network (DQN)-based Deep Reinforcement Learning (DRL) scheme to minimize end-to-end latency and the number of network nodes used for DU network function deployment, while satisfying user latency targets, by determining optimal DU placements for component carriers using machine learning processes.

Benefits of technology

This approach optimizes DU network function deployment, reducing latency and network node usage, leading to significant cost savings and energy efficiency by automating a traditionally manual and time-consuming process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026515752000001_ABST
    Figure 2026515752000001_ABST
Patent Text Reader

Abstract

A method, system, and apparatus are disclosed. A first network node (NN) configured to communicate with multiple NNs in a network is described. The first network node includes a communication interface and / or processing circuit configured to determine, and / or to determine, a plurality of distributed unit network functions (DU NFs) to be hosted by a group of NNs among the plurality of NNs, based on the delay target of each WD among a plurality of wireless devices (WDs), wherein each DU NF is associated with at least one component carrier available by at least one WD, and the plurality of DU NFs are determined using a learning process. Furthermore, each NN among the group of NNs is triggered to host the corresponding DU NF of the plurality of DUs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to wireless communication, and more particularly to the placement of network functions in a network where network functions are associated with carrier aggregation.

Background Art

[0002] The Open Radio Access Network (O-RAN) Alliance is developing O-RAN standards and / or specifications for a wireless communication system that may include an O-RAN-based mobile network. Such a system provides broadband communication between network nodes (NNs) such as base stations and mobile wireless devices (WDs) or user equipment (UEs), as well as communication between network nodes and between WDs. The terms WD and UE may be used interchangeably throughout the present disclosure.

[0003] Furthermore, O-RAN includes technologies based on disaggregation, virtualization, open interfaces, automation, and intelligence. O-RAN not only provides flexibility, scalability, robustness, and cost efficiency, but also opens up unprecedented new revenue opportunities for network operators and communications service providers (CSPs). Disaggregation in O-RAN distributes network functions (NFs) beyond radio units (RUs) to centralized units (CUs) and distributed units (DUs) based on a specified network function partitioning, as shown in Figure 1. Virtualization helps CUs and DUs on O-RAN cloud (O-Cloud) nodes operate efficiently by creating virtualized network functions (VNFs) or containerized network functions (CNFs).

[0004] Research is currently underway to find the best O-Cloud node to host the VNF for each DU and CU while satisfying the UE's latency requirements. For example, latency-aware DU-CU placement in a packet-based network can be considered by formulating the problem as a Mixed Integer Linear Problem (MILP). Deep Reinforcement Learning (DRL) algorithms may be used for the problem of joint DU and CU placement and RU association. Furthermore, actor-critic learning algorithms may be used to minimize energy consumption while satisfying the user's latency target.

[0005] In addition, Carrier Aggregation (CA) techniques were introduced in LTE Advanced and are used in 5G wireless mobile networks, where component carriers (CCs) are aggregated to improve WD throughput. In CA, each WD is assigned to a primary cell (PCell), which is always active for that particular WD. Secondary cells (SCells), however, may be activated or deactivated while the WD is connected to the network. Each cell has its own Medium Access Control (MAC) and Radio Link Control (RLC), although Radio Resource Control (RRC) and other higher layers are the same for different cells. Since SCells are dynamically activated or deactivated for different users, it is beneficial to leverage cloud-based RAN disaggregation and virtualization techniques, such as O-RAN, to reduce network operator costs.

[0006] In current communication network technology, the NF of a DU for each CC operates within a fixed node. If the DU for all CCs operates on a single processing node, this results in a long delay from the DU to the WD. This delay consists of propagation, processing, transmission, and scheduling / queuing. Furthermore, optimizing the placement of CCs within a DU NF instance and the placement of DU NF instances within a cloud node are extremely complex and time-consuming tasks. [Overview of the project]

[0007] Some embodiments advantageously use machine learning processes to provide methods, systems, and apparatus for RAN network function placement with carrier aggregation in a cloud network. In some embodiments, by leveraging virtualization techniques in the cloud network, network nodes in the cloud network (e.g., optimal processing nodes) may be determined to perform DU network functions for different CCs.

[0008] In some other embodiments, a Deep Q-Network (DQN)-based Deep Reinforcement Learning (DRL) scheme is used to minimize end-to-end latency (e.g., among users) and the number of network nodes (e.g., O-Cloud nodes) used to deploy the DU NF while satisfying the user's latency target. That is, an ML solution to the problem of DU network function deployment with carrier aggregation in O-RAN is described.

[0009] In some embodiments, a DRL model is used that minimizes WD user plane traffic delay when using carrier aggregation in the RAN, while simultaneously minimizing the number of DU NFs that are positioned to satisfy the target WD delay. In some other embodiments, constraints include RAN NF (CU, DU, and RU) computing resources and inter-NF communication link bandwidth.

[0010] In some other embodiments, a method is described which may include one or more of the following steps. • Model the communication network (i.e., the network). • Model end-to-end (E2E) latency in a communication network. Parameters can be derived from actual data collected within the network (e.g., current E2E WD latency). • (For example, in modeling) includes processing, transmission, propagation, and queuing delays from CU to WD across the entire Midhaul (MH), IDU (between DUs), and Fronthaul (FH). This defines a WD-centric DU network function configuration that involves carrier aggregation optimization problems. To host the DU network functionality for CC, use a weighted sum of latency and the number of network nodes used (e.g., cloud nodes). Apply a deep reinforcement learning-based DU configuration with CA (DUPCA) (for example, to the modeling). • Use the DRL algorithm to minimize the number of deployed DUs while meeting the latency target for each user. This is done by selecting the appropriate DU placement for each CC.

[0011] Solutions to deployment problems such as real-world input data from NNs (e.g., RAN cloud nodes and NFs), constraints for generating model generation, and OAM systems for setting up RAN NFs for instantiation of CCs within a cloud network. The model can be periodically and dynamically regenerated as input parameters and constraints change over time.

[0012] One or more embodiments minimize end-to-end latency from CU to end WD within a network (e.g., a cloud network), taking into account the number of NNs (e.g., cloud nodes) that should be used to instantiate DU NFs for CC. One or more embodiments enable (e.g., determine) the optimal number of DU NFs to be instantiated on an NN (e.g., O-Cloud nodes) while meeting end-user quality of service expectations such as E2E latency. This optimization also leads to significant cost savings for network operators, such as: • Automate the DU placement process. This is traditionally a highly skilled and time-consuming manual operation. • Provides network energy savings by optimizing DU placement.

[0013] In one embodiment, a method is described in a first network node (NN) configured to communicate with multiple neural networks (NNs) in a network. The method includes determining one or more distributed units (DUs) to be hosted by at least one NN among the multiple NNs, based at least on a latency target associated with at least each wireless device (WD) among the multiple WDs. Each of the one or more DUs is associated with at least one component carrier (CC) available to at least one WD among the multiple WDs for communication with one or more NNs among the multiple NNs. The one or more DUs are determined using a learning process. The method also includes causing at least one NN among the multiple NNs to host the corresponding DUs based on the determined one or more DUs.

[0014] In some embodiments, the method further includes performing network modeling to determine one or more DUs.

[0015] In some other embodiments, the method further includes performing a modeling of end-to-end latency within the network based on data collected within the network, and one or more DUs are determined based on the end-to-end latency modeling.

[0016] In some embodiments, determining one or more DUs includes determining the DU placement on at least one NN based on carrier aggregation parameters.

[0017] In some other embodiments, determining one or more DUs involves determining a weighted sum of the delays associated with data corresponding to multiple WDs and the number of NNs used to host one or more DUs. The weighted sum is determined for at least one of the multiple component carriers (CCs).

[0018] In some embodiments, determining one or more DUs using a learning process includes one or more of the following: (A) modeling the state as delay satisfaction of one or more users associated with a plurality of WDs; (B) determining an action associated with the learning process, wherein the action is the arrangement of one or more DUs in at least one NN for at least one NN to host one or more DUs, and the arrangement is for the corresponding CC; and (C) determining a reward associated with the learning process, wherein the reward is a weighted sum of the delay and the number of NNs used to host one or more DUs for the plurality of CCs.

[0019] In some other embodiments, one or more DUs are further determined based on one or more constraints, which are based on the computational capacity of multiple NNs, the bandwidth capacity of one or more midhaul links, one or more inter-DU links, and one or more fronthaul links, and a delay target.

[0020] In some embodiments, determining one or more DUs using a learning process involves applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DUs that should be hosted by at least one NN while satisfying the delay target of each WD.

[0021] In some other embodiments, the method further includes one or more of the following: (A) receiving a set of data corresponding to a plurality of WDs; (B) hosting at least one DU from one or more DUs corresponding to a first activated CC of at least one CC; (C) transmitting and receiving signaling associated with a first subset of the set of data in order to communicate with at least one WD via an access network node using the first activated CC; and (D) forwarding a second subset of data from the set of data to at least one other DU from one or more DUs, the at least one other DU corresponding to a second activated CC of at least one CC, the second activated CC being different from the first activated CC.

[0022] In some embodiments, one or more DUs are one or more DU network functions.

[0023] In another embodiment, a first network node (NN) is configured to communicate with multiple NNs in the network. The first network node is configured to determine one or more distributed units (DUs) to be hosted by at least one of the multiple NNs, based on a delay target associated with each of the at least multiple wireless devices (WDs). Each of the one or more DUs is associated with at least one component carrier (CC) available to at least one of the multiple WDs for communication with one or more NNs. The one or more DUs are determined using a learning process. Based on the determined one or more DUs, the first NN is configured to have at least one of the multiple NNs host the corresponding DUs.

[0024] In some embodiments, the first NN is further configured to perform network modeling to determine one or more DUs.

[0025] In some other embodiments, the first NN is further configured to perform network end - to - end delay modeling based on data collected within the network, and one or more DUs are determined based on the end - to - end delay modeling.

[0026] In some embodiments, determining one or more DUs includes determining the DU placement on at least one NN based on carrier aggregation parameters.

[0027] In some other embodiments, determining one or more DUs includes determining a weighted sum of the delay associated with data corresponding to a plurality of WDs and the number of NNs used to host one or more DUs. The weighted sum is determined for at least one CC among a plurality of component carriers (CCs).

[0028] In some embodiments, determining one or more DUs using a learning process includes one or more of: (A) modeling the state as the delay satisfaction of one or more users associated with a plurality of WDs; (B) determining an action associated with the learning process, where the action is the placement of one or more DUs in at least one NN for at least one NN to host one or more DUs, and the placement is for the corresponding CC; (C) determining a reward associated with the learning process, where the reward is a weighted sum of the delay and the number of NNs used to host one or more DUs for a plurality of CCs.

[0029] In some other embodiments, one or more DUs are further determined based on one or more constraints, which are based on the computational capacity of multiple NNs, the bandwidth capacity of one or more midhaul links, one or more inter-DU links, and one or more fronthaul links, and a delay target.

[0030] In some embodiments, determining one or more DUs using a learning process involves applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DUs that should be hosted by at least one NN while satisfying the delay target of each WD.

[0031] In some other embodiments, the first network node is configured to (A) receive a set of data corresponding to a plurality of WDs, (B) host at least one DU of one or more DUs corresponding to a first activated CC of at least one CC, (C) transmit and receive signaling associated with a first subset of the set of data in order to communicate with at least one WD via an access network node using the first activated CC, and (D) forward a second subset of data from the set of data to at least one other DU of one or more DUs, the at least one other DU corresponding to a second activated CC of at least one CC, the second activated CC being different from the first activated CC.

[0032] In some embodiments, one or more DUs are one or more DU network functions.

[0033] When considered in conjunction with the attached drawings, a more complete understanding of these embodiments, as well as their associated advantages and features, will be more readily apparent by referring to the following detailed description. [Brief explanation of the drawing]

[0034] [Figure 1] This diagram shows the O-RAN system, including RU, DU, and CU. [Figure 2] This is a schematic diagram of an exemplary network architecture illustrating a communication system connected to a host computer via an intermediate network, based on the principles described herein. [Figure 3] This is a block diagram of a host computer communicating with a wireless device via a network node, at least partially by a wireless connection, according to some embodiments of the present disclosure. [Figure 4] This flowchart illustrates an exemplary method implemented in a communication system including a host computer, a network node, and a wireless device for running a client application on a wireless device, according to some embodiments of the present disclosure. [Figure 5] This flowchart illustrates an exemplary method implemented in a communication system including a host computer, a network node, and a wireless device for receiving user data in a wireless device, according to some embodiments of the present disclosure. [Figure 6] This flowchart illustrates an exemplary method implemented in a communication system including a host computer, a network node, and a wireless device for receiving user data from a wireless device on a host computer, according to some embodiments of the present disclosure. [Figure 7] This flowchart illustrates an exemplary method implemented in a communication system including a host computer, a network node, and a wireless device for receiving user data on a host computer, according to some embodiments of the present disclosure. [Figure 8] This block diagram shows an exemplary virtualization environment according to some embodiments of the present disclosure. [Figure 9] This is a flowchart of an exemplary process in a network node according to some embodiments of the present disclosure. [Figure 10] This is a flowchart of an exemplary process in a network node according to some embodiments of the present disclosure. [Figure 11] This figure shows an exemplary network having a CA including a CU, a plurality of DUs, and / or a plurality of WDs, according to some embodiments of the present disclosure. [Figure 12] This disclosure presents exemplary service management and orchestration (SMO) frameworks in several embodiments. [Modes for carrying out the invention]

[0035] Before describing exemplary embodiments in detail, it should be noted that the embodiments primarily relate to combinations of device components and processing steps associated with network function deployment involving carrier aggregation in a cloud network using machine learning processes. Therefore, components are represented in the drawings by conventional reference numerals where appropriate, and only specific details relevant to understanding the embodiments are shown, along with details readily apparent to those skilled in the art who have an interest in the description herein, so as not to obscure this disclosure. Throughout the description, similar numbers refer to similar elements.

[0036] As used herein, relational terms such as “first” and “second,” “upper” and “lower” may be used solely to distinguish one entity or element from another, and do not necessarily require or imply any physical or logical relationship or order between such entities or elements. The terms used herein are intended solely to describe specific embodiments and are not intended to limit the concepts described herein. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural form unless the context explicitly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and / or “including,” when used herein, specify the presence of the described feature, integer, step, action, element, and / or component, but do not exclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and / or groups thereof.

[0037] In embodiments described herein, concordant terms such as “communicating with” may be used to indicate telecommunications or data communications that can be achieved, for example, by physical contact, induction, electromagnetic radiation, radio signaling, infrared signaling, or optical signaling. Those skilled in the art will understand that multiple components may be interoperable and that modifications and variations are possible to achieve telecommunications and data communications.

[0038] In some embodiments described herein, terms such as “coupled” and “connected” may be used herein to indicate a connection, though not necessarily directly, and may include wired and / or wireless connections.

[0039] As used herein, the term “network node” includes base station (BS), radio base station, base station transceiver station (BTS), base station controller (BSC), radio network controller (RNC), g-node B (gNB), evolved node B (eNB or e-node B), node B, and MSR. Network nodes can be any type of network node present in a wireless network, and may further comprise any of the following: multi-standard radio (MSR) radio nodes such as BS, multi-cell / multicast cooperative entities (MCEs), radio access backhaul integrated transmission (IAB) nodes, relay nodes, donor nodes controlling relays, radio access points (APs), transmit points, transmit nodes, remote radio units (RRUs), remote radio heads (RRHs), core network nodes (e.g., mobile management entities (MMEs), self-organizing network (SON) nodes, cooperative nodes, positioning nodes, MDT nodes, etc.), external nodes (e.g., third-party nodes, nodes outside the current network), nodes in distributed antenna systems (DAS), spectrum access system (SAS) nodes, element management systems (EMS), cloud nodes (e.g., O-Cloud nodes), CUs, DUs, RUs, etc. Network nodes may also comprise test equipment. The term “radio node” as used herein may also be used to refer to wireless devices (WDs) or wireless network nodes, etc.

[0040] In some embodiments, the non-limiting terms wireless device (WD) or user equipment (UE) are used interchangeably. A WD as used herein can be any type of wireless device capable of communicating with a network node or another WD via radio signals, such as a wireless device (WD). A WD may also be a wireless communication device, a target device, a device-to-device (D2D) WD, a machine-type WD or a machine-to-machine communication (M2M) capable WD, a low-cost and / or low-complexity WD, a sensor equipped with a WD, a tablet, a mobile terminal, a smartphone, a laptop embedded equipped (LEE), a laptop-mounted equipment (LME), a USB dongle, customer premises equipment (CPE), an Internet of Things (IoT) device, or a narrowband IoT (NB-IoT) device.

[0041] Furthermore, in some embodiments, the general term “wireless network node” is used. It can be any type of wireless network node that may comprise any of the following: base station, wireless base station, base station transceiver station, base station controller, network controller, RNC, evolved node B (eNB), node B, gNB, multicell / multicast cooperative entity (MCE), IAB node, relay node, access point, wireless access point, remote radio unit (RRU), or remote radio head (RRH).

[0042] It should be further noted that the functions described herein as being performed by wireless devices or network nodes may be distributed across multiple wireless devices and / or network nodes. In other words, the functions of network nodes and wireless devices described herein are not limited to being performed by a single physical device, but are actually intended to be distributed across several physical devices.

[0043] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meaning as those generally understood by those skilled in the art to which this disclosure belongs. Terms used herein should be construed to have meanings consistent with their meanings in the context of this specification and related art, and it will be further understood that they should not be construed in an idealized or overly formal sense unless expressly provided herein.

[0044] Referring here to drawings where similar elements are referred to by similar reference numerals, Figure 2 shows a schematic diagram of a communication system 10 according to one embodiment, such as an O-RAN type cellular network, the communication system 10 includes an access network 12, such as a wireless access network, and a core network 14. The access network 12 comprises a plurality of network nodes 16a, 16b, 16c (collectively referred to as network nodes 16), such as wireless access points, each defining a corresponding coverage area 18a, 18b, 18c (collectively referred to as coverage area 18). Coverage area 18 may refer to a cell established by network nodes 16. Thus, a cell may form a coverage area 18. Thus, cell 18 is used interchangeably with coverage area 18 in this specification. Each network node 16a, 16b, 16c is connectable to the core network 14 (and / or any other network node 14, such as network node 14d) via a wired or wireless connection 20. A first wireless device (WD) 22a located within coverage area 18a is configured to wirelessly connect to a corresponding network node 16a or to be paged by the corresponding network node 16a. A second WD 22b located within coverage area 18b is capable of wirelessly connecting to a corresponding network node 16b. Although multiple WDs 22a, 22b (collectively referred to as wireless device 22) are shown in this example, the disclosed embodiments are equally applicable to situations where only one WD is located within a coverage area or where only one WD is connected to a corresponding network node 16. While only two WDs 22 and three network nodes 16 are shown for convenience, it should be noted that the communication system may include more WDs 22 and network nodes 16.

[0045] The communication system 10 is referred to as an O-RAN type cellular network, but this disclosure is not limited to that and may include any cellular network, such as a Third Generation Partnership Project (3GPP) cellular network. 3GPP develops and continues to develop standards for Fourth Generation (4G) (also known as Long-Term Evolution: LTE) and Fifth Generation (5G) (also known as New Radio: NR) wireless communication systems. 3GPP also develops standards for Sixth Generation (6G) wireless communication networks. In other words, the communication system 10 may be a 3GPP type cellular network that can support standards such as LTE and / or NR (5G) and / or 6G. Other wireless systems, including but not limited to Wide Band Code Division Multiple Access (WCDMA), Worldwide Interoperability for Microwave Access (WiMAX), Ultra Mobile Broadband (UMB), and Global System for Mobile Communications (GSM), may also benefit from leveraging the ideas covered within this disclosure.

[0046] Furthermore, it is intended that the WD22 can communicate simultaneously with two or more network nodes 16 and two or more types of network nodes 16, and / or be configured to communicate separately. For example, the WD22 may have dual connectivity with a network node 16 that supports LTE and the same or different network nodes 16 that support NR. As an example, the WD22 may communicate with an eNB for LTE / E-UTRAN and a gNB for NR / NG-RAN.

[0047] The communication system 10 may be connected to a host computer 24, which may be embodied in the hardware and / or software of a standalone server, a cloud implementation server, a distributed server, or as a processing resource within a server farm. The host computer 24 may be owned or under the control of a service provider, or may be operated by or on behalf of a service provider. The connections 26, 28 between the communication system 10 and the host computer 24 may extend directly from the core network 14 to the host computer 24, or may extend via an optional intermediate network 30. The intermediate network 30 may be one of a public network, a private network, or a hosted network, or a combination of two or more of these. The intermediate network 30 may be a backbone network or the internet, if any. In some embodiments, the intermediate network 30 may include two or more subnets (not shown). The access network 12, the core network 14, and the intermediate network 30 may be at least partially cloud networks.

[0048] The communication system in Figure 2, as a whole, enables a connection between one of the connected WD22a, 22b and the host computer 24. The connectivity can be described as an over-the-top (OTT) connection. The host computer 24 and the connected WD22a, 22b are configured to communicate data and / or signaling over the OTT connection, using the access network 12, the core network 14, an optional intermediate network 30, and possibly further infrastructure (not shown) as intermediaries. The OTT connection can be transparent in the sense that at least some of the participating communication devices through which the OTT connection passes are unaware of the routing of uplink and downlink communications. For example, network node 16 may not be, and does not need to be, aware of the past routing of incoming downlink communications with data originating from host computer 24 that are forwarded (e.g., handed over) to the connected WD22a. Similarly, network node 16 does not need to be aware of the future routing of outgoing uplink communications originating from WD22a to host computer 24.

[0049] Network node 16 is configured to include any step and / or task and / or process and / or method and / or function described in this disclosure, for example, an NN management unit 32 configured to perform an NN function. Wireless device 22 is configured to include any step and / or task and / or process and / or method and / or feature described in this disclosure, for example, a WD management unit 34 configured to perform a WD function.

[0050] Next, an exemplary implementation of the WD22, network node 16, and host computer 24 discussed in the previous paragraph, according to one embodiment, will be described with reference to Figure 2. In the communication system 10, the host computer 24 includes hardware (HW) 38, including a communication interface 40 configured to set up and maintain wired or wireless connections to the interfaces of different communication devices of the communication system 10. The host computer 24 further includes a processing circuit 42 which may have storage and / or processing capabilities. The processing circuit 42 may include a processor 44 and memory 46. In particular, in addition to or instead of a processor and memory such as a central processing unit, the processing circuit 42 may include integrated circuits for processing and / or control, such as one or more processors and / or processor cores and / or FPGAs (Field Programmable Gate Arrays: FPGAs) and / or ASICs (Application Specific Integrated Circuitry: ASICs) adapted to execute instructions. The processor 44 may be configured to access memory 46 (for example, to write to memory 46 and / or read from memory 46), and memory 46 may comprise any kind of volatile and / or non-volatile memory, such as cache and / or buffer memory and / or RAM (Random Access Memory: RAM) and / or ROM (Read-Only Memory: ROM) and / or optical memory and / or EPROM (Erasable Programmable Read-Only Memory: EPROM).

[0051] The processing circuit 42 may be configured to control any of the methods and / or processes described herein, and / or to cause such methods and / or processes to be executed, for example, by the host computer 24. The processor 44 corresponds to one or more processors 44 for performing the functions of the host computer 24 described herein. The host computer 24 includes memory 46 configured to store data, program software code, and / or other information described herein. In some embodiments, the software 48 and / or host application 50 may include instructions that, when executed by the processor 44 and / or processing circuit 42, cause the processor 44 and / or processing circuit 42 to execute the processes described herein with respect to the host computer 24. The instructions may be software associated with the host computer 24.

[0052] Software 48 may be executable by processing circuit 42. Software 48 includes a host application 50. The host application 50 may be operable to provide services to remote users, such as WD22, that connect via an OTT connection 52 terminating at the WD22 and host computer 24. When providing services to remote users, the host application 50 may provide user data transmitted using the OTT connection 52. "User data" may be data and information described herein as implementing the described functions. In one embodiment, the host computer 24 may be configured to provide control and functionality to a service provider and may be operated by or on behalf of the service provider. The processing circuit 42 of the host computer 24 may enable the host computer 24 to observe, monitor, control, transmit to, and / or receive from network nodes 16 and / or wireless devices 22. The processing circuitry 42 of the host computer 24 may include a host management unit 54 configured to enable the service provider to observe, monitor, and control the network node 16 and / or wireless device 22, to transmit to the network node 16 and / or wireless device 22, and / or to receive from the network node 16 and / or wireless device 22.

[0053] The communication system 10 further includes a network node 16 which includes hardware 58 located within the communication system 10 and enabling communication with the host computer 24 and the WD 22. The hardware 58 may include a communication interface 60 for setting up and maintaining wired or wireless connections with the interfaces of different communication devices of the communication system 10, and a radio interface 62 for setting up and maintaining at least a wireless connection 64 with the WD 22 located within the coverage area 18 served by the network node 16. The radio interface 62 may be formed, or include, for example, one or more RF transmitters, one or more RF receivers, and / or one or more RF transceivers. The communication interface 60 may be configured to facilitate a connection 66 to the host computer 24. The connection 66 may be direct or pass through the core network 14 of the communication system 10 and / or one or more intermediate networks 30 outside the communication system 10.

[0054] In the illustrated embodiment, the hardware 58 of the network node 16 further includes a processing circuit 68. The processing circuit 68 may include a processor 70 and memory 72. In particular, in addition to, or instead of, a processor such as a central processing unit and memory, the processing circuit 68 may include, for example, an integrated circuit that processes and / or controls one or more processors and / or processor cores and / or FPGAs (field-programmable gate arrays) and / or ASICs (application-specific integrated circuits) adapted to execute instructions. The processor 70 may be configured to access memory 72 (e.g., write to memory 72 and / or read from memory 72), and memory 72 may comprise any kind of volatile and / or non-volatile memory, such as cache and / or buffer memory and / or RAM (random access memory) and / or ROM (read-only memory) and / or optical memory and / or EPROM (erasable programmable read-only memory).

[0055] Therefore, the network node 16 further has software 74 stored in external memory (e.g., a database, storage array, network storage device, etc.) that is stored internally in memory 72 or accessible by the network node 16 via an external connection. The software 74 may include one or more software applications, such as software applications associated with and / or compliant with the O-RAN specification. In some embodiments, the software application may be at least one rApp. The term rApp may refer to a software application configured to run on a Non-Real Time RAN Intelligent Controller (Non-RT RIC) (e.g., processing circuit 68 and / or processor 70) to perform different functions such as RAN management and optimization. The software 74 may also include services configured to enable, and / or provide, and / or run the functions of software applications such as rApps. The software 74 may also include a framework, such as a collection of reusable software components that may be available for developing and running software applications. An example of a framework is a Non-RT RIC framework.

[0056] The software 74 may be executable by the processing circuit 68. The processing circuit 68 may be configured to control any of the methods and / or processes described herein, and / or to cause such methods and / or processes to be executed, for example, by the network node 16. The processor 70 corresponds to one or more processors 70 for performing the functions of the network node 16 as described herein. The memory 72 is configured to store data, program software code, and / or other information described herein. In some embodiments, the software 74, when executed by the processor 70 and / or the processing circuit 68, may include instructions that cause the processor 70 and / or the processing circuit 68 to perform the processes described herein with respect to the network node 16. For example, the processing circuit 68 of the network node 16 may include any step and / or task and / or process and / or method and / or feature described herein, for example, an NN management unit 32 configured to perform an NN function. Furthermore, the processing circuit 68 of the network node 16 may include CU 100, DU 102, and / or RU 104. CU100 may be configured to perform centralized unit functions, DU102 may be configured to perform distributed unit functions including distributed unit network functions, and RU104 may be configured to perform radio unit functions such as O-RAN and / or 3GPP networks. DU102 may be referred to as the DU network function (DU NF), for example, DU102 is a DU NF, performing and / or including a network function (DU NF).

[0057] The communication system 10 further includes the WD22 already mentioned. The WD22 may have hardware 80 which may include a radio interface 82 configured to set up and maintain a wireless connection 64 with a network node 16 serving the coverage area 18 in which the WD22 is currently located. The radio interface 82 may be formed as, for example, one or more RF transmitters, one or more RF receivers, and / or one or more RF transceivers, or may include them.

[0058] The WD22 hardware 80 further includes a processing circuit 84. The processing circuit 84 may include a processor 86 and memory 88. In particular, in addition to or instead of a processor and memory such as a central processing unit, the processing circuit 84 may include integrated circuits for processing and / or control, such as one or more processors and / or processor cores and / or FPGAs (field-programmable gate arrays) and / or ASICs (application-specific integrated circuits) adapted to execute instructions. The processor 86 may be configured to access memory 88 (e.g., write to memory 88 and / or read from memory 88), and memory 88 may comprise any kind of volatile and / or non-volatile memory, such as cache and / or buffer memory and / or RAM (random access memory) and / or ROM (read-only memory) and / or optical memory and / or EPROM (erasable programmable read-only memory).

[0059] Therefore, the WD22 may further include software 90, which may be stored, for example, in the WD22's memory 88 or in external memory accessible by the WD22 (e.g., a database, storage array, network storage device, etc.). The software 90 may be executable by the processing circuit 84. The software 90 may include a client application 92. The client application 92 may be able to operate to provide services to human or non-human users via the WD22 with the support of the host computer 24. On the host computer 24, a running host application 50 may communicate with the running client application 92 via an OTT connection 52 that terminates at the WD22 and the host computer 24. When providing services to a user, the client application 92 may receive request data from the host application 50 and provide user data in response to the request data. The OTT connection 52 may transfer both the request data and the user data. The client application 92 may interact with the user and generate the user data it provides.

[0060] Processing circuit 84 may be configured to control any of the methods and / or processes described herein, and / or to cause such methods and / or processes to be performed, for example, by WD22. Processor 86 corresponds to one or more processors 86 for performing the functions of WD22 described herein. WD22 includes memory 88 configured to store data, program software code, and / or other information described herein. In some embodiments, software 90 and / or client application 92 may, when executed by processor 86 and / or processing circuit 84, include instructions causing processor 86 and / or processing circuit 84 to perform the processes described herein with respect to WD22. For example, processing circuit 84 of wireless device 22 may include any step and / or task and / or process and / or method and / or feature described herein, for example, a WD management unit 34 configured to perform WD functions. In some embodiments, the internal operation of network node 16, WD22, and host computer 24 may be as shown in Figure 3, and separately, the surrounding network topology may be as shown in Figure 2.

[0061] In Figure 3, the OTT connection 52 is depicted abstractly to illustrate communication between the host computer 24 and the wireless device 22 via the network node 16, and does not explicitly refer to any intermediate devices or the exact routing of messages through these devices. The network infrastructure may determine routing that can be configured to be hidden from WD22, or from the service provider operating the host computer 24, or both. While the OTT connection 52 is active, the network infrastructure may make further decisions to dynamically change routing (for example, based on network load balancing considerations or reconfiguration).

[0062] The wireless connection 64 between WD22 and network node 16 follows the teachings of embodiments described throughout this disclosure. One or more of the various embodiments improve the performance of OTT services provided to WD22 using an OTT connection 52 in which the wireless connection 64 may form the final segment. More precisely, some teachings of these embodiments may improve data rate, latency, and / or power consumption, thereby providing benefits such as reduced user latency, relaxed file size limits, better responsiveness, and extended battery life.

[0063] In some embodiments, measurement procedures may be provided for the purpose of monitoring data rate, latency, and other factors that one or more embodiments improve. Furthermore, there may be optional network functions for reconfiguring the OTT connection 52 between the host computer 24 and the WD22 in response to changes in the measurement results. Measurement procedures and / or network functions for reconfiguring the OTT connection 52 may be implemented in the software 48 of the host computer 24, or in the software 90 of the WD22, or both. In embodiments, sensors (not shown) may be deployed in or in connection with a communication device through which the OTT connection 52 passes, and the sensors may participate in the measurement procedures by supplying values ​​of the monitored quantities exemplified above, or by supplying values ​​of other physical quantities that the software 48, 90 may calculate or estimate the monitored quantities. Reconfiguring the OTT connection 52 may include message format, retransmission settings, preferred routing, etc., and the reconfiguration does not need to affect the network node 16, and may not be known to or recognized by the network node 16. Several such procedures and functions are known in the art and may be implemented. In some embodiments, the measurements may involve dedicated WD signaling to facilitate measurements of the host computer 24, such as throughput, propagation time, and latency. In some embodiments, the measurements may be carried out by having software 48, 90 send messages, particularly empty or "dummy" messages, using an OTT connection 52 while monitoring propagation time, errors, etc.

[0064] Accordingly, in some embodiments, the host computer 24 includes a processing circuit 42 configured to provide user data and a communication interface 40 configured to transfer the user data to the cellular network for transmission to the WD22. In some embodiments, the cellular network also includes a network node 16 having a radio interface 62. In some embodiments, the network node 16 is configured and / or the processing circuit 68 of the network node 16 is configured to perform the functions and / or methods described herein for preparing / starting / maintaining / supporting / terminating transmissions to the WD22 and / or for preparing / terminating / maintaining / supporting / terminating transmissions from the WD22.

[0065] In some embodiments, the host computer 24 includes a processing circuit 42 and a communication interface 40, the communication interface 40 being configured to receive user data originating from transmissions from the WD 22 to the network node 16. In some embodiments, the WD 22 is configured to include a radio interface 82 and / or processing circuit 84 configured to perform the functions and / or methods described herein for preparing / starting / maintaining / supporting / terminating transmissions to the network node 16 and / or preparing / terminating / maintaining / supporting / terminating transmissions from the network node 16.

[0066] Figures 2 and 3 show various "units," such as the NN management unit 32 and the WD management unit 34, as being located within their respective processors, but these units are intended to be implemented such that parts of the units are stored in corresponding memories within the processing circuit. In other words, the units can be implemented within the processing circuit, in hardware, or as a combination of hardware and software.

[0067] Figure 4 is a flowchart illustrating an exemplary method implemented in a communication system, such as the communication system in Figures 2 and 3, according to one embodiment. The communication system may include a host computer 24, a network node 16, and a WD22, which may be described with reference to Figure 3. In a first step of the method, the host computer 24 provides user data (block S100). In an optional substep of the first step, the host computer 24 provides user data by running a host application, such as host application 50 (block S102). In a second step, the host computer 24 initiates a transmission to carry the user data to the WD22 (block S104). In an optional third step, the network node 16 transmits the user data carried in the transmission initiated by the host computer 24 to the WD22, in accordance with the teachings of the embodiments described throughout this disclosure (block S106). In the optional fourth step, WD22 runs a client application, such as client application 92, associated with the host application 50 run by the host computer 24 (block S108).

[0068] Figure 5 is a flowchart illustrating an exemplary method implemented in a communication system, such as the communication system in Figure 2, according to one embodiment. The communication system may include a host computer 24, a network node 16, and a WD 22, which may be described with reference to Figures 2 and 3. In a first step of the method, the host computer 24 provides user data (block S110). In an optional substep (not shown), the host computer 24 provides user data by running a host application, such as host application 50. In a second step, the host computer 24 initiates a transmission that carries the user data to the WD 22 (block S112). The transmission may pass through the network node 16, as taught in the embodiments described throughout this disclosure. In an optional third step, the WD 22 receives the user data carried in the transmission (block S114).

[0069] Figure 6 is a flowchart illustrating an exemplary method implemented in a communication system, such as the communication system in Figure 2, according to one embodiment. The communication system may include a host computer 24, a network node 16, and a WD 22, which may be described with reference to Figures 2 and 3. In an optional first step of the method, the WD 22 receives input data provided by the host computer 24 (block S116). In an optional substep of the first step, the WD 22 runs a client application 92, which provides user data in response to the received input data provided by the host computer 24 (block S118). In an optional second step, either additionally or alternatively, the WD 22 provides user data (block S120). In an optional substep of the second step, the WD provides user data by running a client application, such as the client application 92 (block S122). When providing user data, the runnable client application 92 may further consider user input received from the user. Regardless of the specific method by which the user data is provided, WD22 may, in an optional third substep, initiate transmission of the user data to the host computer 24 (block S124). In a fourth step of the method, the host computer 24 receives the user data transmitted from WD22 in accordance with the teachings of the embodiments described throughout this disclosure (block S126).

[0070] Figure 7 is a flowchart illustrating an exemplary method implemented in a communication system, such as the communication system in Figure 2, according to one embodiment. The communication system may include a host computer 24, a network node 16, and a WD22, which may be described with reference to Figures 2 and 3. In an optional first step of the method, the network node 16 receives user data from the WD22 (block S128), in accordance with the teachings of the embodiments described throughout this disclosure. In an optional second step, the network node 16 initiates a transmission of the received user data to the host computer 24 (block S130). In a third step, the host computer 24 receives the user data carried in the transmission initiated by the network node 16 (block S132).

[0071] Figure 8 is a block diagram showing a virtualization environment 200 in which functions implemented by several embodiments may be virtualized. In this context, virtualization means creating a virtual version of a device or apparatus, which may include virtualizing hardware platforms, storage devices, and networking resources. The virtualization used herein may apply to any device or its components described herein 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 run by one or more virtual machines (VMs) implemented within one or more virtualization environments 200, which are hosted by one or more hardware nodes, such as network nodes, WDs, core network nodes, or hardware computing devices acting as hosts. Furthermore, in embodiments in which the virtual nodes do not require wireless connectivity (e.g., core network nodes or hosts), the nodes may be fully virtualized.

[0072] Application 202 (which may alternatively be referred to as a software instance, virtual appliance, network function, virtual node, virtual network function, etc.) runs in the virtualized environment 200 to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein.

[0073] Hardware 204 includes processing circuits, memory for storing software and / or instructions executable by the hardware processing circuits, and / or other hardware devices described herein, such as network interfaces and input / output interfaces. The software is executed by the processing circuits to instantiate one or more virtualization layers 206 (also called hypervisors or virtual machine monitors (VMMs)), providing VM208a and 208b (one or more of which are commonly referred to as VM208), and / or may implement any of the functions, features, and / or benefits described with respect to some embodiments described herein. The virtualization layer 206 can present a virtual operating platform that appears to the VM as networking hardware.

[0074] VM208 may feature virtual processing, virtual memory, virtual networking or interfaces, and virtual storage, and may be run by the corresponding virtualization layer 206. Different embodiments of instances of the virtual appliance 202 may be implemented in one or more of the VM208s, and the implementation may be carried out in different ways. Hardware virtualization is referred to in some contexts as network function virtualization (NFV). NFV may be used to consolidate many types of network equipment onto industry-standard high-volume server hardware, physical switches, and physical storage, which may be located in data centers and customer premises equipment.

[0075] In the context of NFV, a VM208 can be a software implementation of a physical machine that runs the program as if it were running on a physical, non-virtualized machine. Each VM208 and its portion of the hardware 204 on which it runs, whether that hardware is dedicated to that VM and / or shared by that VM with other VMs in the VM, form a separate virtual network element. Furthermore, in the context of NFV, the virtual network function is responsible for handling specific network functions that run within one or more VM208s on the hardware 204, corresponding to the application 202.

[0076] Hardware 204 may be implemented in a standalone network node with general or specific components. Hardware 204 may implement several functions through virtualization. Alternatively, hardware 204 may be part of a larger cluster of hardware (e.g., within a data center or CPE) where many hardware nodes cooperate and are managed via management and orchestration 210, which oversees, among other things, the lifecycle management of application 202. In some embodiments, hardware 204 is coupled to one or more radio units, each including one or more transmitters and one or more receivers, which may be coupled to one or more antennas. The radio units may communicate directly with other hardware nodes via one or more suitable network interfaces and may be used in combination with virtual components to provide a virtual node with radio capabilities, such as a radio access node or base station. In some embodiments, some signaling may be provided using a control system 212, which may be used alternatively for communication between hardware nodes and radio units.

[0077] Figure 9 is a flowchart of an exemplary process in network node 16. One or more blocks described herein may be executed by one or more elements of network node 16, such as processing circuitry 68 (including NN management unit 32), processor 70, radio interface 62, and / or communication interface 60. Network node 16, via processing circuit 68 and / or processor 70 and / or wireless interface 62 and / or communication interface 60, etc., is configured to determine multiple distributed unit network functions (DU NFs) (i.e., DU 102) to be hosted by a group of multiple NN16s based on the latency target of each wireless device (WD) 22 among multiple WDs 22 (block S134), each DU NF is associated with at least one component carrier available by at least one WD 22, and the multiple DU NFs are determined using a learning process, and network node 16 is configured to trigger each NN16 among the group of NN16s to host the corresponding DU NF of the multiple DU NFs (block S136).

[0078] In some embodiments, the method further includes performing network modeling to determine multiple DU NFs and performing end-to-end delay modeling within the network based on data collected within the network. In one or more embodiments, end-to-end delay refers to the time elapsed from the transmission of a packet or signaling from one component of system 10 to the reception (and / or processing) of the packet or signaling by another component. For example, end-to-end delay may be the time elapsed between the transmission of a signal by CU100 (or DU102) and the reception of the signal by WD22. Similarly, end-to-end delay may be the time elapsed between the transmission of a signal by WD22 and the reception of the signal by CU100 (or DU102). Furthermore, end-to-end delay may refer to the time elapsed from the transmission of a packet or signaling from one segment of the network to its reception by another segment of the network.

[0079] In some other embodiments, determining a plurality of DU102s includes determining the WD-centered DU NF arrangement based on carrier aggregation parameters and performing a weighted sum of the delay and the number of NN16s used to host the DU NFs of the plurality of component carriers.

[0080] In some embodiments, determining multiple DU NFs using a learning process includes one or more of the following: modeling the state as user latency satisfaction; determining an action, where the action is the placement of at least one DU NF for at least one component carrier in the network; and determining a reward. The reward is a weighted sum of latency and the number of NNs used to host the DU NFs for the multiple component carriers, and satisfaction with one or more constraints. The one or more constraints are based on the computational capacity of the multiple NNs, the bandwidth capacity of the midhaul links, inter-DU links, and fronthaul links, and the latency target.

[0081] In some other embodiments, determining multiple DU NFs using a learning process involves applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DU NFs that should be hosted by a group of NN16 while satisfying the delay target of each WD22.

[0082] Figure 10 is a flowchart of an exemplary process in network node 16. One or more blocks described herein may be performed by one or more elements of network node 16, such as processing circuitry 68 (including NN management unit 32), processor 70, radio interface 62, and / or communication interface 60. Network node 16, via processing circuitry 68 and / or processor 70 and / or radio interface 62 and / or communication interface 60, etc., is configured to determine one or more distributed units (DUs) 102 to be hosted by at least one of a plurality of NNs 16, based at least on a delay target associated with each of a plurality of wireless devices (WDs) 22. Each of the one or more DUs 102 is associated with at least one component carrier (CC) 302 available to at least one of a plurality of WDs 22 for communicating with one or more of the plurality of NNs 16. One or more DU102s are determined using the learning process. Based on the determined one or more DU102s, the network node 16 is further configured to have at least one of the multiple NN16s host the corresponding DU102s (block S140).

[0083] In some embodiments, the method further includes performing network modeling to determine one or more DU102s.

[0084] In some other embodiments, the method further includes performing a modeling of end-to-end latency within the network based on data collected within the network, and one or more DU102 are determined based on the end-to-end latency modeling.

[0085] In some embodiments, determining one or more DU102s includes determining the DU placement on at least one NN16 based on carrier aggregation parameters.

[0086] In some other embodiments, determining one or more DU102s involves determining a weighted sum of the delays associated with the data corresponding to multiple WD22s and the number of NN16s used to host one or more DU102s. The weighted sum is determined for at least one of the multiple CC302 component carriers (CC)302.

[0087] In some embodiments, determining one or more DU102 using a learning process includes one or more of the following: (A) modeling the state as delay satisfaction of one or more users associated with a plurality of WD22s; (B) determining an action associated with the learning process, wherein the action is an arrangement of one or more DU102s in at least one NN16 for at least one NN16 to host one or more DU102s, and the arrangement is for the corresponding CC302; and (C) determining a reward associated with the learning process, wherein the reward is a weighted sum of the delay and the number of NN16s used to host one or more DU102s for a plurality of CC302s.

[0088] In some other embodiments, one or more DU102 are further determined based on one or more constraints, which are based on the computing capacity of multiple NN16s, the bandwidth capacity of one or more midhaul links, one or more inter-DU links, and one or more fronthaul links, and a delay target.

[0089] In some embodiments, determining one or more DU102 using a learning process involves applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DU102 that should be hosted by at least one NN16 while satisfying the delay target of each WD22.

[0090] In some other embodiments, the method further includes one or more of the following: (A) receiving a set of data corresponding to a plurality of WD22s; (B) hosting at least one DU102 of one or more DU102s corresponding to a first activated CC302 of at least one CC302; (C) transmitting and receiving signaling associated with a first subset of the set of data in order to communicate with at least one WD22 via an access network node using the first activated CC302; and (D) forwarding a second subset of the data of the set of data to at least one other DU102 of one or more DU102s, the at least one other DU102 corresponding to a second activated CC302 of at least one CC302, which is different from the first activated CC302.

[0091] In some embodiments, one or more DU102 are one or more DU network functions.

[0092] While the general process flow of the configuration of this disclosure has been described and examples of hardware and software configurations for implementing the processes and functions of this disclosure have been provided, the following sections provide details and examples of configurations for network function placement with carrier aggregation in a network (e.g., a cloud network), which may include the use of machine learning processes for determining network function placement. In one or more embodiments, the functions and / or tasks and / or steps described herein may be performed by one or more network nodes 16 and / or one or more WD22.

[0093] Figure 11 shows a system 10 (for example, a 5G network configured for carrier aggregation (CA)) including NN16 (e.g., NN16a-16k), WD22 (e.g., WD22a, 22b, 22c, 22d), CU100 (which may be included in NN16), multiple DU102 (e.g., DU NF), and RU104 (e.g., in NN16a) serving multiple WD22. More specifically, NN16 may include access NN16a, such as a RAN network node, and other network nodes 16, such as an O-Cloud node. Data 300 may be transmitted between components of system 10 or to any other components not included in system 10. Furthermore, multiple component carriers (CCs) 302 may be used for communication with the WD22.

[0094] For example, using CA, each WD22 may have a given set of supported CC302s. Each WD22 has one primary cell 18 (PCell) and several activated secondary cells 18 (SCell). A PCell can always be active for a given WD22. The network function (NF) of each DU102 associated with each CC302 may run on one NN16 (e.g., an O-Cloud node). In this non-limiting example, data 300a, 300b, 300c, and 300d (collectively referred to as data 300) for each WD22 are sent from CU100 to the serving DU102 (e.g., DU NF) for that WD22's PCell. Data 300a, 300b, 300c, and 300d may be referred to as u1, u2, u3, and u4, respectively. In some embodiments, data 300a may correspond to WD22a, data 300b may correspond to WD22b, data 300c may correspond to WD22d, and data 300d may correspond to WD22e. However, the correspondence of data 300 to any WD22 is not limited in this way, and any combination of data 300 may correspond to one or more WD22s. In some embodiments, data 300 may also refer to a data payload.

[0095] Each WD22's PCell may have the role of distributing user data 300 among the DU102s of all activated CC302s of that particular WD22 (e.g., one or more of CC302a, 302b, 302c, 302d, 302e, 302f, etc.). Thus, within a given time interval, inter-DU (IDU) communication exists between a DU102 serving a PCell (e.g., DU NF) and a DU102 serving a SCell for a given user (i.e., WD22) (e.g., DU NF).

[0096] In this non-restrictive example, there are six CC302s and four WD22s. CC302a, 302c (e.g., the first CC and the third CC) are activated for WD22a. CC302b, 302c (e.g., the second CC and the third CC) are activated for WD22b. CC302b, 302e, 302f (e.g., the second CC, the fifth CC, and the sixth CC) are activated for WD22c, and CC302a, 302c, 302d (e.g., the first CC, the third CC, and the fourth CC) are activated for WD22d. CC302a may be assumed to be the PCell for WD22a and WD22d, and CC302b may be assumed to be the PCell for WD22b and WD22c. The data 300 of each WD22 can be received by its PCell and then divided among all activated CC302s.

[0097] In some embodiments, downlink traffic may be considered, and an end-to-end delay from CU100 to each WD22 may be determined. The decision regarding which NN16 (e.g., an O-Cloud node) should be selected to instantiate the NF of DU102 (e.g., DU NF) for CC302 may be made per time duration (TD). In some embodiments, the decision may not change during the TD. The incoming data payloads of WD u (e.g., UE u) in the current duration are sent from CU100 to the NN16 (e.g., a cloud node) serving the DU102 (e.g., DU NF) of WD PCell, and then split among their activated CCs. For example, the data payloads may be data 300a, 300b, 300c, and 300d. The delay from CU100 to each WD22 includes processing, transmission, propagation, queuing, etc. These delays relate to CU100, DU nodes (NN16 hosting DU102, DU NF, etc.), and RU104, as well as MH, IDU, and FH links. In some embodiments, to satisfy the delay objective, the delay for transmitting one data packet from each WD22 must be less than or equal to a predetermined delay threshold or similar objective.

[0098] In some embodiments, considering the latency experienced by WD22 (e.g., a user), latency may increase if all CC's DU102 (e.g., DU NF) are executed within a single NN16. Also, if the DU102 (e.g., DU NF) for CC302 are distributed across different NN16s, IDU latency and the number of processing nodes increase. In some other embodiments, the number of deployed DU102s can be minimized, and latency can be minimized while still meeting the latency targets for each user or WD22.

[0099] In the illustrated example, NN16d receives data 300a, 300b, 300c, and 300d for WD22a, 22b, 22c, and 22d, respectively. Each WD22 has a CC302 activated as described above. NN16d is selected to instantiate, and / or include, and / or run, the functions of DU102d. NN16e is selected to instantiate, and / or include, and / or run, the functions of DU102e. NN16g is selected to instantiate, and / or include, and / or run, the functions of DU102g. NN16j is selected to instantiate, and / or include, and / or run, the functions of DU102j. Each selected DU102 may be configured to communicate with the corresponding WD22, for example, via network node 16a and the corresponding CC302. For example, DU102d may be configured to communicate with WD22a, 22d by using CC302a to send signaling associated with data 300a, 300d to WD22a, 22d (for example, via NN16a). Furthermore, DU102d may be configured to communicate with WD22b, 22c by using CC302b to send signaling associated with data 300b, 300c to WD22b, 22c (for example, via NN16a).

[0100] DU102e can be configured to communicate with WD22a, 22b, and 22d by using CC302c to send signaling associated with data 300a, 300b, and 300d to WD22a, 22b, and 22d (for example, via NN16a). DU102g can be configured to communicate with WD22d by using CC302d to send signaling associated with data 300d to WD22d (for example, via NN16a). DU102j can be configured to communicate with WD22c by using CC302e and 302f to send signaling associated with data 300c to WD22c (for example, via NN16a).

[0101] In other words, a CC302a associated with DU102d can be used to send and / or receive data 300a to and from WD22a and 22d. A CC302b associated with DU102d can be used to send and / or receive data 300b to and from WD22b and 22c. A CC302c associated with DU102e can be used to send and / or receive data 300a, 300b, and 300d to and from WD22a, 22b, and 22d. A CC302d associated with DU102g can be used to send and / or receive data 300d to and from WD22d. A CC302e associated with DU102j can be used to send and / or receive data 300c to and from WD22c. In addition, a CC302j associated with DU102j can be used to send and / or receive data 300c to and from WD22c.

[0102] In one or more embodiments, data 300 associated with CC302 is forwarded to the corresponding DU102. For example, data 300a, 300b, and 300d associated with CC302c may be forwarded by DU102d to DU102e so that DU102e can perform one or more actions associated with CC302c and data 300a, 300b, and 300d (e.g., sending / receiving signaling). Data 300d associated with CC302d may be forwarded by DU102d to DU102g so that DU102g can perform one or more actions associated with CC302d and data 300d (e.g., sending / receiving signaling). Data 300c associated with CC302e and 302f may be forwarded to DU102j by DU102d in order for DU102j to perform one or more actions associated with CC302e, 302f and data 300c (for example, sending / receiving signaling).

[0103] In some embodiments, DU102 may refer to DU NF. In some other embodiments, the selection of DU102 (and / or the corresponding NN16) may be performed by any component of system 10 such as NN16, may be based on optimization variables such as delay targets for one or more WD22, or may be performed using a learning process and / or an artificial intelligence process. In one or more embodiments, the term “host” may refer to performing one or more actions associated with a hosted entity. For example, NN16 may be configured to host DU102 (or DU NF) or an instance of DU102. Thus, NN16 may perform one or more DU functions by hosting DU102, or be configured to have the hosted DU102 perform them. In addition, NN16 may, by hosting DU102, execute software, for example, through a hardware component, to perform DU functions. In some embodiments, having NN16 host a DU may include having NN16 instantiate or deploy the DU.

[0104] In some embodiments, the optimization variables may include the optimal placement of DU102 (e.g., DU NF) for each CC. Furthermore, a weighted summation method may be used to solve this multi-objective problem (delay and the number of placed DUs). This potentially nonlinear problem can be solved by using a Deep Reinforcement Learning (DRL) algorithm or any other artificial intelligence process and / or machine learning process.

[0105] In some other embodiments, the DLR algorithm may use one or more agents configured to receive one or more states (of the system) and / or perform one or more actions that generate one or more rewards based on one or more states. In some embodiments, the DRL method may be used to determine the DU NF placement for each CC. In each iteration, the DU placement, wireless channel, and user traffic for the CC cause environmental changes, and the DRL agent receives a reward. An objective function may be used to determine the reward. In the DRL algorithm, the problem may be modeled as a Markov Decision Process (MDP). The MDP method may include one or more of the following: The state is modeled as user latency satisfaction associated with WD22. The action is the deployment of DU102 (e.g., DU NF) for CC within a network (e.g., a cloud network). The reward is a weighted sum of the latency, the number of NN16s used and consumed by DU102 (e.g., cloud nodes), and the satisfaction of one or more constraints. The constraints may depend on the computational capacity of the NN16s (e.g., cloud nodes), the bandwidth capability of the link (MH, IDU, FH), and the WD latency target / threshold.

[0106] In some embodiments, the optimal solution to the described delay problem can be determined by using a DQN-based ML algorithm. Specifically, the following formulation is defined as part of the problem definition. In formula TIFF2026515752000002.tif11170, O(t) represents the number of DU102 (e.g., DU NF) placed at the current time t. The filename is TIFF2026515752000003.tif9170.

[0107] The constraints may ensure that the total computing resources in the CU, RU, and DU n are lower than the maximum resources. In addition, the constraints may ensure that the bandwidth requirements of the MH, IDU, and FH links are supported. Figure 12 shows an exemplary service management and orchestration (SMO) framework. The SMO framework may include a non-RT RIC (i.e., processing circuits 68 and / or processors 70 of the network node 16) and software 74 which may include one or more rApps, services enabling the rApps, and / or a non-RT RIC framework. The rApps may communicate with the services, for example, via interface R1 (which may be included in the communication interface 60). Furthermore, other interfaces may include O2, O1, and Open FH M-plane A1, any of which may perform one or more functions corresponding to the communication interface 60.

[0108] In some embodiments, the functions and / or tasks and / or processes and / or steps described herein are performed by one or more rApps, for example, included in the network node 16.

[0109] One or more embodiments are applicable to cloud networks. In some embodiments, to obtain complete optimization of the DU NF deployment, the DU NF may be instantiated on any possible NN16 (e.g., a cloud node) and is not limited to (or excluded from) the NN16 that provides wireless communication to the WD22. Thus, although Figure 3 shows an NN16 communicating with the WD22, such an example is provided for the sake of clarity.

[0110] Implementation forms are not limited to those shown in the diagrams of this disclosure. Furthermore, the embodiments of this disclosure are not limited to network types such as cloud networks, and may be applicable to any network, including those compliant with the O-RAN O-Cloud specification, cloud networks supported by 3GPP, or those provided by cloud providers such as Microsoft Azure, Google, Apple, and Amazon Web Services.

[0111] The following is a non-limiting list of exemplary embodiments.

[0112] Embodiment A1. A first network node (NN) 16 is configured to include a communication interface 60 and / or a processing circuit 68, and the communication interface 60 and / or the processing circuit 68, Multiple distributed units (DU NFs) to be hosted by a group of NN16s from among multiple NN16s are determined based on the latency target of each wireless device (WD)22 from among multiple WD22s, each DU NF is associated with at least one component carrier available to at least one WD22, and the multiple DU NFs are configured to be determined using a learning process. A first network node 16 configured to communicate with multiple NN16s in the network, which are configured to trigger each NN16 in a group of NN16s in order to host the corresponding DU NFs of multiple DU NFs.

[0113] Embodiment A2. The first NN16 is Perform network modeling, A first network node in Embodiment A1 is further configured to perform end-to-end latency modeling within the network based on data collected within the network in order to determine multiple DU NFs.

[0114] Embodiment A3. Determining multiple DUs, Determining the WD-centered DU NF placement based on carrier aggregation parameters, Performing a weighted sum of the delay and the number of NN16s used to host the DU NF for multiple component carriers. A first network node, which includes one of embodiments A1 and A2.

[0115] Embodiment A4. Determining multiple DU NFs using a learning process, Modeling the state as user latency satisfaction, Determining an action, wherein the action is the placement of at least one DU NF for at least one component carrier in the network, A first network node in any one of embodiments A1 to A3, which determines a reward, wherein the reward is a weighted sum of delay and the number of NN16s used to host the DU NF for multiple component carriers and the satisfaction of one or more constraints, the satisfaction of one or more constraints being based on the computational capacity of the multiple NN16s, the bandwidth capacity of the midhaul links, inter-DU links, and fronthaul links, and a delay target.

[0116] Embodiment A5. Determining multiple DU NFs using a learning process, A first network node in any one of embodiments A1 to A4, which includes applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DUs to be hosted by groups of NN16 while satisfying the delay target of each WD22.

[0117] Embodiment B1. This method, Based on the latency target of each of the multiple wireless devices (WDs) 22, multiple distributed unit network functions (DU NFs) to be hosted by a group of network nodes (NNs) 16 are determined, wherein each DU NF is associated with at least one component carrier available to at least one WD 22, and multiple DU NFs are determined using a learning process. A method implemented in a first NN16 configured to communicate with multiple NN16s in a network, which includes triggering each NN16 in a group of NN16s to host a corresponding DU NF among multiple DU NFs.

[0118] Embodiment B2. This method, Performing network modeling, A method of Embodiment B1, which includes performing a modeling of end-to-end latency within the network based on data collected within the network in order to determine multiple DU NFs.

[0119] Embodiment B3. Determining multiple DUs, Determining the WD-centered DU NF placement based on carrier aggregation parameters, Performing a weighted sum of the delay and the number of NN16s used to host the DU NF for multiple component carriers. A method which includes either one of Embodiments B1 and B2.

[0120] Embodiment B4. Determining multiple DU NFs using a learning process, Modeling the state as user latency satisfaction, Determining an action, wherein the action is the placement of at least one DU NF for at least one component carrier in the network, A method of any one of embodiments B1 to B3, which involves determining a reward, wherein the reward is a weighted sum of delay and the number of NN16s used to host DU NFs for multiple component carriers and the satisfaction of one or more constraints, the one or more constraints being based on the computational capacity of the multiple NN16s, the bandwidth capacity of the midhaul link, the inter-DU link, and the fronthaul link, and a delay target.

[0121] Embodiment B5. Determining multiple DU NFs using a learning process, One of embodiments B1 to B4, comprising applying a deep reinforcement learning-based DU placement with carrier aggregation (DUPCA) to minimize the number of DUs to be hosted by groups of NN16 while satisfying the delay target of each WD22.

[0122] As will be understood by those skilled in the art, the concepts described herein may be embodied as methods, data processing systems, computer program products, and / or computer storage media for storing executable computer programs. Accordingly, the concepts described herein may take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects, all of which are generally referred to herein as “circuits” or “modules.” Any process, step, action, and / or function described herein may be performed and / or associated with a corresponding module which may be implemented in software and / or firmware and / or hardware. Furthermore, this disclosure may take the form of computer program products on tangible computer-readable storage media having computer program code embodied in the medium, which can be executed by a computer. Any suitable tangible computer-readable medium may be used, including hard disks, CD-ROMs, electronic storage devices, optical storage devices, or magnetic storage devices.

[0123] Several embodiments are described herein with reference to flowcharts and / or block diagrams of methods, systems, and computer program products. It will be understood that each block in a flowchart and / or block diagram, as well as combinations of blocks in a flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general-purpose computer, a dedicated computer (thereby creating an application-specific computer), or another programmable data processing device for generating a machine, thereby creating means for implementing a function / operation specified in one or more blocks of a flowchart and / or block diagram when executed via the processor of the computer or other programmable data processing device.

[0124] These computer program instructions may also be stored in computer-readable memory or storage medium that can instruct a computer or other programmable data processing device to function in a particular way, and as a result, instructions stored in computer-readable memory generate a product that includes instruction means to perform a specified function / operation in one or more blocks of a flowchart and / or block diagram.

[0125] Computer program instructions may also be loaded into a computer or other programmable data processing device and cause a series of operational steps to be executed on the computer or other programmable device, thereby generating a computer implementation process such that the instructions executed on the computer or other programmable device provide steps for implementing a function / operation specified in one or more blocks of a flowchart and / or block diagram.

[0126] Please understand that the functions / operations described in a block may occur in a different order than that shown in the operation diagram. For example, two blocks shown consecutively may actually be executed substantially simultaneously depending on the functions / operations involved, or blocks may sometimes be executed in reverse order. Some of the diagrams include arrows on the communication path to indicate the main direction of communication, but please understand that communication may occur in the opposite direction to the depicted arrows.

[0127] Computer program code for performing the operations of the concepts described herein may be written in an object-oriented programming language such as Python, Java®, or C++. However, computer program code for performing the operations of the disclosure may also be written in a conventional procedural programming language such as the C programming language. The program code may run entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer. In the latter scenario, the remote computer may be connected to the user's computer via a local area network (LAN) or a wide area network (WAN), or it may be connected to an external computer (for example, via the Internet using an Internet service provider).

[0128] In connection with the above description and drawings, many different embodiments have been disclosed herein. It will be understood that a literal description and illustration of all combinations and partial combinations of these embodiments would be overly repetitive and confusing. Therefore, all embodiments can be combined in any way and / or combination, and this specification, including the drawings, shall be construed as constituting a complete written description of all combinations and partial combinations of the embodiments described herein, as well as the methods and processes for making and using them, and shall support the claims for any such combination or partial combination.

[0129] The abbreviations that may be used in the above explanation include the following: CA Career Aggregation CC Component Carrier CNF Containerized Network Functions CU Central Unit DQN Deep Q-Network DRL Deep Reinforcement Learning DU Distributed Unit DU configuration with DUPCA carrier aggregation FH Front Hole Between IDU and DU MDP (Markov Decision Process) MH Midhole MILP mixed integer linear problem ML (Machine Learning) NF Network Function PCell Primary Cell RAN (Radio Access Network) RU Radio Unit SCell Secondary Cell UE User Equipment VNF Virtualization Network Function

[0130] Those skilled in the art will understand that the embodiments described herein are not limited to those specifically shown and described herein above. Furthermore, it should be noted that, unless otherwise stated, all accompanying drawings are not to scale. Various modifications and variations are possible in light of the above teachings without departing from the scope of the following claims.

Claims

1. A method in a first network node (16) configured to communicate with multiple network nodes, NN (16), in a network, S138) Determining one or more distributed units, DUs, (102) to be hosted by at least one NN(16) of the plurality of NN(16), based at least on delay targets associated with each WD(22) of the plurality of wireless devices, WDs, (22), wherein each of the one or more DUs(102) is associated with at least one component carrier, CC(302) available to at least one WD(22) of the plurality of NN(16) for communication with one or more NN(16) of the plurality of NN(16), and determining one or more DUs, which are determined using a learning process. Based on the determined one or more DU(102), the system causes at least one of the plurality of NN(16) to host the corresponding DU(102) from the one or more DU(102) (S140) Methods that include...

2. To determine the one or more DU(102) mentioned above, the network is modeled. The method according to claim 1, further comprising:

3. The process involves performing a model of end-to-end delay within the network based on data collected within the network, wherein one or more DUs (102) perform a model of end-to-end delay determined based on the model of end-to-end delay. The method according to claim 1 or 2, further comprising:

4. Determining the one or more DU(102) is Determining the DU arrangement on the at least one NN(16) based on carrier aggregation parameters. The method according to any one of claims 1 to 3, including

5. Determining the one or more DU(102) is Determining a weighted sum of the delay associated with the data corresponding to the plurality of WD(22) and the number of NN(16) used to host the one or more DU(102), wherein the weighted sum is determined for at least component carriers, CC,(302) of the plurality of CC(302). The method according to any one of claims 1 to 4, including the method described in any one of claims 1 to 4.

6. Using the learning process described above, one or more DU(102) are determined. The state is modeled as the delay satisfaction of one or more users associated with the aforementioned plurality of WD(22), Determining an action associated with the learning process, wherein the action is an arrangement of the one or more DU(102) within the at least one NN(16) for the at least one NN(16) to host the one or more DU(102), and the arrangement is for the corresponding CC(302), Determining a reward associated with the learning process, wherein the reward is a weighted sum of the delay and the number of NN(16) used to host the one or more DU(102) for the plurality of CC(302). The method according to claim 5, comprising one or more of the above.

7. The method according to any one of claims 1 to 6, wherein the one or more DU(102) is further determined based on one or more constraints, the one or more constraints being based on the computing capacity of the plurality of NN(16), the bandwidth capability of one or more midhaul links, one or more inter-DU links, and one or more fronthaul links, and the delay target.

8. Using the learning process described above, one or more DU(102) are determined. To minimize the number of DUs (102) to be hosted by at least one NN (16) while satisfying the delay target of each WD (22), apply a deep reinforcement learning-based DU arrangement with carrier aggregation, DUPCA. The method according to any one of claims 1 to 7, including the method described in any one of claims 1 to 7.

9. Receiving a set of data corresponding to the multiple WD(22) and Hosting at least one DU(102) of the one or more DU(102) corresponding to the first activated CC(302) of the at least one CC(302), To communicate with at least one WD (22) via an access network node using the first activated CC (302), the system transmits and receives either or both signaling associated with a first subset of the set of data, Transferring a second subset of the data from the set of data to at least one other DU(102) of the one or more DU(102), wherein the at least one other DU(102) corresponds to a second activated CC(302) of the at least one CC(302), and transfers a second subset of the data from the set of data that is different from the second activated CC(302) and the first activated CC(302). The method according to any one of claims 1 to 8, further comprising one or more of the above.

10. The method according to any one of claims 1 to 9, wherein the one or more DUs (102) are one or more DU network functions.

11. A first network node (16) configured to communicate with multiple network nodes, NN, (16) in the network, wherein the first network node Determining one or more distributed units, DUs, (102) to be hosted by at least one NN(16) of the plurality of NN(16), based at least on delay targets associated with each WD(22) of the plurality of wireless devices, WDs, (22), wherein each of the one or more DUs(102) is associated with at least one component carrier, CC(302) available to at least one WD(22) of the plurality of NN(16) for communication with one or more NN(16) of the plurality of NN(16), and determining one or more DUs, which are determined using a learning process. Based on the determined one or more DU(102), at least one of the plurality of NN(16) hosts the corresponding DU(102) from the one or more DU(102). A first network node configured to perform the following action.

12. The first network node according to claim 11, further configured to perform network modeling in order to determine the one or more DU(102).

13. The first network node according to claim 11 or 12, which performs a model of end-to-end delay in the network based on data collected in the network, wherein one or more DUs (102) are further configured to perform a model of end-to-end delay which is determined based on the model of end-to-end delay.

14. Determining one or more DU(102) means determining the DU placement on the at least one NN(16) based on carrier aggregation parameters. A first network node according to any one of claims 11 to 13, including the following:

15. Determining the one or more DU(102) is Determining a weighted sum of the delay associated with the data corresponding to the plurality of WD(22) and the number of NN(16) used to host the one or more DU(102), wherein the weighted sum is determined for at least component carriers, CC,(302) of the plurality of CC(302). A first network node according to any one of claims 11 to 14, including the following:

16. Using the learning process described above, one or more DU(102) are determined. The state is modeled as the delay satisfaction of one or more users associated with the aforementioned plurality of WD(22), Determining an action associated with the learning process, wherein the action is an arrangement of the one or more DU(102) within the at least one NN(16) for the at least one NN(16) to host the one or more DU(102), and the arrangement is for the corresponding CC(302), Determining a reward associated with the learning process, wherein the reward is a weighted sum of the delay and the number of NN(16) used to host the one or more DU(102) for the plurality of CC(302). The first network node according to claim 15, comprising one or more of the above.

17. The first network node according to any one of claims 11 to 16, wherein the one or more DU(102) is further determined based on one or more constraints, the one or more constraints being based on the computing capacity of the plurality of NN(16), the bandwidth capacity of one or more midhaul links, one or more inter-DU links, and one or more fronthaul links, and the delay target.

18. Using the learning process described above, one or more DU(102) are determined. To minimize the number of DUs (102) to be hosted by at least one NN (16) while satisfying the delay target of each WD (22), apply a deep reinforcement learning-based DU arrangement with carrier aggregation, DUPCA. A first network node according to any one of claims 11 to 17, including the following:

19. Receiving a set of data corresponding to the multiple WD(22) and Hosting at least one DU(102) of the one or more DU(102) corresponding to the first activated CC(302) of the at least one CC(302), To communicate with at least one WD (22) via an access network node using the first activated CC (302), the system transmits and receives either or both signaling associated with a first subset of the set of data, Transferring a second subset of the data from the set of data to at least one other DU(102) of the one or more DU(102), wherein the at least one other DU(102) corresponds to a second activated CC(302) of the at least one CC(302), and transfers a second subset of the data from the set of data that is different from the second activated CC(302) and the first activated CC(302). A first network node according to any one of claims 11 to 18, configured to perform one or more of the following:

20. The first network node according to any one of claims 11 to 19, wherein the one or more DUs (102) are one or more DU network functions.