Systems and methods for managing congestion to improve availability and resilience of a packet fronthaul network

By using eECN bits in the eCPRI header to manage congestion within RAN fronthaul networks, the challenges of implementing L4S technology are addressed, achieving improved availability and resilience with maintained compatibility and reduced complexity.

WO2025253163A1PCT designated stage Publication Date: 2025-12-11TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)

Patent Information

Application Number
PCT/IB2024/055567
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-06-07
Publication Date
2025-12-11

AI Technical Summary

Technical Problem

Existing RAN architectures face challenges in implementing Low Latency, Low Loss, and Scalable Throughput (L4S) technology in packet-based fronthaul networks due to the lack of network layer and transport layer addressing support, which complicates hardware and software design and increases costs.

Method used

Implement enhanced explicit congestion notification (eECN) using reserved bits in the eCPRI header to manage congestion within the fronthaul network, allowing for congestion-aware processing logic in packet fronthaul switches without altering underlying RAN protocols or hardware, and remapping eECN bits to ECN bits for end-to-end congestion control.

Benefits of technology

This approach maintains low latency and low loss while providing scalable throughput, enhancing availability and resilience of RAN networks against congestion, simplifies network design, and maintains compatibility with existing eCPRI standards.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2024055567_11122025_PF_FP_ABST
    Figure IB2024055567_11122025_PF_FP_ABST
Patent Text Reader

Abstract

Systems and methods are described for monitoring for congestion conditions within a packet fronthaul underlay network of a radio access network, RAN. For example, congestion conditions are monitored within the packet fronthaul underlay network, the packet fronthaul underlay network comprising a plurality of Layer 2, L2, switches to communicate enhanced Common Public Radio Interface, eCPRI, packets embedded in L2 frames. One or more congestion bits are updated in a reserved header field of an eCPRI packet responsive to detecting the congestion conditions to provide a notification of the congestion condition to one or more other L2 switches through which the eCPRI packet is processed and to a baseband unit (BBU) or distributed unit (DU) terminating the eCPRI interface. The BBU or DU maps the congestion conditions to network connections external to the packet fronthaul underlay network responsive to the notification.
Need to check novelty before this filing date? Find Prior Art

Description

SPECIFICATIONSYSTEMS AND METHODS FOR MANAGING CONGESTION TO IMPROVE AVAILABILITY AND RESILIENCE OF A PACKET FRONTHAUL NETWORKTECHNICAL FIELD

[0001] Embodiments of the invention relate to the field of computer systems; and more specifically, to systems and methods for managing congestion to improve availability and resilience of a packet fronthaul network.BACKGROUNDLow Latency, Low Loss, and Scalable Throughput (L4S) technology

[0002] Network throughput (also referred to as bandwidth) has increased exponentially over the last several decades, enabling a variety of new features for end users, including video streaming, online gaming, and mixed reality implementations, as well as more advanced applications such as remote teleoperation and autonomous services. The focus on network throughput, however, underestimates the fact that users are primarily interested in application responsiveness, and not on how many bits they can transfer per second. As a result, user experience improvements for time-critical applications have not increased at the same pace as network throughput (i.e., the increased bandwidth is not resulting in a corresponding increase in the user experience). By way of a simple example, downloading an MP3 file used to take 21.5 seconds on a 56Kbps connection, 10 seconds on a 10Mbps connection, 0.72 seconds on a 100Mbps connection, and 0.28 seconds on a 250Mbps connection. Thus, user perception of the network speed becomes less noticeable with further bandwidth improvements (i.e., most users will not notice the different between .75 seconds and .28 seconds).

[0003] Optimizing network latency rather than throughput can lead to a significantly improved user experience for time-critical applications. The three primary factors that influence latency are: (i) distance, (ii) packet loss, and (iii) queuing time. However, guaranteeing low latency simultaneously with high throughput is challenging because the more traffic is injected into the network, the more likely it is to suffer congestion and packet loss.

[0004] Low Latency, Low Loss, and Scalable Throughput (L4S) technology, introduced by the Internet Engineering Task Force (IETF) in RFC9330, supports Low Latency and Low Loss Scalable services with flow control at the network layer and transport layer (Layers 3 and 4, respectively). L4S aims to optimize throughput to achieve a minimum queuing time and reduce overall connection delays. It is a “collaborative” internet congestion control mechanism appliedboth within the network (e.g., within network routers) and at the endpoints, allowing end user applications to be aware of the network status and providing techniques to proactively avoid network congestion.

