Method and device for congestion control

The method and network node improve congestion control in wireless networks by estimating queue delay and using a difference between queue and delay values to adaptively mark packets, addressing sudden latency peaks and enhancing link utilization.

WO2026095840A1PCT designated stage Publication Date: 2026-05-07TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Filing Date
2024-10-28
Publication Date
2026-05-07

AI Technical Summary

Technical Problem

Existing Low-Latency, Low-Loss, Scalable Throughput (L4S) solutions for congestion control in wireless networks are inadequate due to sudden latency peaks caused by variable scheduling and processing delays, leading to unnecessary packet marking and reduced link utilization.

Method used

A method and network node that estimate queue delay by removing variable components like scheduling and processing delays, using a difference between queue delay and delay value to determine packet marking proportions, thereby improving congestion control robustness and reducing unnecessary marking.

Benefits of technology

Enhances congestion control in wireless networks by maintaining low latency and high link utilization through adaptive packet marking based on effective queue delay, reducing reliance on variable factors.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SE2024050916_07052026_PF_FP_ABST
    Figure SE2024050916_07052026_PF_FP_ABST
Patent Text Reader

Abstract

The invention relates to a method (200) and a network node (101) for enabling congestion control by obtaining (201) a queue delay and a delay value, wherein the delay value comprises one or more of a scheduling delay and a processing delay, and determining (203) a proportion of packets of the queue to be marked with a congestion indicator, wherein the proportion is based on a value obtained as a difference between the queue delay and the delay value.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] METHOD AND DEVICE FOR CONGESTION CONTROL

[0002] TECHNICAL FIELD

[0003] The invention relates to a method for enabling congestion control, a network node for enabling congestion control, and corresponding computer program, computer-readable data carrier, and data carrier signal.

[0004] BACKGROUND

[0005] Emerging time-critical communication applications, such as cloud-driven artificial reality (AR) / virtual reality (VR), cloud gaming, real-time video conferencing, vehicle to everything (V2X), teleoperated driving, and drones operated through mobile networks, differently from traditional mobile broadband (MBB), are sensitive to delays caused by cellular network congestion and thus require reliable low latency (or bounded low latency). Congestion delays may be unpredictable (and thus cannot be avoided entirely). In order to realize high data rate time-critical applications at a large scale with Fifth Generation (5G) networks, it is essential that these applications are able to react to congestion delays and meet desired latency targets by adapting bitrates in real time.

[0006] Low-Latency, Low-Loss, Scalable Throughput (L4S) is an existing method for fast congestion indication originally defined for wired networks. In state-of-the-art L4S solutions, marking of a packet as congested is typically triggered by thresholds in the transport node input queue and is used to signal a congested situation. Given that most transport nodes in wired networks have a fairly stable or slowly varying output rate, L4S gives good results. L4S works on the Internet Protocol (IP) layer, thus being technology agnostic, it has been applied to radio access networks (RAN). For RAN, the output rate variations over the wireless link may be more frequent than in traditional wired solutions which leads to sudden latency peaks even when L4S is used. Further information on L4S may be found in Internet Engineering Task Force (IETF) RFC 9330 (2023).

[0007] SUMMARY It is an object of the invention to provide an improved congestion control mechanism for a wireless communications network.

[0008] To achieve said object, in a first aspect of the invention, there is provided a method for enabling congestion control. The method is performed by a network node of a wireless communications network. The method comprises obtaining a queue delay. The method comprises obtaining a delay value. The delay value comprises one or more of a scheduling delay and a processing delay. The method comprises determining a proportion of packets of the queue to be marked with a congestion indicator. The proportion is based on a value obtained as a difference between the queue delay and the delay value.

[0009] According to a second aspect of the invention, there is provided a network node for enabling congestion control of a wireless communications network. The network node comprises a processor and a memory. The memory has stored thereon instructions executable by the processor. The instructions, when executed by the processor, cause the network node to obtain a queue delay. The instructions, when executed by the processor, cause the network node to obtain a delay value. The delay value comprises one or more of a scheduling delay and a processing delay. The instructions, when executed by the processor, cause the network node to determine a proportion of packets of the queue to be marked with a congestion indicator. The proportion is based on a value obtained as a difference between the queue delay and the delay value.

[0010] According to a third aspect of the invention, there is provided a computer program comprising instructions which, when run in a processing unit of a computing device, cause the computing device to perform the method according to the first aspect of the invention.

[0011] According to a fourth aspect of the invention, there is provided a computer-readable data carrier having stored thereon the computer program according to the third aspect of the invention.

[0012] According to a fifth aspect of the invention, there is provided a data carrier signal carrying the computer program according to the third aspect of the invention.

