Context-aware mode for radio link control

The context-aware mode in RLC acknowledgment mode addresses window stalling and retransmission inefficiencies by dynamically adjusting the transmitting window based on delay-critical data, enhancing latency and resource utilization.

WO2025208626A1PCT designated stage Publication Date: 2025-10-09APPLE INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/086247
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-05
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Existing radio link control (RLC) acknowledgment mode (AM) protocols face inefficiencies due to window stalling and unnecessary retransmissions of PDU sets, leading to increased latency and resource wastage, particularly for delay-critical data.

Method used

Implementing a context-aware mode (CAM) that adjusts the transmitting window based on delay-critical and importance-based discarding, using parameters like Tx_Next_Ack and Window_Size, to prevent window stalling and optimize data flow.

Benefits of technology

Enhances latency performance by ensuring timely transmission of urgent data and reducing resource wastage, thereby improving user experience and network efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024086247_09102025_PF_FP_ABST
    Figure CN2024086247_09102025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to devices and components, including apparatus, systems, and methods for updating the transmitting or receiving windows in the radio link control (RLC) layer.
Need to check novelty before this filing date? Find Prior Art

Description

CONTEXT-AWARE MODE FOR RADIO LINK CONTROLTECHNICAL FIELD

[0001] This application relates generally to communication networks and, in particular, to conditionally adjusting the transmitting and receiving windows in radio link control (RLC) acknowledgment mode (AM) .BACKGROUND

[0002] Third Generation Partnership Project (3GPP) Technical Specifications (TSs) define standards for wireless networks. These TSs describe aspects related to user plane and control plane signaling over the networks.BRIEF DESCRIPTION OF THE DRAWINGS

[0003] FIG. 1 illustrates a network environment in accordance with some embodiments.

[0004] FIG. 2 illustrates aspects of a user equipment in further detail in accordance with some embodiments.

[0005] FIG. 3 illustrates a timing diagram in accordance with some embodiments.

[0006] FIG. 4 illustrates a radio link control signal flow diagram in accordance with some embodiments.

[0007] FIG. 5 illustrates data flow in accordance with some embodiments.

[0008] FIG. 6 illustrates aspects of a transmitting entity in accordance with some embodiments.

[0009] FIG. 7 illustrates a timing diagram for updating the transmitting window in accordance with some embodiments.

[0010] FIG. 8 illustrates another operation flow / algorithmic structure in accordance with some embodiments.

[0011] FIG. 9 illustrates another operation flow / algorithmic structure in accordance with some embodiments.

[0012] FIG. 10 illustrates another operation flow / algorithmic structure in accordance with some embodiments.

[0013] FIG. 11 illustrates another operation flow / algorithmic structure in accordance with some embodiments.

[0014] FIG. 12 illustrates a user equipment in accordance with some embodiments.

[0015] FIG. 13 illustrates a network node in accordance with some embodiments.DETAILED DESCRIPTION

[0016] The following detailed description refers to the accompanying drawings. The same reference numbers may be used in different drawings to identify the same or similar elements. In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular structures, architectures, interfaces, and techniques to provide a thorough understanding of the various aspects of various embodiments. However, it will be apparent to those skilled in the art having the benefit of the present disclosure that the various aspects of the various embodiments may be practiced in other examples that depart from these specific details. In certain instances, descriptions of well-known devices, circuits, and methods are omitted so as not to obscure the description of the various embodiments with unnecessary detail. For the purposes of the present document, the phrases “A / B” and “A or B” mean (A) , (B) , or (A and B) ; and the phrase “based on A” means “based at least in part on A, ” for example, it could be “based solely on A” or it could be “based in part on A. ”

[0017] The following is a glossary of terms that may be used in this disclosure.

[0018] The term “circuitry, ” as used herein, refers to, is part of, or includes hardware components that are configured to provide the described functionality. The hardware components may include an electronic circuit, a logic circuit, a processor (shared, dedicated, or group) or memory (shared, dedicated, or group) , an application-specific integrated circuit (ASIC) , a field-programmable device (FPD) (e.g., a field-programmable gate array (FPGA) , a programmable logic device (PLD) , a complex PLD (CPLD) , a high-capacity PLD (HCPLD) , a structured ASIC, or a programmable system-on-a-chip (SoC) ) , or a digital signal processor (DSP) . In some embodiments, the circuitry may execute one or more software or firmware programs to provide at least some of the described functionality. The term “circuitry” may also refer to a combination  of one or more hardware elements (or a combination of circuits used in an electrical or electronic system) with the program code used to carry out the functionality of that program code. In these embodiments, the combination of hardware elements and program code may be referred to as a particular type of circuitry.

[0019] The term “processor circuitry, ” as used herein, refers to, is part of, or includes circuitry capable of sequentially and automatically carrying out a sequence of arithmetic or logical operations, recording, storing, or transferring digital data. The term “processor circuitry” may refer to an application processor, baseband processor, central processing unit (CPU) , graphics processing unit, single-core processor, dual-core processor, triple-core processor, quad-core processor, or any other device capable of executing or otherwise operating computer-executable instructions, such as program code, software modules, or functional processes.

[0020] The term “interface circuitry, ” as used herein, refers to, is part of, or includes circuitry that enables the exchange of information between two or more components or devices. The term “interface circuitry” may refer to one or more hardware interfaces, for example, buses, I / O interfaces, peripheral component interfaces, and network interface cards.

[0021] The term “user equipment” or “UE” as used herein refers to a device with radio communication capabilities that may allow a user to access network resources in a communications network. The term “user equipment” or “UE” may be considered synonymous to, and may be referred to as, client, mobile, mobile device, mobile terminal, user terminal, mobile unit, mobile station, mobile user, subscriber, user, remote station, access agent, user agent, receiver, radio equipment, reconfigurable radio equipment, or reconfigurable mobile device. Furthermore, the term “user equipment” or “UE” may include any type of wireless / wired device or any computing device, including a wireless communications interface.

[0022] The term “computer system, ” as used herein, refers to any type of interconnected electronic devices, computer devices, or components thereof. Additionally, the term “computer system” or “system” may refer to various components of a computer that are communicatively coupled with one another. Furthermore, the term “computer system” or “system” may refer to multiple computer devices or multiple computing systems that are communicatively coupled with one another and configured to share computing or networking resources.

[0023] The term “resource” as used herein refers to a physical or virtual device, a physical or virtual component within a computing environment, or a physical or virtual component within a particular device, such as computer devices, mechanical devices, memory space, processor / CPU time, processor / CPU usage, processor and accelerator loads, hardware time or usage, electrical power, input / output operations, ports or network sockets, channel / link allocation, throughput, memory usage, storage, network, database and applications, or workload units. A “hardware resource” may refer to compute, storage, or network resources provided by physical hardware elements. A “virtualized resource” may refer to compute, storage, or network resources provided by virtualization infrastructure to an application, device, or system. The term “network resource” or “communication resource” may refer to resources that are accessible by computer devices / systems via a communications network. The term “system resources” may refer to any kind of shared entities to provide services and may include computing or network resources. System resources may be considered as a set of coherent functions, network data objects, or services accessible through a server where such system resources reside on a single host or multiple hosts and are clearly identifiable.

[0024] The term “channel, ” as used herein, refers to any transmission medium, either tangible or intangible, that is used to communicate data or a data stream. The term “channel” may be synonymous with or equivalent to “communications channel, ” “data communications channel, ” “transmission channel, ” “data transmission channel, ” “access channel, ” “data access channel, ” “link, ” “data link, ” “carrier, ” “radio-frequency carrier, ” or any other like term denoting a pathway or medium through which data is communicated. Additionally, the term “link, ” as used herein, refers to a connection between two devices for the purpose of transmitting and receiving information.

[0025] The terms “instantiate, ” “instantiation, ” and the like as used herein refers to the creation of an instance. An “instance” also refers to a concrete occurrence of an object, which may occur, for example, during the execution of program code.

[0026] The term “connected” may mean that two or more elements at a common communication protocol layer have an established signaling relationship with one another over a communication channel, link, interface, or reference point.

[0027] The term “network element, ” as used herein, refers to physical or virtualized equipment or infrastructure used to provide wired or wireless communication network services. The term “network element” may be considered synonymous with or referred to as a networked computer, networking hardware, network equipment, network node, or a virtualized network function.

[0028] The term “information element” refers to a structural element containing one or more fields. The term “field” refers to individual contents of an information element or a data element that contains content. An information element may include one or more additional information elements.

[0029] FIG. 1 illustrates a network environment 100 in accordance with some embodiments. The network environment 100 may include user equipment (UE) 104 communicatively coupled with base station 108 of a radio access network (RAN) 110. The UE 104 and the base station 108 may communicate over air interfaces compatible with 3GPP TSs, such as those that define a Fifth Generation (5G) new radio (NR) system or a later system. The base station 108 may provide user plane and control plane protocol terminations toward the UE 104.

[0030] The 3GPP TSs may define a protocol stack, e.g., network protocol stack 130 or UE protocol stack 135. The protocol stack may be a set of communication protocols. In some examples, the protocol stack may be designed in a layered architecture for modularity, with each layer providing specific functions. The design may allow changes in one layer without affecting others, facilitating upgrades and improvements. The layers may include a physical layer (Layer 1, L1, or PHY) responsible for establishing and maintaining a physical link 120. Bits of control and data may transmit over the air interface and the physical link 120. The protocol stack, e.g., network protocol stack 130 or UE protocol stack 135, may include a data link layer (Layer 2, L2) , which may be divided into a medium access control (MAC) , a radio link control (RLC) 118, and a packet data convergence protocol (PDCP) 116 sub-layers. Layer 2 may be responsible for managing the UE 104 connectivity and movement between cells and networks. In some instances, application layer 114 is not included in the protocol stack.

[0031] The RLC 118 sub-layer may be responsible for reliable data transmission. The RLC 118 may include a transmitting entity 150 and a receiving entity 160. The transmitting entity 150 at the transmitting end may segment the data from higher layers, e.g., PDCP layer 116 or application layer 114, and add sequence numbers and headers. These packets may then be  transmitted over the air interface, e.g., via the physical link 120. At the receiver end, the receiving entity 160 of the RLC layer 118 may reassemble the packets back into the original data, e.g., using the sequence numbers and header information to ensure correct order and to detect any missing packets. If a packet is detected as missing or erroneous, the RLC layer 118 at the receiver can request retransmission from the transmitter.

[0032] In the downlink transmission, the base station 108 is the transmitting end, and the UE 104 is the receiving end. The transmitting entity 150 of the RLC 118 of the base station 108 sends the packets via the physical link 120 to the UE 104. The receiving entity 160 of the RLC layer 118 of the UE 104 receives and reassembles the packets. In some embodiments, the packet transmitted by an RLC layer 118 may be referred to as an RLC protocol data unit (PDU) .

[0033] The receiving entity 160 of RLC layer 118 of the base station 108 may be called a peer entity to the transmitting entity 150 of RLC layer 118 of the UE 104. Similarly, the receiving entity 160 of RLC layer 118 of the UE 104 may be called a peer entity to the transmitting entity 150 of RLC layer 118 of the base station 108.