[0005] In particular, packets suffering potential congestion in the network are marked with a new type of Explicit Congestion Notification (ECN) bits, defined in IETF RFC9331, to notify client applications to reduce their throughput in favor of lower latency and packet loss resulting from coupled dual queues and active queue management (AQM) as specified in IETF RFC9332. Thus, L4S operates as a congestion-control mechanism, using markers within the data packets to detect and promptly respond to congestion conditions. This feedback loop enables devices (e.g., endpoints such as client devices and server devices) to adjust data flow in real time, preventing bottlenecks and ensuring smoother transmission.Radio Access Networks (RAN) and Open RAN

[0006] In a typical wireless communication network, wireless devices, also known as wireless communication devices, mobile stations, stations (STA) and / or user equipment (UE) devices, communicate via a Radio Access Network (RAN) to one or more core networks (CN). Each RAN covers a geographical area which is divided into service areas or cell areas, which may also be referred to as a beam or a beam group, with each service area or cell area being served by a radio access node, e.g., a Wi-Fi access point or a radio base station (RBS), which in some networks may also be denoted, for example, a “NodeB,” “eNodeB,” “gNB,” or Base Transceiver Station (BTS), depending on the technology and terminology used. A service area or cell area is a geographical area where radio coverage is provided by the radio access node, which communicates over an air interface operating on radio frequencies.

[0007] Some implementations include the enhanced common public radio interface (eCPRI), a packet-based fronthaul network which interconnects the components of a RAN. In particular, the fronthaul network interconnects radio equipment, such one or more radio units (RUs) (sometimes referred to as remote radio units (RRUs)), and radio equipment control, such as one or more baseband units (BBUs) or distributed units (DUs) (or vDUs in virtualized implementations). The RUs may be coupled to an antenna array to establish wireless channels with UEs and are coupled via eCPRI to at least one BBU or DU. Each BBU / DU connects to at least one centralized unit (CU) over another packet-based network, sometimes referred to as a midhaul, using separate high layer split (HLS) channels for control signaling (with a CU-CP unit) and user data (with a CU-UP unit). The CU communicates with the core network over a packet-based backhaul transport network.

[0008] In some implementations, such as RAN virtualization for edge cloud deployments, the DUs and CUs are implemented as virtual DUs (vDUs) and virtual CUs (vCUs), respectively, andthey can be co-located or dislocated. The term “virtualized” refers to the use of virtualized network functions (software) running on top of general-purpose computing hardware to implement the functions of the DUs and CUs. In some implementations, the DUs are referred to as baseband units (BBUs).

[0009] In some implementations, such as Open RAN (0-RAN) the components of the Radio Access Networks are referred as Open RU (Open RU), Open DU (O-DU) and Open CU (O- CUs), respectively. The interface connecting the O-RU with the O-DU is also referred as Open Low Layer Split interface (O-LLS) carried on top of the eCPRI interface.

[0010] Note that the term RU is used herein to refer to any type of radio equipment, including but not limited to RRUs and eREs, and the terms BBU and DU are used to refer to any type of broadband unit or distributed unit, respectively, including but not limited to vDUs and eRECs.L4S Technology in RAN

[0011] According to the 3rd Generation Partnership Project (3GPP), the manner in which ECN bits are marked for L4S in Next Generation Radio Access Network (NG-RAN) architectures is implementation-specific with respect to User Plane functions in the 5G core network. See, e.g., 3GPP Technical Specification (TS) 38.300, NR and NG-RAN Overall description (2024), Section 16.16 (ECN marking for L4S and congestion information exposure) and 3GPP TS 23.501, System architecture for the 5G System (5GS) (2024), Section 5.37.3.2 (Support of ECN marking for L4S in NG-RAN). The same methods may apply in the case of Cloud RAN and Open RAN (0-RAN) implementations which will be included within the general RAN definition in this disclosure.

[0012] However, significant obstacles exist to L4S introduction in the packet-based fronthaul networks of existing RANs. In particular, the fronthaul network is a Layer 2 network (from the perspective of Ethernet switching) which does not include network layer or transport layer (L3 / L4) addressing support. Furthermore, the introduction of L3 / L4 layers in the Radio Units (RUs) of a RAN would significantly complicate their hardware and software design, resulting in a potential cost increase and higher maintenance costs. Additionally, the fronthaul network is typically a local or short haul interface (with a maximum distance of 10-20km) and usage of complex addressing schemes would be unacceptable for many operators.BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The invention may best be understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention. In the drawings:

[0014] Figure 1 illustrates three bits of the reserved field of an eCPRI packet embedded in an Ethernet frame in accordance with some embodiments.

[0015] Figure 2 illustrates a particular implementation including congestion-aware processing logic integral to each packet fronthaul switch.

[0016] Figure 3 A illustrates ECN codepoints used for congestion aware flow control at the network layer.

[0017] Figure 3B illustrates eECN codepoints used for congestion-aware flow control within a RAN packet fronthaul underlay network in accordance with embodiments of the invention.