[0013] In an embodiment of the first and second aspect of the invention, obtaining a queue delay further comprises estimating the time the last packet arrived in the queue. In an embodiment of the first and second aspect of the invention, obtaining a queue delay further comprises estimating a ratio between length of the queue and service rate.

[0014] In an embodiment of the first and second aspect of the invention, obtaining a delay value further comprises estimating the scheduling as an average time between scheduling events at the network node.

[0015] In an embodiment of the first and second aspect of the invention, obtaining a delay value further comprises estimating the processing delay as an average time the network node takes to process the packets of the queue.

[0016] In an embodiment of the first and second aspect of the invention, the congestion indicator in the packet comprises Low Latency, Low Loss, Scalable Throughput, L4S, or Explicit Congestion Notification, ECN, bit values.

[0017] Certain embodiments may provide one or more of the following technical advantages: robustness against load changes and other factors, such as processing time, that are impacting the latency; reduced unnecessary packet marking and thus higher link utilization.

[0018] BRIEF DESCRIPTION OF THE DRAWINGS

[0019] For better understanding of the present disclosure, and to show more readily how the invention may be carried into effect, reference will now be made, by way of example, to the following drawings, in which:

[0020] Figure 1 shows an example of system according to embodiments;

[0021] Figure 2 shows a flow chart illustrating a method according to embodiments;

[0022] Figure 3 shows an example of function describing how the marking probability varies depending on the queue delay and marking thresholds; and Figure 4 is a block diagram depicting a network node according to an embodiment.

[0023] DETAILED DESCRIPTION

[0024] Embodiments will be illustrated herein with reference to the accompanying drawings. These embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the inventive concept to those skilled in the art.

[0025] Figure l is a schematic diagram illustrating an example of a wireless communications network 100 where embodiments presented herein may be applied. The wireless communications network 100 could be a third generation (3G) telecommunications network, a fourth generation (4G) telecommunications network, a fifth generation (5G) telecommunications network, or any evolvement thereof, and support any Third Generation Partnership Project (3 GPP) telecommunications standard, where applicable. The wireless communications network 100 may alternatively be a non-cellular and / or a non-3GPP network, such as an IEEE 802.11 communications network, or any other wireless IEEE compliant communications network. The wireless communication system 100 comprises a network node 101 provided in a (radio) access network (RAN) 102. The (radio) access network 102 is configured to provide network access to first senders / receivers 103a, 103b, 103c. The (radio) access network 102 is operatively connected to a core network 105. The core network 105 is in turn operatively connected to a data network 107, such as the Internet. One or more second senders / receivers 109a-c may be provided in the data network. The first senders / receivers 103a, 103b, 103c are thereby enabled to, via the (radio) access network 102, exchange data with, the one or more second senders / receivers 109a-c. Examples of network nodes 101 are radio base stations, base transceiver stations, NodeBs, evolved NodeBs, gNBs, radio access network nodes, access points, integrated access and backhaul nodes, User Plane function. Examples of first and second senders / receivers 103a, 103b, 103c, 109a-c are user equipment (UE), wireless devices, mobile stations, mobile phones, handsets, wireless local loop phones, smartphones, laptop computers, tablet computers, network equipped sensors, network equipped vehicles, and so- called Internet of Things devices. The herein disclosed embodiments might, however, also be used in the context of virtualized switches, virtualized routers, or any other type of virtualized networks on top of which latency-sensitive applications are hosted. Network congestion occurs when an endpoint (for example one or more senders 103a, 103b, 103c) transmits at a higher bitrate than what can be sustained by the network (e.g., a node or a link). Moreover, in case of RAN, it is hard for an endpoint to know if a delay increase is due to the network congestion or some other factor characterized by radio access networks, like scheduling jitter, discontinuous reception (DRX), handover, Radio Link Control (RLC) layer retransmission. Active queue management (AQM) is used to mitigate the problem of large delays. AQM selectively drops packets when a queue delay exceeds a given threshold, thus implicitly signaling to the endpoints to reduce the number of packets delivered to the network. Explicit congestion notification (ECN) uses AQM but with explicit signaling by using 2 bits in the Internet Protocol (IP) header to indicate to the endpoints that packets normally dropped are instead marked as congested (process called herein congestion marking). The receiver of the packet echoes the congestion indication in the marked packet to the sender, which reduces its transmission rate as if it detected a dropped packet.