[0034] In some instances, a packet received by a layer from higher layers is called the service data unit (SDU) of that layer. The packet transmitted by the layer to lower layers is called the PDU of that layer. For example, packets received to PDCP layer 116 are called PDCP SDUs, and packets sent from PDCP layer 116 to RLC layer 118 are called PDCP PDUs.

[0035] The RLC layer 118 may be configured as an acknowledgment mode (AM) RLC. In AM RLC, each transmitted PDU is assigned a sequence number. The receiver may send acknowledgments (ACKs) for correctly received PDUs and negative acknowledgments (NACKs) for missing or erroneous PDUs. Upon receiving a NACK, or in the absence of an ACK associated with a PDU, the transmitter may retransmit the corresponding PDU.

[0036] In some embodiments, the application layer 114 may generate packets and group them in PDU sets. The PDCP layer 116 may receive the packets and generate PDCP PDUs. Each PDCP PDU may be associated with one or more application layer packets or a PDU set. The RLC layer 118 may receive the PDCP PDUs and generate RLC PDUs. Each RLC PDU may be associated with one or more PDCP PDUs and similarly may be associated with one or more application layer packets or a PDU set.

[0037] In some embodiments, when a PDCP SDU is received from the upper layer, the transmitting PDCP entity may start a discard timer. The discard timer may track the buffered time of each SDU at the PDCP layer 116. In some instances, when the discard timer expires for a PDCP SDU or the successful delivery of the PDCP SDU is confirmed, e.g., via an ACK, the transmitting PDCP entity may discard the PDCP SDU along with the corresponding PDCP PDU.

[0038] In some instances, discarding PDCP SDUs that are not successfully delivered may cause the retransmission of the entire PDU set associated with the discarded PDCP SDUs. Transmission or retransmission of the entire PDU set associated with already discarded PDCP SDUs may be unnecessary and inefficient, waste network resources, increase latency, and / or negatively impact the user experience. It is desirable to prevent PDCP SDU discarding due to discard timer expiry.

[0039] In some embodiments, when RLC PDUs are delivered to lower layers for transmissions, a copy of the RLC PDU may be buffered for retransmission. The RLC PDU may remain in the retransmission buffer until the receiver side of the RLC receives an ACK or a NACK associated with the RLC PDU. The RLC PDU is removed from the retransmission buffer if an ACK is received. However, if a NACK is received, the transmitting side of the RLC may retransmit the RLC PDU. In some instances, the RLC PDUs in the retransmission buffer may stall or prevent the initial transmission of new RLC PDUs. In some instances, when a packet becomes delay-critical, many other packets belonging to the same PDU set may also become delay-critical. Thus, it is desirable that the transmission and retransmission buffers are not stalled.

[0040] In some embodiments, the transmitting entity 150 may maintain a transmitting window. The transmitting entity 150 may defined by two state variables. In one instance, the first state variable may be the sequence number (SN) of the next PDU to be acknowledged, e.g., Tx_Next_Ack, and the second state variable may be the SN of the last PDU or SDU allowed to be transmitted. The first state variable may represent the lower edge of the transmitting window. In some instances, the second state variable may be the SN following the SN of the last PDU or SDU allowed to be transmitted, e.g., Tx_Next, or the size or length of the transmitting window, e.g., Window_Size.

[0041] The transmitting window may define the range of SNs that the transmitter is allowed to send. PDUs (or SDUs) with SNs that fall within the transmitting window can be transmitted or retransmitted, while PDUs (or SDUs) with SNs outside this window must wait until the window advances and their SN falls within the transmitting window. When the SN of an SDU or a PDU falls within the transmitting window, it may be regarded as the corresponding SDU or PDU being within the transmitting window. When the SN of an SDU or a PDU falls outside the transmitting window, it may be regarded as the corresponding SDU or PDU being outside the transmitting window. The transmitting window may be used to manage the flow of data between the transmitter entity 150 and the receiving entity 160.

[0042] In some instances, the transmitting window may be stalled when the transmitting window cannot advance due to unacknowledged data. Ifthe receiver does not acknowledge the receipt of PDUs within the transmitting window, the window cannot advance. The transmitter cannot send new PDUs until it receives acknowledgments from the receiver, freeing up space in the window. In some instances, the window may move forward when the PDU associated with the first state variable, e.g., Tx_Next_Ack, associated with the SN of the next PDU to be acknowledged, is positively acknowledged. Window stalling is not desirable, particularly for RLC SDUs that are outside the transmitting window and are urgent or critical, as they may not be transmitted immediately despite their urgency.

[0043] In some embodiments, the transmitting entity 150 of the RLC AM may update the value of the first state variable, representing the lower edge of the transmitting window, e.g., the state variable that holds the value of the SN of the next RLC SDU or PDU for which a positive acknowledgment is to be received in-sequence (Tx_Next_Ack) . In some embodiments, the transmitting entity 150 may update the value of the first state variable, e.g., Tx_Next_Ack, when certain conditions are satisfied. In some instances, the conditions may be related to the RLC SDUs outside of the transmitting window, e.g., RLC SDUs associated with SNs beyond or outside the current transmitting window that cannot be transmitted. In some instances, the conditions may be related to the RLC SDUs within the transmitting window, e.g., RLC SDUs associated with SNs within the current transmitting window, such as the RLC SDU associated with the first state variable, e.g., Tx_Next_Ack.

[0044] In some embodiments, the new value of the first state variable, e.g., Tx_Next_Ack, may be determined based on the delay-critical RLC SDUs or important PDU sets. In some embodiments, the new value of the first state variable, e.g., Tx_Next_Ack, is determined based on a fixed configured parameter with an integer value.

[0045] In some embodiments, updating the conditional sliding of the transmitting window may be applied only when network congestion is present or when importance-based discarding is activated for the corresponding data radio bearer (DRB) .

[0046] In some embodiments, the transmitting entity 150 may notify the receiving entity 160 that the transmitting window is conditionally sliding. The notification may include information about the updated transmitting window.

[0047] In some embodiments, the receiving entity 160, in response to a notification from the transmitting entity 150 that indicates the conditional sliding of the transmitting window, may refrain from discarding a received PDU even if its SN falls out of the receiving window. Additionally or, alternatively, the receiving entity 160 may shift and update its receiving window to synchronize with the operation at the transmitting entity 150.

[0048] In some embodiments, the transmitting entity 150 may have access to parameters and information related to whether RLC SDUs or their respective PDCP SDUs are delay-critical. In addition, the transmitting entity 150 may have access to parameters and information related to whether RLC SDUs are associated with important PDCP SDUs. Moreover, the transmitting entity 150 may have access to parameters and information related to the discarded packets by the PDCP layer. The RLC layer, e.g., the transmitting entity 150, may use the above parameters and information to enhance the latency performance of RLC operation by adjusting the transmitting window autonomously when certain conditions relating to the packet context are satisfied to prevent or resolve window stalling. Such enhancement may be called RLC context-aware mode (CAM) .

[0049] FIG. 2 illustrates aspects of the UE 104 in further detail in accordance with some embodiments. The UE 104 may include an application layer 204 that generates application traffic to be transmitted to another device through the network environment 100. In some embodiments,  the application layer 204 may have an XR application that generates XR traffic. However, embodiments are not limited to XR use cases.

[0050] For XR and other services, the application layer 204 may generate PDU sets, with individual PDU sets comprising one or more packets. A packet also referred to as a PDU, may be an Intemet protocol (IP) packet or a non-IP packet. As shown, PDU set #1 may include packets #1-#5, while PDU set #2 includes packets #6 and #7. Each PDU set may be mapped to a different QoS flow. Different PDU sets may be mapped to different traffic flows when they correspond to different traffic flows or modalities.

[0051] The packets of a PDU set may carry a payload of one unit of information generated by the application layer. The unit of information may be a frame or video slice for XR Services, such as those defined in 3GPP Technical Report (TR) 26.926 v18.1.0 (2024-01) , for example. In some implementations, all PDUs in the PDU Set may be needed by an application layer at a destination node to allow the application layer to recover parts or all of the information unit. In other implementations, the application layer on the destination node may still be able to recover parts or all of the information unit, even if some PDUs of a PDU set are missing.

[0052] In some embodiments, the data produced by an application layer of the UE 104 may include multi-modal data. Multi-modal data may include input data from different devices / sensors or output data to different destinations (e.g., one or more UEs) desired for the same task or application. Multi-modal data may include more than one single-modal data (e.g., one type of data) , and there may be a strong dependency among each single-modal data associated with multi-modal data.

[0053] In some embodiments, the data produced by an application layer may be in a data burst. A data burst may include, for example, data produced by the application layer in a short period of time. The data burst may include PDUs from one or more PDU Sets.

[0054] The PDU sets may be provided to a transmitter 208 of the UE 104. The transmitter 208 may be configured to execute a communication protocol stack, for example, UE protocol stack 135 of FIG. 1, to facilitate communication via the network environment 100. The transmitter 208 may implement L2 and L1 functionality. At the L2 level, transmitter 208 may include a service data adaptation protocol (SDAP) layer, a PDCP layer, an RLC layer, and a MAC layer. At the L1  level, the transmitter 208 may include a physical (PHY) layer. Briefly, the SDAP layer may manage QoS flow handling between the QoS flows and the data radio bearers (DRBs) . The PDCP layer may manage robust header (de) compression and security between DRBs and RLC channels. The RLC layer may manage (re-) segmentation and error correction through automatic repeat requests (ARQ) between logical channels and RLC channels. The MAC layer may manage scheduling / priority handling, (de) multiplexing, and hybrid automatic repeat request (HARQ) processes between logical channels and transport channels. The PHY layer may manage the processing of the physical data and control channels.

[0055] In some embodiments, various information may be provided by the core network node to the RAN 110 to assist in handling QoS flows and PDUs. This information may be consistent with that described in 3GPP TR 23.700-60 v18.0.0 (2022-12-21) . This information may include semi-static information for both uplink and downlink, PDU set QoS parameters, and dynamic information for downlink.

[0056] The semi-static information for both uplink and downlink may be provided via the control plane (NGAP) . This information may include periodicity for uplink and downlink traffic of the QoS Flow via time-sensitive communications assistance information (TSCAI)  / time-sensitive communications assistance container (TSCAC) ; and traffic jitter information (e.g., jitter range) associated with each periodicity of the QoS flow.

[0057] The PDU set QoS parameters may include a PDU Set Error Rate (PSER) to define an upper bound for the rate of PDU Sets that have been processed by the sender of a link layer protocol but that are not successfully delivered by the corresponding receiver to the upper layer. See, for example, 3GPP TR 23.700-60. In some instances, a PDU set may be considered as successfully delivered when all PDUs of a PDU Set are delivered successfully. In other instances, other definitions of successful delivery may be made. In some instances, if one PDU of a PDU set is discarded, all remaining PDUs of the PDU set may be discarded.

[0058] The PDU set QoS parameters may further include a PDU Set Delay Budget (PSDB) that defines a time between the reception of a first PDU and the successful delivery of a last-arrived PDU of a PDU Set. See, for example, 3GPP TR 23.700-60. The PSDB may be an optional parameter in various embodiments.

[0059] The PDU set QoS parameters may further include a PDU Set importance (PSI) to indicate the relative importance of a PDU set compared to other PDU sets within the same QoS flow.