[0018] Figure 4 illustrates congestion management within the RAN packet fronthaul underlay network as well as ECN marking for congestion management outside of the RAN packet fronthaul underlay network.

[0019] Figure 5 illustrates eECN bits used for congestion control within the packet fronthaul underlay network and remapping of the eECN bits to ECN bits outside of the packet fronthaul underlay network.

[0020] Figure 6 illustrates a method for congestion control within a packet fronthaul underlay network and outside of the packet fronthaul underlay network.

[0021] Figure 7 illustrates one embodiment of an access network with a plurality of network nodes and a core network with core network node.

[0022] Figure 8 illustrates one example of a user equipment (UE) device.

[0023] Figure 9 illustrates one example of a network node.

[0024] Figure 10 illustrates an example of a virtualization environment including a plurality of virtual machines.

[0025] Figure 11 illustrates an example embodiment including a UE connecting to a host via a network node.DETAILED DESCRIPTION

[0026] As described above, the problems with existing technology are based on the characteristics of existing RAN architectures. For example, eCPRI is a Layer 2 protocol and the fronthaul network is typically configured with Layer 2 switching capabilities. In addition, eCPRI carries encoded RF samples for cell traffic and does not provide access to user plane function (UPF) traffic which would be required for accessing the ECN bits specified in L4S.Furthermore, RUs typically have a hardware / software architecture which relies on the compute capabilities of the corresponding DUs of the RAN; the RUs have no control over the bandwidth allocation towards the UEs and consequently no control over the eCPRI throughput. As a result, the RUs cannot implement L4S or similar functions.

[0027] Embodiments of the invention address the problems with existing technologies for providing low latency, low loss, and scalable throughput within the fronthaul network of a RAN, which is a Layer 2 network without TCP / IP congestion control. In particular, these implementations monitor and manage explicit congestion notifications in a packet-based fronthaul network interconnecting distributed units (DUs) (including baseband units (BBUs) and vDUs) and radio units (RUs) (sometimes referred to as Remote Radio Units (RRUs)) of a RAN to improve availability and resilience. The implementations described herein are sometimes referred to as enhanced L4S or eL4S. While certain implementations are described with respect to L4S, the underlying principles of the invention are not limited to any particular standards- based implementation. Moreover, while some embodiments are described primarily with respect to DUs, the same underlying principles can be applied with respect to vDUs and BBUs.

[0028] As used herein, the term “Layer 2” refers to the Data Link layer as defined in the Open Systems Interconnection (OSI) model and “Layer 3” refers to the Network layer. In a Layer 2 Ethernet network, such as the fronthaul network, data is transmitted in Ethernet frames with headers containing the physical medium access control (MAC) addresses identifying the next Layer 2 destination (e.g., a Layer 2 switch or a router at the boundary of the Layer 2 network). In a Layer 3 IP network, Layer 3 refers to IP packets which are routed in accordance with IP addresses contained in the IP packet headers. In contrast to physical Ethernet addresses which identify the next hop on the Ethernet network, IP addresses are logical addresses which identify the final destination to which the data is targeted. Layer 3 packets (e.g., IP packets) are encapsulated within Layer 2 frames for transport over a Layer 2 network. An IP packet may be transmitted through several Layer 2 networks in transmission from the source to the destination.

[0029] The fronthaul network (sometimes referred to as the eCPRI fronthaul network) is a central component of modern RAN architectures (e.g., including Cloud RAN and Open RAN) and has strict requirements for zero-packet loss and low latency (e.g., typically lOOus). By introducing low latency, low loss, and scalable throughput within a telecommunications network infrastructure, embodiments of the invention provide numerous benefits over existing technologies, such as increasing availability and resilience of RAN networks against fronthaul network congestion (e.g., as a result of strict packet loss and packet latency control); simplifying the design of fronthaul networks (e.g., as a result of the integrated congestion control); and maintaining full backward compatibility with existing eCPRI standards while providing low latency, low loss, and scalable throughput as a value-add feature (e.g., to be enabled for implementations with fronthaul network switching and aggregation).

[0030] In particular, enhanced explicit congestion notification (eECN) indications are carried through the switched fronthaul network using reserved bits in the eCPRI header (sometimesreferred to herein as the eECN bits). Figure 1 illustrates an example of the eCPRI packet header 100 in which the first byte (byte 0) includes fields for the eCPRI protocol revision, a C-bit indicating when the current eCPRI message is the last one in the eCPRI protocol data unit, and the reserved field 101 A in which the eECN bits 101B are encoded. The remaining bytes in the eCPRI header (bytes 1-3) indicate the eCPRI message type, and payload size.

