An apparatus and method of data processing
By processing RLC data in an out-of-order delivery manner and maintaining a larger PDCP sequence number window in the wireless communication device, the problems of data bursts and count errors caused by sequential delivery are solved, thereby improving the accuracy of packet processing and the efficiency of DDR bandwidth utilization.
Patent Information
- Application Number
- CN202180005445.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-31
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2041-03-31
AI Technical Summary
In the prior art, when a wireless communication device receives an RRC message indicating that RLC data should be processed in an ordered manner, it may cause a large amount of data to be suddenly delivered to the PDCP layer in a short period of time. Furthermore, when the data is delivered out of order, the PDCP count value may be calculated incorrectly, affecting the accuracy of data packet processing.
After receiving the RRC message indicating the order of delivery, the wireless communication device actually processes the RLC data in an out-of-order delivery manner and caches the segmented PDCP PDUs in the buffer area. After reassembly, the data is then delivered. At the same time, a larger PDCP sequence number window is maintained to support the PDCP reordering function.
By processing RLC data in an out-of-order manner, DDR bandwidth consumption is reduced, large amounts of data are avoided in a short period of time, and the accuracy of data packets and the reordering capability of the PDCP layer are improved.
Smart Images

Figure CN116158119B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communications, and more specifically, to an apparatus and method for data processing. Background Technology
[0002] During communication, when the Radio Link Control (RLC) layer delivers RLC Protocol Data Units (PDUs) in out-of-order mode, compared to sequential delivery mode, the complete Packet Data Convergence Protocol (PDCP) PDU carried by the RLC PDU can be directly decrypted, reducing write-read operations and saving Double Data Rate (DDR) bandwidth. Simultaneously, it avoids the phenomenon of a large number of RLC PDUs carrying PDCPPDUs being suddenly delivered to the PDCP layer in a short period during sequential delivery processing. Furthermore, delivering PDCP PDUs carried by RLC PDUs in out-of-order mode is easier to implement than delivering them in sequential mode.
[0003] Therefore, a data packet processing method is needed that can process PDCP PDUs carried by RLC PDUs in an out-of-order delivery mode, even when the configuration information indicates that the PDUs are to be delivered in an ordered delivery mode, and improve the accuracy of the delivery. Summary of the Invention
[0004] This application provides a data processing method and apparatus that enables RLC data to be processed locally in an out-of-order manner even when the wireless communication device is configured to process RLC data in a sequential delivery manner, thereby improving the accuracy of delivery.
[0005] In a first aspect, a data processing method is provided, the method comprising: a wireless communication device receiving a Radio Resource Control (RRC) message from a base station, the RRC message including a first Radio Link Control (RLC) configuration field, the first RLC configuration field being used to indicate that RLC data is processed in an ordered delivery manner; the wireless communication device processing the RLC data in an out-of-order delivery manner, wherein the out-of-order delivery manner is different from the ordered delivery manner indicated by the first RLC configuration field.
[0006] It should be understood that in the above out-of-order delivery mode, when an RLC PDU carrying a complete PDCP PDU is received, the complete PDCP PDU is reassembled and delivered. When the RLC PDU carries a segmented PDCP PDU, it can be buffered in the buffer area. If the RLC PDU can be reassembled with adjacent RLC PDUs into a complete PDCP PDU, then the PDCP PDU is delivered after reassembly. The RLC PDU can be an Acknowledged mode data protocol data unit (AMD PDU) or an Unacknowledged mode data protocol data unit (UMD PDU).
[0007] It should also be understood that in the above sequential delivery mode, the PDCP PDU carried by the RLC PDU is delivered sequentially according to the SN of the received RLC PDU. At the same time, if some RLC PDU carries segmented PDCP PDUs, they can be reassembled with the PDCP PDUs carried by the adjacent RLC PDUs into a complete PDCP PDU before being delivered.
[0008] It should also be understood that wireless communication devices can also process RLC data directly in out-of-order delivery without receiving RRC messages from the base station, and submit the processed RLC data in out-of-order delivery.
[0009] Normally, when a wireless communication device receives an RRC message indicating that RLC data should be processed in a sequential delivery manner, the device can process the RLC data sequentially and then deliver the processed RLC data sequentially. However, based on the above scheme, when the wireless communication device receives an RRC message from a base station, which includes a first RLC configuration field indicating that RLC data should be processed in a sequential delivery manner, the device does not process the RLC data sequentially as indicated in the RRC message. Instead, it processes the RLC data out of order, where the out-of-order delivery method differs from the sequential delivery method indicated by the first RLC configuration field. That is, when an RLC PDU carrying a complete PDCP PDU is received, the complete PDCP PDU is delivered; if the RLC PDU carries segmented PDCPPDUs, they can be buffered in the buffer area. When the RLC PDU can be reassembled with adjacent RLC PDUs into a complete PDCPPDU, the reassembled PDCPPDU is then delivered. Therefore, the complete PDCP PDU carried by the RLC PDU can be directly decrypted, reducing the need for one write and one read and saving DDR bandwidth; at the same time, it also avoids the phenomenon of a large number of PDCP PDUs being suddenly delivered to the PDCP layer in a short period of time, making it easier to implement.
[0010] In conjunction with the first aspect, in some implementations of the first aspect, the first RLC configuration field is used to indicate that RLC data is processed in an ordered delivery manner, including: the first RLC configuration field does not carry an RLC out-of-order delivery field, which is used to indicate that RLC data is processed in an out-of-order delivery manner.
[0011] In the existing protocol, the RLC out-of-order delivery field, namely the "rlc-OutOfOrderDelivery-r15" field, can be included in the first RLC configuration field to indicate that RLC data is processed in an out-of-order delivery manner. When the first RLC configuration field includes this field, it indicates that RLC data is processed in an out-of-order delivery manner; when the first RLC configuration field does not include this field, it indicates that RLC data is processed in an ordered delivery manner.
[0012] Based on the above scheme, the fact that the first RLC configuration field in the RRC message does not carry the RLC out-of-order delivery field can indirectly instruct the wireless communication device to process RLC data in an ordered delivery manner.
[0013] In addition, the first RLC configuration field can carry a field indicating the order of RLC submission, or the first RLC configuration field can carry a field indicating that RLC data is not submitted out of order, so as to indicate that RLC data is processed by sequential submission. This application does not limit this.
[0014] In conjunction with the first aspect, in some implementations of the first aspect, the RRC message further includes a Packet Data Convergence Protocol (PDCP) configuration field, which, together with the first RLC configuration field, is used to indicate that one PDCP entity corresponds to one RLC entity. The method further includes: the wireless communication device using the PDCP reordering function.
[0015] In the existing protocol, the inclusion of the "rlc-BearerConfigSecondary-r15" field in the RRC message can indicate that one PDCP entity corresponds to two RLC entities; when the RRC message does not include the above field, it indicates that one PDCP entity corresponds to one RLC entity.
[0016] Normally, in sequential delivery mode, the PDCP layer does not use reordering. A field in the RRC message indicates that one PDCP entity corresponds to one RLC entity, thus instructing the wireless communication device not to use PDCP reordering. However, based on this scheme, even if the wireless communication device receives an RRC message indicating that PDCP reordering is not used, in out-of-order delivery mode, because the RLC layer does not use reordering, the wireless communication device will still use PDCP reordering to complete out-of-order delivery, even if it receives an RRC message. This can improve the phenomenon of out-of-order data packets received by the application layer.
[0017] In conjunction with the first aspect, in some implementations of the first aspect, the PDCP configuration field and the first RLC configuration field are used to indicate that one PDCP entity corresponds to one RLC entity, including: the RRC message does not carry a second RLC configuration field.
[0018] Based on the above scheme, the absence of a second RLC configuration field in the RRC message can indicate that one PDCP entity corresponds to one RLC entity. The second RLC configuration field is used to indicate that one PDCP entity corresponds to two RLC entities.
[0019] Another possible implementation is to carry a third RLC configuration field in the RRC message to indicate that one PDCP entity corresponds to one RLC entity, wherein the third RLC configuration field is used to indicate that one PDCP entity does not correspond to two RLC entities.
[0020] In conjunction with the first aspect, in some implementations of the first aspect, the RRC message is an RRC connection reconfiguration message or an RRC connection re-establishment message.
[0021] In conjunction with the first aspect, in some implementations of the first aspect, the wireless communication device maintains multiple superframe number (HFN) data, wherein the multiple HFN data are used to enable the processing of RLC data in the out-of-order delivery manner.
[0022] Based on the above scheme, by maintaining multiple HFN data, the wireless communication device can be enabled to process RLC data in an out-of-order delivery manner.
[0023] In conjunction with the first aspect, in some implementations of the first aspect, the plurality of HFN data corresponds to a data radio bearer (DRB), and each of the plurality of HFN data includes HFN data, as well as PDCP sequence number data and RLC sequence number data corresponding to the HFN data.
[0024] In conjunction with the first aspect, in some implementations of the first aspect, the window size of the PDCP sequence number indicated by the PDCP configuration field is 12 bits, and the method further includes: the wireless communication device maintaining at least one window of PDCP sequence number greater than 12 bits, the window of at least one PDCP sequence number greater than 12 bits being used to enable the PDCP reordering function.
[0025] Based on the above scheme, when the RLC layer processes and delivers RLC data in out-of-order delivery mode, the PDCP layer needs to use the reordering function. In this case, if the window size of the PDCP sequence number is inappropriate, it may result in the inability to receive complete RLC data. Therefore, the wireless communication device needs to maintain a window of at least one larger PDCP sequence number to better enable the PDCP reordering function.
[0026] In a second aspect, a data processing apparatus is provided, comprising: a receiving module for receiving an RRC message from a base station, the RRC message including a first RLC configuration field for indicating that RLC data is processed in an ordered delivery manner; and a processing module for processing the RLC data in an out-of-order delivery manner, wherein the out-of-order delivery manner is different from the ordered delivery manner indicated by the first RLC configuration field.
[0027] The beneficial effects of the aforementioned data processing apparatus can be found in the detailed description of the first aspect, which will not be repeated here for the sake of brevity.
[0028] In conjunction with the second aspect, in some implementations of the second aspect, the first RLC configuration field is used to indicate that RLC data is processed in a sequential delivery manner, including:
[0029] The first RLC configuration field does not include an RLC out-of-order delivery field, which is used to indicate that RLC data is processed in an out-of-order delivery manner.
[0030] The beneficial effects of the aforementioned data processing apparatus can be found in the detailed description of the first aspect, which will not be repeated here for the sake of brevity.
[0031] In conjunction with the second aspect, in some implementations of the second aspect, the RRC message also includes a PDCP configuration field, which, together with the first RLC configuration field, is used to indicate that one PDCP entity corresponds to one RLC entity; the processing module is also used to: use the PDCP reordering function.
[0032] The beneficial effects of the aforementioned data processing apparatus can be found in the detailed description of the first aspect, which will not be repeated here for the sake of brevity.
[0033] In conjunction with the second aspect, in some implementations of the second aspect, the PDCP configuration field and the first RLC configuration field are used to indicate that one PDCP entity corresponds to one RLC entity, including: the RRC message does not carry the second RLC configuration field.
[0034] In conjunction with the second aspect, in some implementations of the second aspect, the RRC message is an RRC connection reconfiguration message or an RRC connection re-establishment message.
[0035] In conjunction with the second aspect, in some implementations of the second aspect, the processing module is also used to: maintain multiple superframe number (HFN) data, wherein the multiple HFN data are used to enable the processing of RLC data in the out-of-order delivery manner.
[0036] The beneficial effects of the aforementioned data processing apparatus can be found in the detailed description of the first aspect, which will not be repeated here for the sake of brevity.
[0037] In conjunction with the second aspect, in some implementations of the second aspect, the plurality of HFN data corresponds to a DRB, and each of the plurality of HFN data includes HFN data, as well as PDCP serial number data and RLC serial number data corresponding to the HFN data.
[0038] In conjunction with the second aspect, in some implementations of the second aspect, the window size of the PDCP sequence number indicated by the PDCP configuration field is 12 bits; the processing module is also used to maintain at least one window of PDCP sequence numbers greater than 12 bits, which is used to enable the PDCP reordering function.
[0039] The beneficial effects of the aforementioned data processing apparatus can be found in the detailed description of the first aspect, which will not be repeated here for the sake of brevity.
[0040] Thirdly, a communication device is provided, including a processor. The processor is coupled to a memory and can be used to execute instructions in the memory to implement the data processing method described in the first aspect and any possible implementation thereof. Optionally, the communication device further includes a memory. Optionally, the communication device further includes a communication interface, to which the processor is coupled, the communication interface being used for inputting and / or outputting information. The information includes at least one of instructions and data.
[0041] In one implementation, the communication device is a terminal device. When the communication device is a terminal device, the communication interface can be a transceiver, or an input / output interface.
[0042] In another implementation, the communication device is a chip or a chip system. When the communication device is a chip or a chip system, the communication interface can be an input / output interface, which may be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor can also be manifested as a processing circuit or logic circuit.
[0043] In another implementation, the communication device is a chip or chip system configured in a terminal device.
[0044] Fourthly, a communication device is provided, including a processor. The processor is coupled to a memory and can be used to execute instructions in the memory to implement the data processing method described in the first aspect and any possible implementation thereof. Optionally, the communication device further includes a memory. Optionally, the communication device further includes a communication interface, to which the processor is coupled, the communication interface being used for inputting and / or outputting information. The information includes at least one of instructions and data.
[0045] In one implementation, the communication device is a network device. When the communication device is a network device, the communication interface can be a transceiver, or an input / output interface.
[0046] In another implementation, the communication device is a chip or a chip system. When the communication device is a chip or a chip system, the communication interface can be an input / output interface, which may be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor can also be manifested as a processing circuit or logic circuit.
[0047] In another implementation, the communication device is a chip or chip system configured in a network device.
[0048] Fifthly, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a communication device, causes the communication device to implement the first aspect and the data packet processing method in any possible implementation of the first aspect.
[0049] In a sixth aspect, a computer program product containing instructions is provided, which, when executed by a computer, cause a communication device to implement the data packet processing method provided in the first aspect.
[0050] In a seventh aspect, a chip is provided having a computer program stored thereon, which, when executed by a communication device, causes the communication device to implement the data packet processing method of the first aspect and any possible implementation thereof.
[0051] Eighthly, a communication system is provided, including the aforementioned network equipment and terminal equipment. Attached Figure Description
[0052] Figure 1 This is a schematic diagram of a wireless communication system 100 applicable to embodiments of this application.
[0053] Figure 2 This is another schematic diagram of a wireless communication system 200 applicable to embodiments of this application.
[0054] Figure 3 This is a schematic diagram of a user plane protocol stack system 300 applicable to embodiments of this application.
[0055] Figure 4 This is a schematic diagram of submitting an RLC PDU under a sequential submission mode applicable to embodiments of this application.
[0056] Figure 5 This is a schematic diagram of a PDCP count value applicable to an embodiment of this application.
[0057] Figure 6 This is a schematic diagram illustrating a method for calculating PDCP count values applicable to embodiments of this application.
[0058] Figure 7 This is another schematic diagram illustrating the calculation of PDCP count values applicable to embodiments of this application.
[0059] Figure 8 This is another schematic diagram illustrating the calculation of PDCP count values applicable to embodiments of this application.
[0060] Figure 9 This is a schematic diagram of a method for transmitting a PDCP PDU applicable to embodiments of this application.
[0061] Figure 10This is a schematic flowchart of a data processing method 1000 provided in an embodiment of this application.
[0062] Figure 11 This is a schematic diagram of a data submission method proposed in an embodiment of this application.
[0063] Figure 12 This is a schematic diagram of a preset maximum range of variation provided in an embodiment of this application.
[0064] Figure 13 This is a schematic block diagram of a communication device provided in an embodiment of this application.
[0065] Figure 14 This is a schematic block diagram of a communication device provided in an embodiment of this application.
[0066] Figure 15 This is a schematic block diagram of a communication device provided in an embodiment of this application.
[0067] Figure 16 This is a schematic block diagram of a communication device provided in an embodiment of this application. Detailed Implementation
[0068] The technical solutions in this application will now be described with reference to the accompanying drawings.
[0069] The technical solutions of this application can be applied to various communication systems, such as: 5th generation (5G) system or NR (New Radio) system, long term evolution (LTE) system, LTE frequency division duplex (FDD) system, LTE time division duplex (TDD) system, universal mobile telecommunication system (UMTS), etc.
[0070] Figure 1 This is a schematic diagram of a wireless communication system 100 applicable to embodiments of this application. As shown in Figure 1, the wireless communication system 100 may include at least one network device, such as... Figure 1 The network device 111 shown, the wireless communication system 100 may also include at least one terminal device, such as Figure 1 The terminal devices 121 to 123 shown are network devices and terminal devices. Both network devices and terminal devices can be configured with multiple antennas, and network devices and terminal devices can communicate using multi-antenna technology.
[0071] When the network device and the terminal device communicate, the network device can manage one or more cells, and a cell can contain an integer number of terminal devices. Optionally, network device 111 and terminal devices 121 to 123 form a single-cell communication system. Without loss of generality, the cell is referred to as cell #1. Network device 111 can be a network device in cell #1, or in other words, network device 111 can serve the terminal devices (such as terminal device 121) in cell #1.
[0072] It should be noted that a residential area can be understood as the area within the wireless signal coverage of network devices.
[0073] Figure 2 This is another schematic diagram of a wireless communication system 200 applicable to embodiments of this application. For example... Figure 2 As shown, the wireless communication system 200 may include a terminal device, such as... Figure 2 The terminal device 221 in the wireless communication system 200 may also include multiple network devices, such as Figure 2 Network devices 211 and 212 are included. Figure 2 Terminal device 221 can communicate with network device 221 and network device 212 simultaneously; or, network device 211 and network device 212 can jointly provide services to terminal device 221.
[0074] When the network device and the terminal device communicate, the network device can manage one or more cells, and a cell can contain an integer number of terminal devices. Optionally, network device 111 and terminal devices 121 to 123 form a single-cell communication system. Without loss of generality, the cell is referred to as cell #1. Network device 111 can be a network device in cell #1, or in other words, network device 111 can serve the terminal devices (such as terminal device 121) in cell #1.
[0075] It should be noted that a residential area can be understood as the area within the wireless signal coverage of network devices.
[0076] It should be understood that Figure 1 and Figure 2 This is merely an illustrative example and is not intended to limit the scope of this application.
[0077] It should be understood that the network device in the above wireless communication system can be any device with wireless transceiver capabilities. This equipment includes, but is not limited to: evolved Node B (eNB), Radio Network Controller (RNC), Node B (NB), Base Station Controller (BSC), Base Transceiver Station (BTS), Home Base Station (e.g., Home evolved Node B, or Home Node B, HNB), Base Band Unit (BBU), Access Point (AP), Wireless Relay Node, Wireless Backhaul Node, Transmission Point (TP), or Transmission and Reception Point (TRP) in a Wireless Fidelity (WIFI) system. It can also be a gNB in a 5G system, such as NR, or a transmission point (TRP or TP), one or a group of antenna panels (including multiple antenna panels) of a base station in a 5G system, or a network node constituting a gNB or transmission point, such as a Base Band Unit (BBU) or a Distributed Unit (DU).
[0078] In some deployments, a gNB may include a centralized unit (CU) and a distribution unit (DU). A gNB may also include an active antenna unit (AAU). The CU implements some of the gNB's functions, and the DU implements others. For example, the CU handles non-real-time protocols and services, implementing radio resource control (RRC) and packet data convergence protocol (PDCP) layer functions. The DU handles physical layer protocols and real-time services, implementing radio link control (RLC), medium access control (MAC), and physical (PHY) layer functions. The AAU implements some physical layer processing functions, radio frequency processing, and active antenna-related functions. Since RRC layer information ultimately becomes PHY layer information, or is derived from PHY layer information, in this architecture, higher-layer signaling, such as RRC layer signaling, can be considered to be sent by the DU, or by the DU+AAU. It is understood that network devices can be devices that include one or more of the following: CU nodes, DU nodes, and AAU nodes. In addition, the CU can be classified as a network device in the radio access network (RAN) or as a network device in the core network (CN), and this application does not limit this.
[0079] Figure 3 This is a schematic diagram of a user plane protocol stack system 300 applicable to embodiments of this application. For example... Figure 3 As shown, User Equipment (UE) mainly includes the Packet Data Convergence Protocol (PDCP) layer, Radio Link Control (RLC) layer, Medium Access Control (MAC) layer, and Physical Layer (PHY); eNB mainly includes the PDCP layer, RLC layer, MAC layer, and PHY layer. The main functions of the PDCP layer include header compression, encryption / decryption, sorting, and copy detection. The main functions of the RLC layer include packet segmentation / reassembly and error correction.
[0080] To facilitate understanding of the embodiments of this application, the following is a brief introduction to several terms involved in this application.
[0081] 1. Service Data Unit and Protocol Data Unit
[0082] There is a one-to-one correspondence between Service Data Units (SDUs) and Protocol Data Units (PDUs) of the layer above. Data entering each sublayer before processing is called a Service Data Unit (SDU), while data processed by the sublayer and formatted into a specific format is called a Protocol Data Unit (PDU). Simultaneously, the PDU formed at this layer becomes the SDU for the next layer. Depending on the specific data in the Protocol Data Unit, it is sent to the designated layer at the receiving end.
[0083] 2. Wireless Link Layer Control Layer
[0084] The Radio Link Control (RLC) layer is the radio link control layer protocol in wireless communication systems such as GPRS / WCDMA / TD-SCDMA / LTE. Located above the MAC layer and part of Layer 2 (L2), the RLC layer provides segmentation and retransmission services for user and control data. Each RLC entity is configured by the RRC and operates in three modes depending on the service type: Transparent mode (TM), Unacknowledged mode (UM), and Acknowledged mode (AM).
[0085] The RLC layer sits between the PDCP layer and the MAC layer. It communicates with the PDCP layer through a Service Access Point (SAP) and with the MAC layer through logical channels. Each logical channel of each UE has an RLC entity. Data received by the RLC entity from or sent to the PDCP layer is called an RLC SDU (or PDCPPDU). Data received by the RLC entity from or sent to the MAC layer is called an RLC PDU (or MAC SDU).
[0086] 3. Packet Data Aggregation Protocol Layer
[0087] The Packet Data Convergence Protocol (PDCP) layer is responsible for performing IP header compression to reduce the bit traffic that the radio interface must transmit. It belongs to the second layer of the radio interface protocol stack and processes Radio Resource Management (RRC) messages on the control plane. The PDCP sublayer provides signaling transmission services for the upper-layer RRC and implements encryption and consistency protection for RRC signaling, as well as decryption and consistency checks of RRC signaling in the reverse direction.
[0088] 4. Superframe number
[0089] The PDCP count value used for integrity protection and encryption consists of two parts: the HFN and the PDCP SN corresponding to the data packet. The purpose of using the superframe number is to limit the number of bits of the sequence number transmitted over the air interface. Of course, the HFN must be synchronized between the terminal device and the network device.
[0090] Figure 4 This is a schematic diagram of a PDCP PDU carried by an RLC PDU, delivered in a sequential delivery mode. Figure 4 As shown, when the network device is configured to deliver the terminal device's RLC layer in sequential order, the PDCP layer does not perform reordering. Because the terminal device performs reordering at the RLC layer, after receiving a PDU with RLC SN=2, it buffers it at the RLC layer; after receiving a PDU with RLC SN=1, it also buffers it at the RLC layer; until it receives a PDU with RLC SN=0, the RLC layer delivers the PDCP PDUs to the PDCP layer in the order of their RLC SNs. Since the PDCP layer is configured not to perform reordering, PDUs with PDCP SN=0 and PDCP SN=1 may be discarded.
[0091] Figure 5 This is a schematic diagram of a PDCP count value. The PDCP count value consists of HFN and SN. For example... Figure 5 As shown, the PDCP count value of a 10-bit SN consists of a 22-bit HFN and a 10-bit SN. The PDCP PDU only carries the SN. The UE, eNB, or gNB obtains the HFN using the algorithm specified in the protocol, and then combines the HFN and SN according to the above structure to calculate the PDCP count value.
[0092] Figure 6 This is a schematic diagram for calculating PDCP count values. (Example) Figure 6 As shown, assuming the size of the PDCP SN is equal to the downlink PDCP SN bit size, then the size of the reordering window is equal to 2. 下行PDCP SN比特大小-1 Upon receiving a PDCP PDU, if the SN of the PDCP PDU falls into... Figure 6 If the PDCP PDU falls within the shaded area, it will be discarded; if the SN of the PDCP PDU falls within... Figure 6 If the HFN of the currently maintained PDCP PDU is incremented or decremented by 1, then the HFN of the PDCP PDU will take the corresponding value. Finally, the PDCP count value is calculated by combining the HFN value of the PDCP PDU with the SN value of the PDCP PDU.
[0093] Figure 7 This is another schematic diagram for calculating PDCP count values. For example... Figure 7As shown, assuming the size of the PDCP SN is equal to the number of bits of the PDCP transmitted in the downlink, then the size of the reordering window is equal to 2. 下行PDCP SN比特大小-1 After receiving a PDCP PDU, the SN of the PDCP PDU falls into... Figure 7 For different intervals, the HFN of the PDCP PDU takes the corresponding value. Finally, the PDCP count value is calculated by combining the HFN value of the PDCP PDU with the SN value of the PDCP PDU.
[0094] Figure 8 This is another schematic diagram for calculating PDCP count values. For example... Figure 8 As shown, assuming the size of the PDCP SN is equal to the number of bits of the PDCP transmitted in the downlink, then the window size is equal to 2. 下行PDCP SN比特大小-1 Upon receiving a PDCP PDU, if the SN of the PDCP PDU falls into... Figure 8 If the PDCP PDU falls within the shaded area, it will be discarded; if the SN of the PDCP PDU falls within... Figure 8 For different intervals, the HFN of the PDCP PDU takes the corresponding value. Finally, the PDCP count value is calculated by combining the HFN value of the PDCP PDU with the SN value of the PDCP PDU.
[0095] exist Figure 4 and Figure 6 In the two processes of calculating the PDCP count value, only one current HFN can be maintained. The HFN of the PDCP PDU received by the PDCP layer can only be incremented or decremented by 1 based on the currently maintained HFN.
[0096] Figure 9 This is a schematic diagram of a PDCP PDU transmission. For example... Figure 9 As shown, when the sizes of the RLC SN and PDCP SN are not configured properly (e.g., the RLC SN is configured to be 10 bits and the PDCP SN is configured to be 12 bits), there may be more than two PDCP PDUs with HFN values in the RLC receive window at the same time. When the RLC layer is working in out-of-order delivery mode, according to the three methods for calculating the PDCP count value mentioned above, the PDCP count value of some PDCP PDUs may be calculated incorrectly.
[0097] Meanwhile, in the existing protocol, when a device receives an RRC message indicating that RLC data should be processed in a sequential delivery manner, the device can process the RLC data in a sequential delivery manner and submit the processed RLC data in a sequential delivery manner.
[0098] Specifically, if the RLC configuration fields in the RRC message do not contain fields for out-of-order RLC delivery (i.e., the "rlc-OutOfOrderDelivery" field), it indicates that the RRC message instructs for processing RLC data in an ordered delivery manner. When the device receives this RRC message, it processes the RLC data in an ordered delivery manner according to the RRC message. In the ordered delivery method, the PDCP layer does not use reordering functionality. However, the RRC message can implicitly indicate whether the PDCP layer uses reordering functionality by specifying the correspondence between PDCP entities and RLC entities. For example, when one PDCP entity corresponds to one RLC entity, the PDCP layer does not use reordering functionality; when one PDCP entity corresponds to two RLC entities, the PDCP layer uses reordering functionality. Furthermore, if the RRC message includes the "rlc-BearerConfigSecondary-r15" field, it indicates that one PDCP entity corresponds to two RLC entities. In this case, the PDCP layer uses the reordering function. If the above field is not included, it indicates that one PDCP entity does not correspond to two RLC entities. In this case, the PDCP layer does not use the reordering function.
[0099] In summary, when a device receives an RRC message instructing it to process RLC data sequentially, processing the RLC data sequentially may result in a sudden surge of RLC data being submitted from the RLC layer to the PDCP layer within a short period. Conversely, processing the RLC data out of order may lead to errors in the calculation of the PDCP count. Therefore, a data processing method is needed to address these issues.
[0100] It should be understood that, in the following embodiments, without loss of generality, the first device may be a wireless communication device and the second device may be a network device.
[0101] It should also be understood that, in the following embodiments, without loss of generality, the RLC PDU may be an AMD PDU or a UMD PDU, and this application does not limit it.
[0102] This application provides an embodiment of a data processing method 1000, which is illustrated in the following flowchart. Figure 10 As shown, method 1000 includes the following steps.
[0103] S1001, the second device sends an RRC message to the first device.
[0104] For example, the second device can send an RRC message to the first device, which includes a first RLC configuration field. This first RLC configuration field instructs the first device to process RLC data in a sequential delivery manner. Furthermore, the RRC message can be an RRC connection reconfiguration message or an RRC connection re-establishment message.
[0105] Specifically, the second device can send an RRC message to the first device, which includes a first RLC configuration field instructing the first device to process RLC data in an ordered delivery manner. Further, the first RLC configuration field may not carry a field indicating that RLC data is processed in an out-of-order delivery manner, thereby indirectly indicating that RLC data is processed in an ordered delivery manner. Optionally, the first RLC configuration field may not carry the "rlc-OutOfOrderDelivery-r15" field, that is, the field instructing the wireless communication device to process RLC data in an out-of-order delivery manner, thereby indirectly instructing the wireless communication device to process RLC data in an ordered delivery manner. Here, the out-of-order delivery manner differs from the ordered delivery manner indicated by the first RLC configuration field.
[0106] In addition, the first RLC configuration field may carry a field indicating the order of RLC delivery, or the first RLC configuration field may carry a field indicating that the RLC data is delivered out of order, so as to indicate that the RLC data is processed by the first device in an orderly delivery manner. This application does not limit this.
[0107] Furthermore, since the first device does not use the PDCP reordering function in the sequential delivery method, the RRC message also includes a PDCP configuration field, which, along with the first RLC configuration field, is used to indicate that the first device does not use PDCP reordering.
[0108] Specifically, an RRC message can include a PDCP configuration field and a first RLC configuration field, but exclude a second RLC configuration field, indicating that one PDCP entity corresponds to one RLC entity, indirectly instructing the first device not to use PDCP reordering. The second RLC configuration field can indirectly instruct the first device to use PDCP reordering by indicating that one PDCP entity corresponds to two RLC entities. Further, the second RLC configuration field can be "rlc-BearerConfigSecondary-r15". Therefore, when the RRC message does not include the second RLC configuration field indirectly instructing the first device to use PDCP reordering, the RRC message can still instruct the first device not to use PDCP reordering.
[0109] In addition, a third RLC configuration field can be carried in the RRC message to indicate that one PDCP entity corresponds to one RLC entity. The third RLC configuration field is used to indicate that one PDCP entity does not correspond to two RLC entities.
[0110] Furthermore, when the window size of the PDCP sequence number indicated by the PDCP configuration field is 12 bits, the first device can maintain at least one window of PDCP sequence number greater than 12 bits, which is used to enable the PDCP reordering function.
[0111] Specifically, to avoid the phenomenon that the SN of the configured PDCP sequence number window is too small, the size of the SN of the PDCP sequence number window can be set to 15 bits or 18 bits. This can alleviate the problem that when the SN size of the PDCP sequence number window is configured in an unreasonable way, and when the PDCP layer enables reordering, it cannot better support the reordering of a larger range of PDCP count values.
[0112] It should be understood that when the window size of the PDCP sequence number indicated by the PDCP configuration field is 18 bits, there is no need to change the size of the SN of the PDCP sequence number window.
[0113] By setting the SN size of the PDCP sequence number window to 18 bits, the problem of not being able to better support the reordering of a larger range of PDCP count values when the SN size of the PDCP sequence number window is configured improperly and when the PDCP layer enables reordering can be mitigated.
[0114] It should be understood that in the above scheme, the sequential delivery method can be as follows: based on the SN of the RLCPDU in the received RLC PDU set, the PDCP PDU carried by each RLC PDU is delivered sequentially. Simultaneously, if some RLC PDU carries segmented PDCP PDUs, they can be reassembled with the PDCP PDUs carried by adjacent RLC PDUs to form a complete PDCP PDU before delivery. The out-of-order delivery method can be as follows: when an RLC PDU carrying a complete PDCP PDU is received, it is reassembled and delivered; when the RLC PDU carries segmented PDCP PDUs, it can be buffered in the buffer area. If the RLC PDU can be reassembled with adjacent RLC PDUs to form a complete PDCP PDU, then the PDCP PDU is delivered after reassembly.
[0115] S1002, the first device processes RLC data in an out-of-order delivery manner.
[0116] For example, after receiving an RRC message from the second device, the first device can process the RLC data in an out-of-order delivery manner.
[0117] Specifically, for example, when the RLC layer of the first device receives an RLCPDU with SN 0 and SN 2 carrying a PDCP PDU, the RLC layer can deliver the PDCP PDU with SN 0 to the PDCP layer. When the RLC layer receives an RLC PDU with SN 1 and SN 1 carrying a PDCPPDU, the RLC layer can deliver the PDCP PDU with SN 1 to the PDCP layer, instead of using the other modes mentioned above, that is, caching the two RLC PDUs in the RLC layer, and then delivering the PDCP PDUs carried by the RLC PDUs in the order of their SNs.
[0118] It should be understood that the first device may process the RLC PDUs in the RLC PDU set in an out-of-order delivery manner after receiving the RRC message; or it may process the RLCPDUs in the RLC PDU set in an out-of-order delivery manner without an RRC message. This application does not limit this.
[0119] Based on the above scheme, when the first device receives an RRC message including a first RLC configuration field indicating that RLC data should be processed in a sequential delivery manner (i.e., if the first device is not instructed to process RLC data in an out-of-order delivery manner), the first device still processes RLC data in an out-of-order delivery manner. That is, when receiving an RLC PDU carrying a complete PDCP PDU, the first device delivers the complete PDCP PDU. Furthermore, if the RLC PDU carries segmented PDCP PDUs, they can be cached in the buffer. When the RLC PDU can be reassembled with adjacent RLC PDUs into a complete PDCP PDU, the PDCP PDU is delivered after reassembly. Thus, for complete PDCP PDUs carried by RLC PDUs, decryption can be performed directly, reducing write and read operations and saving DDR bandwidth. At the same time, compared with the sequential delivery method, it also avoids the phenomenon of a large number of PDCP PDUs being delivered to the PDCP layer in a short period of time, making it easier to implement.
[0120] Furthermore, the first device can use PDCP reordering to enable the PDCP layer to reorder the received PDCP PDUs.
[0121] Normally, when the first device receives an RRC message indirectly indicating that PDCP reordering should not be used (i.e., the RRC message does not include the second RLC configuration field and does not carry a field indicating that one PDCP entity corresponds to two RLC entities), the first device does not perform PDCP reordering. However, in this embodiment, even if the first device receives an RRC message indicating that PDCP reordering should not be used, it still performs PDCP reordering. Therefore, when the RLC layer does not perform reordering, the PDCP layer performs the reordering operation, which can improve the phenomenon of out-of-order packets received by the application layer.
[0122] Specifically, when the first device delivers the PDCP PDU carried by the RLC PDU in the RLC PDU set in an out-of-order mode, the RLC layer does not perform reordering. Therefore, the PDCP layer needs to perform reordering at this time. Figure 11 This is a schematic diagram of a data submission method proposed in an embodiment of this application. Figure 11 As shown, when all the following RLC PDUs belong to the RLC PDU set, the first device, upon receiving an RLC PDU with SN 2 and the SN of the PDCP PDU it carries being 0, will submit the PDCP PDU to the PDCP layer; upon receiving an RLC PDU with SN 1 and the SN of the PDCP PDU it carries being 1, will submit the PDCP PDU to the PDCP layer; and upon receiving an RLC PDU with SN 0 and the SN of the PDCP PDU it carries being 2, will submit the PDCP PDU to the PDCP layer. Subsequently, the PDCP reordering function is used for processing, resulting in PDCP PDUs ordered by SN number from smallest to largest.
[0123] It should be understood that in this embodiment, regardless of whether the RRC message indicates that one PDCP entity corresponds to one RLC entity or one PDCP entity corresponds to two RLC entities, the first device uses PDCP reordering.
[0124] Based on the above scheme, when the first device receives an RRC message indicating that PDCP reordering should not be used (i.e., one PDCP entity corresponds to one RLC entity), it does not disable reordering but instead uses PDCP reordering. Therefore, when the RLC layer does not perform reordering, the PDCP layer performs the reordering operation, which can improve the phenomenon of out-of-order packets received by the application layer.
[0125] S1003, the first device maintains multiple HFN data.
[0126] For example, the first device can maintain multiple HFN data sets, which are used to enable the processing of RLC data in this out-of-order delivery manner. Further, the multiple HFN data sets correspond to one DRB, and each HFN data set includes HFN data, as well as corresponding PDCP sequence number data and RLC sequence number data.
[0127] For example, the first device can determine the parameters of the HFN node of the target queue based on the RLC PDUs in the RLC PDU set. The parameters of each HFN node of the target queue may include:
[0128] The start and end SNs of PDCP, the start and end SNs of RLC, and the serial number of HFN.
[0129] Specifically, the first device can determine the parameters of the nodes in the target queue based on at least one parameter in the parameter set. The parameter set includes at least one of the following parameters: the SN of the t-th RLC PDU, the SN of the PDCP PDU carried by the t-th RLC PDU, the count value (RX_DELIV) of the PDCP SDUs that have not been submitted and are still waiting in the PDCP window, and a preset parameter. For ease of understanding, the t-th RLC PDU is any RLC PDU in the RLC PDU set, and the preset parameter is the size of the SN of the PDCP window, which can be a configured parameter.
[0130] In one possible implementation, when the target queue is empty, the HFN sequence number of the PDCP PDU carried by the t-th RLC PDU is determined according to at least one parameter including the parameter set, and a new node is added to the target queue. The HFN sequence number of the new node is determined to be the HFN sequence number of the PDCP PDU carried by the t-th RLC PDU, the starting SN of the PDCP of the new node is 0, the ending SN of the PDCP of the new node is the SN of the PDCP PDU carried by the t-th RLC PDU, and the starting SN and ending SN of the RLC of the new node are both the SN of the t-th RLC PDU.
[0131] In another possible implementation, when the target queue has at least one node, the SN of the t-th RLCPDU is sequentially compared with the start SN and end SN of the RLC of the node in the target sequence. Based on the result of this comparison, the parameters of the node in the target queue are determined according to the parameter set.
[0132] For example, if the result of the judgment is that the SN of the t-th RLC PDU is between the start SN and the end SN of the RLC of the tail node of the target queue, and a first preset condition is met, a new node is added after the tail node of the target queue. The parameters of the newly added node are determined according to the parameter set and the HFN sequence number of the tail node of the target queue. The first preset condition is that the SN of the PDCP PDU carried by the t-th RLC PDU is less than the end SN of the PDCP of the tail node of the target queue, and the difference between the end SN of the PDCP of the tail node of the target queue and the SN of the PDCP PDU carried by the t-th RLC PDU is greater than 2^(preset parameter - 1).
[0133] Furthermore, it is determined that the last SN of the PDCP of the newly added node is the SN of the PDCP PDU carried by the t-th RLC PDU, the start SN and the last SN of the RLC of the newly added node are both the SN of the t-th RLC PDU, and the HFN sequence number of the newly added node is determined to be the HFN sequence number of the tail node of the target queue + 1.
[0134] For example, if the result of the determination is that the SN of the t-th RLC PDU is between the start SN and the end SN of the RLC of the tail node of the target queue, and the first preset condition is not met, the end SN of the RLC of the tail node of the target queue is determined to be the SN of the t-th RLC PDU; and if the SN of the PDCP PDU carried by the t-th RLC PDU is greater than the end SN of the PDCP of the tail node of the target queue, the end SN of the PDCP of the tail node of the target queue is determined to be the SN of the PDCP PDU carried by the t-th RLC PDU.
[0135] For example, if the result of the determination is that the SN of the t-th RLC PDU is not between the start SN and the end SN of the RLC PDU at the tail node of the target queue, and the SN of the t-th RLC PDU is lower than the start SN of the RLC PDU at the tail node of the target queue, then the start SN of the RLC at the tail node of the target queue is determined to be the SN of the t-th RLC PDU.
[0136] For example, if the result of the judgment is that the SN of the t-th RLC PDU is higher than the end SN of the RLC PDU of the n-th node in the target queue, and the n-th node is not the tail node, then, under the condition of satisfying the second preset condition, a judgment is made based on the SN of the t-th RLC PDU and the start SN of the RLC PDU of the (n+1)-th node in the target sequence. If the SN of the t-th RLC PDU is higher than the start SN of the RLC PDU of the (n+1)-th node in the target queue, and the SN of the t-th RLC PDU is lower than the value of the first state variable, then the next node is selected for judgment. The second preset condition is that the SN of the t-th RLC PDU is higher than the end SN of the RLC PDU of the (n+1)-th node in the target sequence, and the SN of the t-th RLC PDU is lower than the value of the first state variable.
[0137] For example, if the result of the determination is that the SN of the t-th RLC PDU is higher than the last SN of the RLC PDU of the n-th node in the target queue, and the n-th node is not the tail node, then if the first preset condition and the second preset condition are not met, the last SN of the RLC of the n-th node in the target queue is determined to be the SN of the t-th RLC PDU; if the SN of the PDCP PDU carried by the t-th RLC PDU is greater than the last SN of the PDCP of the n-th node in the target queue, then further, the last SN of the PDCP of the n-th node in the target queue is determined to be the SN of the PDCP PDU carried by the t-th RLC PDU.
[0138] For example, if the result of the judgment is that the SN of the t-th RLC PDU is higher than the last SN of the RLC PDU of the n-th node of the target queue, and the n-th node is not the tail node, then if the first preset condition is met but the second preset condition is not met, the starting SN of the RLC of the (n+1)-th node of the target queue is determined to be the SN of the t-th RLC PDU; if the SN of the PDCP PDU carried by the t-th RLC PDU is greater than the last SN of the PDCP of the (n+1)-th node of the target queue, then the last SN of the PDCP of the (n+1)-th node of the target queue is determined to be the SN of the PDCP PDU carried by the t-th RLC PDU.
[0139] For example, if the result of the determination is that the SN of the t-th RLC PDU is equal to or lower than the end SN of the RLC PDU of the n-th node in the target queue, then the n-th node is not the tail node. If the SN of the t-th RLC PDU is higher than the start SN of the RLC PDU of the n-th node in the target queue, then the start SN of the RLC of the n-th node in the target queue is determined to be the SN of the t-th RLC PDU.
[0140] S1004, the first device determines the PDCP count value of the PDCP PDU carried by the RLC PDU in the RLC PDU set.
[0141] For example, after determining the parameters of the node of the target queue, the first device can determine the PDCP count value of the PDCP PDU carried by the RLC PDU in the RLC PDU set based on the parameters of the node of the target queue corresponding to the RLC PDU in the RLC PDU set and the SN of the PDCP PDU carried by the RLC PDU in the RLC PDU set.
[0142] Specifically, the first device can determine the PDCP count value of the PDCP PDU carried by the RLC PDU in the RLC PDU set by shifting the HFN sequence number of the node of the target queue corresponding to the RLC PDU in the RLC PDU set to the high bit and performing an OR operation with the SN of the PDCP PDU carried by the RLC PDU in the RLC PDU set.
[0143] For example, the first device can determine the PDCP count value of the PDCP PDU carried by the t-th RLC PDU by shifting the HFN sequence number of the node in the target queue corresponding to the t-th RLC PDU to the high bit and performing an OR operation with the SN of the PDCP PDU carried by the t-th RLC PDU.
[0144] Based on the above scheme, by introducing HFN nodes from the target queue, the parameter information of each HFN node in the target queue is determined according to the RLC PDUs in the RLC PDU set. The parameter information of each HFN node includes: the start SN and end SN of the PDCP, the start SN and end SN of the RLC, and the HFN sequence number. Finally, by shifting the HFN sequence number of the HFN node corresponding to the RLC PDU in the target queue to the high-order bits and performing an OR operation with the SN of the PDCP PDU carried by the RLC PDU in the RLC PDU set, the PDCP count value of the PDCP PDU carried by the RLC PDU in the RLC PDU set is determined. This avoids the problem of PDCP count calculation errors caused by out-of-order delivery, improving the accuracy of PDCP count calculation.
[0145] It should be understood that in the above scheme, the SNs of the RLC PDUs in the RLC PDU set are all within the first SN range. The first SN range is determined according to the first state variable VR(H) or VR(UH) and the second state variable VR(R) or VR(UR). The first state variable is used to indicate the SN of the next RLC PDU corresponding to the highest sequence number SN currently received in the RLC window. The second state variable is used to indicate the SN value of the RLC PDU after the last AMD PDU that has been received in sequence in the RLC window, or the SN value of the earliest UMD PDU that is considered for reordering. The change of the first state variable is within a preset maximum change range. Figure 12 This is a schematic diagram illustrating a preset maximum range of variation as proposed in an embodiment of this application. Figure 12 As shown, by limiting the preset maximum range of change of the first state variable to 8, the preset maximum range of change of the first state variable is within the range of SN from 6 to 14, so that the jump of the first state variable cannot reach the range where the value of SN is greater than 14.
[0146] Furthermore, the aforementioned preset maximum variation range can be determined based on the size of the PDCP window and the number of PDCP PDUs carried by the RLC PDUs in the RLC PDU set. For example, the preset maximum variation range can be the ratio of the size of the PDCP window to the number of PDCP PDUs carried by the RLC PDUs in the RLC PDU set, wherein the size of the PDCP window is determined based on the size of the SN of the PDCP window.
[0147] By determining the aforementioned preset maximum variation range, that is, by determining the preset maximum variation range through the size of the SN of the PDCP sequence number window and the number of PDCP PDUs carried by the RLC PDUs in the RLC PDU set, the preset maximum variation range can be limited so that the preset maximum variation range does not exceed the range of the PDCP window, thus avoiding the problem of inaccurate PDCP count value calculation caused by the excessively large jump range of the first state variable.
[0148] It is understood that, in the above method embodiments, the methods and operations implemented by the terminal device can also be implemented by components (such as chips or circuits) that can be used in the terminal device, and the methods and operations implemented by the network device can also be implemented by components (such as chips or circuits) that can be used in the network device.
[0149] The above, combined with Figures 10 to 12 The methods provided in the embodiments of this application are described in detail below. Figures 11 to 14This application provides a detailed description of the communication device provided in its embodiments. It should be understood that the descriptions of the device embodiments correspond to the descriptions of the method embodiments; therefore, any content not described in detail here will be referred to the method embodiments above, and for the sake of brevity, will not be repeated here.
[0150] The above mainly describes the solution provided by the embodiments of this application from the perspective of interaction between various network elements. It is understood that each network element, such as a transmitting or receiving device, includes corresponding hardware structures and / or software modules to perform the above functions. Those skilled in the art should recognize that, based on the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0151] This application embodiment can divide the transmitting or receiving device into functional modules according to the above method examples. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods. The following description uses the division of functional modules according to each function as an example.
[0152] Figure 13 This is a schematic block diagram of a communication device provided in an embodiment of this application. The communication device 1300 includes a receiving module 1310 and a processing module 1320. The receiving module 1310 can implement corresponding communication functions, and the processing module 1310 is used for data processing. The receiving module 1310 can also be referred to as a communication interface or a communication module.
[0153] Optionally, the communication device 1300 may further include a storage module, which can be used to store instructions and / or data. The processing module 1320 can read the instructions and / or data in the storage module to enable the communication device to implement the aforementioned method embodiments.
[0154] The communication device 1300 can be used to perform the actions performed by the first device in the above method embodiment. In this case, the communication device 1300 can be the first device or a component that can be configured on the first device. The receiving module 1310 is used to perform receiving-related operations on the first device side in the above method embodiment, and the processing module 1320 is used to perform processing-related operations on the first device side in the above method embodiment.
[0155] Alternatively, the communication device 1300 can be used to perform the actions performed by the second device in the above method embodiment. In this case, the communication device 1300 can be the second device or a component that can be configured on the second device. The receiving module 1310 is used to perform the transmission and reception related operations on the second device side in the above method embodiment, and the processing module 1320 is used to perform the processing related operations on the second device side in the above method embodiment.
[0156] As a design feature, the communication device 1300 is used to perform the above... Figure 10 In the illustrated embodiment, the actions performed by the first device are: S1001 by the receiving module 1310; and S1002 to S1004 by the processing module 1320.
[0157] The communication device 1300 can implement steps or processes corresponding to those executed by the first device in the method 1000 according to the embodiments of this application. The communication device 1300 may include functions for performing... Figure 10 The module executing the method in method 1000 of the communication device 1300. Furthermore, each module in the communication device 1300 and the other operations and / or functions described above are respectively for implementing... Figure 10 The corresponding process of method 1000 in the middle.
[0158] Wherein, when the communication device 1300 is used to perform Figure 10 When the first device in method 1000 is used, the receiving module 1310 can be used to execute step 1001 in method 1000, and the processing module 1320 can be used to execute steps 1002 to 1004 in method 1000.
[0159] It should be understood that the specific process of each module performing the above-mentioned steps has been described in detail in the above method embodiments, and will not be repeated here for the sake of brevity.
[0160] As an alternative design, the communication device 1300 is used to perform the above. Figure 10 In the illustrated embodiment, the action performed by the second device is received by the receiving module 1310 in S1001.
[0161] The communication device 1300 can implement steps or processes corresponding to those executed by the second device in the method 1000 according to the embodiments of this application. The communication device 1300 may include functions for performing... Figure 10 The module of the method executed by the second device in method 1000. Furthermore, the modules in the communication device 1300 and the other operations and / or functions described above are for the purpose of implementing... Figure 10 The corresponding process of method 1000 in the middle.
[0162] Wherein, when the communication device 1300 is used to perform Figure 10 When method 1000 is used, the receiving module 1310 can be used to execute step 1001 in method 1000.
[0163] The processing module 1320 in the above embodiments can be implemented by at least one processor, a multi-core processor, a processing core, or processor-related circuitry. The receiving module 1310 can be implemented by a receiver, a transceiver, or receiver-related circuitry. The receiving module 1310 can also be referred to as a communication module or a communication interface. The storage module can be implemented by at least one memory.
[0164] like Figure 14 As shown, this application embodiment also provides a communication device 1400. The communication device 1400 includes a processor 1410, which is coupled to a memory 1420. The memory 1420 is used to store computer programs or instructions and / or data. The processor 1410 is used to execute the computer programs or instructions and / or data stored in the memory 1420, so that the methods in the above method embodiments are executed.
[0165] Optionally, the communication device 1400 may include one or more processors 1410.
[0166] Optionally, such as Figure 14 As shown, the communication device 1400 may also include a memory 1420.
[0167] Optionally, the communication device 1400 may include one or more memory 1420.
[0168] Alternatively, the memory 1420 may be integrated with the processor 1410, or it may be set separately.
[0169] Optionally, such as Figure 14 As shown, the communication device 1400 may further include a transceiver 1430 for receiving and / or transmitting signals. For example, a processor 1410 is used to control the transceiver 1430 to receive and / or transmit signals.
[0170] As one option, the communication device 1400 is used to implement the operations performed by the first device in the above method embodiments.
[0171] For example, processor 1410 is used to implement the processing-related operations performed by the first device in the above method embodiment, and transceiver 1430 is used to implement the transmission-reception-related operations performed by the first device in the above method embodiment.
[0172] As an alternative, the communication device 1400 is used to implement the operations performed by the second device in the above method embodiments.
[0173] For example, processor 1410 is used to implement the processing-related operations performed by the second device in the above method embodiment, and transceiver 1430 is used to implement the transmission-reception-related operations performed by the second device in the above method embodiment.
[0174] This application also provides a communication device 1500, which can be a first device or a chip. The communication device 1500 can be used to perform the operations performed by the first device in the above method embodiments.
[0175] When the communication device 1500 is the first device Figure 15 A simplified schematic diagram of a first device is shown. Figure 15 As shown, the first device includes a processor, a memory, a radio frequency (RF) circuit, an antenna, and input / output devices. The processor is primarily used for processing communication protocols and data, controlling the first device, executing software programs, and processing software program data. The memory is primarily used for storing software programs and data. The RF circuit is primarily used for converting baseband signals to RF signals and processing RF signals. The antenna is primarily used for transmitting and receiving RF signals in the form of electromagnetic waves. Input / output devices, such as touchscreens, displays, and keyboards, are primarily used for receiving user input data and outputting data to the user. It should be noted that some types of first devices may not have input / output devices.
[0176] When data needs to be transmitted, the processor performs baseband processing on the data to be transmitted and outputs a baseband signal to the radio frequency (RF) circuit. The RF circuit then processes the baseband signal and transmits it outward as an electromagnetic wave through the antenna. When data is sent to the first device, the RF circuit receives the RF signal through the antenna, converts it into a baseband signal, and outputs the baseband signal to the processor. The processor converts the baseband signal back into data and processes it. For ease of explanation, Figure 15 Only one memory and processor are shown in the illustration. In the actual first device product, there may be one or more processors and one or more memories. Memory may also be referred to as storage medium or storage device, etc. Memory may be set up independently of the processor or integrated with the processor; this application does not limit this.
[0177] In the embodiments of this application, the antenna and radio frequency circuit with transceiver functions can be regarded as the receiving module of the first device, and the processor with processing functions can be regarded as the processing module of the first device.
[0178] like Figure 15 As shown, the terminal device includes a receiving module 1510 and a processing module 1520. The receiving module 1510 can also be referred to as a receiver, transceiver, receiving circuit, transceiver, transceiver device, etc. The processing module 1520 can also be referred to as a processor, multi-core processor, processing core, processing circuit, processing board, processing module, processing device, etc.
[0179] Optionally, the devices in the receiving module 1510 used to implement the receiving function can be considered as the receiving module, and the devices in the receiving module 1510 used to implement the transmitting function can be considered as the transmitting module. That is, the receiving module 1510 includes both a receiving module and a transmitting module. A receiving module may also be called a receiver, transceiver, receiving circuit, transceiver, or transceiver device. A transmitting module may also be called a transmitter, transmitter, or transmitting circuit.
[0180] For example, in one implementation, the processing module 1520 is used to perform... Figure 10 The processing actions of the first device. For example, processing module 1520 is used to execute... Figure 10 The processing steps in steps 1002 to 1004 are described; the receiving module 1510 is used to execute... Figure 10 The send and receive operation in step 1001.
[0181] It should be understood that Figure 15 This is merely an example and not a limitation; the first device described above, including the receiving module and the processing module, may not depend on... Figure 15 The structure shown.
[0182] When the communication device 1500 is a chip, the chip includes a receiving module and a processing module. The receiving module can be an input / output circuit or a communication interface; the processing module can be a processor, microprocessor, or integrated circuit integrated on the chip.
[0183] This application also provides a communication device 1600, which can be a second device or a chip. The communication device 1600 can be used to perform operations performed by the network device in the above method embodiments.
[0184] When the communication device 1600 is a second device, such as a base station. Figure 16A simplified schematic diagram of a base station structure is shown. The base station includes a 1610 section and a 1620 section. The 1610 section is mainly used for transmitting and receiving radio frequency signals and converting radio frequency signals to baseband signals; the 1620 section is mainly used for baseband processing and controlling the base station. The 1610 section is often referred to as a transceiver module, transceiver, transceiver circuit, or transceiver unit. The 1620 section is usually the control center of the base station, often referred to as a processing module, used to control the base station to perform the processing operations on the network device side in the above method embodiments.
[0185] The transceiver module of section 1610, also known as a transceiver or transceiver unit, includes an antenna and radio frequency (RF) circuitry, where the RF circuitry is primarily used for RF processing. Optionally, the devices in section 1610 that implement the receiving function can be considered as a receiving module, and the devices that implement the transmitting function can be considered as a transmitting module; that is, section 1610 includes both a receiving module and a transmitting module. The receiving module can also be called a receiver, receiver circuit, or receiving unit, while the transmitting module can be called a transmitter, transmitter, or transmitting circuit.
[0186] Section 1620 may include one or more single boards, each single board may include one or more processors and one or more memories. The processor is used to read and execute programs in the memory to implement baseband processing functions and control the base station. If multiple single boards exist, they can be interconnected to enhance processing capabilities. As an alternative implementation, multiple single boards may share one or more processors, multiple single boards may share one or more memories, or multiple single boards may simultaneously share one or more processors.
[0187] For example, in one implementation, the transceiver module of section 1610 is used to perform... Figure 4 The transmit / receive related steps performed by the network device in the illustrated embodiment; part 1620 is used for execution Figure 4 The steps related to processing performed by the network device in the illustrated embodiment.
[0188] For example, in another implementation, the transceiver module of part 1610 is used to perform... Figure 5 The transmit / receive related steps performed by the network device in the illustrated embodiment; part 1620 is used for execution Figure 5 The steps related to processing performed by the network device in the illustrated embodiment.
[0189] It should be understood that Figure 16 This is merely an example and not a limitation; the network devices described above, including transceiver modules and processing modules, may not rely on... Figure 16 The structure shown.
[0190] When the communication device 1600 is a chip, the chip includes a transceiver module and a processing module. The transceiver module can be an input / output circuit or a communication interface; the processing module is a processor, microprocessor, or integrated circuit integrated on the chip.
[0191] This application also provides a computer-readable storage medium storing computer instructions for implementing the methods executed by a terminal device or a network device in the above-described method embodiments.
[0192] For example, when the computer program is executed by a computer, it enables the computer to implement the method executed by the terminal device or the method executed by the network device in the above method embodiments.
[0193] This application also provides a computer program product containing instructions that, when executed by a computer, cause the computer to implement the method executed by the terminal device or the method executed by the network device in the above method embodiments.
[0194] This application also provides a communication system, which includes the network device and terminal device described in the above embodiments.
[0195] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the explanations and beneficial effects of the relevant content in any of the communication devices provided above can be referred to the corresponding method embodiments provided above, and will not be repeated here.
[0196] In this embodiment, the terminal device or network device may include a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on top of the operating system layer. The hardware layer may include hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also called main memory). The operating system layer may be any one or more computer operating systems that implement business processing through processes, such as Linux, Unix, Android, iOS, or Windows. The application layer may include applications such as browsers, address books, word processing software, and instant messaging software.
[0197] This application does not impose any particular limitation on the specific structure of the execution subject of the method provided in this application embodiment. As long as it is possible to communicate according to the method provided in this application embodiment by running a program that records the code of the method provided in this application embodiment. For example, the execution subject of the method provided in this application embodiment can be a terminal device or a network device, or a functional module in a terminal device or network device that can call and execute a program.
[0198] Various aspects or features of this application may be implemented as methods, apparatus, or articles of manufacture using standard programming and / or engineering techniques. The term "article of manufacture" as used herein may encompass a computer program accessible from any computer-readable device, carrier, or medium.
[0199] The computer-readable storage medium can be any available medium that a computer can access, or a data storage device such as a server or data center that integrates one or more available media. Available media (or computer-readable media) can include, but are not limited to: magnetic media or magnetic storage devices (e.g., floppy disks, hard disks (such as portable hard drives), magnetic tapes), optical media (e.g., optical discs, compact discs (CDs), digital versatile discs (DVDs), etc.), smart cards and flash memory devices (e.g., erasable programmable read-only memory (EPROM), cards, sticks, or key drives, etc.), or semiconductor media (e.g., solid-state disks (SSDs), USB flash drives, read-only memory (ROM), random access memory (RAM), and various other media capable of storing program code).
[0200] The various storage media described herein may represent one or more devices and / or other machine-readable media used for storing information. The term "machine-readable media" may include, but is not limited to, wireless channels and various other media capable of storing, containing and / or carrying instructions and / or data.
[0201] It should be understood that the processor mentioned in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0202] It should also be understood that the memory mentioned in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM can include a variety of forms, such as: static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0203] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, the memory (storage module) can be integrated into the processor.
[0204] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0205] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed between each other may be through some interfaces, and the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.
[0206] The modules described above as separate components may or may not be physically separate. Similarly, the components shown as modules may or may not be physical modules; they may be located in one place or distributed across multiple network modules. Depending on actual needs, some or all of the modules can be selected to implement the solution provided in this application.
[0207] In addition, the functional modules in the various embodiments of this application can be integrated into one module, or each module can exist physically separately, or two or more modules can be integrated into one module.
[0208] In the above embodiments, it can be implemented entirely or partially by software, hardware, firmware, or any combination thereof.
[0209] When implemented using software, it can be implemented entirely or partially as a computer program product. This computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. For example, the computer can be a personal computer, a server, or a network device, etc. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. For information on computer-readable storage media, please refer to the description above.
[0210] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims and the specification.
Claims
1. A data processing method, characterized in that, include: The wireless communication device receives a Radio Resource Control (RRC) message from a base station. The RRC message includes a first Radio Link Control (RLC) configuration field, which is used to indicate that RLC data is processed in a sequential delivery manner. The wireless communication device processes RLC data in an out-of-order delivery manner, wherein the out-of-order delivery manner is different from the sequential delivery manner indicated by the first RLC configuration field; The method further includes: The wireless communication device uses the Packet Data Convergence Protocol (PDCP) reordering function.
2. The method according to claim 1, characterized in that, The first RLC configuration field is used to indicate that RLC data is processed in a sequential delivery manner, including: The first RLC configuration field does not carry an RLC out-of-order delivery field, which is used to indicate that RLC data is processed in an out-of-order delivery manner.
3. The method according to claim 1 or 2, characterized in that, The RRC message also includes a PDCP configuration field, which, along with the first RLC configuration field, is used to indicate that one PDCP entity corresponds to one RLC entity.
4. The method according to claim 3, characterized in that, The PDCP configuration field and the first RLC configuration field are used to indicate that one PDCP entity corresponds to one RLC entity, including: The RRC message does not carry a second RLC configuration field, which is used to indicate that one PDCP entity corresponds to two RLC entities.
5. The method according to claim 3, characterized in that, The RRC message is either an RRC connection reconfiguration message or an RRC connection re-establishment message.
6. The method according to claim 3, characterized in that, The method further includes: The wireless communication device maintains multiple superframe number (HFN) data, wherein the multiple HFN data are used to enable the processing of RLC data in the out-of-order delivery manner.
7. The method according to claim 6, characterized in that, The plurality of HFN data corresponds to a data radio bearer (DRB). Each of the plurality of HFN data includes HFN data, as well as PDCP sequence number data and RLC sequence number data corresponding to the HFN data.
8. The method according to claim 6 or 7, characterized in that, The PDCP configuration field indicates a PDCP sequence number with a window size of 12 bits, and the method further includes: The wireless communication device maintains at least one window with a PDCP sequence number greater than 12 bits, the window with the at least one PDCP sequence number greater than 12 bits being used to enable the PDCP reordering function.
9. A wireless communication device, characterized in that, include: A receiving module is configured to receive an RRC message from a base station, the RRC message including a first RLC configuration field, the first RLC configuration field being used to indicate that RLC data is processed in a sequential delivery manner; The processing module is used to process RLC data in an out-of-order delivery manner, wherein the out-of-order delivery manner is different from the sequential delivery manner indicated by the first RLC configuration field; The processing module is also used to utilize the Packet Data Convergence Protocol (PDCP) reordering function.
10. The apparatus according to claim 9, characterized in that, The first RLC configuration field is used to indicate that RLC data is processed in a sequential delivery manner, including: The first RLC configuration field does not carry an RLC out-of-order delivery field, which is used to indicate that RLC data is processed in an out-of-order delivery manner.
11. The apparatus according to claim 9 or 10, characterized in that, The RRC message also includes a PDCP configuration field, which, along with the first RLC configuration field, is used to indicate that one PDCP entity corresponds to one RLC entity.
12. The apparatus according to claim 11, characterized in that, The PDCP configuration field and the first RLC configuration field are used to indicate that one PDCP entity corresponds to one RLC entity, including: The RRC message does not carry a second RLC configuration field, which is used to indicate that one PDCP entity corresponds to two RLC entities.
13. The apparatus according to claim 11, characterized in that, The RRC message is either an RRC connection reconfiguration message or an RRC connection re-establishment message.
14. The apparatus according to claim 11, characterized in that, The processing module is also used for: Maintain multiple superframe number (HFN) data, wherein the multiple HFN data are used to enable the processing of RLC data in the out-of-order delivery manner.
15. The apparatus according to claim 14, characterized in that, The plurality of HFN data corresponds to one DRB, and each of the plurality of HFN data includes HFN data, as well as PDCP serial number data and RLC serial number data corresponding to the HFN data.
16. The apparatus according to claim 14 or 15, characterized in that, The window size for the PDCP sequence number indicated by the PDCP configuration field is 12 bits; The processing module is also used to maintain a window of at least one PDCP sequence number greater than 12 bits, the window of at least one PDCP sequence number greater than 12 bits being used to enable the PDCP reordering function.
17. A communication device, characterized in that, include: Memory, used to store computer instructions; A processor for executing computer instructions stored in the memory, causing the communication device to perform the method as described in any one of claims 1 to 8.
18. A computer-readable storage medium, characterized in that, It stores a computer program thereon, which, when executed by a communication device, causes the communication device to perform the method as described in any one of claims 1 to 8.
19. A computer program product, characterized in that, The computer program product includes instructions for performing the method as described in any one of claims 1 to 8.
20. A chip, characterized in that, The chip includes a processor and a data interface, wherein the processor reads instructions stored in the memory through the data interface to execute the method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Method and apparatus for processing a packet in a wireless communication system
CN111133791A