[0060] A PDU set may be associated with the following information: a PDU set sequence number (SN) ; a PDU set size (in bytes) ; a PDU SN within a PDU Set; an end PDU of the PDU Set indication; a PDU set importance (PSI) ; and an end of data burst indication in the header of a last PDU of the data burst. The PSI may be used to identify the importance of a PDU Set within a QoS flow. The RAN 110 may use the PSI for PSI-based discarding in the presence of congestion, as described herein.

[0061] The application, application server, application function, or application layer 114 may assign a PSI level for each packet or PDU set or may define rules and policies for assigning a PSI level to a type of packet or PDU set. For example, the application may assign a PSI level to packets associated with audio data and a different PSI to packets or PDU sets associated with real-time video data. The application may assign different PSI to payloads associated with different video frame types within a video stream. PSI level selection may be influenced by factors such as type of application (e.g., video, audio, text) , details of codec (e.g., H. 264 or high-efficiency video coding, HEVC) , level of error propagation when a PDU set is discarded, or inter-dependency among PDU sets (e.g., whether a PDU set is necessary for the processing of some other PDU sets) . The PSI selection may be similar to that described in 3GPP TS 26.522 v 0.4.0 (2024-03-01) .

[0062] PSI may have N levels, e.g., levels 0 to N-1. The higher PSI level values may be associated with less importance. Some of the PSI levels may indicate no interdependency with other PDU sets. For example, there may be 16 levels of PSIs, e.g., level 0 to level 15. PSI levels 14 and 15 may indicate no inter-dependency to other PDU sets; e.g., a PDU set having PSI level 14 may not have inter-dependency to other PDU sets. PDU sets with other PSI levels, e.g., levels 0 to 13, may be needed to process other PDU sets. These values may differ in other embodiments.

[0063] In some instances, the base station 108 may instruct the UE 104 to apply different discarding timers for PDU sets with different PSIs. For example, a PDU set with a large PSI  level may have a shorter discard timer than a PDU set with a smaller PSI level. This mechanism may be called PSI-based discarding or importance-based discarding.

[0064] FIG. 3 illustrates a timing diagram 300 for generating and transmitting a delay status report in accordance with some embodiments. The delay status reporting (DSR) may assist in delay-aware scheduling. A DSR may be triggered when the remaining time till the data is discarded is below a threshold.

[0065] At T0, a buffer of a transmitting entity (e.g., UE PDCP transmitting entity in uplink transmission or base station PDCP transmitting entity in downlink transmission) and associated with a logical channel (LCH) or a logical channel group (LCG) can receive a data packet for transmission. At T0, the transmitting entity can start a discard timer, in which it will discard the data if, by expiration of the timer, the transmitting entity has not successfully transmitted the data packet. At T1, a first time interval (e.g., T3-T1) is reached, where the time remaining prior to the expiration of the discard timer has reached a threshold, such that a delay status report (DSR) is triggered. At T2, a DSR report is generated and transmitted. The DSR can include data volume information. For example, the DSR may include the buffer size or a reported remaining time 310 when the DSR is transmitted. The reference point for measuring the reported remaining time 310 may be the transmission of DSR. UE may report the DSR in a MAC control element (CE) .

[0066] As mentioned above, DSR may include buffer size. The UE may determine the buffer size through data volume calculation. 3GPP TS 38.323 v. 18.0.0 (2024-01) describes data volume calculation for delay status reporting.

[0067] 3GPP TS 38.323 introduces delay-critical PDCP SDUs to calculate buffer size for the DSR. Similarly, 3GPP TS 38.322 v. 18.0.0 (2024-01) introduces delay-critical RLC SDUs to calculate buffer size for DSR.

[0068] The delay-critical PDCP SDU may be defined as a PDCP SDU for which the remaining time till discarding is less than a first threshold when PDU set discarding is not configured. When the PDU set discarding is configured, a PDCP SDU is delay-critical if it belongs to a PDU set in which at least one PDCP SDU has the remaining time till discarding less than a second threshold. Note that the remaining time till discarding is the actual remaining time of the discard timer, whereas the reported remaining time 310 is the remaining time on the discard timer at the  time of generating or transmitting the DSR. Similarly, a delay-critical RLC SDU is defined as an RLC SDU corresponding to a PDCP PDU indicated as delay-critical by PDCP.

[0069] In some instances, for the purpose of MAC delay status reporting, the transmitting PDCP entity may be considered as delay-critical PDCP data volume: 1) the delay-critical PDCP SDUs for which no PDCP Data PDU have been constructed; 2) the PDCP Data PDU that contain the delay-critical PDCP SDUs and have not been submitted to lower layers; 3) the PDCP Control PDUs; 4) for AM data radio bearers (DRBs) , the PDCP SDUs to be retransmitted; and 5) for AM DRBs, the PDCP Data PDUs to be retransmitted.

[0070] In some instances, for the purpose of MAC buffer status reporting, the UE may consider the following as RLC data volume: 1) RLC SDUs and RLC SDU segments that have not yet been included in an RLC data PDU; 2) RLC data PDUs that are pending for initial transmission; and 3) RLC data PDUs that are pending for retransmission (RLC AM) . Additionally, the UE may also consider the following as delay-critical RLC data volume: 1) delay-critical RLC SDUs and delay-critical RLC SDU segments that have not yet been included in an RLC Data PDU; 2) RLC Data PDUs pending for initial transmission and containing a delay-critical RLC SDU or a delay-critical RLC SDU segment; and 3) RLC Data PDUs that are pending for retransmission (RLC AM) . In addition, if a status PDU has been triggered and a prohibition timer, t-StatusProhibit, is not running or has expired, the UE may estimate the size of the status PDU that will be transmitted in the next transmission opportunity and consider this as part of RLC data volume for MAC buffer status reporting and as part of delay-critical RLC data volume for MAC delay status reporting.

[0071] In some embodiments, an identifier associated with an RLC SDU may indicate whether it is delay-critical, e.g., a one-bit indicator. RLC PDUs may be considered delay-critical if they are associated with delay-critical RLC SDUs or delay-critical RLC SDU segments. RLC Data PDUs of both initial transmission or retransmission may be considered as delay-critical.

[0072] In some embodiments, an RLC SDU or SDU segment may be associated with a parameter associated with the discard timer or the PDCP SDU associated with the RLC SDU or SDU segment. The parameter may include a value of the remaining time till discarding, e.g., the remaining time till the discard timer expires.

[0073] FIG. 4 illustrates an RLC signal flow diagram 400 in accordance with some embodiments. Signal flow diagram 400 is an example of functionalities performed by the RLC layer, e.g., RLC layer 118 in FIG 1.

[0074] An example of an AM RLC entity is described in 3GPP TS 38.322. An AM RLC entity may be configured to submit or receive RL CPDUs through the following logical channels: downlink (DL) or uplink (UL) dedicated control channel (DCCH) , DL or UL dedicated traffic channel (DTCH) , sidelink control channel (SCCH) , and sidelink traffic channel (STCH) .

[0075] An AM RLC entity may deliver or receive the following RLC Data PDUs: AMD PDU. An AMD PDU may contain either one complete RLC SDU or one RLC SDU segment. An AM RLC entity may deliver or receive the following RLC control PDU: status PDU. The status PDU may be used to provide the status of the PDUs that are correctly received and lost during transmission. It is sent from the RLC receiving entity, e.g., receiving entity 160 in FIG 1, to the transmitting entity, e.g., transmitting entity 150 in FIG 1. The status PDU may contain an ACK or NACK sequence number.

[0076] The transmitting side of an AM RLC may generate AMD PDU (s) for each RLC SDU. Upon receiving a transmission opportunity from the lower layer, the transmitting side of the AM RLC entity may break down the RLC SDUs into segments. This is done so that the resulting AMD PDUs, with appropriately updated RLC headers, can fit within the total size of the RLC PDU (s) specified by the lower layer.

[0077] The transmitting side of an AM RLC entity may also support the retransmission of RLC SDUs or RLC SDU segments. Ifthe RLC SDU or RLC SDU segment to be retransmitted (including the RLC header) exceeds the total size of the RLC DU (s) specified by the lower layer at a given transmission opportunity, the AM RLC entity may break down the RLC SDU into segments or resegment the RLC SDU segments into smaller segments.

[0078] When the AM RLC entity on the receiving end receives AMD PDUs, it may identify if there are any duplicated AMD PDUs and discard them. The AM RLC may also recognize if any AMD PDUs have been lost at lower layers and ask its peer AM RLC entity for retransmission. Finally, the AM RLC may reassemble the RLC SDUs from the AMD PDUs it received and pass the RLC SDUs to the upper layer as soon as they are ready.

[0079] AM RLC may include two buffers. The first buffer may be the transmission buffer 455. The transmission buffer 455 may store RLC AMD PDUs. After an RLC PDU has been transmitted, a similar copy is stored in the retransmission buffer 465, the second buffer. Ifthe RLC receives a NACK or does not get any positive response, the RLC PDU from the retransmission buffer may be transmitted again.

[0080] In some instances, the RLC SDUs are included in RLC PDUs and submitted to a lower layer for transmission. The RLC protocol may track RLC SDUs that have been submitted for transmission and decide to retransmit a buffered RLC PDU based on the associated RLC SDUs.

[0081] The transmitting side of an RLC transmitting entity, e.g., transmitting entity 150, may solicit a status PDU from its peer entity at the receiving side. For example, the transmitting entity 150 of the base station 108 may solicit a status PDU from the receiving entity 160 of the UE 104, or the transmitting entity 150 of the UE 104 may solicit a status PDU from the receiving entity 160 of the base station 108.

[0082] The transmitting side may solicit a status PDU from its peer entity through the header of an AMD PDU. The transmitting side of a transmitting entity 150 may set a polling flag in the header of an AMD PDU sent to the peer receiving entity 160 and received by the receiving side of the peer receivig entity 160. The transmitting side may set the polling flag when the total number of PDUs transmitted since the last poll or status report (parameter: PDU_WITHOUT_POLL) is equal or greater than a threshold, e.g., the configured pollPDU threshold; when the total number of bytes of the RLC PDUs transmitted since the last poll or status report is received (BYTE_WITHOUT_POLL) is greater than or equal to another threshold, e.g., the configured pollByte threshold; when the transmission and retransmission buffer becomes empty (including transmitted RLC SDUs or RLC SDU segments awaiting acknowledgments) after the transmission of the current AMD PDU; when no new RLC SDU can be transmitted after the transmission of the AMD PDU, e.g., due to window stalling; or when the poll retransmit timer expires. Once the polling flag is set, a status PDU from the receiving side is solicited. This mechanism may allow the transmitting side to request its peer to send the current status.

[0083] Once the polling flag is set, e.g., by setting the poll bit to ‘1’ in an AMD PDU, the transmitting side may start or restart a poll retransmit timer. For example, the transmitting side  may start a configured t-PollRetransmit timer. The timer is stopped when a status PDU is received. If the timer expires, the transmitting side may initiate data retransmission or retransmit the poll.

[0084] In some instances, the receiving side may determine which PDUs to report based on the sequence numbers (SNs) and segment offsets (SOs) of the received AMD PDUs. The report may be a control PDU, e.g., status PDU. The receiving side may generate the status report and include the SNs of the received PDUs and the SNs of the lost PDUs or segments. TS 38.322 describes RLC AM polling and associated operations and timers, e.g., the t-PollRetransmit timer.