[0031] The combination of an eCPRI payload 154 and the eCPRI header 100 (referred to as the eCPRI packet) form the Ethernet payload 160 of a corresponding Ethernet frame 110. As illustrated, the Ethernet frame 110 includes a destination medium access control (MAC) address 150, a source MAC address 151, an optional virtual LAN (VLAN) tag 152 and an Ethertype tag 153 which indicates the type of data in the Ethernet payload 160. When an eCPRI packet is transmitted in the payload 160, the Ethertype tag 153 indicates eCPRI.

[0032] Figure 2 illustrates an example eCPRI fronthaul network 260 with different communication paths between a radio unit (RU) 205 and a baseband unit (BBU) or distributed unit (DU) 210 through a set of Layer 2 packet-based fronthaul network (PFH) switches 220, 230, 240. In accordance with embodiments described herein, each PFH switch 220, 230, 240 includes a set of eCPRI queues 222, 232, 242, respectively, for temporarily queuing eCPRI packets between receipt and transmission. Congestion-aware processing logic 221, 231, 241 of each respective Packet Fronthaul switch 220, 230, 240 detects congestion conditions based on the state of the corresponding eCPRI queues 222, 232, 242 and responsively sets one or more of the eECN bits in the eCPRI packets to indicate the congestion. A queue utilization threshold may be defined, for example, based on a percentage of the total queue capacity which is currently consumed by eCPRI packets and / or based on the current number of queued packets in view of the total number of packets each respective queues is capable of holding. Various other metrics may be used to detect a congestion condition (e.g., the average time spent by packets in eCPRI queues 222, 232, 242 calculated based on packet arrival times and transmission times, etc.).

[0033] When it detects congestion, the congestion aware processing logic 221, 231, 241 of the respective PFH switch 220, 230, 240 may set eECN bits in those eCPRI packets selected from their respective queues for transmission. Alternatively, or additionally, when congestion is detected, the congestion aware processing logic 221, 231, 241 may set the eECN bits in all queued eCPRI packets to indicate the congestion condition.

[0034] When a PFH switch 220, 230, 240 receives an eCPRI packet with the eECN bits set to indicate a congestion condition, this informs the corresponding congestion-aware processing logic 221, 231, 241 that the source PFH switch from which it received the eCPRI packet (or potentially another upstream PFH switch) is experiencing congestion, and may use this congestion information for packet switching decisions. For example, if an alternate path throughthe Ethernet network is available which does not include the source PFH switch from which the eCPRI packet indicating congestion was received, the alternate path may be selected more often (e.g., until the congestion condition is no longer detected). Using the arrangement in Figure 2, for example, if PFH switch 220 receives a packet from PFH switch 230 with eECN bits set to indicate congestion, then the congestion-aware processing logic 221 of PFH switch 220 may favor an alternate path for packet transmission which excludes PFH switch 230 (e.g., using PFH switch 240), to help reduce the congestion condition.

[0035] Additionally, when a PFH switch receives an eCPRI packet with eECN bits set to indicate a congestion condition, it may prioritize the retransmission of those packets over packets received without the eECN bits set, under the assumption that the eCPRI packet which experienced congestion is more likely to be approaching a latency threshold defined for the fronthaul network 260 (e.g., lOOus). In some embodiments, a separate queue may be allocated for eCPRI packets which have experienced congestion. Thus, when a congestion condition is encoded in the eECN bits of an eCPRI packet, the respective congestion-aware processing logic 221, 231, 241 can use this information to prioritize those eCPRI packets which have experienced congestion and to make more intelligent packet switching decisions related to the paths taken by the eCPRI packets.

[0036] Note that packet congestion can be experienced at the ingress paths to the fronthaul network 260 (e.g., the path between RU 205 and PFH switch 220 and / or the path between BBU / DU 210 and PFH switch 240), and can also be experienced inside the fronthaul network 260 itself (e.g., between PFH switch 220 and PFH switch 240). In both cases, the eECN bits can be set by the corresponding PFH switch and subsequently used by the congestion-aware processing logic 221, 231, 241 of other PFH switches to efficiently manage the congestion and take steps to maintain latency within defined thresholds.

[0037] Embodiments of the invention advantageously communicate this eECN congestion information within the RAN fronthaul network 260 without changes to the underlying RAN protocols or hardware. Rather, the existing reserved field 101 A in eCPRI headers is used to encode the eECN bits 10 IB which convey the congestion information. Thus, the embodiments described herein may be implemented in software or firmware modifications to the PFH switches 220, 230, 240 of the transport network 260 (e.g., to implement the congestion-aware processing logic 221, 231, 241) to process the congestion information as described herein. Note, however, the underlying principles of the invention are not limited to a purely software / firmware-based implementation.

