This application claims priority under 35 U.S.C. § 119(b) to Greek Patent Application No. 20220100781, filed on Sep. 23, 2022, the entire contents of which are hereby incorporated by reference.
Wireless communication networks provide integrated communication platforms and telecommunication services to wireless user devices. Example telecommunication services include telephony, data (e.g., voice, audio, and/or video data), messaging, internet-access, and/or other services. The wireless communication networks have wireless access nodes that exchange wireless signals with the wireless user devices using wireless network protocols, such as protocols described in various telecommunication standards promulgated by the Third Generation Partnership Project (3GPP). Example wireless communication networks include code division multiple access (CDMA) networks, time division multiple access (TDMA) networks, frequency-division multiple access (FDMA) networks, orthogonal frequency-division multiple access (OFDMA) networks, Long Term Evolution (LTE), and Fifth Generation New Radio (5G NR). The wireless communication networks facilitate mobile broadband service using technologies such as OFDM, multiple input multiple output (MIMO), advanced channel coding, massive MIMO, beamforming, and/or other features.
Wireless communication networks can include a Radio Link Control (RLC) Layer, aspects of which can be specified by 3GPP TS 38.222. The RLC layer is part of the Radio Access Network (RAN) and operates between user equipment (UE) and a base station. The RLC layer can be used to transfer user plane data in one of three modes—i.e., Transparent Mode, Unacknowledged Mode, or Acknowledged Mode.
Transparent mode (TM) RLC is only applicable to the Control Plane and can be used to send a subset of RRC messages. For example, TM RLC can be used to send broadcast control channel (BCCH) messages, paging control channel messages (PCCH), and common control channel messages (CCCH). BCCH messages can include MIB, SIB1, and system information. PCCH messages can include paging. CCCH messages can include RRCSetupRequest, RRCSEtup, RRCReject, RRCReestablishmentRequest, RRCResumeRequest, RRCResumeRequest1, and RRCSystemInfoRequest.
Unacknowledged mode (UM) RLC is only applicable to the User Plane and cannot be used to transfer RRC signaling messages. UM RLC supports segmentation of higher layer packets. This allows large packets to be divided into smaller packets when the allocated air-interface resources are not sufficient to accommodate the original packet size.
Acknowledged Mode (AM) RLC is applicable to both the User Plane and the Control Plane and supports automatic repeat request (ARQ) protocol to provide reliable data transfer service. This means that AM RLC supports re-transmissions. The receiving device of AM RLC returns status reports using, for example, a control PDU to provide acknowledgment information to the sending device. AM RLC also supports both segmentation and re-segmentation of higher layer packets. Segmentation is similar to that provided by UM RLC. Re-segmentation is necessary if a re-transmission is required by the capacity of allocated air-interface resources has been reduced.
The present disclosure generally relates to a devices, systems, methods, and computer programs for Radio Link Control (RLC) layer Acknowledged Mode (AM) selective retransmission and window movement. In some implementations, the present disclosure enables detection of a failed transmission of an RLC SDU in AM and then determining whether the RLC SDU packet is to be re-transmitted. The determination as to whether the RLC SDU is to be re-transmitted can be based on a variety of factors including, for example, a level of importance of the RLC SDU, a number of unsuccessful transmissions of the RLC SDU, or a combination thereof.
The selective re-transmission of RLC SDU solves problems that arise in conventional systems employing RLC SDU transmission in UM and AM. First, UM does not provide an automatic retransmission operation. Second, while conventional RLC SDU transmission in AM provides automatic retransmission, such automatic retransmission will continue to make retransmission attempts of an RLC SDU until the successful acknowledgement of RLC SDU transmission is received, which causes added latency, jitter, and stalling of the movement of a transmission window, stalling of the movement of a receiving window, stalling of both windows, or a combination these drawbacks, among other things. The present disclosure solves these problems by enabling a device to terminate the re-transmission process for certain RLC SDUs and advance the transmission and receiving windows
In accordance with innovative aspect of the present disclosure, a method for selective re-transmission of radio link channel (RLC) service data units (SDUs) is disclosed. In one aspect, the method can include determining that transmission of an RLC SDU having a first sequence number was not successful, determining whether to re-transmit the RLC SDU, and based on a determination that the particular RLC SDU is not to be re-transmitted: moving a start location of an RLC transmission window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been acknowledged, and transmitting a transmission to another device that indicates that the RLC SDU having the first sequence number is to be skipped.
Other aspects includes apparatuses, systems, and computer programs for performing the actions of the aforementioned method.
According to another innovative aspect of the present disclosure, a method for selectively moving a receiving window for radio link channel (RLC) service data units (SDUs) is disclosed. In one aspect, the method can include receiving a transmission, from a device, that indicates that an RLC SDU having a first sequence number that is to be skipped, and moving a start location of a receiving window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been received.
Other aspects includes apparatuses, systems, and computer programs for performing the actions of the aforementioned method.
According to another innovative aspect of the present disclosure, a method for repurposing an RLC SDU that is to be transmitted is disclosed. In one aspect, the method can include determining that transmission of an RLC SDU having a first sequence number was not successful, determining that the RLC SDU is not to be re-transmitted, replacing the payload of the RLC SDU that is not to be transmitted with a PDCP PDU payload having a different PDCP sequence number than the first PDCP sequence number while using the first RLC sequence number, and transmitting the RLC SDU with the replaced payload.
Other aspects includes apparatuses, systems, and computer programs for performing the actions of the aforementioned method.
According to another innovative aspect of the present disclosure, a method for receiving a re-purposed RLC SDU is disclosed. In one aspect, the method can include receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is within a PDCP reception window, wherein the received RLC SDU comprising the PDCP PDU payload that is within the PDCP reception window replaced a previously received RLC SDU segment, and providing the received re-purposed RLC SDU to a re-ordering function.
Other aspects includes apparatuses, systems, and computer programs for performing the actions of the aforementioned method.
According to another innovative aspect of the present disclosure, a method for receiving a re-purposed RLC SDU is disclosed. In one aspect, the method can include receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is outside of a PDCP reception window, after successful receipt of the re-purposed RLC SDU, moving the receiving window to a start location corresponding to the next RLC SDU location corresponding to an RLC SDU that has not been successfully received, and discarding, by the first device, the received re-purposed RLC SDU.
Other aspects includes apparatuses, systems, and computer programs for performing the actions of the aforementioned method.
The details of one or more embodiments of these systems and methods are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of these systems and methods will be apparent from the description and drawings, and from the claims.
The present disclosure generally relates to a devices, systems, methods, and computer programs for Radio Link Control (RLC) layer Acknowledged Mode (AM) selective retransmission and window movement. In some implementations, the present disclosure enables detection of a failed transmission of an RLC SDU in AM and then determining whether the RLC SDU packet is to be re-transmitted. The determination as to whether the RLC SDU is to be re-transmitted can be based on a variety of factors including, for example, a level of importance of the RLC SDU, a number of unsuccessful transmissions of the RLC SDU, or a combination thereof.
The selective re-transmission of RLC SDU solves problems that arise in conventional systems employing RLC SDU transmission in UM and AM. First, UM does not provide an automatic retransmission operation. Second, while conventional RLC SDU transmission in AM provides automatic retransmission, such automatic retransmission will continue to make retransmission attempts of an RLC SDU until the successful acknowledgement of RLC SDU transmission is received, which causes added latency, jitter, and stalling of the movement of an transmission window, stalling of the movement of a receiving window, stalling of both windows, or a combination these drawbacks, among other things. The present disclosure solves these problems by enabling a device to terminate the re-transmission process for certain RLC SDUs and advance the transmission and receiving windows.
In some implementations, the wireless network 100 may be a Non-Standalone (NSA) network that incorporates Long Term Evolution (LTE) and Fifth Generation (5G) New Radio (NR) communication standards as defined by the Third Generation Partnership Project (3GPP) technical specifications. For example, the wireless network 100 may be a E-UTRA (Evolved Universal Terrestrial Radio Access)-NR Dual Connectivity (EN-DC) network, or a NR-EUTRA Dual Connectivity (NE-DC) network. However, the wireless network 100 may also be a Standalone (SA) network that incorporates only 5G NR. Furthermore, other types of communication standards are possible, including future 3GPP systems (e.g., Sixth Generation (6G)) systems, Institute of Electrical and Electronics Engineers (IEEE) 802.11 technology (e.g., IEEE 802.11a; IEEE 802.11b; IEEE 802.11g; IEEE 802.11-2007; IEEE 802.11n; IEEE 802.11-2012; IEEE 802.11ac; or other present or future developed IEEE 802.11 technologies), IEEE 802.16 protocols (e.g., WMAN, WiMAX, etc.), or the like. While aspects may be described herein using terminology commonly associated with 5G NR, aspects of the present disclosure can be applied to other systems, such as 3G, 4G, and/or systems subsequent to 5G (e.g., 6G).
In the wireless network 100, the UE 102 and any other UE in the system may be, for example, laptop computers, smartphones, tablet computers, machine-type devices such as smart meters or specialized devices for healthcare, intelligent transportation systems, or any other wireless devices with or without a user interface. In network 100, the base station 104 provides the UE 102 network connectivity to a broader network (not shown). This UE 102 connectivity is provided via the air interface 108 in a base station service area provided by the base station 104. In some implementations, such a broader network may be a wide area network operated by a cellular network provider, or may be the Internet. Each base station service area associated with the base station 104 is supported by antennas integrated with the base station 104. The service areas are divided into a number of sectors associated with certain antennas. Such sectors may be physically associated with fixed antennas or may be assigned to a physical area with tunable antennas or antenna settings adjustable in a beamforming process used to direct a signal to a particular sector.
The UE 102 includes control circuitry 110 coupled with transmit circuitry 112 and receive circuitry 114. The transmit circuitry 112 and receive circuitry 114 may each be coupled with one or more antennas. The control circuitry 110 may include various combinations of application-specific circuitry and baseband circuitry. The transmit circuitry 112 and receive circuitry 114 may be adapted to transmit and receive data, respectively, and may include radio frequency (RF) circuitry or front-end module (FEM) circuitry.
In various implementations, aspects of the transmit circuitry 112, receive circuitry 114, and control circuitry 110 may be integrated in various ways to implement the operations described herein. The control circuitry 110 may be adapted or configured to perform various operations such as those described elsewhere in this disclosure related to a UE.
The transmit circuitry 112 can perform various operations described in this specification. Additionally, the transmit circuitry 112 may transmit a plurality of multiplexed uplink physical channels. The plurality of uplink physical channels may be multiplexed according to time division multiplexing (TDM) or frequency division multiplexing (FDM) along with carrier aggregation. The transmit circuitry 112 may be configured to receive block data from the control circuitry 110 for transmission across the air interface 108.
The receive circuitry 114 can perform various operations described in this specification. Additionally, the receive circuitry 114 may receive a plurality of multiplexed downlink physical channels from the air interface 108 and relay the physical channels to the control circuitry 110. The plurality of downlink physical channels may be multiplexed according to TDM or FDM along with carrier aggregation. The transmit circuitry 112 and the receive circuitry 114 may transmit and receive both control data and content data (e.g., messages, images, video, etc.) structured within data blocks that are carried by the physical channels.
The base station 104 circuitry may include control circuitry 116 coupled with transmit circuitry 118 and receive circuitry 120. The transmit circuitry 118 and receive circuitry 120 may each be coupled with one or more antennas that may be used to enable communications via the air interface 108. The transmit circuitry 118 and receive circuitry 120 may be adapted to transmit and receive data, respectively, to any LIE connected to the base station 104. The transmit circuitry 118 may transmit downlink physical channels includes of a plurality of downlink subframes. The receive circuitry 120 may receive a plurality of uplink physical channels from various UEs, including the UE 102.
In
3GPP defines RLC AM/UM for multiple different bearers to distinguish QoS flows and separate/prioritize different streams according to their needs. Using RLC UM provides tighter latency/jitter characteristics but also a less reliable, lossy links compared to RLC AM due to missing RLC (retransmission) ReTx. RLC AM provides 100% loss-less links where re-establishment procedure occurs in case of failures, however this comes at the expense of added latency/jitter.
Separation of streams to AM and UM is based on e.g. Source/Destination IP addresses/ports and NextHeader information and assumes that those streams are homogeneous in themselves, where each packet is of equal importance. When all traffic is mapped to the same bearer (e.g., non-GBR bearer), or within a data stream there are different packet types with different importance (see figure), there are no means to overcome the below mentioned Latency/Jitter adders of RLC AM while at the same time have higher reliability than RLC UM
Under bad radio conditions with high BLER the RLC AM uses retransmissions to recover lost packets. As a result, RLC AM uses additional bandwidth (BW) for the ReTX which adds latency to the initial transmission of new packets.
ReTX may cause window stalling on TX side and therefore Head-of-line blocking (HOL blocking), as RLC AM has to wait until all packets are received before moving the TX/RX window. As a result, there is increased TX latency.
ReTX causes out-of-order RLC packet reception, which may require reordering functionality (in 4G in RLC, in 5G in PDCP) in order to deliver all packets in order towards higher layers (IP). As a result, there is increased RX latency.
Finally a maximum number of RLC ReTX may lead to RRC Reestablishment. As a result, data stalls for several hundreds of milliseconds can occur until the data radio bearers (DRBs) are reestablished.
The present disclosure addresses each of these drawbacks of RLC AM Retx.
As shown in
In the RLC layer AM transmission, the RLC segments are transmitted. In this example, the RLC segments corresponding to the 241 and 243 corresponding to the important data frames are transmitted and received at 251, 253. However, the less important data frame corresponding to RLC segments 242 are not successfully received after an initial transmission at 252.
In conventional systems, a device executing RLC Layer AM transmission would continue to retransmit. However, the present disclosure enables for subsequent transmission of these RLC segments 242 corresponding to less important higher level data 212, 222 to be stopped, the RLC segments 242 to be skipped, and the RLC transmission window to be advanced.
In the example of
Upon reception of NACK for RLC SDU SNs 312, 313 from the receiving (Rx) device, the Tx device can determine whether the RLC SDU SNs 312, 313 are to be re-transmitted. This determination is made based on the number of unsuccessful Tx attempts, the level of importance of the RLC SDU 312, 313, or a combination of both. For example, if the number of unsuccessful Tx attempts satisfies a predetermined threshold, then the Tx device can determine that the RLC SDUs 312, 313 are not to be retransmitted. Alternatively, or in addition, the Tx device an determine whether the level of importance for the RLC SDUs 312, 313 satisfies a predetermined threshold. If the level of importance for the RLC SDUs 312, 313 do not satisfy the predetermined threshold, then the RLC SDUs 312, 313 may be determined to be not important and, therefore, not be re-transmitted.
Based on a determination that the RLC SDU SNs 312, 313 are not to be retransmitted, the Tx device can send information 325 back to Rx RLC device that the NACKed RLC SDU SNs 312313 shall be skipped and that the receiving window 335 is to be moved. The information 325 can include an RLC Control PDU shown in
The Rx device receives the information 325 indicating RLC SDU SNs to be skipped, a new starting location for the receiving window 335, or both. Based on the received information 325, the Rx device an update the state of the RLC Rx buffer from state 330 with RLC SDU SNs 332, 333 within the receiving window 335 to state 340 with RLC SDU SNs 342, 343 marked as skipped and the receiving window 335 advanced beyond the skipped RLC SDU SNs 342, 343.
The Rx device can indicate 345 to a PDCP level re-ordering function the RLC SDU SNs 3 and 4352, 353 that are to be skipped. The PDCP level re-ordering function can update the state of the PDCP buffer from state 350 with RLC SDU SNs 3 and 4352, 353 within the receiving window 355 to state 360 with RLC SDU SNs 3 and 4362, 363 marked as skipped and the receiving window 355 advanced beyond the skipped RLC SDU SNs 3 and 4362, 363.
In the example of
Likewise, in the example of
In addition, in the example of
The process described with respect to the example of
In addition, the process described with respect to the example of
In the example of
Upon reception of NACK for RLC SDU SNs 412, 413 from the receiving (Rx) device, the Tx device can determine whether the RLC SDU SNs 412, 413 are to be re-transmitted. This determination is made based on the number of unsuccessful Tx attempts, the level of importance of the RLC SDU 412, 413, or a combination of both. For example, if the number of unsuccessful Tx attempts satisfies a predetermined threshold, then the Tx device can determine that the RLC SDUs 412, 413 are not to be retransmitted. Alternatively, or in addition, the Tx device an determine whether the level of importance for the RLC SDUs 412, 413 satisfies a predetermined threshold. If the level of importance for the RLC SDUs 412, 413 do not satisfy the predetermined threshold, then the RLC SDUs 412, 413 may be determined to be not important and, therefore, not be re-transmitted.
Here, instead of transmitting data 345 instructing the Rx device to skip RLC SDU SNs 412, 413, the Tx device generates an RLC SDU SN 422 and RLC SDU SN 423 that includes (i) a payload size of zero or (ii) include an ignore flag. This zero-sized payload or ignore flag is depicted in
A similar outcome can be achieved by sending a small PDU with SN=x (e.g., 1 Byte) and adding a special bit to the RLC header of the PDU SN=x (e.g., Reserved bit) that shall be interpreted as “received and to be discarded on RLC level.”
In the example of
The implementation of
A first device can begin execution of the process 500 by determining that transmission of an RLC SDU having a first sequence number was not successful (510).
The first device can continue execution of the process 500 by determining whether to re-transmit the RLC SDU (520). In some implementations, the first device can continue execution of the process 500 by determining whether to re-transmit the RLC SDU can include determining a level of importance of the RLC SDU based on higher layer information associated with the RLC SDU, and determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU. In some implementations, the higher layer information associated with the RLC SDU is a type of IP packet from which the RLC SDU is derived. In some implementations, the higher layer information associated with the RLC SDU is an importance value assigned, by an application, to an IP packet from which the RLC SDU is derived.
In some implementations, the first device can continue execution of the process 500 determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU can include based on a determination that the level of importance does not satisfy a predetermined threshold, determining that the RLC SDU is not to be re-transmitted. Alternatively, in some implementations, the first device can continue execution of the process 500 by determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU can include based on a determination that the level of importance satisfies a predetermined threshold, determining that the RLC SDU is to be re-transmitted.
In some implementations, the first device can continue execution of the process 500 by determining whether to re-transmit the RLC SDU can include determining a number of times the RLC SDU has been unsuccessfully transmitted. In such implementations, based on a determination that the determined number of unsuccessful transmissions does not satisfy a predetermined threshold, the first device can continue execution of the process 500 by determining that the RLC SDU is to be re-transmitted. Alternatively, based on a determination that the determined number of unsuccessful transmissions satisfies a predetermined threshold, the first device can continue execution of the process 500 by determining that the RLC SDU is not to be re-transmitted.
Based on a determination, by the first device, that the RLC SDU is to be re-transmitted, the first device can continue execution of the process 500 by re-transmitting the RLC SDU to a second device (530).
Alternatively, based on a determination, by the first device, that the particular RLC SDU is not to be re-transmitted, the first device can continue execution of the process 500 by moving a start location of an RLC transmission window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been acknowledged (540).
The first device can continue execution of the process 500 by transmitting a transmission to another device (e.g., a second device) that indicates that the RLC SDU having the first sequence number is to be skipped (550). In some implementations, the first device can include a UE and the second device can include a base station. Alternatively, the first device can include a base station and the second device can include a UE.
In some implementations, a first device can continue execution of the process 500 by generating an RLC PDU having a sequence number that corresponds to the first sequence number and a payload size of zero. In such implementations, transmitting a transmission at stage 550 to a second device that indicates that the RLC SDU having the first sequence number is to be skipped can include transmitting the generated RLC PDU having a payload size of zero to the second device.
In some implementations, the transmission at stage 550 can include an RLC Control PDU indicating a new RX_NEXT location for advancing the RLC receiving window used by the other device (e.g., second device). In some implementations, the new RX_Next location is the new start location of the RLC receiving window used by the other device (e.g., second device). In some implementations, the transmission at stage 550 comprises an RLC Control PDU indicating the first sequence number of the RLC SDU that is to be skipped.
The example method 500 shown in
The first device can begin execution of the process 600 by receiving a transmission, from a second device, that indicates that an RLC SDU having a first sequence number that is to be skipped (610). In some implementations, the first device can include a UE and the second device can include a base station. In other implementations, the first device can include a base station and the second device can include a UE.
The first device can continue execution of the process 600 by moving a start location of a receiving window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been received (620).
In some implementations, the first device can continue execution of the process 600 by instructing a reordering function running on the first device that a PDU corresponding to the first sequence number is to be skipped.
In some implementations, the first device can continue execution of the process 600 by moving a start location of a reordering window to a PDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been received.
In some implementations, the reordering window is a PDCP reordering window.
In some implementations, the received transmission that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC Control PDU that includes a start location for the receiving window.
In some implementations, the received transmission, from the device, that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC Control PDU that includes the first sequence number that is to be skipped.
In some implementations, received transmission, from the device, that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC PDU having a sequence number that corresponds to the first sequence number and a payload size of zero.
In some implementations, such as the RLC Control PDU 700A and 700C of
In some implementations, such as the RLC Control PDU 700B and 700D of
One or more of these RLC Control PDUs 700A, 700B, 700C, 700D can be received to inform the reordering function (i.e., receiving PDCP entity in 5G) about the gap(s) due to skipped RLC SN(s). In some implementations, the reordering window update unblocks packet delivery to higher layers.
In some implementations, each RLC Control PDU 700A, 700B, 700C, 700D can include a CPT field. The CPT field can be minimally invasive as the Spec defines unknown CPT fields as “to be discarded.” In some implementations, this allows for this solution to be applicable even with the current 5G standards by having proprietary agreements with the different infra vendors.
The RLC Control PDUs provide multiple benefits include, for example, lower latency under bad radio conditions, no RRC Reestablishments and data stall, and Operator/Vendor agreement for a proprietary solution possible.
In the example of
Upon reception of NACK for RLC SDU SN 3811 from the receiving (Rx) device, the Tx device can determine whether the RLC SDU SN 3811 is to be re-transmitted. This determination is made based on the number of unsuccessful Tx attempts to transmit RLC SDU 811, the level of importance of the RLC SDU 811, or a combination of both. For example, if the number of unsuccessful Tx attempts satisfies a predetermined threshold, then the Tx device can determine that the RLC SDU 811 is not to be retransmitted. Alternatively, or in addition, the Tx device an determine whether the level of importance for the RLC SDU 811 satisfies a predetermined threshold. If the level of importance for the RLC SDU 811 does not satisfy the predetermined threshold, then the RLC SDU 811 may be determined to be not important and, therefore, not be re-transmitted.
In such a scenario and in accordance with the example of
The Rx device can receive the repurposed RLC SDU SN 3821 and acknowledge its receipt, as shown in the updated RLC Rx buffer 840. Upon acknowledgement of RLC SDU SN 3841, the Rx device can advance the receiving window 835 one or more RLS SDU SNs, as shown in 840. The Rx device can then provide the repurposed RLC SDU SN 3841 to the reordering function to be re-ordered and placed in the correct PDU SN slot 841 within the receiving window 855 of the PDCP Rx 850.
In such implementations, a PDCP SNs 809 will be sent out-of-order in the payload of RLC SDU 821 compared to legacy, but due to PDCP reordering functionality this becomes transparent to the receivers higher layers.
In some implementations, if PDCP in-order-delivery is active, more reordering happens on PDCP, but above PDCP it shall still be in order. Otherwise, out-of-order packet delivery is allowed by definition.
The example of
In the example of
Upon reception of NACKs for RLC SDU SNs 911 and 912 from the receiving (Rx) device, the Tx device can determine whether the RLC SDU SNs 911 and 912 are to be re-transmitted. This determination is made based on the number of unsuccessful Tx attempts to transmit RLC SDU SNs 911 and 912, the level of importance of the RLC SDU SNs 911 and 912, or a combination of both. For example, if the number of unsuccessful Tx attempts satisfies a predetermined threshold, then the Tx device can determine that the RLC SDU SNs 911 and 912 are not to be retransmitted. Alternatively, or in addition, the Tx device an determine whether the level of importance for the RLC SDU SNs 911 and 912 satisfies a predetermined threshold. If the level of importance for the RLC SDU SNs 911 and 912 does not satisfy the predetermined threshold, then the RLC SDU SNs 911 and 912 may be determined to be not important and, therefore, not be re-transmitted.
In such a scenario and in accordance with the example of
The Rx device can receive the repurposed RLC SDU SNs 3 and 4921, 922 and acknowledge its receipt, as shown in the updated RLC Rx buffer 940. Upon acknowledgement of RLC SDU SNs 3, 4941, 942, the Rx device can advance the receiving window 935 one or more RLS SDU SNs, as shown in 940. The Rx device can then provide the repurposed RLC SDU SNs 3, 4941, 942 to the reordering function. The reordering function can then discard the RLC SDU SNs 3, 4941, 942 at the PDCP Rx layer, as the RLC SDU SNs 3, 4941, 942 were received outside of the receiving window 955 at slot 951 of the PDCP Rx buffer 950.
Accordingly, in such implementations, a PDCP PDU that was transmitted and RLC ACKed before but falls out of the PDCP Reordering window and therefore will be discarded on receiving PDCP entity's level as per 3GPP specification. In some implementations, the Tx RLC entity shall use the oldest known PDCP SN that was RLC ACKed. In this example, that PDCP SN is 2 as can be seen in
The process described with reference to
A first device can begin execution of the process 1000 by determining that transmission of an RLC SDU having a first sequence number was not successful (1010).
The first device can continue execution of the process 1000 by determining that the RLC SDU is not to be re-transmitted (1020).
The first device can continue execution of the process 1000 by replacing the payload of the RLC SDU that is not to be transmitted with a PDCP PDU payload having a different PDCP sequence number than the first PDCP sequence number while using the first sequence number (1030). In some implementations, the first devices execution of stage 1030 can include the first device replacing the payload of the RLC SDU with the PDCP PDU payload forms a new RLC SDU to be transmitted, with the first sequence number and mapping to the new PDCP SN, that replaces any previously transmitted and stored RLC segments in the RLC SDU.
The first device can continue execution of the process 1000 by transmitting the RLC SDU with the replaced payload to second device (1040). In some implementations, the first device is a UE and the second device is a base station. In other implementations, the first device is a base station and the second device is a UE.
In some implementations, the PDCP PDU payload is a next PDCP PDU that is to be transmitted within a PDCP PDU transmission window.
In some implementations, the PDCP PDU payload is a payload of a PDCP PDU that is outside of a PDCP PDU transmission window.
In some implementations, the PDCP PDU that is outside the PDCP PDU transmission window corresponds to an RLC SDU that (i) was previously transmitted and acknowledged and (ii) falls outside of PDCP reordering window.
In some implementations, the PDCP PDU that is outside the PDCP PDU that was previously transmitted and acknowledged is the PDCP PDU that corresponds to an RLC SDU that was previously transmitted and acknowledged.
A first device can continue execution of the process 1100A by receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is within a PDCP reception window, wherein the received RLC SDU comprising the PDCP PDU payload that is within the PDCP reception window replaced a previously received RLC SDU segment (1110A). In some implementations, the re-purposed RLC SDU can be received from a second device. In some implementations, the first device is a UE and the second device is a base station. In other implementations, the first device is a base station and the second device is a UE.
The first device can continue execution of the process 1100A by providing the received re-purposed RLC SDU to a re-ordering function (1120A). In some implementations, the re-ordering function is implemented at the PDCP layer. In other implementations, the re-ordering function is implemented at the RLC layer.
In some implementations, the first device can continue execution of the process 1100A by providing the received re-purposed RLC SDU to the re-ordering function informs the re-ordering function of one or more gaps in PDCP PDUs.
In some implementations, the first device can continue execution of the process 1100A by providing the received re-purposed RLC SDU to the re-ordering function causes the re-ordering window to be updated.
A first device can being execution of the process 1100B by receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is outside of a PDCP reception window (1110B). In some implementations, the re-purposed RLC SDU can be received from a second device. In some implementations, the first device is a UE and the second device is a base station. In other implementations, the first device is a base station and the second device is a UE
After successful receipt of the re-purposed RLC SDU, the first device can continue execution of the process 1100B by moving the receiving window to a start location corresponding to the next RLC SDU location corresponding to an RLC SDU that has not been successfully received (1120B).
The first device can continue execution of the process 1100B by discarding the received re-purposed RLC SDU (1130B).
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, pressure sensors, thermometers, motion sensors, accelerometers, inventory sensors, electric voltage/current meters, etc.), video devices (for example, cameras, video cameras, etc.), wearable devices (for example, a smart watch), relaxed-IoT devices.
The UE 1200 may include processors 1202, RF interface circuitry 1204, memory/storage 1206, user interface 1208, sensors 1210, driver circuitry 1212, power management integrated circuit (PMIC) 1214, antenna structure 1216, and battery 1218. 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
The components of the UE 1200 may be coupled with various other components over one or more interconnects 1220, which may represent any type of interface, input/output, bus (local, system, or expansion), transmission line, trace, optical connection, etc. that allows various circuit components (on common or different chips or chipsets) to interact with one another.
The processors 1202 may include processor circuitry such as, for example, baseband processor circuitry (BB) 1222A, central processor unit circuitry (CPU) 1222n, and graphics processor unit circuitry (GPU) 1222C. The processors 1202 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 1206 to cause the UE 1200 to perform operations as described herein.
In some implementations, the baseband processor circuitry 1222A may access a communication protocol stack 1224 in the memory/storage 1206 to communicate over a 3GPP compatible network. In general, the baseband processor circuitry 1222A may access the communication protocol stack to: perform user plane functions at a physical (PHY) layer, medium access control (MAC) layer, radio link control (RLC) layer, packet data convergence protocol (PDCP) layer, service data adaptation protocol (SDAP) layer, and PDU layer; and perform control plane functions at a PHY layer, MAC layer, RLC layer, PDCP layer, RRC layer, and a non-access stratum layer. In some implementations, the PHY layer operations may additionally/alternatively be performed by the components of the RF interface circuitry 1204. The baseband processor circuitry 1222A may generate or process baseband signals or waveforms that carry information in 3GPP-compatible networks. In some implementations, the waveforms for NR may be based cyclic prefix orthogonal frequency division multiplexing (OFDM) “CP-OFDM” in the uplink or downlink, and discrete Fourier transform spread OFDM “DFT-S-OFDM” in the uplink.
The memory/storage 1206 may include one or more non-transitory, computer-readable media that includes instructions (for example, communication protocol stack 1224) that may be executed by one or more of the processors 1202 to cause the UE 1200 to perform various operations described herein. The memory/storage 1206 include any type of volatile or non-volatile memory that may be distributed throughout the UE 1200. In some implementations, some of the memory/storage 1206 may be located on the processors 1202 themselves (for example, L1 and L2 cache), while other memory/storage 1206 is external to the processors 1202 but accessible thereto via a memory interface. The memory/storage 1206 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.
The RF interface circuitry 1204 may include transceiver circuitry and radio frequency front module (RFEM) that allows the UE 1200 to communicate with other devices over a radio access network. The RF interface circuitry 1204 may include various elements arranged in transmit or receive paths. These elements may include, for example, switches, mixers, amplifiers, filters, synthesizer circuitry, control circuitry, etc.
In the receive path, the RFEM may receive a radiated signal from an air interface via antenna structure 1216 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 downconverts the RF signal into a baseband signal that is provided to the baseband processor of the processors 1202.
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 1216. In various implementations, the RF interface circuitry 1204 may be configured to transmit/receive signals in a manner compatible with NR access technologies.
The antenna 1216 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 1216 may have antenna panels that are omnidirectional, directional, or a combination thereof to enable beamforming and multiple input, multiple output communications. The antenna 1216 may include microstrip antennas, printed antennas fabricated on the surface of one or more printed circuit boards, patch antennas, phased array antennas, etc. The antenna 1216 may have one or more panels designed for specific frequency bands including bands in FR1 or FR2.
The user interface 1208 includes various input/output (I/O) devices designed to enable user interaction with the UE 1200. The user interface 1208 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, projectors, etc.), with the output of characters, graphics, multimedia objects, and the like being generated or produced from the operation of the UE 1200.
The sensors 1210 may include devices, modules, or subsystems whose purpose is to detect events or changes in its environment and send the information (sensor data) about the detected events to some other device, module, subsystem, etc. Examples of such sensors include, inter alia, inertia measurement units including accelerometers, gyroscopes, or magnetometers; microelectromechanical systems or nanoelectromechanical systems including 3-axis accelerometers, 3-axis gyroscopes, or magnetometers; level sensors; temperature sensors (for example, thermistors); pressure sensors; 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; microphones or other like audio capture devices; etc.
The driver circuitry 1212 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 1212 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 1212 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 sensor circuitry 1210 and control and allow access to sensor circuitry 1210, 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.
The PMIC 1214 may manage power provided to various components of the UE 1200. In particular, with respect to the processors 1202, the PMIC 1214 may control power-source selection, voltage scaling, battery charging, or DC-to-DC conversion.
In some implementations, the PMIC 1214 may control, or otherwise be part of, various power saving mechanisms of the UE 1200. A battery 1218 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 1218 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 1218 may be a typical lead-acid automotive battery.
The components of the access node 1300 may be coupled with various other components over one or more interconnects 1312. The processors 1302, RF interface circuitry 1304, memory/storage circuitry 1308 (including communication protocol stack 1314), antenna structure 1310, and interconnects 1312 may be similar to like-named elements shown and described with respect to
The CN interface circuitry 1306 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 access node 1300 via a fiber optic or wireless backhaul. The CN interface circuitry 1306 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 1306 may include multiple controllers to provide connectivity to other networks using the same or different protocols.
As used herein, the terms “access node,” “access point,” or the like may describe equipment that provides the radio baseband functions for data and/or voice connectivity between a network and one or more users. These access nodes can be referred to as BS, gNBs, RAN nodes, eNBs, NodeBs, RSUs, TRxPs or TRPs, and so forth, and can include ground stations (e.g., terrestrial access points) or satellite stations providing coverage within a geographic area (e.g., a cell). As used herein, the term “NG RAN node” or the like may refer to an access node 1300 that operates in an NR or 5G system (for example, a gNB), and the term “E-UTRAN node” or the like may refer to an access node 1300 that operates in an LTE or 4G system (e.g., an eNB). According to various implementations, the access node 1300 may be implemented as one or more of a dedicated physical device such as a macrocell base station, and/or a low power (LP) base station for providing femtocells, picocells or other like cells having smaller coverage areas, smaller user capacity, or higher bandwidth compared to macrocells.
In some implementations, all or parts of the access node 1300 may be implemented as one or more software entities running on server computers as part of a virtual network, which may be referred to as a CRAN and/or a virtual baseband unit pool (vBBUP). In V2X scenarios, the access node 1300 may be or act as a “Road Side Unit.” The term “Road Side Unit” or “RSU” may refer to any transportation infrastructure entity used for V2X communications. An RSU may be implemented in or by a suitable RAN node or a stationary (or relatively stationary) UE, where an RSU implemented in or by a UE may be referred to as a “UE-type RSU,” an RSU implemented in or by an eNB may be referred to as an “eNB-type RSU,” an RSU implemented in or by a gNB may be referred to as a “gNB-type RSU,” and the like.
Various components may be described as performing a task or tasks, for convenience in the description. Such descriptions should be interpreted as including the phrase “configured to.” Reciting a component that is configured to perform one or more tasks is expressly intended not to invoke 35 U.S.C. § 112(f) interpretation for that component.
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 as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below. For another example, circuitry associated with a UE, base station, network element, etc. as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below in the example section.
In the following sections, further exemplary embodiments are provided.
Example 1 may include a method for selective re-transmission of radio link channel (RLC) service data units (SDUs) that involves determining that transmission of an RLC SDU having a first sequence number was not successful; determining whether to re-transmit the RLC SDU; and based on a determination that the particular RLC SDU is not to be re-transmitted: moving a start location of an RLC transmission window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been acknowledged; and transmitting a transmission to another device that indicates that the RLC SDU having the first sequence number is to be skipped.
Example 2 may include the method of Example 1 where determining whether to re-transmit the RLC SDU involves: determining a level of importance of the RLC SDU based on higher layer information associated with the RLC SDU; and determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU.
Example 3 may include the method of any of Examples 1-2 where the higher layer information associated with the RLC SDU is a type of IP packet from which the RLC SDU is derived.
Example 4 may include the method of any of Examples 1-3 where wherein the higher layer information associated with the RLC SDU is an importance value assigned, by an application, to an IP packet from which the RLC SDU is derived.
Example 5 may include the method of any of Examples 1-4 where determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU involves based on a determination that the level of importance does not satisfy a predetermined threshold, determining that the RLC SDU is not to be re-transmitted.
Example 6 may include the method of any of Examples 1-5 where determining whether to re-transmit the RLC SDU based on the determined level of importance of the RLC SDU involves based on a determination that the level of importance satisfies a predetermined threshold, determining that the RLC SDU is to be re-transmitted.
Example 7 may include the method of any of Examples 1-6 and further involving re-transmitting, by the first device, the RLC SDU.
Example 8 may include the method of any of Examples 1-7 where determining whether to re-transmit the RLC SDU involves determining a number of times the RLC SDU has been unsuccessfully transmitted.
Example 9 may include the method of any of Examples 1-8 and further involving based on a determination that the determined number of unsuccessful transmissions does not satisfy a predetermined threshold, determining that the RLC SDU is to be re-transmitted.
Example 10 may include the method of any of Examples 1-9 and further involving re-transmitting the RLC SDU.
Example 11 may include the method of any of Examples 1-10 and further involving based on a determination that the determined number of unsuccessful transmissions satisfies a predetermined threshold, determining that the RLC SDU is not to be re-transmitted.
Example 12 may include the method of any of Examples 1-11 and further involving generating an RLC PDU having a sequence number that corresponds to the first sequence number and a payload size of zero; and wherein transmitting a transmission to a second device that indicates that the RLC SDU having the first sequence number is to be skipped involves transmitting the generated RLC PDU having a payload size of zero to the second device.
Example 13 may include the method of any of Examples 1-12 and where the transmission involves an RLC Control PDU indicating a new RX_NEXT location for advancing the RLC receiving window used by the other device.
Example 14 may include the method of any of Examples 1-13 and where the new RX_Next location is the new start location of the RLC receiving window used by the other device.
Example 15 may include the method of any of Examples 1-14 and where the transmission comprises an RLC Control PDU indicating the first sequence number of the RLC SDU that is to be skipped.
Example 16 may include one or more non-transitory computer-readable media including 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-15, or any other method or process described herein.
Example 17 may include an apparatus including logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 1-15, or any other method or process described herein.
Example 18 may include a method, technique, or process as described in or related to any of examples 1-15, or portions or parts thereof.
Example 19 may include an apparatus including: one or more processors and one or more computer-readable media including 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-15, or portions thereof.
Example 20 may include a signal as described in or related to any of examples 1-15, or portions or parts thereof.
Example 21 may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related to any of examples 1-15, or portions or parts thereof, or otherwise described in the present disclosure.
Example 22 may include a signal encoded with data as described in or related to any of examples 1-15, or portions or parts thereof, or otherwise described in the present disclosure.
Example 23 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-15, or portions or parts thereof, or otherwise described in the present disclosure.
Example 24 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-15, or portions thereof.
Example 25 may include a computer program including 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-15, or portions thereof. The operations or actions performed by the instructions executed by the processing element can include the methods of any one of examples 1-15.
Example 26 may include a signal in a wireless network as shown and described herein.
Example 27 may include a method of communicating in a wireless network as shown and described herein.
Example 28 may include a system for providing wireless communication as shown and described herein. The operations or actions performed by the system can include the methods of any one of examples 1-15.
Example 29 may include a device for providing wireless communication as shown and described herein. The operations or actions performed by the device can include the methods of any one of examples 1-15.
The previously-described examples 1-15 are implementable using a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system including a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
Example 30 may include a method for selectively moving a receiving window for radio link channel (RLC) service data units (SDUs), the method involving: receiving a transmission, from a device, that indicates that an RLC SDU having a first sequence number that is to be skipped; and moving a start location of a receiving window to an RLC SDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been received.
Example 31 may include the method of Examples 30 and further involving instructing a reordering function running on the first device that a PDU corresponding to the first sequence number is to be skipped.
Example 32 may include the method of any of Examples 30-31 and further involving moving a start location of a reordering window to a PDU that (i) has a sequence number that is greater than the first sequence number and (ii) has not been received.
Example 33 may include the method of any of Examples 30-32 wherein the reordering window is a PDCP reordering window.
Example 34 may include the method of any of Examples 30-33 wherein the received transmission that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC Control PDU that includes a start location for the receiving window.
Example 35 may include the method of any of Examples 30-34 wherein the received transmission, from the device, that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC Control PDU that includes the first sequence number that is to be skipped.
Example 36 may include the method of any of Examples 30-35 wherein the received transmission, from the device, that indicates that an RLC SDU having a first sequence number that is to be skipped comprises an RLC PDU having a sequence number that corresponds to the first sequence number and a payload size of zero.
Example 37 may include one or more non-transitory computer-readable media including 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 30-36, or any other method or process described herein.
Example 38 may include an apparatus including logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 30-36, or any other method or process described herein.
Example 39 may include a method, technique, or process as described in or related to any of examples 30-36, or portions or parts thereof.
Example 40 may include an apparatus including: one or more processors and one or more computer-readable media including 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 30-36, or portions thereof.
Example 41 may include a signal as described in or related to any of examples 30-36, or portions or parts thereof.
Example 42 may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related to any of examples 30-36, or portions or parts thereof, or otherwise described in the present disclosure.
Example 43 may include a signal encoded with data as described in or related to any of examples 30-36, or portions or parts thereof, or otherwise described in the present disclosure.
Example 44 may include a signal encoded with a datagram, IE, packet, frame, segment, PDU, or message as described in or related to any of examples 30-36, or portions or parts thereof, or otherwise described in the present disclosure.
Example 45 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 30-36, or portions thereof.
Example 46 may include a computer program including 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 30-36, or portions thereof. The operations or actions performed by the instructions executed by the processing element can include the methods of any one of examples 30-36.
Example 47 may include a signal in a wireless network as shown and described herein.
Example 48 may include a method of communicating in a wireless network as shown and described herein.
Example 49 may include a system for providing wireless communication as shown and described herein. The operations or actions performed by the system can include the methods of any one of examples 30-36.
Example 50 may include a device for providing wireless communication as shown and described herein. The operations or actions performed by the device can include the methods of any one of examples 30-36.
The previously-described examples 30-36 are implementable using a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system including a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
Example 51 may include a method for repurposing an RLC SDU that is to be transmitted, the method involving determining that transmission of an RLC SDU having a first sequence number was not successful; determining that the RLC SDU is not to be re-transmitted; replacing the payload of the RLC SDU that is not to be transmitted with a PDCP PDU payload having a different PDCP sequence number than the first PDCP sequence number while using the first sequence number; and transmitting the RLC SDU with the replaced payload.
Example 52 may include the method of Example 51 wherein the PDCP PDU payload is a next PDCP PDU that is to be transmitted within a PDCP PDU transmission window.
Example 53 may include the method of any of Examples 51-52 and further involve replacing the payload of the RLC SDU with the PDCP PDU payload forms a new RLC SDU to be transmitted, with the first sequence number and mapping to the new PDCP SN, that replaces any previously transmitted and stored RLC segments in the RLC SDU.
Example 54 may include the method of any of Examples 51-53 where the PDCP PDU payload is a payload of a PDCP PDU that is outside of a PDCP PDU transmission window.
Example 55 may include the method of any of Examples 51-54 where the PDCP PDU that is outside the PDCP PDU transmission window corresponds to an RLC SDU that (i) was previously transmitted and acknowledged and (ii) falls outside of PDCP reordering window.
Example 56 may include the method of any of Examples 51-55 where the PDCP PDU that is outside the PDCP PDU that was previously transmitted and acknowledged is the PDCP PDU that corresponds to an RLC SDU that was previously transmitted and acknowledged.
Example 57 may include one or more non-transitory computer-readable media including 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 51-55, or any other method or process described herein.
Example 58 may include an apparatus including logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 51-55, or any other method or process described herein.
Example 59 may include a method, technique, or process as described in or related to any of examples 51-55, or portions or parts thereof.
Example 60 may include an apparatus including: one or more processors and one or more computer-readable media including 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 51-55, or portions thereof.
Example 61 may include a signal as described in or related to any of examples 51-55, or portions or parts thereof.
Example 62 may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related to any of examples 51-55, or portions or parts thereof, or otherwise described in the present disclosure.
Example 63 may include a signal encoded with data as described in or related to any of examples 51-55, or portions or parts thereof, or otherwise described in the present disclosure.
Example 64 may include a signal encoded with a datagram, IE, packet, frame, segment, PDU, or message as described in or related to any of examples 51-55, or portions or parts thereof, or otherwise described in the present disclosure.
Example 65 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 51-55, or portions thereof.
Example 66 may include a computer program including 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 51-55, or portions thereof. The operations or actions performed by the instructions executed by the processing element can include the methods of any one of examples 51-55.
Example 67 may include a signal in a wireless network as shown and described herein.
Example 68 may include a method of communicating in a wireless network as shown and described herein.
Example 69 may include a system for providing wireless communication as shown and described herein. The operations or actions performed by the system can include the methods of any one of examples 51-55.
Example 70 may include a device for providing wireless communication as shown and described herein. The operations or actions performed by the device can include the methods of any one of examples 51-55.
The previously-described examples 51-55 are implementable using a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system including a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
Example 71 may include a method for receiving a re-purposed RLC SDU involving receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is within a PDCP reception window, wherein the received RLC SDU comprising the PDCP PDU payload that is within the PDCP reception window replaced a previously received RLC SDU segment; and providing the received re-purposed RLC SDU to a re-ordering function.
Example 72 may include the method of Example 71 where the re-ordering function is implemented at the PDCP layer.
Example 73 may include the method of any of Examples 71-72 where the re-ordering function is implemented at the RLC layer.
Example 74 may include the method of any of Examples 71-73 where providing the received re-purposed RLC SDU to the re-ordering function informs the re-ordering function of one or more gaps in PDCP PDUs.
Example 75 may include the method of any of Examples 71-74 where providing the received re-purposed RLC SDU to the re-ordering function causes the re-ordering window to be updated.
Example 76 may include one or more non-transitory computer-readable media including 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 71-75, or any other method or process described herein.
Example 77 may include an apparatus including logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 71-75, or any other method or process described herein.
Example 78 may include a method, technique, or process as described in or related to any of examples 71-75, or portions or parts thereof.
Example 79 may include an apparatus including: one or more processors and one or more computer-readable media including 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 71-75, or portions thereof.
Example 80 may include a signal as described in or related to any of examples 71-75, or portions or parts thereof.
Example 81 may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related to any of examples 71-75, or portions or parts thereof, or otherwise described in the present disclosure.
Example 82 may include a signal encoded with data as described in or related to any of examples 71-75, or portions or parts thereof, or otherwise described in the present disclosure.
Example 83 may include a signal encoded with a datagram, IE, packet, frame, segment, PDU, or message as described in or related to any of examples 71-75, or portions or parts thereof, or otherwise described in the present disclosure.
Example 84 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 71-75, or portions thereof.
Example 85 may include a computer program including 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 71-75, or portions thereof. The operations or actions performed by the instructions executed by the processing element can include the methods of any one of examples 71-75.
Example 86 may include a signal in a wireless network as shown and described herein.
Example 87 may include a method of communicating in a wireless network as shown and described herein.
Example 88 may include a system for providing wireless communication as shown and described herein. The operations or actions performed by the system can include the methods of any one of examples 71-75.
Example 89 may include a device for providing wireless communication as shown and described herein. The operations or actions performed by the device can include the methods of any one of examples 71-75.
The previously-described examples 71-75 are implementable using a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system including a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
Example 90 may include a method for receiving a re-purposed RLC SDU involving receiving a re-purposed RLC SDU that includes a PDCP payload corresponding to a PDCP SN that is outside of a PDCP reception window; after successful receipt of the re-purposed RLC SDU, moving the receiving window to a start location corresponding to the next RLC SDU location corresponding to an RLC SDU that has not been successfully received; and discarding the received re-purposed RLC SDU.
Example 91 may include one or more non-transitory computer-readable media including 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 example 90, or any other method or process described herein.
Example 92 may include an apparatus including logic, modules, or circuitry to perform one or more elements of a method described in or related to example 90, or any other method or process described herein.
Example 93 may include a method, technique, or process as described in or related example 90, or portions or parts thereof.
Example 94 may include an apparatus including: one or more processors and one or more computer-readable media including 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 example 90, or portions thereof.
Example 95 may include a signal as described in or related example 90, or portions or parts thereof.
Example 96 may include a datagram, information element, packet, frame, segment, PDU, or message as described in or related example 90, or portions or parts thereof, or otherwise described in the present disclosure.
Example 97 may include a signal encoded with data as described in or example 90, or portions or parts thereof, or otherwise described in the present disclosure.
Example 98 may include a signal encoded with a datagram, IE, packet, frame, segment, PDU, or message as described in or related example 90, or portions or parts thereof, or otherwise described in the present disclosure.
Example 99 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-XXA, or portions thereof.
Example 100 may include a computer program including 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 example 90, or portions thereof. The operations or actions performed by the instructions executed by the processing element can include the method of example 90.
Example 101 may include a signal in a wireless network as shown and described herein.
Example 102 may include a method of communicating in a wireless network as shown and described herein.
Example 103 may include a system for providing wireless communication as shown and described herein. The operations or actions performed by the system can include the method of Example 90.
Example 104 may include a device for providing wireless communication as shown and described herein. The operations or actions performed by the device can include the method of Example 90.
The previously-described example 90 is implementable using a computer-implemented method; a non-transitory, computer-readable medium storing computer-readable instructions to perform the computer-implemented method; and a computer system including a computer memory interoperably coupled with a hardware processor configured to perform the computer-implemented method or the instructions stored on the non-transitory, computer-readable medium.
A system, e.g., a base station, an apparatus including one or more baseband processors, and so forth, can be configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination of them installed on the system that in operation causes or cause the system to perform the actions. The operations or actions performed either by the system can include the methods of any one of examples 1-15, 30-36, 51-55, 71-75, or 90.
Any of the above-described examples may be combined with any other example (or combination of examples), unless explicitly stated otherwise. 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 practice of various embodiments.
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.
It is well understood that the use of personally identifiable information should follow privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining the privacy of users. 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.
Number | Date | Country | Kind |
---|---|---|---|
20220100781 | Sep 2022 | GR | national |