[0085] In some instances, the transmitting side of an AM RLC entity may maintain a transmitting window. The transmitting window may provide orderly transmission of AMD PDUs. It may be used to control the number of PDUs that can be transmitted before receiving an acknowledgment. Two parameters may determine the transmitting window: 1) parameter “AM_Window_Size, ” which is the size of the window in terms of the number of PDUs, and 2) parameter TX_Next_Ack, which is the sequence number of the next RLC SDU for which a positive acknowledgment is expected to be received in-sequence. If an AMD PDU has a sequence number, PDU_SN, that is greater than or equal to the TX_Next_Ack and smaller than Tx_Next_Ack + AM_Window_Size, the AMD PDU may be transmitted.

[0086] The Tx_Next_Ack may serve as the lower edge of the transmitting window. The Tx_Next_Ack + AM_Window_Size may serve as the upper edge of the transmitting window. A new RLC SDU with SN outside the transmitting window cannot be transmitted. Therefore, it is desirable for the transmitting window to move forward as quickly as possible. When the transmitting window moves forward, the subsequent new packets are less likely to be delayed by window stalling. The transmitting window will move forward by receiving ACK for PDUs with SN equal to Tx_Next_Ack. The transmitter may proactively request ACK or NACK, e.g., via a polling mechanism from the receiver side.

[0087] In some instances, some RLC SDUs (or their segments) may be considered for retransmission. For example, when the peer RLC entity does not positively acknowledge some RLC SDUs. Retransmission of an RLC SDU may be performed several times before it is positively acknowledged. In some instances, the number of retransmissions may be capped by a threshold, e.g., configured threshold maxRetxThreshold.

[0088] When an RLC SDU or an RLC SDU segment is considered for retransmission, a counter, e.g., configured RETX_COUNTER, may be assigned to the RLC SDU or RLC SDU segment that is being retransmitted. Ifthe RLC SDU or RLC SDU segment is being considered for retransmission for the first time, the counter is set to zero, e.g., RETX_COUNT = 0. The counter may be incremented ifthe RLC SDU or its segment is not pending for retransmission and the RETX_COUNT associated with the RLC SDU has not been incremented due to another NACK in the same status PDU.

[0089] FIG. 5 illustrates data flow 500 in accordance with some embodiments. Data flow 500 is a logical example diagram of protocol layers and the data flow through various layers. Application layer, e.g., application layer 204 in FIG 2, may generate PDU set #1, including packets #1-#5. Packet #1 of the PDU set #1 may be mapped to PDCP SDU #1. Upon receiving the PDCP SDU #1, the PDCP layer may configure and start a discard timer #1 and associate it with the PDCP SDU #1. Similarly, Packet #1 of the PDU set #1 may be mapped to PDCP SDU #2. Upon receiving the PDCP SDU #2, the PDCP layer may configure and start a discard timer #2 and assign it to the PDCP SDU #2.

[0090] PDCP layer may include PDCP SDU #1 in PDCP PDU #1. PDCP PDU #1 may also include a header and other information. Similarly, PDCP SDU #2 may be included in PDCP PDU #2 with other information.

[0091] At the RLC layer, PDCP PDU #1 and PDCP PDU #2 may be included in RLC SDU #1 and RLC SDU #2, respectively. The RLC SDU #1 may be included in the RLC PDU #1 along with the RLC header and other information. A segment of the RLC SDU #2, e.g., RLC SDU Seg #1, may be included in RLC PDU #2 along with the RLC header and other information, and the second segment of the RLC SDU #2, e.g., RLC SDU Seg #2 along with RLC header and other information may be included in RLC PDU #3.

[0092] There might be two ways that an RLC SDU may become delay-critical. In one example, the RLC SDU is delay-critical and is associated with a delay-critical PDCP PDU. A PDCP PDU may be delay-critical if it is associated with a delay-critical PDCP SDU. As described above, a PDCP SDU may become delay-critical when the remaining time of the associated discard timer is less than a threshold. For example, if PDCP SDU #2 becomes delay- critical, then PDCP PDU #2, RLC SDU Segment #1, RLC SDU Segment #2, RLC PDU #2, and RLC PDU #3 will become delay-critical as well.

[0093] In a second example, the RLC SDU or PDU may become delay-critical if it is associated with a PDU set where a packet of that PDU set is associated with a delay-critical PDCP SDU. For example, if PDCP SDU #1 becomes delay-critical, in the first example, only RLC SDU #1 and RLC PDU #1 would become delay-critical, and RLC SDU Segment #1, RLC SDU Segment #2, RLC PDU 2 and RLC PDU #3 would not become delay-critical. However, in the second example, when PDCP SDU #1 becomes delay-critical, it is associated with packet #1 of PDU set #1. Therefore, PDCP SDU #2 associated with packet #2 of the PDU set #1 would also become delay-critical. Consequently, PDCP PDU #2, RLC SDU Segment #1, RLC SDU Segment #2, RLC PDU #2, RLC PDU #3, PDCP PDU #1, RLC SDU #1, and RLC PDU #1 would become delay-critical.

[0094] Due to the nature of PDU sets, in some instances, when a packet becomes delay-critical, many other packets belonging to the same PDU set may also become delay-critical, e.g., when the PDU set discard is configured.

[0095] FIG. 6 illustrates aspects of an RLC transmitting entity 150 in accordance with some embodiments. RLC Transmitting entity 150 is illustrated at two different times, T1 and T2. Transmitting entity 150 includes a transmission buffer 455 and a retransmission buffer 465.

[0096] At time T1, transmission buffer 455 may store transmitting PDUs 1-K. Only transmitting PDU 3 may be delay-critical. Similarly, retransmission buffer 465 may store retransmitting PDUs 1-L. None of the retransmitting PDUs may be delay-critical. In some instances, information may be associated with each PDU in the transmission buffer 455 or retransmission buffer 465. Information may include a PSI field or a delay-critical indicator.

[0097] At time T2, transmitting PDU 2 and retransmitting PDU 1 may become delay-critical. For example, the discarding timer associated with the transmitting PDU 2 and retransmitting PDU 1 may become smaller than a threshold. The transmitting entity 150 at T2 may update information associated with transmitting PDU 2 and retransmitting PDU 1 accordingly to reflect that these PDUs are delay-critical.

[0098] FIG. 7 illustrates a timing diagram 700 for updating the transmitting window in accordance with some embodiments. The timing diagram 700 shows an example of updating the transmitting window 710 based on the detection of a condition.

[0099] At S1, the state variable associated with the lower edge of the transmitting window, e.g., Tx Next Ack 715, is associated with the SN=3. The window size is 5. Therefore, RLC SDUs associated with sequence numbers SN=3, 4, 5, 6, or 7 are eligible for transmission.

[0100] In one example, consider that the RLC has only generated PDUs for SN=3 and 4. When a new SDU is received by the RLC associated with SN = 5, the transmitting entity 150 may determine that the SN=5 is within the transmission window 710, generating a PDU and submitting or delivering it to the lower level for transmission.

[0101] In one example, consider that the RLC has generated PDUs for SN=3, 4, 5, 6, and 7. When a new SDU is received by the RLC associated with SN =8, the transmitting entity 150 may determine that the SN=8 is outside (or beyond) the transmission window 710. Therefore, the transmitting entity 150 may not generate a PDU for submission to the lower layer for transmission.

[0102] The transmitting entity 150 may determine that the RLC SDU with SN=8 is an urgent RLC SDU corresponding to an important or urgent packet. However, the RLC SDU with SN=8 may not be transmitted immediately. The transmitting entity 150 may determine or detect one or more conditions associated with one or more RLC SDUs within the transmitting window 710 or outside the transmitting window 710. The transmitting entity 50 may update the transmitting window 710 based on detecting the conditions associated with one or more RLC SDUs within or outside the transmitting window 710.

[0103] At S2, the transmitting entity 150 updated the transmitting window 710. The updated state variable, Tx Next Ack 715, is associated with SN=5, and RLC SDUs associated with SN=5, 6, 7, 8, and 9 (for Window_Size = 5) are eligible for transmission. After performing conditional transmitting window adjustment, the important or urgent RLC SDU with SN=8 may be transmitted.

[0104] In some embodiments, the state variable Tx Next Ack 715 may represent the lower edge of the transmitting window 710. The transmitting side of the RLC AM entity, e.g., the  transmitting entity 150, may autonomously and deliberately update the value of Tx Next Ack 715 even without positive acknowledgment from the receiver side, e.g., the receiving entity 160, when certain conditions are satisfied.

[0105] In some embodiments, the conditions for adjusting the Tx Next Ack 715 may be related to RLC SDUs corresponding to either the RLC SDUs outside the current transmitting window 710 or RLC SDUs within the current transmitting window 710, e.g., transmitting window at S 1.

[0106] In one example, at S1, the transmitting entity 150 determines that there is an urgent new packet, e.g., an urgent RLC SDU, for transmission, but it cannot be transmitted due to window stalling. The transmitting entity 150 then may check the status of RLC SDUs in the current transmitting window 710 to determine if there is any packet that is no longer important or no longer needed. The transmitting entity 150 may rely on information from the application layer for the above determinations. In some embodiments, the transmitting entity 150 may make the above determinations based on historical data or estimate the required time to move the transmitting window 710 forward based on the conventional approaches. At S2, if the conditions are fulfilled, the transmitting entity 150 may move the window forward autonomously to accommodate the new packet. The transmitting entity 150 may send an indication to the receiving entity 160 to notify them about the conditional window shifting.

[0107] In some embodiments, the conditions relating to RLC SDU associated with an SN beyond the current transmitting window 710, e.g., the RLC SDU is outside the transmitting window 710, may include the following conditions. In some embodiments, the condition may include whether the first RLC SDU beyond the current transmitting window 710 (e.g., whose SN = Tx Next Ack 715 + Window_Size + 1) is considered a delay-critical RLC SDU. In some embodiments, the condition may include whether the first RLC SDU beyond the current transmitting window 710 (whose SN = Tx Next Ack 715 + Window_Size + 1) belongs to an important or less-important PDU Set. In some embodiments, the condition may include whether the size of the first RLC SDU (e.g., in bytes) beyond the current transmitting window 710 (whose SN = TX Next Ack 715 + Window_Size + 1) exceeds a threshold. In some embodiments, the condition may include whether the total number of RLC SDUs whose SN falls beyond the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of RLC SDUs whose SN falls beyond the current  transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total number of delay-critical RLC SDUs whose SN falls beyond the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of delay-critical RLC SDUs whose SN falls beyond the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total number of RLC SDUs belonging to important PDU Sets (or less-important PDU Sets) whose SN falls beyond the current transmitting window 710 satisfies a threshold, e.g., is greater than or equal to the threshold. In some embodiments, the condition may include whether the total data volume of RLC SDUs belonging to important PDU Sets (or less-important PDU Sets) whose SN falls beyond the current transmitting window 710 satisfies a threshold, e.g., PSI is less than or equal to the threshold. In some embodiments, the condition may include whether the total number of delay-critical RLC SDUs belonging to important PDU Sets (or less-important PDU Sets) whose SN falls beyond the current transmitting window 710 satisfies a threshold, e.g., is greater than or equal to the threshold. In some embodiments, the condition may include whether the total data volume of delay-critical RLC SDUs belonging to important PDU Sets (or less-important PDU Sets) whose SN falls beyond the current transmitting window 710 satisfies a threshold, e.g., is greater than or equal to the threshold.