[0038] Figure 3A illustrates the existing 2 -bit ECN encoding stored in the header of network layer (Layer 3) packets (e.g., the IP header of a TCP / IP packet) and Figure 3B illustrates the 3-bit eECN codepoints encoded in the reserved field of Layer 2 eCPRI packet headers in accordance with embodiments of the invention. In this example, the extra bit of the eECN codepoints is used to provide supplemental information associated with notifications from the packet fronthaul underlay network. In one embodiment, for example, the supplemental information comprises a differentiation between near-end and far-end notifications on the packet fronthaul underlay network. As used herein, far-end notifications are those generated from the RU 205, which must be communicated to the BBU / DU 210 for further processing, while near- end notifications are those received generated by the BBU / DU 210. As mentioned, the RU 205 relies on the BBU / DU 210 for compute capabilities and is not capable of propagating the eECN bits further up the protocol stack (e.g., to an application running on a UE). As such, the RU 205 terminates transmission of the eECN congestion bits and forwards them to the BBU / DU 210, which can then propagate the congestion information beyond the Layer 2 fronthaul network 260, as described further below. The BBU / DU 210 can also terminate the eECN bits and use them to support ECN marking for the corresponding Layer 3 traffic beyond the fronthaul network as described herein (e.g., within the IP layer of the core network and the Internet).

[0039] Thus, in these embodiments, the eECN codepoints indicate separate far-end and near- end encodings based on whether congestion condition was detected by the RU (far-end) or the BBU / DU (near-end). The additional two eECN bits indicate whether congestion was experienced and whether the corresponding path is L4S capable, ECN capable, or not ECN- capable. In these embodiments, backward compatibility with broadband or traditional eCPRI traffic can be identified and managed using different Ether Type tags 153 which differentiate between scalable traffic (e.g., in accordance with embodiments of the invention) and traditional traffic running in the fronthaul network 260.

[0040] Packet flows for eL4S-capable traffic may be processed differently than other flows within the fronthaul network. Figure 4 illustrates an example of a portion of a RAN 410 including Packet Data Convergence Protocol (PDCP) processing logic 416 running over Radio Link Control (RLC) logic 414, a MAC scheduler 412 for scheduling packet transmission over the fronthaul network 260, and a congestion manager 420 for detecting congestion on the transport network. All of these components may be implemented within the BBU / DU 210 or by networking devices coupled directly to the BBU / DU 210. In this example, the PDCP processing logic 416 receives both L4S flows 441 and non-L4S mobile broadband (MBB) flows 440. Separate queues 430-431 are configured to store packets for the different types of flows: an MBB queue 430 for storing packets from the standard MBB flows 440 and an L4S / eL4S queue 431 is for storing packets from the L4S / eL4S flows. The MAC scheduler 412 selects packets from the queues 430-431 for transmission over the transport network to a UE 490 and indicatesthe queue delay associated with each respective queue to a congestion manager 420, which detects congestion conditions based on the queue delays and the detected channel quality (CQI) associated with the flows.

[0041] As illustrated, the congestion manager 420 can detect and indicate congestion within the eCPRI transport network itself and at the interface between the eCPRI transport network and the larger TCP / IP network (e.g., at the PDCP processing logic 416). The congestion manager 420 includes the congestion-aware processing logic 221, 231, 241 of each PFH switch 220, 230, 240, respectively, which indicates congestion conditions within the eCPRI transport network using eECN marking as previously described (e.g., writing the three eECN bits in the eCPRI packet header). At the interface between the eCPRI transport network and the larger TCP / IP network, the congestion manager 420 indicates congestion conditions via the ECN marking signal 402 provided as input to the PDCP 416, which responsively marks the L4S flows 441 with ECN bits.

[0042] In some implementations, the eECN bits are used for congestion control within the packet fronthaul network itself and are also remapped by the BBU / DU 210 outside of the packet fronthaul network, thereby establishing end-to-end congestion-aware flow control. As mentioned, because the RU 205 typically has no TCP / IP access capabilities (including no congestion control), far-end notifications are sent back from the RU 205 to the BBU / DU 210, which performs a remapping from the eECN bits (shown in Figure 3B) to the ECN bits (shown in Figure 3 A) in the corresponding traffic flows. The remapping may be performed simply by dropping the one eECN bit used to differentiate between far-end and near-end notifications (i.e., the least significant bit in Figure 3B).

[0043] Figure 5 illustrates an implementation which includes the transport network (between RU 205 and BBU / DU 210), the RAN 410, and the complete end-to-end (E2E) path across the TCP / IP network, extending between an application 550 running on a UE 552 and an app server 535 communicating with the application. Packets transmitted from the application server 535 pass through the internet 530, the 5G core network 520, the RAN 410, arriving at the UE 552 and the application 550. The eECN scope 540 indicated in Figure 5 comprises the fronthaul network between the RU 205 and the BBU / DU 210. The BBU / DU at the edge of the fronthaul transport performs a remapping from the eECN scope 540 to the ECN RAN scope 542 which also provides a mapping 543 to the ECN E2E scope 544 (i.e., given that both scopes operate at Layer 3 / IP and above).