[0026] Low-Latency, Low-Loss, Scalable Throughput (L4S) is an evolution of ECN, where one of the ECN codepoints is reserved to L4S, as defined in IETF RFC 9330 (2023). In L4S, the congestion marking is based on at least two defined (fixed) thresholds (a lower threshold and an upper threshold): if the queue delay is below the lower threshold, no packets are marked as congested and if the queue delay is above the upper threshold all packets are marked as congested. If the queue delay is between the two thresholds, the probability of marking a packet as congested is calculated according to an arbitrary probability function, e.g., a linear function. The queue delay is the time a packet waits in the queue of the network node until it can be processed by the network node. The queue delay may depend on, for example, scheduling algorithm at the network node and load of the network node. In 4G and 5G mobile wireless networks, the scheduler in the eNB / gNB controls the scheduling algorithm, i.e., the allocation of shared radio resources used as a shared transport media to / from a UE in a cell. At low system load, i.e., when only one or a few users have data waiting for transmission at each scheduling instant, the selected scheduling algorithm does not impact the quality of service (QoS) for each data flow. However, at a high load or at congestion, the choice of scheduling algorithm becomes important to be able to satisfy the QoS requirement for each data flow and it will impact the queue delay. Examples of scheduling algorithms are round robin, resource fair, proportional fair, delay based or maximum rate. L4S congestion marking based on defined (fixed) thresholds might work well for specific load profiles while it may trigger the packet marking too early or too late in different scenarios. The invention disclosed herein makes it possible to improve congestion control in a wireless communication network, such as RAN. The invention is implemented by obtaining a queue delay and by obtaining a delay value. The delay value comprises one or more of a scheduling delay and a processing delay. The invention further comprises determining a proportion of packets of the queue to be marked with a congestion indicator. The proportion is determined based on a value obtained as a difference between the queue delay and the delay value.

[0027] By removing variable components, such as scheduling delay and a processing delay, from the queue delay, this solution allows the congestion marking algorithm to be robust against load changes and other factors that impact the queue delay. Without this solution the selection of (marking) thresholds will depend on factors such as load and processing time which may vary over time. Therefore, this solution reduces unnecessary packet marking and thereby allows to achieve a higher link utilization while keeping the latency low and flat. For example, this solution avoids the start of packet marking when the variable components, e.g., scheduling delay and processing delay, have a higher value than the marking thresholds, thus causing the marking of packets without presence of a queue.

[0028] Figure 2 shows a method 200 for enabling congestion control in a wireless communications network, e.g., RAN. In one embodiment, the method 200 may be carried out by a network node 101 of the wireless communications network. The method 200 comprises obtaining 201 a queue delay. The queue delay may refer to the delay of a queue at the network node 101 or of a queue at a further node of the wireless communications network, e.g., a first sender 103a. For example, in a downlink scenario, the queue delay may refer to the delay of the queue comprising packets to be transmitted to a receiver UE. The packets may be saved in a buffer at the base station, i.e., the network node 101. In other words, the queue is at the network node 101. In a further example, such as in an uplink scenario, the queue delay may refer to the queue comprising packets transmitted by a UE. The packets may be saved in a buffer at the UE. In other words, the queue is at the UE.

[0029] The queue delay is the time a packet waits in the queue until it can be processed by the network node 101. The queue delay depends for example on the scheduling algorithm at the network node 101 and on the load of the network node 101, e.g., how many users / first senders / receivers, are connected to the network node 101. The queue may refer to the queue reserved to the L4S traffic if there are two queues, wherein one is reserved to L4S traffic and the other one is reserved to non-L4S traffic.

[0030] The queue delay may be obtained by estimating the time the last packet arrived in the queue. Therefore, the method may further comprise estimating 207 the time the last packet arrived in the queue. Alternatively, the queue delay may be obtained by estimating a ratio between length of the queue (i.e., number of packets in the queue) and service rate (i.e., average number of drained packets, i.e., packets removed from the queue, per unit of time). Therefore, the method may further comprise estimating 209 a ratio between length of the queue and service rate. Alternatively, the queue delay may be obtained by estimating a ratio between the length of the queue in bits and the bitrate.

[0031] The queue delay may be an average value obtained over a certain time interval.

[0032] The method 200 further comprises obtaining 202 a delay value. The delay value comprises one or more of a scheduling delay and a processing delay. The delay value may further comprise any variable component affecting the queue delay. A further variable component may be transfer delay, i.e., time for a packet to be sent from the sender side medium access control (MAC) layer until it is received on the MAC layer on the receiver side. The delay value may be an average value. For example, the delay value may be calculated as the average time between scheduling occasions based on the formula:

[0033] Delay value = (l-a)*(Tnow- Tlast) + a*(Tnow-Tlast) wherein a is an averaging factor between 0 and 1 and Tlastis the time where the queue was last scheduled and Tnowis the current time.