[0108] In some embodiments, the conditions relating to the RLC SDU associated with an SN within the current transmitting window 710, e.g., the RLC SDU is within the transmitting window 710, may include the following conditions. In some embodiments, the condition may include whether the RLC SDU whose SN equals the current TX Next Ack 715 belongs to an important or less-important PDU Set, e.g., having a PSI that is less than or equal to a configured threshold. In some embodiments, the condition may include whether the RLC SDU whose SN equals the current TX Next Ack 715 is considered delay-critical (e.g., if the remaining time till discard timer expiry is smaller than a threshold) . In some embodiments, the condition may include whether the RLC SDU whose SN equals the current (e.g., at S1) TX Next Ack 715 is already or is to be discarded by the upper layer. In some embodiments, the condition may include whether the size of RLC SDU (e.g., in bytes) whose SN equals the current TX Next Ack 715 exceeds a threshold. In some embodiments, the condition may include whether the number of unacknowledged RLC SDUs within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the number of unacknowledged delay- critical RLC SDUs within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the number of unacknowledged RLC SDUs within the current transmitting window 710 discarded by the upper layer exceeds a threshold. In some embodiments, the condition may include whether the total data volume of unacknowledged RLC SDUs (e.g., in bytes) within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of unacknowledged delay-critical RLC SDUs within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of unacknowledged RLC SDUs within the current transmitting window 710 that is discarded by the upper layer exceeds a threshold. In some embodiments, the condition may include whether the number of unacknowledged RLC SDUs belonging to important PDU Sets (or less-important PDU Sets) within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of unacknowledged RLC SDUs belonging to an important PDU Set (or less-important PDU Sets) within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the number of unacknowledged RLC SDUs that are delay-critical and belonging to important PDU Sets (or less-important PDU Sets) within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the total data volume of unacknowledged RLC SDUs that are delay-critical and belonging to an important PDU Set (or less-important PDU Sets) within the current transmitting window 710 exceeds a threshold. In some embodiments, the condition may include whether the number of retransmissions that one or more unacknowledged RLC SDUs have experienced (e.g., based on RETX_COUNT of each RLC SDU) exceeds a threshold. In some embodiments, the condition may include whether the remaining time until discarding of one or more unacknowledged RLC SDUs is / are already too small / short. In some embodiments, the condition may include any combination of the above conditions.

[0109] In the above example embodiments, the threshold of one embodiment may differ from that of another. The thresholds may be configured or specified. For example, the thresholds may be configured via radio resource control (RRC) configuration signaling.

[0110] The “current transmitting window 710” in the above may refer to the transmitting window 710 at S 1.

[0111] In some embodiments, when the conditions are satisfied, and Tx Next Ack 715 is to be updated, e.g., at S2, the new value of Tx Next Ack 715 may be set based on the following options. In one option, the Tx Next Ack 715 may be set as the SN of the RLC SDU corresponding to an important PDU set with the smallest SN whose SN falls within the range of a first state variable, e.g., Tx Next Ack 715, and a second state variable, e.g., Tx Next, e.g., Tx Next Ack 715 <= SN <= Tx Next, where Tx Next is the state variable that holds the value of the SN to be assigned for the next newly generated AMD PDU, and a positive acknowledgment has not been received for the RLC SDU. In one option, the Tx Next Ack 715 may be set as the SN of the delay-critical RLC SDU with the smallest SN whose SN falls within the range of a first state variable, e.g., Tx Next Ack 715, and a second state variable, e.g., Tx Next, e.g., Tx Next Ack 715 <= SN <= Tx Next, and for which a positive acknowledgment has not been received. In one option, the Tx Next Ack 715 may be set as the SN of the delay-critical RLC SDU belonging to an important PDU set with the smallest SN whose SN falls within the range of Tx Next Ack 715 and Tx Next, and for which a positive acknowledgment has not been received. In one option, the Tx Next Ack 715 may be set as the SN = Tx Next Ack 715 + B, where B may be a fixed integer value that is configured or specified.

[0112] In some embodiments, the RLC SDUs with SNs that are pushed out of the transmitting window 710, e.g., SN = 3 and 4, may be discarded. In other embodiments, they may be considered positively acknowledged, . g., Ack-ed. In general, the transmitter side of the RLC entity, e.g., the transmitting entity 150, may no longer consider these RLC SDUs, e.g., RLC SDUs associated with SN = 3 and 4, for retransmission.

[0113] In some embodiment, the transmitting entity 150 may process the RLC SDUs pushed out from the transmitting window 710, e.g., RLC SDUs associated with SN = 3 and 4, by another RLC bearer (with a different logical channel ID (LCID) ) . The packets in the alternative RLC bearer need to tunnel the original RLC header with LCID into an outer RLC header so that the receiver can determine which PDCP entity the SDUs should be delivered to. The transmitting entity 150 may determine how to handle an RLC SDU that is pushed out from the transmitting window 710, e.g., to discard or to process them in an alternative RLC bearer, based on certain  conditions relating to those RLC SDUs, such as their importance or remaining time until discarding.

[0114] In some embodiments, the conditional sliding of transmitting window 710, as explained above, may be applied when network congestion is detected or reported. In another embodiment, the conditional sliding of transmitting window 710 may be applied when importance-based, e.g., PSI-based, discarding is activated for the corresponding data radio bearer (DRB) .

[0115] In some embodiments, the realization of the conditional sliding of transmitting window 710 may be based on an enhancement of RLC AM or a separate RLC mode, e.g., context-aware mode (CAM) .

[0116] In some embodiments, the sliding of transmitting window 710 may be performed in other protocol layers, e.g., PDCP.

[0117] FIG. 8 illustrates another operation flow / algorithmic structure 800 in accordance with some embodiments. The algorithmic structure 800 may be implemented by an RLC transmitting entity such as, for example, the transmitting entity 150 of a UE, such as, for example, the UE 104 or UE 1200, or components thereof, for example, baseband processor circuitry 1204A; or the transmitting entity 150 of a base station, such as, for example, the base station 108 or base station 1300, or components thereof, for example, baseband processor circuitry 1304A. In this example, the transmitter may check the conditions relating to at least one RLC SDU in the current transmitting window, e.g., transmitting window 710 at S1 in FIG. 7, if and only if some conditions relating to the RLC SDU (s) beyond the current transmitting window are satisfied.

[0118] The operation flow / algorithmic structure 800 may include, at 810, receiving a new RLC SDU from an upper layer. The RLC transmitting entity 150 may process a received RLC SDU from the upper layer. The upper layer may be a PDCP layer.

[0119] The operation flow / algorithmic structure 800 may include, at 820, determining whether the SN for the new RLC SDU falls outside the current transmitting window. For example, the RLC SDU may fall outside the current transmitting window when SN> Tx Ack Next +Window_Size. If it is determined that the SN for the new RLC SDU falls within the current transmitting window, process 800 may proceed to 830. Otherwise, if it is determined that the SN  for the new RLC SDU falls outside the current transmitting window, the process 800 may proceed to 840.

[0120] The operation flow / algorithmic structure 800 may include 830, determining whether certain conditions, e.g., those described above in FIG. 7, relating to the new RLC SDU, are satisfied, e.g., is the new RLC SDU delay-critical, etc. If it is determined that the conditions are satisfied, process 800 may proceed to 850. Otherwise, if it is determined that certain conditions are not satisfied, the process 800 may proceed to 840.

[0121] The operation flow / algorithmic structure 800 may include at 840, updating the lower edge of the transmitting window, e.g., the x Next Ack, if an acknowledgment is received. Otherwise, the transmitting window is not updated.

[0122] The operation flow / algorithmic structure 800 may include, at 850, determining whether certain conditions relating to at least one RLC SDU in the current transmitting window, e.g., those described above in FIG. 7, are satisfied. If it is determined that certain conditions relating to at least one RLC SDU in the current transmitting window are satisfied, process 800 may proceed to 860. Otherwise, it may proceed to 840.

[0123] The operation flow / algorithmic structure 800 may include, at 860, updating the state variable associated with the lower edge of the current transmitting window, e.g., Tx Next Ack, to slide the transmitting window forward.

[0124] FIG. 9 illustrates another operation flow / algorithmic structure 900 in accordance with some embodiments. The algorithmic structure 900 may be implemented by an RLC transmitting entity such as, for example, the transmitting entity 150 of a UE, such as, for example, the UE 104 or UE 1200, or components thereof, for example, baseband processor circuitry 1204A; or the transmitting entity 150 of a base station, such as, for example, the base station 108 or base station 1300, or components thereof, for example, baseband processor circuitry 1304A. In this example, the transmitter, e.g., transmitting entity 150, may directly check the conditions relating to at least one RLC SDU in the current transmitting window, e.g., transmitting window 710 at S1 in FIG. 7, and / or some conditions relating to some RLC SDU (s) beyond the current transmitting window to determine if sliding of the transmitting window can be performed.

[0125] The operation flow / algorithmic structure 900 may include, at 910, receiving a new RLC SDU from an upper layer. The RLC transmitting entity 150 may process a received RLC SDU from the upper layer. The upper layer may be a PDCP layer.

[0126] The operation flow / algorithmic structure 900 may include, at 920, determining whether the SN for the new RLC SDU falls outside the current transmitting window. For example, the RLC SDU may fall outside the current transmitting window when SN> Tx Ack Next +Window_Size. If it is determined that the SN for the new RLC SDU falls within the current transmitting window, process 900 may proceed to 830. Otherwise, if it is determined that the SN for the new RLC SDU falls outside the current transmitting window, the process 900 may proceed to 940.

[0127] The operation flow / algorithmic structure 900 may include, at 930, determining whether certain conditions, e.g., those described above in FIG. 7, relating to at least one new RLC SDU or RLC SDUs in the current transmitting window, are satisfied. If it is determined that the conditions are satisfied, process 900 may proceed to 950. Otherwise, if it is determined that certain conditions are not satisfied, the process 900 may proceed to 940.

[0128] The operation flow / algorithmic structure 900 may include, at 940, updating the lower edge of the transmitting window, e.g., the x Next Ack, if an acknowledgment is received. Otherwise, the transmitting window is not updated.

[0129] The operation flow / algorithmic structure 900 may include, at 950, updating the transmitting window. For example, the transmitting window is updated by updating the state variable associated with the lower edge of the current transmitting window, e.g., Tx Next Ack, to slide the transmitting window forward.

[0130] FIG. 10 illustrates another operation flow / algorithmic structure 1000 in accordance with some embodiments. The algorithmic structure 1000 may be implemented by an RLC transmitting entity such as, for example, the transmitting entity 150 of a UE, such as, for example, the UE 104 or UE 1200, or components thereof, for example, baseband processor circuitry 1204A; or the transmitting entity 150 of a base station, such as, for example, the base station 108 or base station 1300, or components thereof, for example, baseband processor circuitry 1304A.