[0044] Figure 6 illustrates a method in accordance with some implementations. The method may be implemented on the various architecture described herein, but is not necessarily limited to any specific architectural details provided in this disclosure.

[0045] At 601, packet-based traffic within the RAN packet fronthaul underlay network is monitored. As mentioned, monitoring may be performed at each individual packet fronthaul switch, for example, by monitoring queue utilization and / or average queuing times. Congestion is detected at 602 when one or more monitoring thresholds are breached. For example, a congestion condition event may be generated in response to queue utilization rising above a specified threshold (e.g., a utilization percentage, number of consumed queue entries, etc.).

[0046] Once congestion is detected, at 602, the corresponding congestion bits are written in the eCPRI header at 603 to indicate congestion experienced and can optionally indicate whether the corresponding notification is a near-end notification (received by the BBU / DU) or a far-end notification of downlink congestion (received by the RU). In some embodiments described herein, the congestion bits comprise three bits in the reserved field in the eCPRI header (e.g., in accordance with the table shown in Figure 3B).

[0047] At 604, packets are communicated through the RAN packet fronthaul underlay network in accordance with the congestion bits. For example, when a switch receives an eCPRI packet (e.g., embedded in an Ethernet frame as described above), the switch may transmit the packet based on whether congestion is indicated in the eCPRI header. For example, the switch may prioritize the packet relative to other packets which do not include a congestion indication (e.g., to attempt to maintain latency below the RAN threshold). Additionally, the switch may route subsequent packets along alternative paths on the RAN packet fronthaul underlay network which do not require passage through the switch from which the packet indicating congestion was received.

[0048] At 605, remapping of congestion bits to ECN bits is performed at the edge of the fronthaul network. For example, the BBU / DU may drop the least significant bits from the eECN codepoints shown in Figure 4B (effectively removing the near-end / far-end distinction) and use the resulting bits as ECN bits to be used for congestion-aware flow control outside of the RAN packet fronthaul underlay network (e.g., at the network layer, between the UE 552 and BBU / DU and between an application 550 running on the UE 552 and a corresponding application server 535). Using these techniques, the detected congestion may be propagated out from the RAN packet fronthaul underlay network to end-to-end TCP / IP connections.Alternative Embodiments

[0049] While some embodiments of the invention have been described in relation to specific parameters and configurations, various alternate parameters and configurations may be used while still complying with the underlying principles of the invention. Moreover, while the flow diagrams in Figure 6 show a particular order of operations performed by certain embodiments of the invention, it should be understood that such order is exemplary (e.g., alternativeembodiments may perform the operations in a different order, combine certain operations, overlap certain operations, etc.).

[0050] The description is thus to be regarded as illustrative instead of limiting.

[0051] Figure 7 shows an example of a communication system 700 in accordance with some embodiments. In the example, the communication system 700 includes a telecommunication network 702 that includes an access network 704, such as the radio access network (RAN) 410 shown in Figures 4-5, and a core network 706, such as core network 520 shown in Figure 5, which includes one or more core network nodes 708. The access network 704 includes one or more access network nodes, such as network nodes 710a and 710b (one or more of which may be generally referred to as network nodes 710), or any other similar 3rdGeneration Partnership Project (3 GPP) access nodes or non-3GPP access points. Moreover, as will be appreciated by those of skill in the art, a network node is not necessarily limited to an implementation in which a radio portion and a baseband portion are supplied and integrated by a single vendor. Thus, it will be understood that network nodes include disaggregated implementations or portions thereof. For example, in some embodiments, the telecommunication network 702 includes one or more Open-RAN (O-RAN) network nodes. An O-RAN network node is a node in the telecommunication network 702 that supports an O-RAN specification (e.g., a specification published by the O-RAN Alliance, or any similar organization) and may operate alone or together with other nodes to implement one or more functionalities of any node in the telecommunication network 702, including one or more network nodes 710 and / or core network nodes 708.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[0085] In certain alternative embodiments, the network node 900 does not include separate radio front-end circuitry 918, instead, the processing circuitry 902 includes radio front-end circuitry and is connected to the antenna 910. Similarly, in some embodiments, all or some of the RF transceiver circuitry 912 is part of the communication interface 906. In still other embodiments, the communication interface 906 includes one or more ports or terminals 916, the radio front-end circuitry 918, and the RF transceiver circuitry 912, as part of a radio unit (not shown), and the communication interface 906 communicates with the baseband processing circuitry 914, which is part of a digital unit (not shown).

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

