PDCP Destruction Instruction for XR
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- APPLE INC
- Filing Date
- 2022-11-04
- Publication Date
- 2026-07-30
Smart Images

Figure 0007898027000001 
Figure 0007898027000002 
Figure 0007898027000003
Abstract
Description
Background Art
[0001] A wireless communication network provides an integrated communication platform and telecommunications services to wireless user devices. Exemplary telecommunications services include telephone, data (e.g., voice, audio, and / or video data), messaging, Internet access, and / or other services. The wireless communication network has a radio access node that exchanges wireless signals with wireless user devices using a wireless network protocol such as those described in various telecommunications standards published by the 3rd Generation Partnership Project (3GPP). Exemplary 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 5th Generation New Radio (5G NR). The wireless communication network uses technologies such as OFDM, Multiple-Input Multiple-Output (MIMO), advanced channel coding, massive MIMO, beamforming, and / or other features to facilitate mobile broadband services.
Summary of the Invention
[0002] In XR operation, the Packet Data Convergence Protocol (PDCP) operation includes a packet discard option, and packet discard is no longer an abnormal event since PDUs are discarded quite regularly. In conventional PDCP operation, when a PDCP SDU that is already associated with a PDCP SN is discarded, a gap in the SN is caused in a plurality of transmitted PDCP data PDUs, thereby increasing the PDCP reordering delay in the receiving PDCP entity. On the other hand, XR requires low latency, and the processing overhead and the use of system resources (including memory in the PDCP receiver) should be minimized.
[0003] Conventional PDCP systems suffered from the overhead of PDCP packet discarding, which caused increased PDCP reordering delays in PDCP receivers. However, this disclosure provides systems and methods that can be employed to minimize the overhead in PDCP receivers resulting from PDCP packet discarding in PDCP transmitters by enhancing the functionality of the PDCP receiver. In some cases, as described in concurrently pending applications, a PDCP receiver can be employed to perform an operation to discard PDCP PDU packets that the PDCP transmitter has marked for discarding, thus avoiding the overhead of the PDCP transmitter performing the discarding process.
[0004] However, for a PDCP receiver to perform the process of discarding PDCP PDUs tagged by a PDCP transmitter for discarding, the PDCP receiver must be notified of which particular PDCP PDUs are being transmitted by the PDCP transmitter while being marked for discarding by the PDCP transmitter. This disclosure provides several implementations for generating and transmitting discard markers (also called discard indicators) to a PDCP receiver to inform the PDCP receiver of PDCP PDUs that have been marked for discarding and can be discarded by the PDCP receiver.
[0005] Therefore, the discard markers of this disclosure enable a PDCP transmitter function that reduces the need for reordering operations by the PDCP receiver (e.g., discarding PDCP PDUs marked for discard). In addition, since the discarding of PDCP PDUs by the PDCP transmitter may occur after the PDCP PDU has been encrypted or after it has been transmitted to a lower-level protocol, discarding PDUs is a computationally intensive task.
[0006] According to one innovative aspect of the present disclosure, a method is disclosed for notifying a Packet Data Convergence Protocol (PDCP) receiver of PDCP PDUs that should be discarded. In one aspect, the method may include the action of a PDCP transmitter determining a set of PDCP PDUs that should be discarded, the action of the PDCP transmitter generating discard markers in the PDCP PDU header that signal to the PDCP receiver that the determined set of PDCP PDUs should be discarded, and the action of the PDCP transmitter transmitting the generated PDCP PDUs to the PDCP receiver.
[0007] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0008] This innovative method may include other optional features. For example, in some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a 1-bit instruction indicating that (i) the first PDCP PDU by sequence number and (ii) several subsequent PDCP PDUs in the set of PDCP PDUs should be discarded by the PDCP receiver.
[0009] In some implementations, the generated discard marker is located in the PDCP PDU header of the last nominal PDCP PDU that should not be discarded, by sequence number, preceding the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a 1-bit instruction indicating that several subsequent PDCP PDUs by sequence number in the set of PDCP PDUs should be discarded by the PDCP receiver.
[0010] In some implementations, this method may further include the PDCP transmitter generating a discard marker in the PDCP PDU header of each specific PDCP PDU in the set of PDCP PDUs to be discarded, which signals to the PDCP receiver that the specific PDCP PDU should be discarded.
[0011] In some implementations, the discard marker is a 1-bit discard marker that signals to the PDCP receiver that (i) the PDCP PDU containing that 1-bit discard marker should be discarded, or (ii) the subsequent PDCP PDU by sequence number should be discarded.
[0012] In some implementations, the discard marker indicates the PDCP PDU set identifier of the set of PDCP PDUs that should be discarded.
[0013] In some implementations, this method may further include the PDCP transmitter sending a set of PDCP PDUs to be discarded to the PDCP receiver.
[0014] In some implementations, the set of PDCP PDUs to be discarded has sequentially consecutive sequence numbers.
[0015] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU and signals the PDCP receiver to the first PDCP PDU by sequence number from the set of PDCP PDUs to be discarded. In such implementations, this method may further include the PDCP transmitter generating a second discard marker in the last PDCP PDU of the set of PDCP PDUs to be discarded, which signals the PDCP receiver to the last PDCP PDU by sequence number from the set of PDCP PDUs to be discarded.
[0016] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU, signaling to the PDCP receiver the first PDCP PDU by sequence number from the set of PDCP PDUs determined to be discarded. In such implementations, the generated discard marker is located in the PDCP PDU header of the last nominal PDCP PDU that is not to be discarded, prior to the first PDCP PDU by sequence number from the set of PDCP PDUs determined to be discarded, signaling to the PDCP receiver that the subsequent PDCP PDU by sequence number is the first PDCP PDU from the set of PDCP PDUs determined to be discarded. In such implementations, this method may further include the PDCP transmitter generating a second discard marker in the last PDCP PDU from the set of PDCP PDUs determined to be discarded, which signals to the PDCP receiver the last PDCP PDU by sequence number from a set of PDCP PDUs determined to be discarded.
[0017] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a two-bit indicator that shows (i) the sequence number of the first PDCP PDU in the set of PDCP PDUs to be discarded, and (ii) the sequence number of the last PDCP PDU in the set of PDCP PDUs to be discarded.
[0018] In some implementations, the discard marker is a two-bit indicator that shows (i) the sequence number of the first PDCP PDU in the set of PDCP PDUs to be discarded, and (ii) the total number of subsequent PDCP PDUs to be discarded.
[0019] In some implementations, the PDCP PDU header is the header of a PDCP data PDU within a set of PDCP PDUs that should be discarded.
[0020] In some implementations, the PDCP PDU header is the header of the PDCP PDU, which is sent within a padded, content-free PDCP data PDU.
[0021] In some implementations, the discard marker includes a parameter that indicates to the PDCP receiver the number of PDCP PDUs that have been discarded in flight.
[0022] Another innovative aspect of this disclosure discloses a method for notifying a Packet Data Convergence Protocol (PDCP) receiver of PDCP PDUs to be discarded. In one aspect, the method may include the action of a PDCP transmitter determining a set of PDCP PDUs to be discarded, the action of the PDCP transmitter generating a PDCP control PDU containing one or more parameters that signal to the PDCP receiver that the determined set of PDCP PDUs should be discarded, and the action of the PDCP transmitter transmitting the generated PDCP control PDU to the PDCP receiver.
[0023] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0024] This innovative method may include other optional features. For example, in some implementations, this method may further include the PDCP transmitter sending a set of PDCP PDUs to be discarded to the PDCP receiver.
[0025] In some implementations, the PDCP control PDU includes a parameter that indicates the identifier of the first PDCP PDU to be discarded. In such implementations, the identifier is the PDCP PDU sequence number.
[0026] In some implementations, the PDCP control PDU includes a plurality of parameters indicating (i) an identifier of the first PDCP PDU to be discarded and (ii) an identifier of the last PDCP PDU to be discarded. In such an implementation, the identifier of the first PDCP PDU to be discarded is the first PDCP PDU sequence number, and the identifier of the last PDCP PDU to be discarded is a different PDCP PDU sequence number.
[0027] In some implementations, the PDCP control PDU includes a plurality of parameters indicating (i) the number of discarded PDCP PDUs within the set of PDCP PDUs to be discarded and (ii) an identifier of a reference PDCP PDU within the set of PDCP PDUs to be discarded. In such an implementation, the identifier is a PDCP PDU sequence number, and the reference PDCP PDU indicates (i) the PDCP PDU at which discard should start or (ii) the PDCP PDU at which discard should stop.
[0028] In some implementations, the PDCP control PDU includes a plurality of parameters signaling a plurality of sets consisting of the set of PDCP PDUs to be discarded. In such an implementation, the plurality of parameters signaling the plurality of sets of PDCP PDUs includes a plurality of ranges of PDCP PDU sequence numbers corresponding to a sequence consisting of a plurality of PDCP PDU sequences to be discarded.
[0029] In some implementations, the PDCP control PDU includes a parameter indicating a PDCP PDU set identifier identifying the set of PDCP PDUs to be discarded.
[0030] In some implementations, the PDCP control PDU includes a parameter indicating the number of PDCP PDUs that are in transit while being discarded.
[0031] In some implementations, this method can further include the PDCP transmitter generating different PDCP control PDUs indicating the number of PDCP PDUs that are in transit but should be discarded.
[0032] In some implementations, the PDCP control PDU is an extension of the PDCP status PDU.
[0033] In some implementations, the set of PDCP PDUs to be discarded has sequentially consecutive sequence numbers.
[0034] According to another innovative aspect of the present disclosure, a method for notifying a packet data convergence protocol (PDCP) receiver of PDCP PDUs to be discarded is disclosed. In one aspect, the method includes an action of the PDCP transmitter determining a set of PDCP PDUs including one or more PDCP PDUs to be discarded, and a discard bitmap for signaling to the PDCP receiver that the determined plurality of PDCP PDUs should be discarded, the discard bitmap including a bitmap field for each PDCP PDU of a certain PDU set and having a toggle bit for each PDCP PDU to be discarded in that PDCP PDU set, an action of the PDCP transmitter generating the generated discard bitmap, and an action of the PDCP transmitter transmitting the generated discard bitmap to the PDCP receiver.
[0035] Other aspects include apparatuses, systems, and computer programs for performing the actions of the前述 method.
[0036] This innovative method can include other optional features. For example, in some implementations, the determined set of PDCP PDUs to be discarded includes PDCP PDUs having non - consecutive sequence numbers.
[0037] In some implementations, the toggle bit for each PDCP PDU in a set of PDCP PDUs to be discarded is the enabled bit.
[0038] In some implementations, the toggle bit for each PDCP PDU in a set of PDCP PDUs to be discarded is a disabled bit.
[0039] In some implementations, the generated discard bitmap is sent to the PDCP receiver as a field in the PDCP status reporting PDU.
[0040] In some implementations, the generated discard bitmap is transmitted to the PDCP receiver as a field of the PDCP control PDU.
[0041] Another innovative aspect of this disclosure discloses a method for generating a discard bitmap report. In one aspect, the method may include the action of a PDCP receiver determining that a subset consisting of essential PDCP PDUs has been received from a set of PDCP PDUs; the action of the PDCP receiver generating a PDCP status report indicating to the PDCP transmitter that the remaining PDCP PDUs in the set of PDCP PDUs can be discarded by the PDCP transmitter; and the action of the PDCP receiver transmitting the PDCP status report to the PDCP transmitter.
[0042] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0043] This innovative method may include other optional features. For example, in some implementations, the PDCP status report is a discard bitmap that signals to the PDCP transmitter that the remaining PDCP PDUs in a set of PDCP PDs should be discarded, and includes a discard bitmap that includes a bitmap field for each PDCP PDU in that set of PDCP PDUs and has toggle bits for each remaining set of PDCP PDUs to be discarded by the PDCP transmitter.
[0044] In some implementations, the remaining set of PDCP PDUs includes PDCP PDUs with non-consecutive sequence numbers.
[0045] In some implementations, the toggle bit for each remaining PDCP PDU in a PDCP PDU set that should be discarded is an enabled bit.
[0046] In some implementations, the toggle bit for each remaining PDCP PDU in a PDCP PDU set that should be discarded is a disabled bit.
[0047] In another innovative aspect of this disclosure, a method for generating a discard bitmap report is disclosed. In one aspect, the method may include: an action by a PDCP receiver to determine a subset of PDCP PDUs from a set of PDCP PDUs that have been locally discarded by the PDCP receiver; an action by the PDCP receiver to generate a PDCP status report to the PDCP transmitter indicating the subset of PDCP PDUs that have been locally discarded by the PDCP receiver; and an action by the PDCP receiver to transmit the PDCP status report to the PDCP transmitter.
[0048] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0049] This innovative method may include other optional features. For example, in some implementations, the PDCP status report is a discard bitmap that signals to the PDCP transmitter that a subset of PDCP PDs has been locally discarded, and includes a discard bitmap having a bitmap field for each PDCP PDU that has been locally discarded from the set of PDCP PDUs, and a toggle bit for each PDCP PDU that has been locally discarded by the PDCP receiver.
[0050] In some implementations, a subset of PDCP PDUs discarded locally by the PDCP receiver includes PDCP PDUs with non-consecutive sequence numbers.
[0051] In some implementations, the toggle bit for each PDCP PDU discarded locally by the PDCP receiver is the enabled bit.
[0052] In some implementations, the toggle bit for each remaining PDCP PDU that has been locally discarded by the PDCP receiver is a disabled bit.
[0053] In another innovative aspect of this disclosure, a method for implicitly determining PDCP PDU packets marked for discard is disclosed. In one aspect, the method may include an action by a PDCP receiver detecting that the first set of PDCP PDUs is signaling the last sequence number earlier than expected, an action by a PDCP receiver detecting that the next set of PDUs is signaling the first sequence number, and an action by a PDCP receiver determining that a PDCP PDU having a sequence number between the last sequence number of the first set of PDCP PDUs and the first sequence number of the next set of PDUs should be discarded.
[0054] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0055] In another innovative aspect of this disclosure, a method for implicitly instructing PDCP PDU packets to be discarded is disclosed. In one aspect, the method may include an action by a PDCP transmitter determining that the remaining PDCP PDUs in a set of PDUs should be discarded, and an action by the PDCP transmitter setting the last sequence number in the set of PDCP PDUs to the last actual PDCP PDU to be processed.
[0056] Other embodiments include apparatus, systems, and computer programs for performing the actions of the aforementioned methods.
[0057] Details of one or more embodiments of these systems and methods are described in the accompanying drawings and the following description. Other features, subjects, and advantages of these systems and methods will become apparent from the description and drawings, as well as the claims. [Brief explanation of the drawing]
[0058] [Figure 1] This shows several implementations of wireless networks.
[0059] [Figure 2] This is a flowchart of the process for notifying a PDCP receiver of a set of PDCP PDUs that should be discarded, using a discard marker in the PDCP data PDU header.
[0060] [Figure 3] This figure shows an example of a PDCP control PDU format for reporting PDCP discard status.
[0061] [Figure 4]This is a flowchart of the process for notifying a PDCP receiver of a set of PDCP PDUs that should be discarded, using discard markers within the PDCP control PDU.
[0062] [Figure 5] This is a flowchart of the process for notifying a PDCP receiver of a set of PDCP PDUs that should be discarded, using a PDCP discard bitmap.
[0063] [Figure 5A] This diagram shows a description of the fields in the discard bitmap.
[0064] [Figure 6] This is a flowchart of the PDCP receiver process that notifies the PDCP transmitter that after processing the essential PDCP PDUs from a set of PDCP PDUs, the remaining PDCP PDUs in that set can be discarded.
[0065] [Figure 7] This is a flowchart of the PDCP receiver process that notifies the PDCP transmitter that a subset of PDCP PDUs from the PDCP set has been locally discarded by the PDCP receiver.
[0066] [Figure 8] This diagram shows a description of the fields in the discard bitmap report.
[0067] [Figure 9] This figure shows an example of another PDCP control PDU format for PDCP discard status reporting.
[0068] [Figure 10] This diagram shows user equipment (UE) in several implementation forms.
[0069] [Figure 11]This diagram shows access nodes in several different implementation forms. [Modes for carrying out the invention]
[0070] This disclosure provides multiple implementations for generating and transmitting discard markers (also called discard indicators) to a PDCP receiver to inform the PDCP receiver of PDCP PDUs that have been marked for discard and can be discarded by the PDCP receiver.
[0071] Therefore, the discard markers of this disclosure enable a PDCP transmitter function that reduces the need for reordering operations by the PDCP receiver (e.g., discarding PDCP PDUs marked for discard). Furthermore, since the discarding of PDCP PDUs by the PDCP transmitter may occur after the PDCP PDU has been encrypted or after it has been transmitted to a lower-level protocol, discarding PDUs is a computationally intensive task.
[0072] Other implementations provided by this disclosure enable the PDCP receiver to generate and transmit discard feedback reports to the PDCP transmitter. Such discard feedback reports can be discarded by the PDCP receiver or can notify the PDCP transmitter of PDCP PDUs that have already been discarded locally, thus reducing the additional overhead processing by the PDCP transmitter related to PDCP PDUs that should be discarded or have been discarded locally.
[0073] Figure 1 shows several implementations of the wireless network 100. The wireless network 100 includes a UE 102 and a base station 104 connected via one or more channels 106A, 106B across an air interface 108. The UE 102 and base station 104 communicate using a system that supports control for managing the UE 102's access to the network via base station 104.
[0074] In some implementations, the wireless network 100 may be a non-standalone (NSA) network incorporating Long-Term Evolution (LTE) and 5G New Radio (NR) communication standards as defined by the 3G Partnership Project (3GPP) technical specifications. For example, the wireless network 100 may be an E-UTRA (Evolutionary Universal Terrestrial Radio Access)-NR dual connectivity (EN-DC) network or an NR-EUTRA dual connectivity (NE-DC) network. However, the wireless network 100 may also be a standalone (SA) network incorporating only 5G NR. Furthermore, other types of communication standards are possible, including future 3GPP systems (e.g., 6th generation (6G)) systems, IEEE 802.11 technologies (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 currently or future-developed IEEE 802.11 technologies), and IEEE 802.16 protocols (e.g., WMAN, WiMAX, etc.). While aspects may be described herein using terms generally related to 5G NR, aspects of this disclosure may apply to other systems, such as systems following 3G, 4G, and / or 5G (e.g., 6G).
[0075] In the wireless network 100, UE 102 and any other UEs in the system may be, for example, machine-type devices such as laptop computers, smartphones, tablet computers, smart meters, or dedicated devices for healthcare, intelligent transport systems, or any other wireless devices with or without a user interface. In the network 100, base station 104 provides UE 102 with network connectivity to a wider network (not shown). This UE 102 connectivity is provided via an air interface 108 within the base station service area provided by base station 104. In some implementations, such a wider network may be a wide-area network operated by a cellular network provider, or it may be the Internet. Each base station service area associated with base station 104 is supported by an antenna integrated with base station 104. The service area is divided into several sectors associated with a particular antenna. Such sectors may be physically associated with a fixed antenna, or they may be assigned to physical areas using adjustable antennas or antenna configurations in a beamforming process used to direct signals to a particular sector.
[0076] The UE102 includes a control circuit 110 coupled to a transmitter circuit 112 and a receiver circuit 114. Each of the transmitter circuit 112 and the receiver circuit 114 may be coupled to one or more antennas. The control circuit 110 may include various combinations of application-specific circuits and baseband circuits. The transmitter circuit 112 and the receiver circuit 114 may be adapted to transmit and receive data, respectively, and may include radio frequency (RF) circuits or front-end module (FEM) circuits.
[0077] In various implementations, the transmitter circuit 112, receiver circuit 114, and control circuit 110 may be integrated in various ways to implement the operations described herein. The control circuit 110 may be adapted or configured to perform various operations, such as those described elsewhere in this disclosure relating to the UE. For example, when the UE 102 is a PDCP receiver, the control circuit 110 may perform operations relating to determining that all essential PDUs of a set of PDUs have been processed and generate a discard bitmap report that provides the PDCP transmitter with instructions for the remaining PDCP PDUs in that set that can be discarded. These operations may include, for example, one or more operations 610, 620 in Figure 6. Similarly, when the UE 102 is a PDCP receiver, the control circuit 110 may perform operations relating to determining a set of PDCP PDUs that have been discarded locally by the PDCP receiver and generate a discard feedback report that indicates the PDCP PDUs that have been discarded locally by the PDCP receiver to the PDCP transmitter. These operations may include, for example, operations 710, 720 in Figure 7.
[0078] As a different example, when UE102 is a PDCP transmitter, the control circuit 110 can perform operations 210, 220 in Figure 2, which determine a set of PDCP PDUs to be discarded and generate discard markers in the PDCP header that signal to the PDCP receiver that the determined multiple PDCP PDUs should be discarded. Similarly, when UE102 is a PDCP transmitter, the control circuit 110 of UE102 can perform operations 410, 420 in Figure 4, which generates a PDCP control PDU containing one or more parameters that signal to the PDCP receiver that the determined multiple PDCP PDUs should be discarded. Similarly, when UE102 is a PDCP transmitter, the control circuit 110 can also perform operations 510, 520 in Figure 5, which determines a set of PDCP PDUs containing one or more PDCP PDUs to be discarded and generates a discard bitmap that signals to the PDCP receiver that the determined multiple PDCP PDUs should be discarded.
[0079] The transmitting circuit 112 can perform various operations as described herein. For example, when the UE is a PDCP transmitter, the transmitting circuit 112 can transmit a generated PDCP data PDU including a discard marker to the PDCP receiver, transmit a generated PDCP control PDU to the PDCP receiver, or transmit a generated discard bitmap to the PDCP receiver, as described in operations 230, 430, and 530, respectively, in Figures 2, 4, and 5. Furthermore, the transmitting circuit 112 may transmit multiple multiplexed uplink physical channels. The multiple uplink physical channels may be multiplexed by time division multiplexing (TDM) or frequency division multiplexing (FDM) along with carrier aggregation. The transmitting circuit 112 may be configured to receive block data from the control circuit 110 for transmission via the air interface 108.
[0080] The receiving circuit 114 can perform various operations as described herein. For example, when UE 102 is a PDCP receiver, UE 102 can use the receiving circuit 114 to receive discard markers transmitted by a PDCP transmitter. Similarly, when UE 102 is a PDCP transmitter, UE 102 can use the receiving circuit 114 to receive discard bitmap reports and discard feedback reports from a PDCP receiver. Furthermore, the receiving circuit 114 may receive multiplexed downlink physical channels from the air interface 108 and relay the physical channels to the control circuit 110. The multiple downlink physical channels may be multiplexed by TDM or FDM along with carrier aggregation. The transmitting circuit 112 and the receiving circuit 114 can transmit and receive both structured control data and content data (e.g., messages, images, videos, etc.) within data blocks carried by the physical channels.
[0081] Figure 1 also shows base station 104. In the implementation, base station 104 may be an NG radio access network (RAN), 5G RAN, E-UTRAN, non-terrestrial cell, or legacy RAN such as UTRAN or GERAN. As used herein, terms such as "NG RAN" may refer to base station 104 operating on an NR or 5G radio network 100, and terms such as "E-UTRAN" may refer to base station 104 operating on an LTE or 4G radio network 100. UE 102 utilizes connections (or channels) 106A, 106B, each including a physical communication interface or layer.
[0082] The base station 104 circuit may include a control circuit 116 coupled to a transmit circuit 118 and a receive circuit 120. Each of the transmit circuit 118 and the receive circuit 120 may be coupled to one or more antennas that can be used to enable communication via the air interface 108. Each of the transmit circuit 118 and the receive circuit 120 may be adapted to transmit and receive data to and from any UE connected to the base station 104. The transmit circuit 118 may transmit a downlink physical channel containing multiple downlink subframes. Furthermore, for example, when the base station 104 is a PDCP transmitter, the base station can use the transmit circuit 118 to perform operations having the properties of a PDCP transmitter, for example, operation 230 in Figure 2, operation 430 in Figure 4, and operation 530 in Figure 5. Alternatively, when the base station is a PDCP receiver, the base station 104 can use the transmit circuit 118 to perform operations having the properties of a PDCP receiver, for example, operation 630 in Figure 6 and operation 730 in Figure 7. The base station 104 may use the receiving circuit 120 to receive multiple uplink physical channels from various UEs, including UE 102. Furthermore, when the base station 104 is a PDCP receiver, it can receive discard markers transmitted from the PDCP transmitter. Additionally, when the base station 104 is a PDCP transmitter, it can use the receiving circuit 120 to receive discard bitmap reports and discard feedback reports transmitted by the PDCP receiver using operation 630 in Figure 6 and operation 730 in Figure 7, respectively. Furthermore, when the base station 104 is a PDCP receiver, it can use the control circuit 116 to perform operations 610, 620 in Figure 6 and operations 710, 720 in Figure 7. Similarly, when the base station 104 is a PDCP transmitter, it can use the control circuit 116 to perform operations 210, 220 in Figure 2, 410, 420 in Figure 4, and 510, 520 in Figure 5.
[0083] In Figure 1, one or more channels 106A, 106B are shown as air interfaces enabling a communicable coupling and can conform to cellular communication protocols such as the GSM protocol, CDMA network protocol, UMTS protocol, 3GPP LTE protocol, Advanced Long-Term Evolution (LTE-A) protocol, LTE-Based Access to Unlicensed Spectrum (LTE-U), 5G protocol, NR protocol, NR-Based Access to Unlicensed Spectrum (NR-U) protocol, and / or any other communication protocols described herein. In implementations, UE102 can directly exchange communication data via the ProSe interface. The ProSe interface may alternatively be referred to as a sidelink (SL) interface and may include, but is not limited to, one or more logical channels, including a physical sidelink control channel (PSCCH), a physical sidelink downlink channel (PSDCH), and a physical sidelink broadcast channel (PSBCH).
[0084] Discard marker for dynamic signaling of discarded PDCP PDUs
[0085] In some implementations, where the PDUs in a PDU set are contiguous and a discard condition is triggered at a specific SN within a PDU sequence in the PDU set, the remaining PDUs in the PDU set (assuming they are contiguous) can be interpreted as being destined for discard. This is one option, for example, and is in line with the current assumptions of SA2 and RAN2.
[0086] In some implementations, the PDCP transmitter may indicate a discard instruction, referred to herein as a discard marker, to the PDCP receiver. In some implementations, the discard marker is associated with the sequence number (SN) of the PDU to be discarded (e.g., the first PDU in a sequence). In some implementations, the discard marker may be a 1-bit indicator.
[0087] In some implementations, the discard marker can be signaled using, for example, one of the reserved bits (R bits) in the data PDU header. Since the data PDU is usually associated with an SN anyway, the receiver can identify the PDU intended to be discarded. In some implementations, when the data PDU is unavailable, a separate SN may be included along with the discard marker (for example, in the control PDU).
[0088] A discard instruction can serve either as a discard command from the transmitter to the receiver, or as an instruction for a PDU that has already been discarded by the transmitter. As a result, the receiver can minimize reordering delays or further optimize processing by taking advantage of its recognition of this instruction.
[0089] Scenario where the PDCP receiver recognizes the remaining PDUs in the PDU set
[0090] In some implementations, when the PDCP receiver is aware of the number of remaining PDUs in the PDU set (or can be derived by the receiver based on, for example, the size of the PDU set, or other description or instructions provided about the PDU set), the discard marker can be implemented in several different ways.
[0091] In some implementations, for example, the transmitter can signal a 1-bit instruction on the first PDU to be discarded or on the last actual PDU to be transmitted within a PDU set. Subsequently, all PDUs in the PDU set are expected to be discarded as well.
[0092] In some implementations, a 1-bit discard marker can be provided for one or more PDUs in a PDU set. For example, if the first PDU to be discarded is associated with, for example, SN=555 (and, for example, the last nominal SN in the PDU set is at SN=750), the discard marker may be transmitted at, for example, SN=555 (the first PDU to be discarded) or at, for example, SN=554 (the last actual PDU in the PDU set).
[0093] In some implementations, a 1-bit discard marker can be repeated several times, for example, to avoid loss of discard information. For example, the discard marker can be set to, for instance, SN=554, 555, 556, or later.
[0094] Scenario where the PDCP receiver recognizes the remaining PDUs in the PDU set
[0095] In some implementations, when the PDCP receiver is unaware of the number of remaining PDUs in the PDU set, the transmitter can send an additional discard marker using the signal-to-noise ratio (SN) of the last nominal PDU in the set. This can be implemented in several ways.
[0096] For example, in some implementations, there can be at least two discard markers, one on SN=554 (or SN=555) of the first SN to be discarded, and the other on SN=750 of the last SN to be discarded in the PDU set. The two SNs (e.g., 555 and 750) could also be sent immediately after SN=554, for example.
[0097] In other implementations, two bits (for example, two adjacent reserved bits in the PDU header) may be used to encode, for example, the first and last discard markers associated with the first and last SNs that should be discarded.
[0098] Alternatively, or further, the transmitter may indicate the "number of PDCP PDUs to be discarded together" (for consecutive PDUs). So, for example, if SN=555 is to be discarded, the transmitter may further indicate, for example, "195", and therefore everything between 555 and 555+195 (=750) should be discarded.
[0099] Since the actual application layer data should be discarded, the discard marker (when given on the PDU SN that is to be discarded) may be sent on another empty PDU (with small padding or dummy data, or without content). Alternatively, the discard marker may be given on the control PDU.
[0100] In some implementations, some form of dynamic (in-band) signaling may be available within the PDU header, which can identify the last SN in a PDU set. Therefore, when the remaining PDUs in a PDU set should be discarded, the transmitter can simply set its last SN instruction earlier, no longer to, for example, the last actual SN in the PDU set (e.g., SN=554). This is referred to, for example, as an implicit discard instruction or early termination of a PDU set.
[0101] In some implementations, when the next SN (e.g., SN=555) no longer carries the first PDU of the next PDU set, an explicit discard marker may not be required, and the reordering delay is naturally minimized.
[0102] For example, when the nominal number of PDUs in a PDU set is known to the receiver in advance (e.g., from semi-static signaling or through an indication in the PDU set descriptor (P55803)), or when a general PDU set description is signaled at the start of the PDU set, the last PDU in the PDU set can be indicated earlier than expected using the normal PDU set termination signaling already present on the last actual SN. For example, the nominal number of PDUs in a PDU set is indicated as, for example, 500 PDUs, but the transmitter has already signaled the end of the PDU set after, for example, 260 PDUs. The same method may be used when the nominal number of PDUs in a PDU set is not known in advance. Furthermore, the next SN can be identified using the normal PDU set start signaling of the next PDU set. By using parameters in the packet header that describe the PDU set, it is possible to identify both the last SN before the gap and the first SN after the gap, assuming that PDU set 2 (which has a PDU set start signaling) is followed by PDU set 1 (which has a PDU set end signaling).
[0103] The above options depend on the final allocation between semi-static and dynamic (in-band) parameters available for that PDU set. In some cases, immediate termination of a PDU set can be difficult for UE / gNB implementations because, in order for the same PDCP SN to be associated with a different PDU set, PDCP PDUs already submitted to the lower layer (e.g., SN=555, 556-590) must be discarded in the lower layer queue beforehand. Therefore, discard markers (or other forms of discard signaling) may be considered. For example, a discard marker can be used to terminate a PDU set at, for example, SN=554. To take into account PDUs already submitted to the lower layer, the next PDU set can be started immediately at the next SN (e.g., SN=591 in the above example), or at a corresponding SN, whatever the number of PDUs already submitted to the lower layer may be.
[0104] Alternatively, the transmitter may notify the receiver of packets that have expired (e.g., identified as to be discarded) but will continue to be transmitted, for example, by indicating a PDU that has already been submitted to a lower layer due to the constraints described above. This may be done in a separate discard marker (with a new combination of R bits when two R bits are used), or in a separate PDCP control PDU, or by extending the PDCP data / control PDU with parameters to indicate those special packets, or in a new RLC control PDU (since the number of packets is available in RLC) or in MAC CE.
[0105] The number of packets submitted to the lower layer may be implementation-specific (pre-processed) or depend on the discard timing. Therefore, the transmitter can determine this number. Alternatively, there may be a fixed value or a setting to configure such expired PDUs (from the network for the UE, or a carrier setting for the gNB). In this case, separate signaling is not necessarily required.
[0106] Discard markers signaled using the PDCP data PDU header
[0107] In some implementations, discard markers can be implemented within the PDCP data PDU header. The PDCP data PDU header option for signaling discard markers can be implemented in either the uplink (UL) or downlink (DL).
[0108] In some implementations, the R bit is available for all types of data PDUs, and one or two R bits may be used to signal a discard marker within the PDCP data PDU header.
[0109] Some implementations use one or two R bits to signal a discard marker, plus an extra parameter (e.g., "195" in the example above) to indicate the number of discarded PDUs. This option may be useful, for example, when the PDUs have already been submitted to a lower layer (pre-processed) or when the nominal number of PDUs in a PDU set is unknown to the PDCP receiver.
[0110] In some implementations, if the PDCP receiver knows the "PDU set identifier," the PDCP transmitter can indicate only the identifier of the PDU set that should be discarded together (if applicable). Therefore, one or two R bits can be used to signal a discard marker, and additional parameters can be used to signal one or more PDU set identifiers. In some implementations, this option can be combined with the above implementations that use extra parameters to indicate the number of discarded PDUs.
[0111] In some implementations, two R bits can be used for the discard marker, where one of the R bit combinations is used to indicate a pre-configured number of PDUs that are in transit but are intended to be discarded. No other parameters are required besides the two-bit combination indicating the type of discard marker.
[0112] In some implementations, the above options are combined with an additional parameter to indicate the number of PDUs discarded during transit.
[0113] Figure 2 is a flowchart of process 200 for notifying a PDCP receiver of a set of PDCP PDUs to be discarded using discard markers in the PDCP data PDU header. In this specification, process 200 is described as being performed by a PDCP transmitter that transmits PDCP discard markers. For the purposes of this disclosure, the PDCP receiver may be a UE or base station that receives PDCP PDUs. Similarly, the PDCP transmitter may be a UE or base station that transmits PDCP PDUs. Therefore, communication between the PDCP transmitter and the PDCP receiver may be communication between a UE and a base station, communication between a base station and a UE, or communication between two UEs.
[0114] The PDCP transmitter can initiate the execution of process 200 by determining the set of PDCP PDUs that should be discarded (210).
[0115] The PDCP transmitter can continue the execution of process 200 by generating discard markers in the PDCP PDU header, which signal to the PDCP receiver that multiple PDCP PDUs that have been determined should be discarded (220).
[0116] The PDCP transmitter can continue executing process 200 by sending the generated PDCP PDU to the PDCP receiver (230).
[0117] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a 1-bit instruction indicating that (i) the first PDCP PDU by sequence number and (ii) several subsequent PDCP PDUs in the set of PDCP PDUs should be discarded by the PDCP receiver.
[0118] In some implementations, the generated discard marker is located in the PDCP PDU header of the last nominal PDCP PDU that should not be discarded, by sequence number, preceding the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a 1-bit instruction indicating that several subsequent PDCP PDUs by sequence number in the set of PDCP PDUs should be discarded by the PDCP receiver.
[0119] In some implementations, for each specific PDCP PDU in the set of PDCP PDUs to be discarded, the PDCP transmitter can continue the execution of process 200 by generating a discard marker, which is a 1-bit discard marker in the PDCP PDU header of that particular PDCP PDU, signaling to the PDCP receiver that that particular PDCP PDU should be discarded.
[0120] In some implementations, the discard marker is a 1-bit discard marker that signals to the PDCP receiver that (i) the PDCP PDU containing that 1-bit discard marker should be discarded, or (ii) the subsequent PDCP PDU by sequence number should be discarded.
[0121] In some implementations, the discard marker indicates the PDCP PDU set identifier of the set of PDCP PDUs to be discarded. In some implementations, the set of PDCP PDUs to be discarded has sequentially consecutive numbers.
[0122] In some implementations, the PDCP transmitter can continue executing process 200 by sending a set of PDCP PDUs to be discarded to the PDCP receiver.
[0123] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU, signaling the PDCP receiver to the first PDCP PDU by sequence number from the set of PDCP PDUs that have been determined to be discarded. In such implementations, the PDCP transmitter can continue the execution of process 200 by generating a second discard marker, which is located in the last PDCP PDU of the set of PDCP PDUs that have been determined to be discarded, and signals the PDCP receiver to the last PDCP PDU by sequence number from the set of PDCP PDUs that have been determined to be discarded.
[0124] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU, signaling the PDCP receiver to the first PDCP PDU by sequence number from the set of PDCP PDUs determined to be discarded. In such implementations, the generated discard marker is located in the PDCP PDU header of the last nominal PDCP PDU that is not to be discarded, prior to the first PDCP PDU by sequence number from the set of PDCP PDUs determined to be discarded, signaling the PDCP receiver that the subsequent PDCP PDU by sequence number is the first PDCP PDU in the set of PDCP PDUs determined to be discarded. In such implementations, the PDCP transmitter can continue the execution of process 200 by generating a second discard marker, which is located in the last PDCP PDU in the set of PDCP PDUs determined to be discarded, and signals the PDCP receiver to the last PDCP PDU by sequence number from the set of PDCP PDUs determined to be discarded.
[0125] In some implementations, the generated discard marker is located in the PDCP PDU header of the first PDCP PDU by sequence number in the set of PDCP PDUs that have been determined to be discarded. In such implementations, the discard marker is a two-bit indicator that shows (i) the sequence number of the first PDCP PDU in the set of PDCP PDUs to be discarded, and (ii) the sequence number of the last PDCP PDU in the set of PDCP PDUs to be discarded.
[0126] In some implementations, the discard marker is a two-bit indicator that shows (i) the sequence number of the first PDCP PDU in the set of PDCP PDUs to be discarded, and (ii) the total number of subsequent PDCP PDUs to be discarded.
[0127] In some implementations, the PDCP PDU header is the header of a PDCP data PDU within a set of PDCP PDUs that should be discarded.
[0128] In some implementations, the PDCP PDU header is the header of the PDCP PDU, which is sent within a padded, content-free PDCP data PDU.
[0129] In some implementations, the discard marker includes a parameter that informs the PDCP receiver of the number of discarded PDCP PDUs in transit.
[0130] New PDCP control PDU option for signaling discard markers
[0131] In some implementations, the discard marker can be implemented within the PDCP control PDU. The PDCP control PDU can be used to signal the discard marker at either the uplink (UL) or downlink (DL).
[0132] In some implementations, a new control PDU is provided for use as a discard marker control PDU (or PDCP discard status report). An example of the new discard marker control PDU 300 is shown in Figure 3. The discard marker control PDU 300 may include fields that indicate the data necessary to provide the PDCP discard report status for discard operations. In some implementations, the PDU type 310 in octet 1 may be a new PDU type indicating that the PDCP control PDU 300 is used as a discard marker. The fields in octets 2-5 may be used to indicate the first discard sequence number or count (FDC) of one or more PDCP sequence number ranges. Optionally, the new discard marker control PDU 300 may be extended to include optional fields 320, 330 if the new discard marker control PDU 300 is used to report a discard bitmap as described, for example, with respect to 5, 6, and 7.
[0133] The new discard marker control PDU can include several different parameter options. These parameter options are not mutually exclusive and can be combined.
[0134] In some implementations, the discard marker control PDU contains only one parameter. In such implementations, this single parameter may, for example, indicate the count / SN of the first PDU to be discarded.
[0135] In some implementations, the discard marker control PDU can include two parameters. In some implementations, the two parameters may include, for example, a) the count or SN of the first PDU to be discarded, and b) the count / SN of the last PDU to be discarded. In other embodiments, the two parameters may include, for example, a) the number of discarded PDUs in the PDU set, and b) a reference SN / count (to indicate the start or stop of discarding).
[0136] Some implementations can represent a variable format having multiple sets of discarded SN / counts, where each SN set is ordered within itself but can represent a block of multiple SN / counts. This implementation can be based on any of the aforementioned implementations related to the new discard marker control PDU.
[0137] In some implementations, any of the above / below options related to the new discard marker control PDU can be combined with a parameter to indicate one (or more) PDU set identifiers.
[0138] In some implementations, a separate discard marker control PDU can be used to indicate a pre-configured number of PDUs that are in transit but are intended to be discarded.
[0139] In some implementations, any of the above options for discard marker control PDUs can be combined with additional parameters to indicate the number of discarded PDUs in transit.
[0140] In some implementations, an extension of an existing PDCP status PDU (for example, using one of the implementations described above) can be used for a new discard marker control PDU.
[0141] In some implementations, a discard marker control PDU can be used when PDUs are discarded sequentially or partially sequentially (in multiple blocks). In principle, the PDCP receiver considers the last PDU before discarding and the next PDU after discarding to be in order. Upon receiving a discard marker signaling, the PDCP receiver may also use one of the methods in Solution 2 or 3 to eliminate the SN gap. The PDCP receiver can update the reordering window with the new parameters. If necessary, the PDCP receiver may use this information to update the (existing) PDCP status variables accordingly.
[0142] Figure 4 is a flowchart of process 400 for notifying a PDCP receiver of a set of PDCP PDUs to be discarded using discard markers in a PDCP control PDU. In this specification, process 400 is described as being performed by a PDCP transmitter that transmits PDCP discard markers. For the purposes of this disclosure, the PDCP receiver may be a UE or base station that receives PDCP PDUs. Similarly, the PDCP transmitter may be a UE or base station that transmits PDCP PDUs. Therefore, communication between the PDCP transmitter and the PDCP receiver may be communication between a UE and a base station, communication between a base station and a UE, or communication between two UEs.
[0143] The PDCP transmitter may perform process 400 (410) by determining the set of PDCP PDUs that should be discarded.
[0144] The PDCP transmitter can continue the execution of process 400 by generating a PDCP control PDU containing one or more parameters that signal to the PDCP receiver that multiple PDCP PDUs that have been determined should be discarded (420).
[0145] The PDCP transmitter can continue executing process 400 by sending the generated PDCP control PDU to the PDCP receiver (430).
[0146] In some implementations, the PDCP transmitter can continue executing process 400 by sending a set of PDCP PDUs to be discarded to the PDCP receiver.
[0147] In some implementations, the PDCP control PDU can include a parameter that indicates the identifier of the first PDCP PDU to be discarded. In such implementations, the identifier is the PDCP PDU sequence number.
[0148] In some implementations, the PDCP control PDU may include multiple parameters indicating (i) the identifier of the first PDCP PDU to be discarded and (ii) the identifier of the last PDCP PDU to be discarded. In such implementations, the identifier of the first PDCP PDU to be discarded is the first PDCP PDU sequence number, and the identifier of the last PDCP PDU to be discarded is a different PDCP PDU sequence number.
[0149] In some implementations, the PDCP control PDU may include several parameters indicating (i) the number of discarded PDCP PDUs in the set of PDCP PDUs to be discarded, and (ii) the identifier of the reference PDCP PDU in the set of PDCP PDUs to be discarded. In such implementations, the identifier is the PDCP PDU sequence number, and the reference PDCP PDU indicates (i) the PDCP PDU in which discarding should be initiated, or (ii) the PDCP PDU in which discarding should be stopped.
[0150] In some implementations, the PDCP control PDU may include multiple parameters that signal multiple sets of PDCP PDUs that should be discarded.
[0151] In some implementations, multiple parameters signaling multiple sets of PDCP PDUs may include multiple ranges of PDCP PDU sequence numbers corresponding to sequences consisting of PDCP PDU sequences to be discarded.
[0152] In some implementations, the PDCP control PDCU may include a parameter indicating a PDCP PDU set identifier that identifies the PDCP PDU set to be discarded.
[0153] In some implementations, the PDCP control PDU may include a parameter indicating the number of PDCP PDUs that are in transit but should be discarded.
[0154] In some implementations, the PDCP transmitter can continue the execution of process 400 by generating different PDCP control PDUs that indicate the number of PDCP PDUs that are being transmitted but should be discarded.
[0155] In some implementations, the PDCP control PDU is an extension of the PDCP status PDU.
[0156] In some implementations, the set of PDCP PDUs to be discarded has sequentially consecutive sequence numbers.
[0157] PDCP discard bitmap
[0158] There may be a mode in which a PDU set can be considered complete when a defined or set amount (or percentage) of the PDUs in the set has been confirmed to have been successfully transmitted on the lower layer (e.g., HARQ ACKed). Once all such "essential" PDUs / SNs have been received, the transmitter can notify the receiver using a PDCP status report (or PDCP discard report). The status report informs the receiver of the PDUs that the transmitter intends to discard. The receiver can use this information to minimize reordering delays.
[0159] Furthermore, the triggers for such PDU discards are specific to XR, and multiple conditions can lead to the discard of a PDU set or a portion of a PDU set.
[0160] However, in the example above, not all PDUs to be discarded are necessarily in order. To identify such "scattered" PDUs / SNs, a discard bitmap can be provided in the PDCP status report / PDCP discard report. The discard bitmap has a similar format to the existing bitmap in the PDCP status report, but uses a bitmap field to set (or not set) bits for, for example, all discarded PDUs. An example of such a discard bitmap is shown in Figure 5.
[0161] In some implementations, using discard markers in the PDCP data PDU header or within a new PDCP control PDU may not be optimal or applicable to minimize reordering delay when discarded PDUs are out of order. Instead, a PDCP receiver can store a discard bitmap and selectively skip those discarded PDUs as part of the reordering process (by not introducing latency and considering all last PDUs before discarding and all next PDUs after discarding as being in order). Such behavior is somewhat more complex. While a PDCP receiver can handle this depending on the implementation, the protocol may still require defining a bitmap and having procedural text indicating that the receiver will use the discard bitmap to minimize reordering delay.
[0162] A discard bitmap, such as the discard bitmap 500A in Figure 5A, can be used by a PDCP transmitter to inform a PDCP receiver of multiple discarded PDUs (including cases where the discarded PDUs are not necessarily in order). The discard bitmap can be a new field in a PDCP status report, such as one or more optional fields 320, 330 of a PDCP control PDU 300. Alternatively, a separate PDCP status report (or control PDU) may be used for discard reporting.
[0163] In Figure 3, the PDCP control PDU may have one or more First Discard Count (FDC) fields in the PDCP status report. In some implementations, each of the one or more FDC fields may have a length of 32 bits. Each FDC field may indicate the SN count value of the first PDCP SDU to be discarded in a given set of PDUs at the PDCP transmitter.
[0164] Each discard bitmap, such as the discard bitmap 500A in Figure 5A, can have a variable length. In some implementations, the length of the discard bitmap field can be 0.
[0165] Each field in the discard bitmap 500A indicates which SDUs are discarded and which are correctly transmitted / processed by the transmitting PDCP entity. The bit position of the Nth bit in the discard bitmap is N, i.e., the bit position of the first bit in the bitmap is 1. In some implementations, the bit corresponding to a PDCP PDU can be set or enabled when the bit is toggled to a value of "1". Otherwise, the bit corresponding to a PDCP PDU can be left unset or disabled when the bit is toggled to a value of "0".
[0166] Figure 5 is a flowchart of process 500 for notifying a PDCP receiver of a set of PDCP PDUs to be discarded using a PDCP discard bitmap. In this specification, process 500 is described as being performed by a PDCP transmitter that transmits PDCP discard markers. For the purposes of this disclosure, the PDCP receiver may be a UE or base station that receives PDCP PDUs. Similarly, the PDCP transmitter may be a UE or base station that transmits PDCP PDUs. Therefore, communication between the PDCP transmitter and the PDCP receiver may be communication between a UE and a base station, communication between a base station and a UE, or communication between two UEs.
[0167] The PDCP transmitter can initiate the execution of process 500 by determining a set of PDCP PDUs that include one or more PDCP PDUs that should be discarded (510).
[0168] The PDCP transmitter can continue the execution of process 500 by generating a discard bitmap that signals to the PDCP receiver that a plurality of determined PDCP PDUs should be discarded, the discard bitmap including a bitmap field for each PDCP PDU in a set of PDUs, and having a toggle bit for each PDCP PDU in the set of PDCP PDUs to be discarded (520).
[0169] The PDCP transmitter can continue executing process 500 by sending the generated discard bitmap to the PDCP receiver (530).
[0170] In some implementations, the set of PDCP PDUs that are determined to be discarded includes PDCP PDUs with non-consecutive sequence numbers.
[0171] In some implementations, the toggle bit for each PDCP PDU in a set of PDCP PDUs to be discarded is the enabled bit.
[0172] In some implementations, the toggle bit for each PDCP PDU in a set of PDCP PDUs to be discarded is a disabled bit.
[0173] In some implementations, the generated discard bitmap is sent to the PDCP receiver as a field in the PDCP status reporting PDU.
[0174] In some implementations, the generated discard bitmap is sent to the PDCP receiver as a field of the PDCP control PDU.
[0175] PDCP discard bitmap report by a PDCP receiver after processing essential PDCP PDUs.
[0176] In some implementations, there may be a mode in which a PDU set can be considered complete when a defined or set amount (or percentage) of the PDUs in the set has been received. Once all such "essential" PDUs / SNs have been received, the receiver can notify the transmitter using a PDCP status report / PDCP discard report. The status report notifies the receiver of the PDUs that the transmitter intends to discard. The PDCP transmitter may then discard the remaining PDUs in the PDU set. Note that not all PDUs to be discarded are necessarily in order. A bitmap may also be provided in the PDCP status report to identify such "scattered" PDUs. In other words, this function can also simply be a response to an existing status report for acknowledgment. Such a status report is triggered when all "essential" SNs have been received. Alternatively, a new PDCP discard status report may be used.
[0177] However, it should be noted that not all PDUs to be discarded are necessarily in order. To identify such "scattered" PDUs, a bitmap can be provided to PDCP status reports, such as the PDCP control PDU 900. In other words, this function can also simply respond to an existing status report for acknowledgment. Such a status report is triggered when all "essential" SNs are received. Alternatively, a new PDCP discard status report may be used.
[0178] More specifically, another example of the new discard marker control PDU 900 is shown in Figure 9. The discard marker control PDU 900 may include fields that indicate the data necessary to provide the PDCP discard reporting status for discard operations. In some implementations, the PDU type 910 in octet 1 may be a new PDU type indicating that the new PDCP control PDU 900 is used as a discard marker. The fields in octets 2-5 may be used for the count or SN of the first discarded PDCP PDU in the reordering window at the PDCP receiver. Optionally, the new discard marker control PDU 900 may be extended to include optional fields 920, 930 if the new discard marker control PDU 900 is used to report a discard bitmap, for example, as described with respect to Figure 6 or Figure 7.
[0179] In Figure 9, the PDCP control PDU 900 may have one or more First Discard Count Reports (FDCRs). In some implementations, the FDCR field has a length of 32 bits. The FDCR field may indicate the count value of the first PDCP SDU discarded within the reordering window at the receiver.
[0180] Each discard bitmap report 800 can have a variable length. In some implementations, the length of the discard bitmap field can be 0.
[0181] Each field in the discard bitmap report 800 indicates which SDUs are discarded and which are correctly received / processed by the receiving PDCP entity. The bit position of the Nth bit in the discard bitmap report 800 is N, i.e., the bit position of the first bit in the discard bitmap report is 1.
[0182] In some implementations, a discard bitmap report, such as the discard bitmap report 800 in Figure 8, can be used by a PDCP receiver to notify the PDCP transmitter of multiple discarded PDUs (including cases where the discarded PDUs are not necessarily in order). The discard bitmap report 800 can be a new field in a PDCP status report, such as one or more optional fields 920, 930 of a PDCP control PDU 900. Alternatively, a separate PDCP status report (or control PDU) may be used for the discard report.
[0183] Figure 6 is a flowchart of process 600 of a PDCP receiver that notifies a PDCP transmitter that, after processing essential PDCP PDUs from a set of PDCP PDUs, the remaining PDCP PDUs in that set can be discarded. In this specification, process 600 is described as being performed by a PDCP receiver that transmits a discard bitmap report. For the purposes of this disclosure, the PDCP receiver may be a UE or base station that receives PDCP PDUs. Similarly, the PDCP transmitter may be a UE or base station that transmits PDCP PDUs.
[0184] The PDCP receiver can initiate the execution of process 600 by determining that a subset consisting of essential PDCP PDUs has been received from a given set of PDCP PDUs (610).
[0185] The PDCP receiver can continue the execution of process 600 (620) by generating a PDCP status report that indicates to the PDCP transmitter that the PDCP transmitter can discard any remaining PDCP PDUs in its set of PDCP PDUs.
[0186] The PDCP receiver can continue executing process 600 by sending a PDCP status report to the PDCP transmitter (630).
[0187] In some implementations, the PDCP status report may include a discard bitmap that signals to the PDCP transmitter that the remaining PDCP PDUs in a set of PDCP PDs should be discarded, and which includes a bitmap field for each PDCP PDU in that set of PDCP PDUs, and which may include a discard bitmap having toggle bits for each remaining set of PDCP PDUs that should be discarded by the PDCP transmitter.
[0188] In some implementations, the remaining set of PDCP PDUs includes PDCP PDUs with non-consecutive sequence numbers.
[0189] In some implementations, the toggle bit for each remaining PDCP PDU in a PDCP PDU set that should be discarded is an enabled bit.
[0190] In some implementations, the toggle bit for each remaining PDCP PDU in a PDCP PDU set that should be discarded is a disabled bit.
[0191] PDCP discard feedback report by a PDCP receiver, reporting locally discarded PDCP PDUs.
[0192] In some implementations, if the PDCP receiver needs to notify the PDCP transmitter that there are any PDUs that have been discarded locally at the PDCP receiver, the PDCP receiver can send a feedback report to the PDCP transmitter.
[0193] For example, a PDCP receiver may generate and transmit such a discard feedback report to provide feedback as a result of specific discard rules that are configured in the receiver or may be dynamically applied. As another example, a PDCP receiver may generate and transmit such a discard feedback report after a reordering that involves PDU discarding. Alternatively or additionally, a PDCP receiver may generate and transmit a discard feedback report when another layer (or the PDCP layer itself) requests the discarding of an entire set of PDUs or the discarding of any remaining PDUs in a set.
[0194] In some implementations, it is assumed that PDUs to be discarded may not be in order, and a discard bitmap may be provided in the PDCP status report / PDCP discard report to identify such "scattered" PDUs / SNs. In some implementations, the discard bitmap has a similar format to the existing bitmap in the PDCP status report, but uses a bitmap field to set (or not set) bits for all discarded PDUs, for example. An example of a bitmap report that can be used in a discard feedback report is shown in Figure 8, and an example of a PDCP control PDU that can be used to send a bitmap feedback report is shown in Figure 9.
[0195] Figure 7 is a flowchart of process 700 of a PDCP receiver that notifies a PDCP transmitter that a subset of PDCP PDUs from a set of PDCPs has been locally discarded by the PDCP receiver. In this specification, process 700 is described as being performed by a PDCP receiver that transmits a discard feedback report. For the purposes of this disclosure, the PDCP receiver may be a UE or base station that receives PDCP PDUs. Similarly, the PDCP transmitter may be a UE or base station that transmits PDCP PDUs.
[0196] The PDCP receiver can initiate the execution of process 700 by determining a subset of PDCP PDUs from the set of PDCP PDUs discarded locally by the PDCP receiver (710).
[0197] The PDCP receiver can continue executing process 700 (720) by generating a PDCP status report that indicates to the PDCP transmitter a subset of PDCP PDUs that have been locally discarded by the PDCP receiver.
[0198] The PDCP receiver can continue executing process 700 by sending a PDCP status report to the PDCP transmitter (730).
[0199] In some implementations, the PDCP status report may include a discard bitmap that signals to the PDCP transmitter that a subset of PDCP PDs has been discarded locally, and which includes a bitmap field for each PDCP PDU that has been discarded locally from the set of PDCP PDUs, and which may include a discard bitmap having a toggle bit for each PDCP PDU that has been discarded locally by the PDCP receiver.
[0200] In some implementations, a subset of PDCP PDUs discarded locally by the PDCP receiver includes PDCP PDUs with non-consecutive sequence numbers.
[0201] In some implementations, the toggle bit for each PDCP PDU discarded locally by the PDCP receiver is the enabled bit.
[0202] In some implementations, the toggle bit for each remaining PDCP PDU that has been locally discarded by the PDCP receiver is a disabled bit.
[0203] Figure 10 shows the UE1000 in several implementation configurations. The UE1000 may be similar to the UE102 in Figure 1 and may be substantially interchangeable.
[0204] The UE1000 can be any mobile or non-mobile computing device, such as mobile phones, computers, tablets, industrial wireless sensors (e.g., microphones, pressure sensors, thermometers, motion sensors, accelerometers, inventory sensors, volt / current meters, etc.), video devices (e.g., cameras, video cameras, etc.), wearable devices (e.g., smartwatches), or relaxed-IoT devices.
[0205] The UE1000 may include a processor 1002, an RF interface circuit 1004, a memory / storage 1006, a user interface 1008, a sensor 1010, a driver circuit 1012, a power management integrated circuit (PMIC) 1014, an antenna structure 1016, and a battery 1018. The components of the UE1000 may be implemented as an integrated circuit (IC), a part thereof, a separate electronic device or other module, logic, hardware, software, firmware, or a combination thereof. The block diagram in Figure 10 is intended to show a high-level diagram of some of the components of the UE1000. 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 embodiments.
[0206] The components of the UE1000 may be coupled with various other components via one or more interconnectors 1020, and one or more interconnectors may represent any kind of interface, input / output section, (local, system, or expansion) bus, transmission line, trace, optical connection, etc., which can cause various circuit components (on common or different chips or chipsets) to interact with each other.
[0207] The processor 1002 may include, for example, a baseband processor circuit (BB) 1022A, a central processing unit circuit (CPU) 1022B, and a graphics processing unit circuit (GPU) 1022C. The processor 1002 may include any type of circuit or processor circuit that executes or otherwise operates computer executable instructions, such as program code, software modules, or functional processes, from the memory / storage 1006, to cause the UE 1000 to perform the operations described herein.
[0208] In some implementations, the baseband processor circuit 1022A can access the communication protocol stack 1024 in the memory / storage 1006 to communicate over a 3GPP-compliant network. Generally, the baseband processor circuit 1022A can access the communication protocol stack to perform user plane functions in the physical (PHY) layer, medium access control (MAC) layer, radio link control (RLC) layer, packet data convergence protocol (PDCP) layer, service data adaptive protocol (SDAP) layer, and PDU layer, and control plane functions in the PHY layer, MAC layer, RLC layer, PDCP layer, RRC layer, and non-access layer. In some implementations, the operation of the PHY layer may be performed by components of the RF interface circuit 1004 in addition to / instead of. The baseband processor circuit 1022A can generate or process baseband signals or waveforms that carry information within a 3GPP-compliant network. In some implementations, the waveform for noise reduction (NR) can be based on cyclic prefix quadrature frequency division multiplexing (OFDM) "CP-OFDM" in the uplink or downlink, and discrete Fourier transform spread OFDM "DFT-S-OFDM" in the uplink.
[0209] The memory / storage 1006 may include one or more non-temporary computer-readable media (e.g., a communication protocol stack 1024) containing instructions that can be executed by one or more processors 1002 to cause the UE 1000 to perform the various operations described herein. The memory / storage 1006 includes any type of volatile or non-volatile memory that can be distributed throughout the UE 1000. In some implementations, some of the memory / storage 1006 may be located within the processor 1002 itself (e.g., L1 and L2 caches), while other memory / storage 1006 may be outside the processor 1002 but accessible via a memory interface. Memory / storage 1006 may include, but is not limited to, any suitable volatile or non-volatile memory, such as 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.
[0210] The RF interface circuit 1004 may include a transceiver circuit and a radio frequency front module (RFEM) that enable the UE 1000 to communicate with other devices via a radio access network. The RF interface circuit 1004 may include various elements located in the transmit or receive path. These elements may include, for example, switches, mixers, amplifiers, filters, combiner circuits, control circuits, and the like.
[0211] In the receiving path, the RFEM may receive the radiated signal from the air interface via the antenna structure 1016 and proceed to filter and amplify the signal (using a low-noise amplifier). The signal may also be provided to the receiver of the transceiver, which downconverts the RF signal to a baseband signal, and the baseband signal is provided to the baseband processor of the processor 1002.
[0212] In the transmission path, the transmitter of the transceiver upconverts 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 before the signal is radiated across the air interface via antenna 1016. In various implementations, the RF interface circuit 1004 may be configured to transmit and receive signals in accordance with NR access technology.
[0213] Antenna 1016 may include antenna elements that convert electrical signals into radio waves and propagate them through the air, as well as antenna elements that convert received radio waves into electrical signals. Antenna elements may be arranged on one or more antenna panels. Antenna 1016 may have antenna panels that are omnidirectional, directional, or a combination thereof to enable beamforming and multi-input multi-output communication. Antenna 1016 may include microstrip antennas, printed antennas fabricated on the surface of one or more printed circuit boards, patch antennas, phased array antennas, and the like. Antenna 1016 may have one or more panels designed for a specific frequency band, including the band in FR1 or FR2.
[0214] The user interface circuit 1008 includes various input / output (I / O) devices designed to enable user interaction with the UE1000. The user interface 1008 includes input device circuits and output device circuits. The input device circuit includes, among other things, any physical or virtual means for receiving input, including one or more physical or virtual buttons (e.g., a reset button), a physical keyboard, a keypad, a mouse, a touchpad, a touchscreen, a microphone, a scanner, a headset, etc. The output device circuit includes any physical or virtual means for displaying or otherwise transmitting information, such as sensor readings, actuator positions (one or more), or other similar information. The output device circuit may include any number or combination of audio or visual displays, in particular one or more simple visual outputs / indicators (e.g., binary state indicators such as light-emitting diodes "LEDs" and multi-character visual outputs), or more complex outputs such as display devices or touchscreens (e.g., liquid crystal displays "LCDs", LED displays, quantum dot displays, projectors, etc.). Outputs such as characters, graphics, and multimedia objects are generated or created from the operation of the UE1000.
[0215] Sensor 1010 may include devices, modules, or subsystems intended to detect events or changes in its environment and transmit information about the detected events (sensor data) to some other device, module, subsystem, etc. Examples of such sensors include, in particular, inertial measuring units including accelerometers, gyroscopes, or magnetometers; micro-electromechanical systems or nano-electromechanical systems including 3-axis accelerometers, 3-axis gyroscopes, or magnetometers; level sensors; temperature sensors (e.g., thermistors); pressure sensors; image capture devices (e.g., cameras or lensless apertures); light detection and distance measuring sensors; proximity sensors (e.g., infrared detectors); depth sensors; ambient light sensors; ultrasonic transceivers; microphones or other similar audio capture devices, and the like.
[0216] The driver circuit 1012 may include software and hardware elements that operate to control specific devices that are incorporated into the UE1000, attached to the UE1000, or otherwise coupled to the UE1000 in a communicative manner. The driver circuit 1012 may include individual drivers that enable other components to interact with or control various input / output (I / O) devices that may be present in or connected to the UE1000. For example, the driver circuit 1012 may include a display driver that enables controllable access to a display device, a touchscreen driver that enables controllable access to a touchscreen interface, a sensor driver that obtains sensor readings from the sensor circuit 1010 and enables controllable access to the sensor circuit 1010, a driver that obtains the actuator position of an electromechanical component or enables controllable access to an electromechanical component, a camera driver that enables controllable access to an embedded image capture device, and an audio driver that enables controllable access to one or more audio devices.
[0217] The PMIC1014 can manage the power supplied to various components of the UE1000. In particular, with respect to the processor 1002, the PMIC1014 can control power supply selection, voltage scaling, battery charging, or DC-DC conversion.
[0218] In some implementations, the PMIC 1014 can control or otherwise be part of the various power-saving mechanisms of the UE 1000. The battery 1018 may power the UE 1000, but in some examples, the UE 1000 may be mounted and deployed in a fixed location and may have a power source coupled to a power distribution network. The battery 1018 may be a lithium-ion battery, a metal-air battery such as a zinc-air battery, an aluminum-air battery, or a lithium-air battery. In some implementations, such as vehicle-based applications, the battery 1018 may be a typical automotive lead-acid battery.
[0219] Figure 11 shows several implementations of the access node 1100 (e.g., a base station or gNB). The access node 1100 is similar to the base station 104 and may be substantially interchangeable. The access node 1100 may include a processor 1102, an RF interface circuit 1104, a core network (CN) interface circuit 1106, a memory / storage circuit 1108, and an antenna structure 1110.
[0220] The components of the access node 1100 may be coupled with various other components via one or more interconnectors 1112. The processor 1102, RF interface circuit 1104, memory / storage circuit 1108 (including the communication protocol stack 1114), antenna structure 1110, and interconnectors 1112 may be similar to elements of similar names illustrated and described with respect to Figure 10. For example, the processor 1102 may include processor circuits such as a baseband processor circuit (BB) 1116A, a central processing unit circuit (CPU) 1116B, and a graphics processing unit (GPU) 1116C.
[0221] The CN interface circuit 1106 may provide connectivity to a core network, such as a 5th Generation Core network (5GC), using a 5GC-compliant network interface protocol, such as the Carrier Ethernet protocol or some other suitable protocol. Network connectivity may be provided to and from the access node 1100 via optical fiber or wireless backhaul. The CN interface circuit 1106 may include one or more dedicated processors or FPGAs for communication using one or more of the protocols described above. In some implementations, the CN interface circuit 1106 may include multiple controllers to provide connectivity to other networks using the same or different protocols.
[0222] As used herein, terms such as “access node” and “access point” may describe equipment that provides wireless baseband functionality for data connectivity and / or voice connectivity between a network and one or more users. These access nodes may be referred to as BS, gNB, RAN node, eNB, NodeB, RSU, TRxP, or TRP, and may include ground stations (e.g., ground access points) or satellite stations that provide coverage within a geographical area (e.g., a cell). As used herein, terms such as “NG RAN node” may refer to an access node 1100 operating on an NR or 5G system (e.g., gNB), and terms such as “E-UTRAN node” may refer to an access node 1100 operating on an LTE or 4G system (e.g., eNB). According to various implementations, the access node 1100 may be implemented as one or more dedicated physical devices, such as a macrocell base station and / or a low-power (LP) base station to provide a femtocell, picocell, or other similar cell with a smaller coverage area, smaller user capacity, or higher bandwidth compared to a macrocell.
[0223] In some implementations, all or part of the access node 1100 may be implemented as one or more software entities running on a server computer as part of a virtual network, which may be called CRAN and / or virtual baseband unit pool (vBBUP). In a V2X scenario, the access node 1100 may be or may operate as a “Road Side Unit”. The term “Road Side Unit” or “RSU” may refer to any traffic infrastructure entity used for V2X communication. An RSU may be implemented in or by a suitable RAN node or a stationary (or relatively stationary) UE, and an RSU implemented in or by a UE may be called a “UE-type RSU”, an RSU implemented in or by an eNB may be called an “eNB-type RSU”, an RSU implemented in or by a gNB may be called a “gNB-type RSU”, and so on.
[0224] For convenience, various components may be described in this specification as performing one or more tasks. Such descriptions should be interpreted as including the phrase “configured to perform.” Descriptions of components configured to perform one or more tasks are expressly intended not to be subject to the interpretation of § 112(f) of the U.S. Patent Act. Other Embodiments
[0225] Specific embodiments of this disclosure have been described. Other embodiments are included in the claims listed below. For example, the steps described in the claims, or any of the processes described herein, may be performed in combination, in a different order, or both, but still achieve the desired results.
Claims
1. It is a method, In response to the detection of a trigger condition, a Packet Data Convergence Protocol (PDCP) status report, including a discard marker, is generated based at least on (i) the number of discarded PDCP data units associated with the PDCP status report, and (ii) the count value associated with each of the discarded PDCP data units. The aforementioned PDCP status report is submitted to the lower layer for transmission, Methods that include...
2. The method according to claim 1, wherein the discard marker in the PDCP status report includes a first discard count (FDC) field indicating the smallest count value among the discarded PDCP data units associated with the PDCP status report.
3. The method according to claim 2, wherein the FDC field has a length of 32 bits.
4. The method according to claim 1, wherein generating the PDCP status report includes including a discard bitmap in the PDCP status report if two or more PDCP data units are discarded.
5. The method according to claim 4, wherein the discard bitmap has a variable length.
6. The method according to claim 4, wherein the length of the discard bitmap corresponds to the number of discarded PDCP data units associated with the PDCP status report.
7. The method according to claim 4, wherein the length of the discard bitmap can be 0.
8. The method according to claim 4, wherein the discard bitmap indicates which PDCP data units are discarded and which are not discarded by the transmitting PDCP entity.
9. The method according to claim 4, wherein the discard bitmap includes, for each discarded PDCP data unit associated with the PDCP status report, a bit value whose value is 1.
10. The method according to claim 1, further comprising instructing a radio frequency (RF) circuit to transmit a PDCP control protocol data unit (PDU) including the PDCP status report.
11. The method according to claim 1, wherein detecting the trigger condition includes determining that (i) there exists at least one stored PDCP data unit having a count value greater than the discarded PDCP data unit, and (ii) the discarded PDCP data unit has not been submitted to a lower layer.
12. One or more processors configured to perform the method according to any one of claims 1 to 11 when executing instructions stored in memory.
13. One or more devices configured to perform the method described in any one of claims 1 to 11.