[0131] The operation flow / algorithmic structure 1000 may include, at 1010, identifying an RLC SDU. The RLC SDU may be outside the transmitting window or an unacknowledged RLC SDU within the transmitting window. The RLC SDU may be outside the transmitting window when a SN associated with the RLC SDU is outside the transmitting window. Similarly, an unacknowledged RLC SDU is within the transmitting window when the SN associated with the unacknowledged RLC SDU is within the transmitting window.

[0132] The operation flow / algorithmic structure 1000 may include, at 1020, detecting conditions associated with the RLC SDU.

[0133] In some embodiments, the RLC SDU is outside the transmitting window, the RLC SDU is associated with a sequence number (SN) , and one or more conditions associated with the RLC SDU includes whether: the SN is the smallest SN beyond the transmitting window, and the RLC SDU is associated with a delay-related attribute; the SN is the smallest SN beyond the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set; the SN is the smallest SN beyond the transmitting window, and a size of the RLC SDU is larger than or equal to a threshold; or one or more conditions associated with one or more RLC SDUs outside the transmitting window, wherein the RLC SDU is in the one or more RLC SDUs.

[0134] In some embodiment, the one or more conditions associated with one or more RLC SDUs outside the transmitting window includes whether: a total number of RLC SDUs in the one or more RLC SDUs is greater than or equal to a second threshold; a total data volume of RLC SDUs of the one or more RLC SDUs is greater than or equal to a third threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fourth threshold; a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a sixth threshold; a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a seventh threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to an eighth threshold; or a  total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to a ninth threshold.

[0135] In some embodiments, the RLC SDU is an unacknowledged RLC SDU within the transmitting window, the RLC SDU is associated with a first sequence number (SN) , and the one or more conditions associated with the RLC SDU includes whether: the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with a delay-related attribute; the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set; the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is discarded or is to be discarded by an upper layer of a protocol stack; the first SN is equal to a second SN associated with the transmitting window, and a size of RLC SDU is greater than or equal to a first threshold; the RLC SDU is unacknowledged, and a remaining time until discarding associated with the RLC SDU is less than a second threshold; the RLC SDU is unacknowledged, and a number ofretransmissions associated with the RLC SDU is greater than or equal to a third threshold; or one or more conditions associated with one or more RLC SDUs within the transmitting window, wherein the RLC SDU is in the one or more RLC SDUs.

[0136] In some embodiments, the one or more conditions associated with the one or more RLC SDUs within the transmitting window includes whether: a total number of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a fourth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a sixth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a seventh threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to an eighth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a ninth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to a tenth  threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to an eleventh threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a twelfth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a thirteenth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fourteenth threshold; or a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fifteenth threshold.

[0137] The operation flow / algorithmic structure 1000 may include, at 1030, updating the transmitting window. Updating the transmitting window may include associating the state variable associated with the lower edge of the transmitting window, e.g., the Tx Ack Next state variable, with a new SN. To determine the new SN, the transmitting entity 150 may consider all the RLC SDUs with SNs between the Tx Next Ack and Tx Next state variables. The transmitting entity may select an RLC SDU from all the considered RLC SDUs and assign its SN to the Tx Next Ack state variable.

[0138] In some embodiments, the transmitting entity 150 may select the RLC SDU from all the considered RLC SDUs associated with an important PDU set, e.g., the RLC SDU associated with an important PDU set with the smallest SN.

[0139] In some embodiments, the transmitting entity 150 may select the RLC SDU from all the considered RLC SDUs associated with a delay-related attribute, e.g., the RLC SDU associated with a delay-related attribute with the smallest SN.

[0140] In some embodiments, the delay-related attribute is delay-critical PDU or SDU. In some embodiments, the important PDU set is a PDU set with importance information, e.g., PDU set importance (PSI) , that is less than or equal to a threshold.

[0141] In some embodiments, the transmitting entity 150 may identify one or more RLC SDUs that are pushed out of the transmitting window after the transmitting window is updated. For  example, the transmitting entity 150 may determine the SNs that are in the initial transmitting window but are not in the updated one. The RLC SDUs associated with those SNs are pushed out of the updated transmitting window.

[0142] In some embodiments, the transmitting entity 150 may discard one or more RLC SDUs that are pushed out of the updated transmitting window. In some embodiments, the transmitting entity 150 may consider the one or more RLC SUDs that are pushed out of the updated transmitting window to be positively acknowledged. In some embodiments, the transmitting entity 150 may consider the one or more RLC SUDs that are pushed out of the updated transmitting window to be processed by a different DRB and logical channel.

[0143] In some embodiments, the transmitting entity 150 may process an indication associated with the presence of congestion in the network. The network, e.g., a core network node, may send the indication. The transmitting entity 150 may perform the conditional sliding of the transmitting window based on the indication, e.g., if congestion is present in the network. In some embodiments, the transmitting entity 150 may perform the conditional sliding of the transmitting window based on activation of importance-based discarding, e.g., PSI-based discarding.

[0144] In some embodiments, the transmitting entity 150 may generate a notification to be sent to an RLC receiving entity, e.g., receiving entity 160. The notification may indicate to the receiving entity 160 that the transmitting window is updated. The transmitting entity 150 may use an RLC control PDU or an RLC data PDU to send the notification. In some instances, the notification may include a list of sequence numbers that are pushed out or a list of sequence numbers in the new transmitting window. In other instances, the notification may include a state variable associated with the transmitting window, e.g., the state variable associated with the lower edge of the transmitting window, e.g., Tx Next Ack. In other instances, the notification may include a state variable associated with the transmitting window’s lower edge and the transmitting window’s size or length.

[0145] FIG. 11 illustrates another operation flow / algorithmic structure 1100 in accordance with some embodiments. The algorithmic structure 1100 may be implemented by an RLC transmitting entity such as, for example, the receiving entity 160 of a UE, such as, for example, the UE 104 or UE 1200, or components thereof, for example, baseband processor circuitry  1204A; or the receiving entity 160 of a base station, such as, for example, the base station 108 or base station 1300, or components thereof, for example, baseband processor circuitry 1304A.

[0146] The operation flow / algorithmic structure 1100 may include, at 1110, identifying a receiving window. The RLC receiving entity 160 may maintain a receiving window according to the state variable Rx Next. For example, an SN and its associated received PDU fall within the receiving window when Rx Next <= SN <Rx Next + Window_Size. Otherwise, the SN and its associated received PDU fall outside of the receiving window, e.g., SN>= Rx Next +Window_Size.

[0147] The operation flow / algorithmic structure 1100 may include, at 1120, processing a notification sent by an RLC transmitting entity, e.g., transmitting entity 150. The notification may indicate an update to the transmitting window.

[0148] In some embodiments, when the transmitting window is conditionally shifted, the transmitting entity 150 may provide an indication to the receiving entity 160. The receiving entity may receive and process the notification, including the indication. The notification may include information similar to those described above.

[0149] The operation flow / algorithmic structure 1100 may include, at 1130, determining a window based on the notification. The receiving entity 160 may determine a window based on the notification to update its receiving window to synchronize with the transmitting entity 150 operations.

[0150] The operation flow / algorithmic structure 1100 may include, at 1140, updating the receiving window. The receiving entity 160 may update the transmitting window with the determined window. For example, the receiving entity may update the state variable Rx Next, which is a state variable that holds the value of the SN following the last in-sequence completely received RLC SDU and may serve as the lower edge of the receiving window.

[0151] FIG. 12 illustrates a UE 1200 in accordance with some embodiments. The UE 1200 may be similar to and substantially interchangeable with the UE 104.

[0152] The UE 1200 may be any mobile or non-mobile computing device, such as, for example, mobile phones, computers, tablets, industrial wireless sensors (for example, microphones, carbon dioxide sensors, pressure sensors, humidity sensors, thermometers, motion  sensors, accelerometers, laser scanners, fluid level sensors, inventory sensors, electric voltage / current meters, or actuators) , video surveillance / monitoring devices (for example, cameras or video cameras) , wearable devices (for example, a smartwatch) , or Intemet-of-things devices.

[0153] The UE 1200 may include processors 1204, RF interface circuitry 1208, memory / storage 1212, user interface 1216, sensors 1220, driver circuitry 1222, power management integrated circuit (PMIC) 1224, antenna 1226, and battery 1228. The components of the UE 1200 may be implemented as integrated circuits (ICs) , portions thereof, discrete electronic devices, or other modules, logic, hardware, software, firmware, or a combination thereof. The block diagram of FIG. 12 is intended to show a high-level view of some of the components of the UE 1200. However, some of the components shown may be omitted, additional components may be present, and different arrangements of the components shown may occur in other implementations.

[0154] The components of the UE 1200 may be coupled with various other components over one or more interconnects 1232, which may represent any type of interface, input / output, bus (local, system, or expansion) , transmission line, trace, or optical connection that allows various circuit components (on common or different chips or chipsets) to interact with one another.

[0155] The processors 1204 may include processor circuitry such as, for example, baseband processor circuitry (BB) 1204A, central processor unit circuitry (CPU) 1204B, and graphics processor unit circuitry (GPU) 1204C. The processors 1204 may include any type of circuitry, or processor circuitry that executes or otherwise operates computer-executable instructions, such as program code, software modules, or functional processes from memory / storage 1212 to cause the UE 1200 to perform operations as described herein. The processors 1204 may also include interface circuitry 1204D to communicatively couple the processor circuitry with one or more other components of the UE 1200.

[0156] In some embodiments, the baseband processor circuitry 1204A may access a communication protocol stack 1236 in the memory / storage 1212 to communicate over a 3GPP-compatible network. In general, the baseband processor circuitry 1204A may access the communication protocol stack 1236 to: perform user plane functions at a PHY layer, MAC layer, RLC layer, PDCP layer, SDAP layer, and PDU layer and perform control plane functions at a  PHY layer, MAC layer, RLC layer, PDCP layer, RRC layer, and a NAS layer. In some embodiments, the PHY layer operations may additionally / alternatively be performed by the components of the RF interface circuitry 1208.

[0157] The baseband processor circuitry 1204A may generate or process baseband signals or waveforms that carry information in 3GPP-compatible networks. In some embodiments, the waveforms for NR may be based on cyclic prefix OFDM (CP-OFDM) in the uplink or downlink, and discrete Fourier transform spread OFDM (DFT-S-OFDM) in the uplink.

[0158] The memory / storage 1212 may include one or more non-transitory, computer-readable media that includes instructions (for example, communication protocol stack 1236) that may be executed by one or more of the processors 1204 to cause the UE 1200 to perform various operations described herein.

[0159] The memory / storage 1212 includes any type of volatile or non-volatile memory that may be distributed throughout the UE 1200. In some embodiments, some of the memory / storage 1212 may be located on the processors 1204 themselves (for example, memory / storage 1212 may be part of a chipset that corresponds to the baseband processor circuitry 1204A) , while other memory / storage 1212 is external to the processors 1204 but accessible thereto via a memory interface. The memory / storage 1212 may include any suitable volatile or non-volatile memory such as, but not limited to, dynamic random access memory (DRAM) , static random access memory (SRAM) , erasable programmable read only memory (EPROM) , electrically erasable programmable read only memory (EEPROM) , Flash memory, solid-state memory, or any other type of memory device technology.