[0087] The antenna 910, communication interface 906, and / or the processing circuitry 902 may be configured to perform any receiving operations and / or certain obtaining operations described herein as being performed by the network node. Any information, data and / or signals may be received from a UE, another network node and / or any other network equipment. Similarly, the antenna 910, the communication interface 906, and / or the processing circuitry 902may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and / or signals may be transmitted to a UE, another network node and / or any other network equipment.

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

[0089] Embodiments of the network node 900 may include additional components beyond those shown in Figure 9 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and / or any functionality necessary to support the subject matter described herein. For example, the network node 900 may include user interface equipment to allow input of information into the network node 900 and to allow output of information from the network node 900. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 900. In some embodiments providing a core network node, such as core network node 708 of FIG. 7, some components, such as the radio front-end circuitry 918 and the RF transceiver circuitry 912 may be omitted.

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

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

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

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

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

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

[0096] Figure 11 shows a communication diagram of a host 1102 communicating via a network node 1104 with a UE 1106 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE 712a of Figure 7), network node (such as network node 710a of Figure 7), and a host will now be described with reference to Figure 11.

[0097] Embodiments of host 1102 include hardware, such as a communication interface, processing circuitry, and memory. The host 1102 also includes software, which is stored in or accessible by the host 1102 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE 1106 connecting via an over-the-top (OTT) connection 1150 extending between the UE 1106 and host 1102. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection 1150.

[0098] The network node 1104 includes hardware enabling it to communicate with the host 1102 and UE 1106. The connection 1160 may be direct or pass through a core network (like core network 706 of Figure 7) and / or one or more other intermediate networks, such as one or more public, private, or hosted networks. For example, an intermediate network may be a backbone network or the Internet.

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

[0100] The OTT connection 1150 may extend via a connection 1160 between the host 1102 and the network node 1104 and via a wireless connection 1170 between the network node 1104 and the UE 1106 to provide the connection between the host 1102 and the UE 1106. The connection 1160 and wireless connection 1170, over which the OTT connection 1150 may be provided, have been drawn abstractly to illustrate the communication between the host 1102 and the UE 1106 via the network node 1104, without explicit reference to any intermediary devices and the precise routing of messages via these devices.

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

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

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

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

Claims

CLAIMSWhat is claimed is:

1. A method for congestion control within a packet fronthaul underlay network, the method comprising: monitoring (601) for congestion conditions within the packet fronthaul underlay network of a radio access network, RAN, the packet fronthaul underlay network comprising an enhanced Common Public Radio Interface, eCPRI, and a plurality of Layer 2, L2, switches (220, 230, 240) to communicate eCPRI packets (250) embedded in L2 frames; writing (603), by an L2 switch (220) of the plurality of L2 switches (220, 230, 240), one or more congestion bits in a header field (100) of an eCPRI packet (250) responsive to detecting the congestion conditions, the one or more congestion bits to provide a notification of the congestion conditions to one or more other L2 switches (230, 240) through which the eCPRI packet is processed and to a baseband unit (BBU) or distributed unit (DU) (210) terminating the eCPRI interface, and mapping (605), by the BBU or DU (210), the congestion conditions to network connections external to the packet fronthaul underlay network responsive to the notification of the congestion conditions.

2. The method of claim 1, wherein the network connections external to the packet fronthaul underlay network comprise Layer 3 (L3) network connections (542, 544).

3. The method of claim 1 or 2, wherein the one or more congestion bits are mapped to L3 congestion bits usable over the L3 network connections to provide low latency, low loss, and scalable throughput (L4S) (541, 543).

4. The method of any of claims 1 to 3, wherein monitoring for congestion conditions comprises monitoring utilization of one or more queues (222) of the L2 switch (220), measuring an amount of time for eCPRI packets to be received and transmitted by the L2 switch, or both.

5. The method of any of claims 1 to 4, wherein the L2 frames comprise Ethernet frames(110) and wherein an Ethernet frame is to include a payload (160) comprising an eCPRI packet and an Ethernet header comprising (i) an Ether Type field (153) indicating that the payload includes the eCPRI packet; (ii) a destination medium access control, MAC, address (150); and(111) a source MAC address (151).

6. The method of any of claims 1 to 5, wherein the header field comprises a reserved header field (110A) and the one or more congestion bits comprise three bits (101B) in the reserved header field of the eCPRI packet, wherein two bits of the three bits are to indicate the congestion condition.

7. The method of claim 6, wherein a third bit of the three bits (101B) is to indicate supplemental information related to detection of the congestion condition.

8. The method of claim 7, wherein the supplemental information comprises an indication of whether the notification of the congestion condition originated from a far-end (205) of the packet fronthaul underlay network or a near-end (210) of the packet fronthaul underlay network.

9. The method of claim 8, wherein the far-end comprises a radio unit (RU) (205) and the near-end comprises the BBU or DU (210).