[0034] The scheduling delay may be obtained by estimating an average time between scheduling occasions, i.e., when a user / device is scheduled, at the network node. Therefore, the method may further comprise estimating 211 the scheduling as an average time between scheduling events at the network node. The processing delay may be obtained by estimating an average time the network node takes to process the packets of the queue. Therefore, the method may further comprise estimating 213 the processing delay as an average time the network node takes to process the packets of the queue. Instead of using the obtained queue delay, called qDelay, the congestion marking in the network node 101 is done based on a value, called EffectiveQueueDelay, obtained as a difference between the queue delay and the delay value. The congestion marking is started when the EffectiveQueueDelay is larger than a first defined (fixed) threshold, and the marking probability is increased linearly as the EffectiveQueueDelay increases. All packets are marked as congested when EffectiveQueueDelay is higher than a second defined (fixed) threshold. Therefore, the method 200 further comprises determining 203 a proportion of packets in the queue to be marked with a congestion indicator. The proportion is determined based on a value, i.e., the EffectiveQueueDelay, obtained as a difference between the queue delay and the delay value. The EffectiveQueueDelay may be determined for example based on the formula:

[0035] EffectiveQueueDelay = MAX(0, qDelay - delay value)

[0036] If, for example, the queue delay is lower than the processing and scheduling delay, the EffectiveQueueDelay is zero as the queue will be drained on each scheduling occasion.

[0037] The method 200 further comprises marking 205 the proportion of packets with the congestion indicator. The congestion indicator in the packet may comprise L4S or ECN bit values.

[0038] The receiver of a market packet may use an end-to-end protocol to relay the congestion information to the sender, which adapts the media rate downwards in proportion to the fraction of marked packets.

[0039] It will be appreciated that the method 200 may comprise additional, alternative, or modified, steps in accordance with what is described throughout this disclosure.

[0040] An example scenario where the invention may be implemented is in relation to a number of UEs connected to the 5G RAN. The 5G RAN provides the congestion detection and marking based on the EffectiveQueueDelay according to the method 200 with reference to Figure 2. For example, the estimated queue delay for a UE may be 10 ms and the delay value obtained as a sum of scheduling and processing delay may be 7.5 ms. The EffectiveQueueDelay according to the solution will therefore be 2.5 ms. An incoming packet should be marked as congested or not based on the marking probability pMark(qDelay) that may be described by the formula: pMarkfqDelay) =

[0041] Wherein lower congestion threshold (ThLow), and an upper congestion threshold (ThHigh) may be thresholds specified when setting up the system. Based on this formula, no packets are marked as congested when EffectiveQueueDelay < ThLow, all packets are marked as congested when EffectiveQueueDelay > ThHigh. When ThLow< EffectiveQueueDelay < Th.High, the proportion of packets marked as congested follows the value calculated based on an arbitrary probability function, e.g., the linear function of the formula above. Figure 3 shows an example of a graph representing this formula, wherein ThLow= 4 ms and ThHigfl= 14 ms.

[0042] Figure 4 shows a block diagram illustrating an embodiment of a network node 101, comprising processor circuitry 401, a computer-readable data carrier, such as the memory 402, and network interface circuitry 403. The processing circuitry 401 may comprise one or more processors, such as Central Processing Units (CPUs), microprocessors, application processors, applicationspecific processors, Graphics Processing Units (GPUs), and Digital Signal Processors (DSPs) including image processors, or a combination thereof, and the memory 402 comprising the computer program comprising instructions. When executed by the processor(s), the instructions cause the network node 101 to become operative in accordance with embodiments of the invention described herein, in particular with reference to Figure 2.

[0043] More specifically, the network node 101 becomes operative to obtain 201 a queue delay. The network node 101 becomes further operative to obtain 202 a delay value. The delay value comprises one or more of a scheduling delay and a processing delay. The network node 101 becomes further operative to determine 203 a proportion of packets of the queue to be marked with a congestion indicator. The proportion is based on a value obtained as a difference between the queue delay and the delay value. The network node 101 may become further operative to mark 205 the proportion of packets with the congestion indicator. The congestion indicator in the packet may for example comprise L4S or ECN bit values. According to an embodiment, the network node 101 may become operative to obtain 201 a queue delay by estimating the time the last packet arrived in the queue. According to an alternative embodiment, the network node 101 may become operative to obtain 201 a queue delay by estimating 209 a ratio between length of the queue and service rate. The network node 101 may become operative to obtain 202 a delay value by estimating 211 the scheduling as an average time between scheduling events at the network node. The network node 101 may become operative to obtain 202 a delay value by estimating 213 the processing delay as an average time the network node takes to process the packets of the queue.