[0160] The RF interface circuitry 1208 may include transceiver circuitry and a radio frequency front module (RFEM) that allows the UE 1200 to communicate with other devices over a radio access network. The RF interface circuitry 1208 may include various elements arranged in transmit or receive paths. These elements may include, for example, switches, mixers, amplifiers, filters, synthesizer circuitry, and control circuitry.

[0161] In the receive path, the RFEM may receive a radiated signal from an air interface via antenna 1226 and proceed to filter and amplify (with a low-noise amplifier) the signal. The  signal may be provided to a receiver of the transceiver that down-converts the RF signal into a baseband signal that is provided to the baseband processor of the processors 1204.

[0162] In the transmit path, the transmitter of the transceiver up-converts the baseband signal received from the baseband processor and provides the RF signal to the RFEM. The RFEM may amplify the RF signal through a power amplifier prior to the signal being radiated across the air interface via the antenna 1226.

[0163] In various embodiments, the RF interface circuitry 1208 may be configured to transmit / receive signals in a manner compatible with NR access technologies.

[0164] The antenna 1226 may include antenna elements to convert electrical signals into radio waves to travel through the air and to convert received radio waves into electrical signals. The antenna elements may be arranged into one or more antenna panels. The antenna 1226 may have antenna panels that are omnidirectional, directional, or a combination thereof to enable beamforming and multiple input, multiple output communications. The antenna 1226 may include microstrip antennas, printed antennas fabricated on the surface of one or more printed circuit boards, patch antennas, or phased array antennas. The antenna 1226 may have one or more panels designed for specific frequency bands including bands in FR1 or FR2.