10. The method of any of claims 1 to 9, wherein performing the congestion management operations by the one or more other L2 switches (220, 230, 240) comprises one or both of: prioritizing transmission of the eCPRI packet relative to other eCPRI packets not associated with a congestion condition and making packet routing decisions based, at least in part, on the congestion condition.

11. The method of any of claims 1 to 10, wherein performing the congestion management operations comprises remapping (541) the one or more congestion bits in the header field of the eCPRI packet to Explicit Congestion Notification (ECN) bits in a network layer packet.

12. The method of claim 11, wherein the ECN bits (101B) are to be used by a source network device to reduce latency associated with subsequent packets containing data to be transmitted through the packet fronthaul underlay network, wherein latency is to be reduced, at least in part, by reducing a bitrate from the source network device to a user equipment (UE) device.

13. A machine-readable medium having program code stored thereon which, when executed by one or more processors, are to cause performance of congestion control operations within a packet fronthaul underlay network, the congestion control operations comprising: monitoring (601) for congestion conditions within the packet fronthaul underlay network of a radio access network, RAN, the packet fronthaul underlay network comprising an enhanced Common Public Radio Interface, eCPRI, and a plurality of Layer 2, L2, switches (220, 230, 240) to communicate eCPRI packets (250) embedded in L2 frames;writing (603), by an L2 switch (220) of the plurality of L2 switches (220, 230, 240), one or more congestion bits in a header field (100) of an eCPRI packet (250) responsive to detecting the congestion conditions, the one or more congestion bits to provide a notification of the congestion conditions to one or more other L2 switches (230, 240) through which the eCPRI packet is processed and to a baseband unit (BBU) or distributed unit (DU) (210) terminating the eCPRI interface, and mapping (605), by the BBU or DU (210), the congestion conditions to network connections external to the packet fronthaul underlay network responsive to the notification of the congestion conditions.

14. The machine-readable medium of claim 13, wherein the network connections external to the packet fronthaul underlay network comprise Layer 3 (L3) network connections (542, 544).

15. The method of claim 13 or 14, wherein the one or more congestion bits are mapped to L3 congestion bits usable over the L3 network connections to provide low latency, low loss, and scalable throughput (L4S) (541, 543).

16. The machine-readable medium of any of claims 13 to 15, wherein monitoring for congestion conditions comprises monitoring utilization of one or more queues (222) of the L2 switch (220), measuring an amount of time for eCPRI packets to be received and transmitted by the L2 switch, or both.

17. The machine-readable medium of any of claims 13 to 16, wherein the L2 frames comprise Ethernet frames (110) and wherein an Ethernet frame is to include a payload (160) comprising an eCPRI packet and an Ethernet header comprising (i) an Ether Type field (153) indicating that the payload includes the eCPRI packet; (ii) a destination medium access control, MAC, address (150); and (iii) a source MAC address (151).

18. The machine-readable medium of any of claims 13 to 17, the header field comprises a reserved header field (110A) and the one or more congestion bits comprise three bits (101B) in the reserved header field of the eCPRI packet, wherein two bits of the three bits are to indicate the congestion condition.

19. The machine-readable medium of claim 18, wherein a third bit of the three bits (10 IB) is to indicate supplemental information related to detection of the congestion condition.

20. The machine-readable medium of claim 19, wherein the supplemental information comprises an indication of whether the notification of the congestion condition originated from a far-end (205) of the packet fronthaul underlay network or a near-end (210) of the packet fronthaul underlay network.

21. The machine-readable medium of claim 20, wherein the far-end comprises a radio unit (RU) (205) and the near-end comprises the BBU or DU (210).

22. The machine-readable medium of any of claims 13 to 21, wherein performing the congestion management operations by the one or more other L2 switches comprises one or both of: prioritizing transmission of the eCPRI packet relative to other eCPRI packets not associated with a congestion condition and making packet routing decisions based, at least in part, on the congestion condition.

23. The machine-readable medium of any of claims 13 to 22, wherein performing the congestion management operations comprises remapping the one or more congestion bits in the header field of the eCPRI packet to Explicit Congestion Notification (ECN) bits in a network layer packet.

24. The machine-readable medium of claim 23, wherein the ECN bits are to be used by a source network device to reduce latency associated with subsequent packets containing data to be transmitted through the packet fronthaul underlay network, wherein latency is to be reduced, at least in part, by reducing a bitrate from the source network device to a user equipment (UE) device.

Citation Information

Patent Citations

  • Method and apparatus for indicating congestion in a source routed network

    US8081566B1

  • Radio access network intelligent application manager

    WO2023091664A1

Cited By

  • Enhanced front-haul interface to support low latency communication

    US12727016B2

  • Enhanced front-haul interface to support low latency communication

    US20250393061A1