[0044] The computer program 404 may be stored in a computer-readable data carrier, such as the memory 402. Alternatively, the computer program 404 may be carried by a data carrier signal, e.g., downloaded to the memory 402 via the network interface circuitry 403. The memory 402 may, e.g., be a Random-Access Memory (RAM), a Read-Only Memory (ROM), a Flash memory, or the like. The computer program 404 may be downloaded to the memory 402 by means of the network interface circuitry 403, as a data carrier signal carrying the computer program 404. The network interface circuitry 403 may comprise one or more of a cellular modem (e.g., GSM, UMTS, LTE, 5G, or higher generation), a WLAN / Wi-Fi modem, a Bluetooth modem, an Ethernet interface, an optical interface, or the like, for exchanging data between the network node 101 and the first senders / receivers 103a, 103b, 103c and other computing devices, communications devices, a radio-access network, and / or the Internet. The processing circuitry 401 may alternatively or additionally comprise one or more Application- Specific Integrated Circuits (ASICs), Field-Programmable Gate Arrays (FPGAs), or the like, which are operative to cause the network node 101 to become operative in accordance with embodiments of the invention described herein.

Claims

CLAIMS1. A method (200) for enabling congestion control, performed by a network node of a wireless communications network, the method comprising- obtaining (201) a queue delay,- obtaining (202) a delay value, wherein the delay value comprises one or more of a scheduling delay and a processing delay, and- determining (203) a proportion of packets of the queue to be marked with a congestion indicator, wherein the proportion is based on a value obtained as a difference between the queue delay and the delay value.

2. The method (200) according to claim 1, further comprising- marking (205) the proportion of packets with the congestion indicator.

3. The method (200) according to any of claims 1-2, wherein obtaining (201) a queue delay further comprises- estimating (207) the time the last packet arrived in the queue.

4. The method (200) according to any of claims 1-2, wherein obtaining (201) a queue delay further comprises- estimating (209) a ratio between length of the queue and service rate.

5. The method (200) according to any of claims 1-4, wherein obtaining (202) a delay value further comprises- estimating (211) the scheduling as an average time between scheduling events at the network node.

6. The method (200) according to any of claims 1-5, wherein obtaining (202) a delay value further comprises- estimating (213) the processing delay as an average time the network node takes to process the packets of the queue.

7. The method (200) according to any of claims 1-6, wherein the congestion indicator in the packet comprises Low Latency, Low Loss, Scalable Throughput, L4S, or Explicit Congestion Notification, ECN, bit values.

8. A network node (101) for enabling congestion control of a wireless communications network, the network node (101) comprising a processor (401) and a memory (402), the memory (402) having stored thereon instructions executable by the processor (401), wherein the instructions, when executed by the processor (401), cause the network node (101) to:- obtain (201) a queue delay- obtain (202) a delay value, wherein the delay value comprises one or more of a scheduling delay and a processing delay, and- determine (203) a proportion of packets of the queue to be marked with a congestion indicator, wherein the proportion is based on a value obtained as a difference between the queue delay and the delay value.

9. The network node (101) according to claim 8, wherein the instructions, when executed by the processor (401), cause the network node (101) to- mark (205) the proportion of packets with the congestion indicator.

10. The network node (101) according to any of claims 8-9, wherein the instructions, when executed by the processor (401), cause the network node (101) to obtain (201) a queue delay by- estimating (207) the time the last packet arrived in the queue.

11. The network node (101) according to any of claims 8-9, wherein the instructions, when executed by the processor (401), cause the network node (101) to obtain (201) a queue delay by- estimating (209) a ratio between length of the queue and service rate.

12. The network node (101) according to any of claims 8-11, wherein the instructions, when executed by the processor (401), cause the network node (101) to obtain (202) a delay value by- estimating (211) the scheduling as an average time between scheduling events at the network node.

13. The network node (101) according to any of claims 8-12, wherein the instructions, when executed by the processor (401), cause the network node (101) to obtain (202) a delay value by- estimating (213) the processing delay as an average time the network node takes to process the packets of the queue.

14. The network node (101) according to any of claims 8-13, wherein the congestion indicator in the packet comprises Low Latency, Low Loss, Scalable Throughput, L4S, or Explicit Congestion Notification, ECN, bit values.

15. A computer program (404) comprising instructions which, when run in a processing unit of a network node, cause the network node to perform the method (200) according to any one of claims 1 to 7.

16. A computer-readable data carrier (402) having stored thereon the computer program (404) according to claim 15.

17. A data carrier signal carrying the computer program (404) according to claim 15.