[0165] The user interface 1216 includes various input / output (I / O) devices designed to enable user interaction with the UE 1200. The user interface 1216 includes input device circuitry and output device circuitry. Input device circuitry includes any physical or virtual means for accepting an input including, inter alia, one or more physical or virtual buttons (for example, a reset button) , a physical keyboard, keypad, mouse, touchpad, touchscreen, microphones, scanner, headset, or the like. The output device circuitry includes any physical or virtual means for showing information or otherwise conveying information, such as sensor readings, actuator position (s) , or other like information. Output device circuitry may include any number or combinations of audio or visual display, including, inter alia, one or more simple visual outputs / indicators (for example, binary status indicators such as light emitting diodes (LEDs) and multi-character visual outputs, or more complex outputs such as display devices or touchscreens (for example, liquid crystal displays (LCDs) , LED displays, quantum dot displays, and projectors) , with the output of characters, graphics, multimedia objects, and the like being generated or produced from the operation of the UE 1200.

[0166] The sensors 1220 may include devices, modules, or subsystems whose purpose is to detect events or changes in their environment and send the information (sensor data) about the detected events to some other device, module, or subsystem. Examples of such sensors include inertia measurement units comprising accelerometers, gyroscopes, or magnetometers; microelectromechanical systems or nanoelectromechanical systems comprising 3-axis accelerometers, 3-axis gyroscopes, or magnetometers; level sensors; flow sensors; temperature sensors (for example, thermistors) ; pressure sensors; barometric pressure sensors; gravimeters; altimeters; image capture devices (for example, cameras or lensless apertures) ; light detection and ranging sensors; proximity sensors (for example, infrared radiation detector and the like) ; depth sensors; ambient light sensors; ultrasonic transceivers; and microphones or other like audio capture devices.

[0167] The driver circuitry 1222 may include software and hardware elements that operate to control particular devices that are embedded in the UE 1200, attached to the UE 1200, or otherwise communicatively coupled with the UE 1200. The driver circuitry 1222 may include individual drivers allowing other components to interact with or control various input / output (I / O) devices that may be present within or connected to the UE 1200. For example, driver circuitry 1222 may include a display driver to control and allow access to a display device, a touchscreen driver to control and allow access to a touchscreen interface, sensor drivers to obtain sensor readings of sensors 1220, and control and allow access to sensors 1220, drivers to obtain actuator positions of electro-mechanic components or control and allow access to the electro-mechanic components, a camera driver to control and allow access to an embedded image capture device, audio drivers to control and allow access to one or more audio devices.

[0168] The PMIC 1224 may manage power provided to various components of the UE 1200. In particular, with respect to the processors 1204, the PMIC 1224 may control power-source selection, voltage scaling, battery charging, or DC-to-DC conversion.

[0169] A battery 1228 may power the UE 1200, although in some examples, the UE 1200 may be mounted deployed in a fixed location and may have a power supply coupled to an electrical grid. The battery 1228 may be a lithium-ion battery, a metal-air battery, such as a zinc-air battery, an aluminum-air battery, a lithium-air battery, and the like. In some implementations,  such as in vehicle-based applications, the battery 1228 may be a typical lead-acid automotive battery.

[0170] FIG. 13 illustrates a network device 1300 in accordance with some embodiments. The network device 1300 may be similar to and substantially interchangeable with base station 108.

[0171] The network device 1300 may include processors 1304, RF interface circuitry 1308 (if implemented as a base station) , core network (CN) interface circuitry 1314, memory / storage circuitry 1312, and antenna structure 1326.

[0172] The components of the network device 1300 may be coupled with various other components over one or more interconnects 1328.

[0173] The processors 1304, RF interface circuitry 1308, memory / storage circuitry 1312 (including communication protocol stack 1310) , antenna structure 1326, and interconnects 1328 may be similar to like-named elements shown and described with respect to FIG. 12.

[0174] The processors 1304 may include processor circuitry such as, for example, baseband processor circuitry (BB) 1304A, central processor unit circuitry (CPU) 1304B, and graphics processor unit circuitry (GPU) 1304C. The processors 1304 may include any type of circuitry or processor circuitry that executes or otherwise operates computer-executable instructions, such as program code, software modules, or functional processes from memory / storage circuitry 1312 to cause the UE 1200 to perform operations as described herein. The processors 1304 may also include interface circuitry 1304D to communicatively couple the processor circuitry with one or more other components of the network device 1300.

[0175] The CN interface circuitry 1314 may provide connectivity to a core network, for example, a 5th Generation Core network (5GC) using a 5GC-compatible network interface protocol such as carrier Ethernet protocols or some other suitable protocol. Network connectivity may be provided to / from the network device 1300 via a fiber optic or wireless backhaul. The CN interface circuitry 1314 may include one or more dedicated processors or FPGAs to communicate using one or more of the aforementioned protocols. In some implementations, the CN interface circuitry 1314 may include multiple controllers to provide connectivity to other networks using the same or different protocols.

[0176] It is well understood that the use of personally identifiable information should follow privacy policies and practices generally recognized as meeting or exceeding industry or governmental requirements for maintaining users’ privacy. In particular, personally identifiable information data should be managed and handled so as to minimize risks of unintentional or unauthorized access or use, and the nature of authorized use should be clearly indicated to users.

[0177] For one or more embodiments, at least one of the components set forth in one or more of the preceding figures may be configured to perform one or more operations, techniques, processes, or methods as set forth in the example section below. For example, the baseband circuitry described above in connection with one or more of the preceding figures may be configured to operate according to one or more of the examples set forth below. For another example, circuitry associated with a UE, base station, or network element described above in connection with one or more of the preceding figures may be configured to operate according to one or more of the examples set forth below in the example section.

[0178] EXAMPLES

[0179] In the following sections, further exemplary embodiments are provided.

[0180] Example 1 includes a method including: identifying a radio link control (RLC) service data unit (SDU) and a sequence number (SN) associated with the RLC SDU, wherein:

[0181] the SN is outside a transmitting window; or the RLC SDU is an unacknowledged RLC SDU, and the SN is within the transmitting window; and detecting one or more conditions associated with the RLC SDU; and updating the transmitting window based on said detecting the one or more conditions.

[0182] Example 2 includes the method of example 1 or some other examples herein, wherein the SN is outside the transmitting window, and the one or more conditions associated with the RLC SDU includes: the SN is the smallest SN beyond the transmitting window, and the RLC SDU is associated with a delay-related attribute; the SN is the smallest SN beyond the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set; the SN is the smallest SN beyond the transmitting window, and size of the RLC SDU is larger than or equal to a threshold; or one or more conditions associated with one or more RLC  SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is outside the transmitting window, and the RLC SDU is in the one or more RLC SDUs.

[0183] Example 3 includes the method of examples 1 or 2 or some other example herein, wherein the threshold is a first threshold, and the one or more conditions associated with the one or more RLC SDUs includes: a total number of RLC SDUs in the one or more RLC SDUs is greater than or equal to a second threshold; a total data volume of RLC SDUs of the one or more RLC SDUs is greater than or equal to a third threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fourth threshold; a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a sixth threshold; a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a seventh threshold; a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to an eighth threshold; or a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to a ninth threshold.

[0184] Example 4 includes the method of any of examples 1-3 or some other example herein, wherein: the delay-related attribute is being delay-critical; and the important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.

[0185] Example 5 includes the method of any of examples 1-4 or some other example herein, wherein the SN is a first SN, the RLC SDU is an unacknowledged RLC SDU, and the first SN is within the transmitting window, and the one or more conditions associated with the RLC SDU includes: the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with a delay-related attribute; the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set; the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is discarded or is to be discarded by an upper layer of a protocol stack; the first SN is equal to a second SN associated with the transmitting window, and  a size of RLC SDU is greater than or equal to a first threshold; the RLC SDU is unacknowledged, and a remaining time until discarding associated with the RLC SDU is less than a second threshold; the RLC SDU is unacknowledged, and a number ofretransmissions associated with the RLC SDU is greater than or equal to a third threshold; or one or more conditions associated with one or more RLC SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is within the transmitting window, and the RLC SDU is in the one or more RLC SDUs.

[0186] Example 6 includes the method of any of examples 1-5 or some other example herein, wherein the one or more conditions associated with the one or more RLC SDUs include: a total number of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a fourth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a sixth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a seventh threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to an eighth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a ninth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to a tenth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to an eleventh threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a twelfth threshold; a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a thirteenth threshold; a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fourteenth threshold; or a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fifteenth threshold.

[0187] Example 7 includes the method of any of examples 1-6 or some other example herein, wherein: the delay-related attribute is being delay-critical; and the important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.

[0188] Example 8 includes the method of any of examples 1-7 or some other example herein, wherein the RLC SDU is a first RLC SDU, and said updating the transmitting window includes: identifying one or more RLC SDUs including all RLC SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is within or outside the transmitting window; identifying a second RLC SDU in the one or more RLC SDUs, the second RLC SDU associated with a second SN; and updating the transmitting window based on the second SN.

[0189] Example 9 includes the method of any of examples 1-8 or some other example herein, wherein a positive acknowledgment associated with the second RLC SDU is not received and the second RLC SDU is associated with an important protocol data unit (PDU) set; or the second RLC SDU is associated with a delay-related attribute.

[0190] Example 10 includes the method of any of examples 1-9 or some other example herein, wherein the delay-related attribute is being delay-critical; and the important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.

[0191] Example 11 includes the method of any of examples 1-10 or some other example herein, wherein said updating the transmitting window includes: updating the transmitting window based on a configured parameter.

[0192] Example 12 includes the method of any of examples 1-11 or some other example herein, wherein the transmitting window is a first transmitting window, the updated transmitting window is a second transmitting window, the RLC SDU is a first RLC SDU, and the method further includes: identifying a second RLC that is within the first transmitting window and outside the second transmitting window; and performing an operation, the operation includes: discarding the second RLC SDU; considering the second RLC SDU as positively acknowledged; or identifying a first radio bearer associated with the second RLC SDU, and processing the second RLC SDU with a second radio bearer.

[0193] Example 13 includes the method of any of examples 1-12 or some other example herein, wherein the operation is based on importance information of the second RLC SDU or a delay-related attribute associated with the second RLC SDU.

[0194] Example 14 includes the method of any of examples 1-13 or some other example herein, wherein: the importance information is associated with a protocol data unit (PDU) set importance associated with the second RLC SDU; and the delay-related attribute is being delay-critical.

[0195] Example 15 includes the method of any of examples 1-14 or some other example herein, further including: processing an indication associated with a presence of congestion in a network or with an activation of importance-based discarding, wherein said updating the transmitting window is based further on the indication.

[0196] Example 16 includes the method of any of examples 1-15 or some other example herein, further including: generating, by an RLC transmitting entity, a notification to be sent to an RLC receiving entity to indicate that the transmitting window is updated based on the said detecting the one or more conditions associated with the RLC SDU.

[0197] Example 17 includes the method of any of examples 1-18 or some other example herein, wherein the notification is included in an RLC control protocol data unit (PDU) or an RLC data PDU.

[0198] Example 18 includes the method of any of examples 1-18 or some other example herein, wherein the notification includes: a list of sequence numbers; a state variable associated with the transmitting window; or the state variable and a size of the transmitting window.

[0199] Example 19 includes a method including: identifying a receiving window to be a first window; processing a notification sent by a radio link control (RLC) transmitting entity, the notification indicates an update to a transmitting window; determining a second window based on the notification; and updating the receiving window based on the second window.

[0200] Example 20 includes the method of example 19 or some other example herein, further including: processing an RLC protocol data unit (PDU) , received from the RLC transmitting  entity; determining that the RLC PDU is not within the receiving window; and refrain from discarding the RLC PDU.

[0201] Example 21 includes the method of examples 19 or 20 or some other example herein, wherein the notification includes: a list of sequence numbers; a state variable associated with the transmitting window; or the state variable and a size of the transmitting window.

[0202] Another example may include an apparatus comprising means to perform one or more elements of a method described in or related to any of examples 1 21, or any other method or process described herein.

[0203] Another example may include one or more non-transitory computer-readable media comprising instructions to cause an electronic device, upon execution of the instructions by one or more processors of the electronic device, to perform one or more elements of a method described in or related to any of examples 1-21, or any other method or process described herein.

[0204] Another example may include an apparatus comprising logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 1-21, or any other method or process described herein.

[0205] Another example may include a method, technique, or process as described in or related to any of examples 1-21, or portions or parts thereof.

[0206] Another example may include an apparatus comprising: one or more processors and one or more computer-readable media comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform the method, techniques, or process as described in or related to any of examples 1-21, or portions thereof.

[0207] Another example may include a signal as described in or related to any of examples 1 21, or portions or parts thereof.

[0208] Another example may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related to any of examples 1-21, or portions or parts thereof, or otherwise described in the present disclosure.

[0209] Another example may include a signal encoded with data as described in or related to any of examples 1-21, or portions or parts thereof, or otherwise described in the present disclosure.

[0210] Another example may include a signal encoded with a datagram, IE, packet, frame, segment, PDU, or message as described in or related to any of examples 1-21, or portions or parts thereof, or otherwise described in the present disclosure.

[0211] Another example may include an electromagnetic signal carrying computer-readable instructions, wherein execution of the computer-readable instructions by one or more processors is to cause the one or more processors to perform the method, techniques, or process as described in or related to any of examples 1-21, or portions thereof.

[0212] Another example may include a computer program comprising instructions, wherein execution of the program by a processing element is to cause the processing element to carry out the method, techniques, or process as described in or related to any of examples 1-21, or portions thereof.

[0213] Another example may include a signal in a wireless network as shown and described herein.

[0214] Another example may include a method of communicating in a wireless network, as shown and described herein.

[0215] Another example may include a system for providing wireless communication, as shown and described herein.

[0216] Another example may include a device for providing wireless communication, as shown and described herein.

[0217] Unless explicitly stated otherwise, any of the above-described examples may be combined with any other example (or combination of examples) . The foregoing description of one or more implementations provides illustration and description but is not intended to be exhaustive or to limit the scope of embodiments to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from the practice of various embodiments.

[0218] Although the embodiments above have been described in considerable detail, numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.

Claims

1.A method comprising:identifying a radio link control (RLC) service data unit (SDU) and a sequence number (SN) associated with the RLC SDU, wherein:the SN is outside a transmitting window; orthe RLC SDU is an unacknowledged RLC SDU, and the SN is within the transmitting window; anddetecting one or more conditions associated with the RLC SDU; andupdating the transmitting window based on said detecting the one or more conditions.2.The method of claim 1, wherein the SN is outside the transmitting window, and the one or more conditions associated with the RLC SDU comprise:the SN is a smallest SN beyond the transmitting window, and the RLC SDU is associated with a delay-related attribute;the SN is a smallest SN beyond the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set;the SN is a smallest SN beyond the transmitting window, and a size of the RLC SDU is larger than or equal to a threshold; orone or more conditions associated with one or more RLC SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is outside the transmitting window, and the RLC SDU is in the one or more RLC SDUs.3.The method of claim 2, wherein the threshold is a first threshold, and the one or more conditions associated with the one or more RLC SDUs comprise:a total number of RLC SDUs in the one or more RLC SDUs is greater than or equal to a second threshold;a total data volume of RLC SDUs of the one or more RLC SDUs is greater than or equal to a third threshold;a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fourth threshold;a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold;a total number of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a sixth threshold;a total data volume of RLC SDUs of the one or more RLC SDUs that are associated with one or more important PDU sets is greater than or equal to a seventh threshold;a total number of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to an eighth threshold; ora total data volume of RLC SDUs of the one or more RLC SDUs that are associated with the delay-related attribute and associated with the delay-related attribute is greater than or equal to a ninth threshold.4.The method of claim 3, wherein:the delay-related attribute is being delay-critical; andthe important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.5.The method of claim 1, wherein the SN is a first SN, the RLC SDU is an unacknowledged RLC SDU, and the first SN is within the transmitting window, and the one or more conditions associated with the RLC SDU comprise:the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with a delay-related attribute;the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is associated with an important protocol data unit (PDU) set;the first SN is equal to a second SN associated with the transmitting window, and the RLC SDU is discarded or is to be discarded by an upper layer of a protocol stack;the first SN is equal to a second SN associated with the transmitting window, and a size of RLC SDU is greater than or equal to a first threshold;the RLC SDU is unacknowledged, and a remaining time until discarding associated with the RLC SDU is less than a second threshold;the RLC SDU is unacknowledged, and a number of retransmissions associated with the RLC SDU is greater than or equal to a third threshold; orone or more conditions associated with one or more RLC SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is within the transmitting window, and the RLC SDU is in the one or more RLC SDUs.6.The method of claim 5, wherein the one or more conditions associated with the one or more RLC SDUs comprise:a total number of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a fourth threshold;a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to a fifth threshold;a total number of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a sixth threshold;a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs is greater than or equal to a seventh threshold;a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are associated with the delay-related attribute is greater than or equal to an eighth threshold;a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs that are discarded by the upper layer is greater than or equal to a ninth threshold;a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to a tenth threshold;a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with important PDU sets is greater than or equal to an eleventh threshold;a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a twelfth threshold;a total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute is greater than or equal to a thirteenth threshold;a total number of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fourteenth threshold; ora total data volume of unacknowledged RLC SDUs in the one or more RLC SDUs associated with the delay-related attribute and associated with important PDU sets is greater than or equal to a fifteenth threshold.7.The method of claim 6, wherein:the delay-related attribute is being delay-critical; andthe important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.8.The method of claim 1, wherein the RLC SDU is a first RLC SDU, and said updating the transmitting window comprises:identifying one or more RLC SDUs including all RLC SDUs, wherein a SN of each RLC SDU in the one or more RLC SDU is within or outside the transmitting window;identifying a second RLC SDU in the one or more RLC SDUs, the second RLC SDU associated with a second SN; andupdating the transmitting window based on the second SN.9.The method of claim 8, wherein a positive acknowledgment associated with the second RLC SDU is not received andthe second RLC SDU is associated with an important protocol data unit (PDU) set; orthe second RLC SDU is associated with a delay-related attribute.10.The method of claim 9, wherein the delay-related attribute is being delay-critical; andthe important PDU set is a PDU set with a PDU set importance (PSI) that is less than or equal to an importance threshold.11.The method of claim 1, wherein said updating the transmitting window comprises:updating the transmitting window based on a configured parameter.12.The method of claim 1, wherein the transmitting window is a first transmitting window, the updated transmitting window is a second transmitting window, the RLC SDU is a first RLC SDU, the SN is a first SN, and the method further comprises:identifying a second RLC associated with a second SN, the second SN is within the first transmitting window and outside the second transmitting window; andperforming an operation, the operation comprises:discarding the second RLC SDU;considering the second RLC SDU as positively acknowledged; oridentifying a first radio bearer associated with the second RLC SDU, and processing the second RLC SDU with a second radio bearer.13.The method of claim 12, wherein the operation is based on importance information of the second RLC SDU or a delay-related attribute associated with the second RLC SDU.14.The method of claim 13, wherein:the importance information is associated with a protocol data unit (PDU) set importance associated with the second RLC SDU; andthe delay-related attribute is being delay-critical.15.The method of claim 1, further comprising:processing an indication associated with a presence of congestion in a network or with an activation of importance-based discarding, wherein said updating the transmitting window is based further on the indication.16.The method of claim 1, further comprising:generating, by an RLC transmitting entity, a notification to be sent to an RLC receiving entity to indicate that the transmitting window is updated based on the said detecting the one or more conditions associated with the RLC SDU.17.The method of claim 16, wherein the notification is included in an RLC control protocol data unit (PDU) or an RLC data PDU.18.The method of claim 16, wherein the notification includes:a list of sequence numbers;a state variable associated with the transmitting window; orthe state variable and a size of the transmitting window.19.An apparatus comprising:processing circuitry configured to:identify a receiving window to be a first window;process a notification sent by a radio link control (RLC) transmitting entity, the notification indicates an update to a transmitting window;determine a second window based on the notification; andupdating the receiving window based on the second window; andmemory interface circuitry coupled with the processing circuitry, to store state variables associated with the receiving window in memory.20.The apparatus of claim 19, wherein the processing circuitry is configured further to:process an RLC protocol data unit (PDU) , received from the RLC transmitting entity;determine that the RLC PDU is not within the receiving window; andrefrain from discarding the RLC PDU.21.The apparatus of claim 19, wherein the notification includes:a list of sequence numbers;a state variable associated with the transmitting window; orthe state variable and a size of the transmitting window.

Citation Information

Patent Citations

  • Management method for automatic retransmission request window

    CN101478380A

  • Data transmission method, PDCP sending entity, network device and storage medium

    CN115514822A

  • RLC am selective retransmission and window movement

    US20240106571A1

  • Avoidance of retransmission requests in a packet retransmission scheme

    WO2007144041A1