Data transmission method and apparatus, and related device
By using MAC entities for packet assembly and decompression in the new air interface network, the ARQ mechanism of the RLC layer is bypassed, which solves the problem of low transmission efficiency caused by the RLC layer and achieves faster data transmission and accurate data reception.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- VIVO MOBILE COMM CO LTD
- Filing Date
- 2026-01-09
- Publication Date
- 2026-07-23
AI Technical Summary
In new air interfaces, the ARQ mechanism of the RLC layer results in low efficiency of service data transmission. Due to the influence of timer settings and transmission scheduling, the data packet retransmission time is too long and the feedback delay is too late.
By using the Media Access Control (MAC) entity to assemble and deassemble data packets, the ARQ mechanism of the RLC layer is directly bypassed, and the MAC entity is used for data retransmission and packet assembly, reducing the dependence on the RLC entity.
It improves data transmission efficiency, reduces packet retransmission waiting time and feedback delay, and ensures accurate data reception.
Smart Images

Figure CN2026071711_23072026_PF_FP_ABST
Abstract
Description
Data transmission method, device and related equipment
[0001] The present application claims priority from the Chinese patent application No. 202510058259.X filed on January 14, 2025, and entitled "Data transmission method, device and related equipment", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0002] The present application belongs to the field of communication technology, and particularly relates to a data transmission method, device and related equipment. BACKGROUND
[0003] Generally, in a New Radio (NR) network, in the case of using an Automatic Repeat-reQuest (ARQ) mechanism in a Radio Link Control (RLC) layer to transmit service data, a receiving device can feed back each data packet sent by a sending device through the RLC layer to feed back whether each data packet is successfully received by the receiving device. If a certain data packet is not successfully received by the receiving device, the sending device can retransmit the data packet to the receiving device through an RLC entity.
[0004] However, due to the complexity of the feedback and retransmission triggering mechanism of the ARQ mechanism, which is affected by timer settings and transmission scheduling, etc., it may take a long time for the sending device to retransmit the data packet to the receiving device, or for the receiving device to feed back the data packet, thus resulting in low transmission efficiency of the service data. SUMMARY
[0005] The embodiments of the present application provide a data transmission method, device and related equipment, which can solve the problem of low transmission efficiency of service data.
[0006] In a first aspect, a data transmission method is provided, which is executed by a sending device, and the method comprises: the sending device performs packetization based on retransmission data in a first data packet through a Medium Access Control (MAC) entity to obtain a second data packet; and the sending device transmits the second data packet to a receiving device through the MAC entity.
[0007] In a second aspect, a data transmission method is provided, which is performed by a receiving device, and includes: the receiving device, through a MAC entity, unpacking, based on data of a second data packet received from a sending device, at least one sub-data packet of the second data packet, each sub-data packet corresponding to one PDCP entity or one RLC entity of the receiving device; the receiving device, through the MAC entity, performing at least one of the following: sending, to the corresponding PDCP entity, a complete data packet obtained by the MAC entity reassembling data in the sub-data packet; and sending, to the corresponding PDCP entity or the corresponding RLC entity, the sub-data packet; wherein the second data packet is obtained by the sending device, through the MAC entity, based on retransmission data in a first data packet.
[0008] In a third aspect, a data transmission apparatus is provided, which includes: a processing module configured to obtain, through a MAC entity, a second data packet based on retransmission data in a first data packet; and a sending module configured to send, to a receiving device, the second data packet obtained by the processing module.
[0009] In a fourth aspect, a data transmission apparatus is provided, which includes: a processing module configured to obtain, through a MAC entity, at least one sub-data packet of a second data packet based on data of the second data packet received from a sending device, each sub-data packet corresponding to one PDCP entity or one RLC entity of the receiving device; and the processing module, through the MAC entity, performing at least one of the following: sending, to the corresponding PDCP entity, a complete data packet obtained by the MAC entity reassembling data in the sub-data packet; and sending, to the corresponding PDCP entity or the corresponding RLC entity, the sub-data packet; wherein the second data packet is obtained by the sending device, through the MAC entity, based on retransmission data in a first data packet.
[0010] In a fifth aspect, a data transmission apparatus is provided, which is configured to perform the steps of the method according to the first aspect, or implement the steps of the method according to the second aspect.
[0011] In a sixth aspect, a terminal is provided, which includes a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the method according to the first aspect, or implementing the steps of the method according to the second aspect.
[0012] In a seventh aspect, a terminal is provided, comprising a processor and a communication interface, wherein the processor is configured to packetize, by a MAC entity, based on retransmission data in a first data packet to obtain a second data packet, and the communication interface is configured to transmit, by the MAC entity, the second data packet to a receiving device. Alternatively, the processor is configured to depacketize, by the MAC entity, based on data of the second data packet received from a sending device to obtain at least one sub-data packet of the second data packet, each sub-data packet corresponding to one PDCP entity or one RLC entity of the receiving device, and perform at least one of the following by the MAC entity: transmitting, to a corresponding PDCP entity, a complete data packet obtained by reassembling data in the sub-data packet by the MAC entity; and transmitting, to a corresponding PDCP entity or a corresponding RLC entity, the sub-data packet, wherein the second data packet is packetized by the sending device based on the retransmission data in the first data packet by the MAC entity.
[0013] In an eighth aspect, a network-side device is provided, comprising a processor and a memory, wherein the memory stores programs or instructions executable on the processor, and the programs or instructions, when executed by the processor, implement steps of the method according to the first aspect or implement steps of the method according to the second aspect.
[0014] In a ninth aspect, a network-side device is provided, comprising a processor and a communication interface, wherein the processor is configured to packetize, by a MAC entity, based on retransmission data in a first data packet to obtain a second data packet, and the communication interface is configured to transmit, by the MAC entity, the second data packet to a receiving device. Alternatively, the processor is configured to depacketize, by the MAC entity, based on data of the second data packet received from a sending device to obtain at least one sub-data packet of the second data packet, each sub-data packet corresponding to one PDCP entity or one RLC entity of the receiving device, and perform at least one of the following by the MAC entity: transmitting, to a corresponding PDCP entity, a complete data packet obtained by reassembling data in the sub-data packet by the MAC entity; and transmitting, to a corresponding PDCP entity or a corresponding RLC entity, the sub-data packet, wherein the second data packet is packetized by the sending device based on the retransmission data in the first data packet by the MAC entity.
[0015] In a tenth aspect, a readable storage medium is provided, storing programs or instructions executable on a processor, and the programs or instructions, when executed by the processor, implement steps of the method according to the first aspect or implement steps of the method according to the second aspect.
[0016] In an eleventh aspect, a wireless communication system is provided, including: a terminal configured to perform the steps of the method of the first aspect, or perform the steps of the method of the second aspect; and a network-side device configured to perform the steps of the method of the second aspect, or perform the steps of the method of the first aspect.
[0017] In a twelfth aspect, a chip is provided, including a processor and a communication interface, the communication interface being coupled to the processor, the processor being configured to run programs or instructions to implement the steps of the method of the first aspect, or implement the steps of the method of the second aspect.
[0018] In a thirteenth aspect, a computer program / program product is provided, stored in a storage medium, and executed by at least one processor to implement the steps of the method of the first aspect, or implement the steps of the method of the second aspect.
[0019] In the embodiments of the present application, the sending device can perform packetization on the retransmission data in the first data packet through the MAC entity, and send the second data packet obtained by packetization to the receiving device through the MAC entity. On the one hand, since the sending device can perform packetization on the data in the first data packet through the MAC entity without performing packetization on the data in the first data packet through the RLC entity, that is, the sending device can perform packetization through the MAC entity without being affected by the timer setting and transmission scheduling of the RLC entity, the time required for the sending device to send the second data packet to the receiving device can be reduced. On the other hand, since the sending device can perform packetization on the retransmission data in the first data packet, that is, the sending device can perform packetization on part of the data in the first data packet instead of all the data in the first data packet, the amount of data for packetization can be reduced, thereby reducing the time required for packetization, and further reducing the time required for the sending device to send the second data packet to the receiving device. In this way, the transmission efficiency of service data can be improved.
[0020] In this embodiment, the receiving device can use a MAC entity to unpack the data of the second data packet received from the sending device to obtain at least one sub-data packet of the second data packet. Each sub-data packet corresponds to a PDCP entity or an RLC entity of the receiving device. The receiving device can then use the MAC entity to perform at least one of the following: send a complete data packet to the corresponding PDCP entity, which is obtained by the MAC entity reassembling the data segments in the sub-data packet; send the sub-data packet to the corresponding PDCP entity or the corresponding RLC entity; wherein the second data packet is obtained by the sending device using the MAC entity to reassemble the packet based on the retransmitted data in the first data packet. On the one hand, since the second data packet is assembled by the sending device through the MAC entity based on the retransmitted data in the first data packet, the sending device is not affected by the timer settings and transmission scheduling of the RLC entity during the assembly process through the MAC entity. Therefore, the waiting time required for the sending device to send the second data packet to the receiving device can be reduced. On the other hand, since the second data packet is assembled from the retransmitted data in the first data packet, the sending device can assemble a portion of the data in the first data packet, rather than having to assemble all the data in the first data packet. Therefore, the amount of data to be assembled can be reduced, thereby reducing the time required for assembly and further reducing the waiting time required for the sending device to send the second data packet to the receiving device. Furthermore, since the receiving device can unpack the data in the second data packet received from the sending device through the MAC entity to accurately obtain at least one sub-data packet, the receiving device can reassemble the data segments in the sub-data packet to obtain a complete data packet. Therefore, it can be ensured that each PDCP entity can accurately obtain the complete data in the second data packet. Alternatively, the receiving device can send each sub-data packet to the corresponding PDCP entity or RLC entity via the MAC entity. In this way, the receiving device can obtain the complete data packet through the PDCP entity, or reassemble the data segments in the sub-data packet into a complete data packet through the RLC entity. Therefore, it can be ensured that the PDCP entity can accurately obtain the complete data in the second data packet. This improves the transmission efficiency of service data while ensuring accurate reception by the receiving device. Attached Figure Description
[0021] Figure 1A is a schematic diagram of the protocol layer in related technologies;
[0022] Figure 1B is a functional diagram of the protocol layer in related technologies;
[0023] Figure 2 is a block diagram of a wireless communication system provided in an embodiment of this application;
[0024] Figure 3 is a flowchart illustrating one of the data transmission methods provided in this application embodiment;
[0025] Figure 4 is one of the schematic diagrams of the device architecture in the data transmission method provided in the embodiments of this application;
[0026] Figure 5 is a second schematic flowchart of the data transmission method provided in the embodiments of this application;
[0027] Figure 6 is a third flowchart illustrating the data transmission method provided in this application embodiment;
[0028] Figure 7A is a schematic diagram of one of the first header structures in the data transmission method provided in the embodiments of this application;
[0029] Figure 7B is a second schematic diagram of the first header structure in the data transmission method provided in the embodiment of this application;
[0030] Figure 7C is a third schematic diagram of the first header structure in the data transmission method provided in the embodiments of this application;
[0031] Figure 8 is a second schematic diagram of the device architecture in the data transmission method provided in the embodiments of this application;
[0032] Figure 9 is a fourth flowchart illustrating the data transmission method provided in an embodiment of this application;
[0033] Figure 10 is a fifth flowchart illustrating the data transmission method provided in an embodiment of this application;
[0034] Figure 11A is one of the signaling interaction diagrams of the data transmission method provided in the embodiments of this application;
[0035] Figure 11B is a second schematic diagram of signaling interaction of the data transmission method provided in the embodiments of this application;
[0036] Figure 12 is a sixth flowchart illustrating the data transmission method provided in this application embodiment;
[0037] Figure 13 is a schematic diagram of one of the data transmission devices provided in the embodiments of this application;
[0038] Figure 14 is a second schematic diagram of the data transmission device provided in an embodiment of this application;
[0039] Figure 15 is a schematic diagram of the hardware structure of the communication device provided in an embodiment of this application;
[0040] Figure 16 is a schematic diagram of the hardware structure of the terminal provided in an embodiment of this application;
[0041] Figure 17 is a schematic diagram of the hardware structure of the network-side device provided in an embodiment of this application. Detailed Implementation
[0042] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.
[0043] The following will explain the technical terms used in the embodiments of this application.
[0044] 1. Data processing in the user plane
[0045] Currently, in New Radio (NR) networks, the user plane protocol stack mainly includes the Medium Access Control (MAC) layer, Radio Link Control (RLC) layer, Packet Data Convergence Protocol (PDCP) layer, Service Data Adaptation Protocol (SDAP) layer, and Physical (PHY) layer. As shown in Figure 1A, the protocol stacks of both the terminal and the base station (e.g., the next-generation Node B (gNB)) include the MAC layer, RLC layer, PDCP layer, SDAP layer, and PHY layer.
[0046] The protocol stack consists of four layers: PHY (Layer 1) and L2. The MAC layer is primarily responsible for mapping between logical and transport channels, prioritizing logical channels, multiplexing and demultiplexing MAC Service Data Units (SDUs), scheduling, and Hybrid Automatic Repeat Request (HARQ) operations. The RLC layer provides data transmission in Transparent Mode (TM), Unacknowledged Mode (UM), and Acknowledged Mode (AM), segmentation and reassembly, Automatic Repeat Request (ARQ), and independent sequence numbers. The PDCP layer provides header compression and decompression, secure operation, separate bearer routing, and replication. The SDAP layer maps Quality of Service (QoS) flows to radio bearers and marks uplink and downlink packets with QoS flow IDs (QFIs). As shown in Figure 1B, the SDAP layer can process QoS flows and map QoS flows to radio bearers. The PDCP layer can perform header compression and decompression and security operations. The RLC layer can perform segmentation and ARQ. The MAC layer can perform transmission resource scheduling, multiplexing and HARQ operations.
[0047] Typically, the RLC layer can provide data transmission feedback and retransmission mechanisms. In the RLCAM model, the receiver status feedback RLCARQ status report can be generated based on the receiver's receive gap detection mechanism or the transmitter's polling mechanism. For non-acknowledgement (NACK) RLC PDUs or segments in this status feedback, the transmitter's RLC layer can initiate retransmission, thereby further improving transmission reliability.
[0048] Furthermore, to simultaneously improve reliability and latency performance, a PDCP duplication mechanism was introduced. This involves replicating each PDCP packet data unit (PDU) to obtain two or more data packets, which are then transmitted through two or more different paths. This consumes twice or more resources to ensure the reliability and latency performance of critical data. However, this method is extremely resource-intensive and has high overhead.
[0049] 2. Other terms
[0050] The terms "first," "second," etc., used in this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first" and "second" are generally of the same class, not limited in number; for example, the first object can be one or more. Furthermore, "or" in this application indicates at least one of the connected objects. For example, the scope of protection for "A or B" covers at least three scenarios: Scenario 1: including A but not B; Scenario 2: including B but not A; Scenario 3: including both A and B. In addition, the terms "A and / or B," "at least one of A and B," and "at least one of A or B" also cover at least the above three scenarios. The character " / " generally indicates that the preceding and following objects are in an "or" relationship.
[0051] The term "instruction" in this application can be either a direct instruction (or explicit instruction) or an indirect instruction (or implicit instruction). A direct instruction can be understood as the sender explicitly informing the receiver of specific information, the required operation, or the requested result in the instruction sent. An indirect instruction can be understood as the receiver determining the corresponding information based on the instruction sent by the sender, or making a judgment and determining the required operation or requested result based on the judgment result.
[0052] It is worth noting that the technologies described in this application are not limited to Long Term Evolution (LTE) / LTE-Advanced (LTE-A) systems, but can also be used in other wireless communication systems, such as Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Orthogonal Frequency Division Multiple Access (OFDMA), Single-carrier Frequency-Division Multiple Access (SC-FDMA), or other systems. The terms "system" and "network" in this application are often used interchangeably, and the described technologies can be used with the systems and radio technologies mentioned above, as well as with other systems and radio technologies. The following description describes New Radio (NR) systems for illustrative purposes, and the term NR is used in most of the following description; however, these technologies can also be applied to systems other than NR systems, such as 6th generation (6G) radio systems. th Generation 6G communication system.
[0053] Figure 2 shows a block diagram of a wireless communication system applicable to an embodiment of this application. The wireless communication system includes a terminal 11 and a network-side device 12. The terminal 11 can also be referred to as user equipment (UE), and can be a mobile phone, tablet computer, laptop computer, notebook computer, personal digital assistant (PDA), handheld computer, netbook, ultra-mobile personal computer (UMPC), mobile internet device (MID), augmented reality (AR), virtual reality (VR) device, robot, wearable device, flight vehicle, vehicle user equipment (VUE), shipboard equipment, pedestrian user equipment (PUE), smart home (home devices with wireless communication capabilities, such as refrigerators, televisions, washing machines, or furniture), game console, personal computer (PC), ATM, or self-service machine, etc. Wearable devices include: smartwatches, smart bracelets, smart headphones, smart glasses, smart jewelry (smart bracelets, smart chains, smart rings, smart necklaces, smart anklets, smart anklets, etc.), smart wristbands, smart clothing, etc. Among these, in-vehicle devices can also be referred to as in-vehicle terminals, in-vehicle controllers, in-vehicle modules, in-vehicle components, in-vehicle chips, or in-vehicle units, etc. It should be noted that the specific type of terminal 11 is not limited in this application embodiment. Network-side equipment 12 may include access network equipment or core network equipment, wherein access network equipment may also be referred to as Radio Access Network (RAN) equipment, radio access network function, or radio access network unit. Access network equipment may include base stations, Wireless Local Area Network (WLAN) access points (APs), or Wireless Fidelity (WiFi) nodes, etc.Among them, base stations can be referred to as Node B (NB), Evolved Node B (eNB), Next Generation Node B (gNB), New Radio Node B (NRNode B), Access Point, Relay Base Station (RBS), Serving Base Station (SBS), Base Transceiver Station (BTS), Radio Base Station, Radio Transceiver, Basic Service Set (BSS), Extended Service Set (ESS), Home Node B (HNB), Home Evolved Node B, Transmit / Receive Point (TRP), and Non-Terrestrial Network (NTN) equipment (such as satellite or high altitude platform). The term "base station" can be any suitable term in the field, such as "station" or any other appropriate term in the relevant field, as long as the same technical effect is achieved. The term "base station" is not limited to specific technical terms. It should be noted that the embodiments of this application only use the base station in the NR system as an example for introduction, and do not limit the specific type of base station.
[0054] The data transmission method, apparatus, and related equipment provided in this application will be described in detail below with reference to the accompanying drawings and through some embodiments and application scenarios.
[0055] Figure 3 shows a schematic flowchart of the data transmission method provided in an embodiment of this application. As shown in Figure 3, the data transmission method provided in an embodiment of this application may include the following steps 101 and 102.
[0056] Step 101: The sending device uses the MAC entity to reassemble the data into a second data packet based on the retransmission data in the first data packet.
[0057] In some embodiments of this application, the transmitting device may be any of the following: a network-side device (e.g., the first network-side device in the following embodiments) or a UE.
[0058] In some embodiments of this application, the first data packet can be a data packet containing service data. This first data packet can be a MAC PDU. Of course, the first data packet can also be other data packets, and this application does not limit this.
[0059] In some embodiments of this application, the architecture of the sending device may include a first architecture and a second architecture. The following will use the architecture of the sending device as the first architecture and the second architecture respectively to illustrate the specific scheme of packet assembly by the sending device.
[0060] Under the first architecture:
[0061] In some embodiments of this application, the transmitting device includes at least one PDCP entity; wherein each PDCP entity of the transmitting device is connected to the MAC entity of the transmitting device.
[0062] Understandably, in the first architecture, the PDCP entity is directly connected to the MAC entity, eliminating the intermediate RLC entity, so that the PDCP entity of the transmitting device can directly interact with the MAC entity.
[0063] In some embodiments of this application, each PDCP entity corresponds to a logical channel.
[0064] In some embodiments of this application, the at least one PDCP entity described above may include at least one of an AM PDCP entity and a UM PDCP entity.
[0065] Since one PDCP entity corresponds to one bearer or one logical channel, the data type carried by this PDCP entity can still be distinguished between AM and UM based on data QoS or transmission attribute requirements. That is, the data carried by a PDCP entity can be classified as AM data or UM data; for example, AM data has high transmission reliability requirements, while UM data has lower requirements. It can be considered that a PDCP entity transmitting AM data can be an AM PDCP entity, and a PDCP entity transmitting UM data can be a UM PDCP entity.
[0066] In some embodiments of this application, the number of the above-mentioned MAC entities can be at least one, and one MAC entity can be connected to multiple PDCP entities.
[0067] For example, as shown in Figure 4, the transmitting device includes two PDCP entities, one of which is an AM PDCP entity and the other is a UM PDCP entity. The AM PDCP entity and the UM PDCP entity are directly connected to the MAC entity, and the AM PDCP entity and the UM PDCP entity can directly interact with the MAC entity for data exchange.
[0068] It is understandable that after removing the ARQ function of the RLC entity, the remaining functions of the RLC entity are only simple functions such as segmentation, re-segmentation, and reassembly. Therefore, these functions can also be merged into the MAC entity for unified design, completely removing the RLC sub-layer, and allowing the PDCP entity to interact directly with the MAC layer.
[0069] Thus, since each PDCP entity of the transmitting device in this embodiment is connected to the MAC entity, when reassembling retransmitted data in a data packet, the MAC entity can directly obtain the retransmitted data from each PDCP entity for reassembly, without using the ARQ mechanism to obtain the retransmitted data from each PDCP entity through the RLC entity for reassembly. Therefore, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for reassembling retransmitted data.
[0070] In some embodiments of this application, each PDCP entity corresponds to one logical channel. In some examples, referring to FIG3 and FIG5, before step 101 above, the data transmission method provided by the embodiments of this application may include step 201 below.
[0071] Step 201: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity and assembles them into a packet to obtain the first data packet.
[0072] In some embodiments of this application, the aforementioned transmitted data can be understood as newly transmitted data.
[0073] In some embodiments of this application, when the transmitting device is a UE, the transmitting device can start the first transmission by scheduling a HARQ process according to the network-side device (e.g., the receiving device). At this time, the transmitting device can first allocate transmission resources for at least part of the logical information in at least one logical channel through the MAC entity, and according to the size of the transmission resources allocated to a logical channel (i.e., any logical channel among the logical channels that have been allocated transmission resources), obtain at least one transmission data or at least one transmission data segment from the transmission data of the PDCP entity corresponding to the logical channel, and assemble it into a packet to obtain a first data packet, and send the first data packet to the receiving device for uplink transmission.
[0074] In some embodiments of this application, when the transmitting device is a network-side device, the transmitting device can schedule a HARQ process to the UE (e.g., the receiving device) to start the first transmission. At this time, the transmitting device can first allocate transmission resources for at least a portion of the logical information in at least one logical channel through the MAC entity, and according to the size of the transmission resources allocated to a logical channel (i.e., any logical channel among the logical channels that have been allocated transmission resources), obtain at least one transmission data or at least one transmission data segment from the transmission data of the PDCP entity corresponding to the logical channel, assemble it into a packet, obtain a first data packet, and send the first data packet to the receiving device for downlink transmission.
[0075] In some embodiments of this application, a PDCP entity can send the transmission data to be transmitted (e.g., data SDU or SDU segments) to a MAC entity. The MAC entity can then wait for the scheduling resources to arrive. When the scheduling resources arrive, the MAC entity can allocate transmission resources to at least a portion of the logical channels in at least one logical channel according to the Logical Channel Prioritization (LCP) principle. Thus, the transmitting device can use the MAC entity to obtain at least one transmission data or at least one transmission data segment from the transmission data of the PDCP entity corresponding to the logical channel, according to the size of the transmission resources allocated to a logical channel (i.e., any logical channel in which transmission resources have been allocated), and assemble it into at least one sub-data packet (e.g., MAC-sub PDU). Then, according to the packet assembly principle, the MAC entity assembles the at least one sub-data packet into a first data packet.
[0076] In some examples, if the transmission resource size allocated to a logical channel is smaller than the transmission data size of the PDCP entity corresponding to the logical channel, the MAC entity can segment the transmission data of the PDCP entity corresponding to the logical channel based on the transmission resource size allocated to the logical channel, obtain at least two data segments, and then obtain one data segment from the at least two data segments to assemble a packet to obtain a sub-data packet (e.g., MAC-sub PDU).
[0077] In other examples, if the size of the transmission resources allocated to a logical channel is greater than the size of the transmission data of the PDCP entity corresponding to that logical channel, the MAC entity can directly obtain the complete data from the transmission data of the PDCP entity corresponding to that logical channel to assemble a packet and obtain a sub-data packet (e.g., MAC-sub PDU).
[0078] In some embodiments of this application, after receiving the first data packet, the sending device can send the first data packet to the receiving device via a MAC entity on a scheduling resource.
[0079] Thus, it can be seen that since the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity and assemble it into a packet by means of the transmission resource size allocated by the MAC entity according to any logical channel, without having to use the ARQ mechanism to obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity through the RLC entity, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for packet assembly and improving the efficiency of obtaining the first data packet.
[0080] In some embodiments of this application, each PDCP entity corresponds to one logical channel. In some examples, referring to Figure 3 and Figure 6, step 101 above can be specifically implemented through step 101a below.
[0081] Step 101a: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity and assembles it into a packet.
[0082] In some embodiments of this application, the MAC entity can first obtain retransmission data from at least a portion of the PDCP entities (e.g., PDCP entities with retransmission data) in at least one PDCP entity, and then wait for the scheduling resources to arrive. When the scheduling resources arrive, the MAC entity can allocate transmission resources to at least a portion of the logical channels in at least one logical channel according to the Logical Channel Prioritization (LCP) principle. Thus, the transmitting device can obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the PDCP entity corresponding to the logical channel through the MAC entity according to the transmission resource size allocated to a logical channel (i.e., any logical channel in which transmission resources have been allocated), and assemble it into a packet to obtain at least one sub-data packet (e.g., MAC-sub PDU). According to the packet assembly principle, the MAC entity can then assemble the at least one sub-data packet into a packet to obtain a second data packet.
[0083] In some examples, if the transmission resource size allocated to a logical channel is smaller than the retransmission data size of the PDCP entity corresponding to the logical channel, the MAC entity can segment the retransmission data of the PDCP entity corresponding to the logical channel based on the transmission resource size allocated to the logical channel, obtain at least two data segments, and then obtain one data segment from the at least two data segments to assemble a packet to obtain a sub-data packet (e.g., MAC-sub PDU).
[0084] In other examples, if the size of the transmission resources allocated to a logical channel is greater than the size of the retransmission data of the PDCP entity corresponding to the logical channel, the MAC entity can directly obtain the complete data from the retransmission data of the PDCP entity corresponding to the logical channel to assemble a packet and obtain a sub-data packet (e.g., MAC-sub PDU).
[0085] Thus, it can be seen that since the sending device can obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity and assemble it into a packet by means of the transmission resource size allocated by the MAC entity according to any logical channel, without having to use the ARQ mechanism to obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity through the RLC entity, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for packet assembly and thus improving the efficiency of obtaining the second data packet.
[0086] Of course, the sending device can also obtain data or data segments from at least one of the transmitted data and retransmitted data of the PDCP entity through the MAC entity, and then assemble them into a second data packet. Examples will be given below.
[0087] In some embodiments of this application, the data transmission method provided in this application may further include the following step 202.
[0088] Step 202: The transmitting device obtains at least one data segment or at least one data segment from the transmission data of the corresponding PDCP entity through the MAC entity, according to the transmission resource size allocated to the logical channel.
[0089] In some embodiments of this application, the aforementioned transmission data can be understood as newly transmitted data. It should be noted that the transmission data in step 202 and the transmission data in step 201 can be different transmission data. For example, the transmission data in step 202 can be the transmission data of a third data packet (e.g., other data packets besides the first and second data packets).
[0090] In this embodiment of the application, the "packet assembly" in step 101a above satisfies the following: the sending device assembles packets based on the acquired retransmitted data or retransmitted data segments and the acquired transmission data or transmission data segments through the MAC entity.
[0091] In some embodiments of this application, the transmitting device can obtain at least one transmission data or at least one transmission data segment and at least one retransmission data or at least one retransmission data segment from the transmission data and retransmission data of the corresponding PDCP entity according to the transmission resource size allocated for a logical channel through the MAC entity. Thus, the transmitting device can assemble packets based on the obtained retransmission data or retransmission data segment and the obtained transmission data or transmission data segment through the MAC entity.
[0092] For example, assuming that the transmission resource size allocated to the logical channel 1 of the transmitting device is 200 bytes, and the retransmission data size of the PDCP entity 1 corresponding to the logical channel 1 is 150 bytes, the transmitting device can obtain complete data (i.e., 150 bytes of data) from the retransmission data of the PDCP entity 1 through the MAC entity, and obtain at least one transmission data or at least one transmission data segment (e.g., 50 bytes of transmission data or transmission data segment) from the transmission data (e.g., new transmission data) of the PDCP entity 1. Thus, the transmitting device can use the MAC entity to assemble the 150 bytes of data and the 50 bytes of transmission data or transmission data segment into a packet.
[0093] In some embodiments of this application, the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity according to the transmission resource size allocated by a logical channel through a MAC entity, and obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity according to the transmission resource size allocated by another logical channel. Thus, the transmitting device can assemble packets based on the obtained transmission data or transmission data segment and the obtained retransmission data or retransmission data segment through the MAC entity.
[0094] For example, assuming that the transmission resource size allocated to logical channel 2 of the transmitting device is 200 bytes, the transmission data size of PDCP entity 2 corresponding to logical channel 2 is 180 bytes, the transmission resource size allocated to logical channel 3 of the transmitting device is 150 bytes, and the retransmission data size of PDCP entity 3 corresponding to logical channel 3 is 140 bytes, then the transmitting device can obtain complete data (i.e., 180 bytes of data) from the transmission resource of PDCP entity 2 and complete data (i.e., 140 bytes of data) from the retransmission data of PDCP entity 3 through the MAC entity. Thus, the transmitting device can assemble the 180 bytes of data and the 140 bytes of data into a packet through the MAC entity.
[0095] Thus, it can be seen that since the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity through the MAC entity according to the transmission resource size allocated by the logical channel, and assemble the at least one transmission data or at least one transmission data segment with the at least one retransmission data or at least one retransmission data segment, the second data packet obtained by assembling the packet can include not only retransmission data, but also transmission data (e.g., newly transmitted data), instead of only including retransmission data. Therefore, the flexibility of the transmitting device in assembling packets through the MAC entity can be improved.
[0096] The following example illustrates a specific scheme for the sending device to obtain retransmitted data of the PDCP entity.
[0097] In some embodiments of this application, before step 101a above, the data transmission method provided in the embodiments of this application may further include step 203 or step 204 as described below.
[0098] Step 203: The sending device obtains the retransmission data of the PDCP entity from all the data in the first data packet.
[0099] It should be noted that the “PDCP entity” in step 203 can be at least a portion of the PDCP entities included in at least one PDCP entity of the transmitting device.
[0100] In this embodiment of the application, since there may be a situation where all the data in the first data packet is retransmitted data, such as all the data in the first data packet being AM data, the transmitting device can directly obtain the retransmitted data of the PDCP entity from all the data in the first data packet.
[0101] It is understandable that, due to the high reliability requirements of AM data, if all data in the first data packet is AM data, the transmitting device can identify all AM data as retransmission data.
[0102] Thus, since the sending device can accurately obtain the retransmission data of the PDCP entity from all the data in the first data packet, in subsequent steps, the sending device can accurately assemble packets based on the retransmission data of the PDCP entity through the MAC entity to obtain the accurate second data packet.
[0103] Step 204: The sending device deletes the first data from the first data packet to obtain the retransmission data of the PDCP entity.
[0104] In this embodiment of the application, the first data includes at least one of the following:
[0105] MAC CE;
[0106] UM data.
[0107] It should be noted that the “PDCP entity” in step 204 can be at least a portion of the PDCP entities included in at least one PDCP entity of the transmitting device.
[0108] In some embodiments of this application, the sending device may first classify the first data packet of the HARQ process to obtain MAC CE type data, UM type data and AM type data. The sending device can then delete the MAC CE type data (e.g., MAC CE) and UM type data (e.g., UM data) from the first data packet to obtain AM type data (e.g., AM data), and then obtain the retransmission data of the PDCP entity.
[0109] It should be noted that the retransmitted data of the aforementioned PDCP entity can be the retransmitted data of at least a portion of the PDCP entities within at least one PDCP entity. It is understood that, since some PDCP entities within at least one PDCP entity of the transmitting device may not contain data that needs to be retransmitted, the retransmitted data of a PDCP entity can be the retransmitted data of a portion of the PDCP entities within at least one PDCP entity.
[0110] In this embodiment, since the MAC CE may include uplink reporting information or downlink control information, and this uplink reporting information and downlink control information are time-sensitive, meaning they are data that does not need to be retransmitted, the sending device can delete the MAC CE from the first data packet. Since UM data does not require high reliability, meaning it is data that does not need to be retransmitted, the sending device can also delete the UM data from the first data packet.
[0111] Thus, since the sending device can accurately delete the first data that does not need to be retransmitted from the first data packet and obtain the retransmitted data of the PDCP entity, instead of using all the data in the first data packet as the retransmitted data of the PDCP entity, the amount of data to be assembled can be reduced, thereby reducing the time required for assembling the packets, and further reducing the waiting time required for the sending device to send the second data packet to the receiving device.
[0112] Of course, the sending device also includes multiple different caches, so that the sending device can store different data in different caches according to the needs of the MAC entity, so as to quickly obtain the required data when assembling packets. The following will illustrate this with an example.
[0113] In some embodiments of this application, each PDCP entity corresponds to one logical channel, and the transmitting device includes at least one first buffer, each first buffer corresponding to one PDCP entity or one logical channel. In some examples, the data transmission method provided in the embodiments of this application may further include the following step 205.
[0114] Step 205: The transmitting device stores the transmission data of the corresponding PDCP entity in each first buffer.
[0115] In some embodiments of this application, each PDCP entity or each logical channel corresponds to at least one first buffer.
[0116] In some embodiments of this application, after the transmitting device stores the transmission data of the corresponding PDCP entity in each first buffer, the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data in the first buffer corresponding to the logical channel according to the transmission resource size allocated by a logical channel through the MAC entity, and then assemble the segments to form a first data packet.
[0117] Thus, since the sending device can store the transmission data of the corresponding PDCP entity in each first buffer, when assembling packets later, the sending device can directly obtain at least one transmission data or at least one transmission data segment from the transmission data in the first buffer through the MAC entity to assemble packets. Therefore, the sending device can quickly assemble packets through the MAC entity to quickly obtain the first data packet.
[0118] In some embodiments of this application, the transmitting device includes at least one second buffer, each second buffer corresponding to an AM PDCP entity in at least one PDCP entity. The data transmission method provided in the embodiments of this application may further include at least one of steps 206 and 207 described below.
[0119] Step 206: The transmitting device stores the AM data of the corresponding AM PDCP entity in each second buffer.
[0120] In some embodiments of this application, each AM PDCP entity corresponds to at least one second cache.
[0121] In some embodiments of this application, the transmitting device may store all AM data transmitted by the corresponding AM PDCP entity in each second buffer.
[0122] In some embodiments of this application, since the UM PDCP entity may not have any data that needs to be retransmitted, it is not necessary to store the UM data of the UM PDCP entity in the second buffer. Of course, the transmitting device may also store the UM data of the UM PDCP entity in the second buffer, and this application embodiment does not limit this.
[0123] Step 207: The transmitting device stores the AM retransmission data of the corresponding AMPDCP entity in each second buffer.
[0124] In some embodiments of this application, the transmitting device can determine the AM retransmission data (e.g., SDU or SDU segment to be retransmitted) from the AM data of the AM PDCP entity based on feedback information related to the first data packet sent by the receiving device, and store the corresponding AM retransmission data of the AM PDCP entity in each second buffer. The feedback information is used to indicate data that the receiving device has not successfully received.
[0125] In some embodiments of this application, since the UM PDCP entity may not have any data that needs to be retransmitted, i.e., there may be no UM data to be retransmitted, it is not necessary to store the UM data to be retransmitted of the UM PDCP entity in the second buffer. Of course, the transmitting device may also store the UM data to be retransmitted of the UM PDCP entity in the second buffer, and this application embodiment does not limit this.
[0126] Thus, since the sending device can include at least one second buffer, and the sending device can store different data and / or data packets in the second buffer, when packet assembly is required, the sending device can quickly retrieve the required data from the corresponding second buffer through the MAC entity as needed, without having to search for a long time. Therefore, the waiting time required for the sending device to assemble packets can be reduced.
[0127] In some embodiments of this application, the transmitting device includes at least one third buffer, and the number of MAC entities is at least one, with each third buffer corresponding to at least one MAC entity. The data transmission method provided in the embodiments of this application may further include at least one of the following steps 208 and 209:
[0128] Step 208: The sending device stores the first data packet in the third buffer.
[0129] In some embodiments of this application, when the sending device assembles packets to obtain the first data packet, the sending device may store the first data packet in each third buffer, or may store the first data packet in one or some third buffers.
[0130] Step 209: The sending device stores the second data packet in the third buffer.
[0131] In some embodiments of this application, when the sending device assembles packets to obtain the second data packet, the sending device may store the second data packet in each third buffer, or may store the second data packet in one or some third buffers.
[0132] In some embodiments of this application, the transmitting device may cache the already assembled data packets or sub-data packets for each HARQ process so that HARQ retransmission can be performed each time HARQ retransmission occurs. Generally, one data packet needs to be stored for each HARQ process.
[0133] Thus, since the sending device can include at least one third buffer, and the sending device can store different data and / or data packets in the third buffer, when packet assembly is required, the sending device can quickly retrieve the required data from the corresponding third buffer through the MAC entity without a long search time. Therefore, the waiting time required for the sending device to assemble packets can be reduced.
[0134] In some embodiments of this application, each PDCP entity corresponds to a logical channel, and at least one of the first data packet and the second data packet includes at least one sub-data packet, which includes a first header structure; wherein the first header structure includes at least one of the following:
[0135] A first identifier is used to indicate the logical channel corresponding to the sub-data packet;
[0136] First indication information, which is used to indicate the length of the data used to generate the sub-data packet;
[0137] The second instruction information is used to indicate the length of the first instruction information;
[0138] The third indication information is used to indicate the data segmentation information corresponding to the data that generates the sub-data packet;
[0139] The fourth indication information is used to indicate the offset byte of the start character in the first data segment within the complete data, the first data segment being the data segment for generating the sub-data packet;
[0140] The fifth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment that generated the sub-data packet belongs.
[0141] In some embodiments of this application, the first identifier mentioned above can specifically be a Logical Channel IDentification (LCID), which is used to indicate which logical channel / PDCP entity the sub-data packet belongs to. In other words, the LCID can be used to indicate which logical channel / PDCP entity the data that generated the sub-data packet came from.
[0142] In some embodiments of this application, the first indication information mentioned above may be a length field, which is used to indicate the length of the data SDU that generated this sub-data packet.
[0143] In some embodiments of this application, the aforementioned second indication information can be a length field, for example, the second indication information being 0 represents the first indication information with a length of 8 bits, and the second indication information being 1 represents the first indication information with a length of 16 bits. It can be understood that the second indication information can more flexibly support different data lengths and can control overhead more effectively.
[0144] In some embodiments of this application, the aforementioned third indication information can be a segmentation indication (Segment Info, SI) field. This data segmentation information is used to characterize whether the data used to generate the sub-data packet is segmented, or which segment it is. For example, a value of 00 indicates that the data used to generate the sub-data packet is not segmented; a value of 01 indicates that the data used to generate the sub-data packet is the first segment; a value of 10 indicates that the data used to generate the sub-data packet is an intermediate segment; and a value of 11 indicates that the data used to generate the sub-data packet is the last segment, etc.
[0145] In some embodiments of this application, the fourth indication information mentioned above may be a segment offset field. The complete data mentioned above can be understood as data sent by the PDCP entity.
[0146] In some embodiments of this application, the fifth indication information mentioned above may be a sequence number (SN) field. Only segmented data needs to carry a sequence number. The transmitting device can use the SN to indicate the same data SDU segment, so that the receiving device can reassemble different segments of the same data according to the SN.
[0147] For example, Figure 7A shows a schematic diagram of the first header structure in a sub-data packet. Assuming a sub-data packet is generated from data segments obtained by segmenting complete data, and the data segment is not the first data segment in the complete data, the first header structure in the sub-data packet may include a first identifier (e.g., LCID), a first indication information (e.g., length (L)), a second indication information (e.g., L field length indication (F)), a third indication information (e.g., SI), which can indicate which data segment in the complete data the data segment belongs to, a fourth indication information (e.g., SO), which can indicate the offset character of the start character of the data segment in the complete data, and a fifth indication information (e.g., SN), which can indicate the identifier or sequence number of the complete data to which the data segment belongs.
[0148] For example, Figure 7B shows a schematic diagram of the first header structure in a sub-data packet. Assuming that a sub-data packet is generated from data segments obtained by segmenting complete data, and that the data segment is the first data segment in the complete data, then the first header structure in the sub-data packet may include a first identifier (e.g., LCID), a first indication information (e.g., length (L)), a third indication information (e.g., SI), which can indicate that the data segment is the first data segment in the complete data, and a fifth indication information (e.g., SN), which can indicate the identifier or sequence number of the complete data to which the data segment belongs.
[0149] As another example, Figure 7C shows a schematic diagram of the first header structure in a sub-data packet. Assuming that a sub-data packet is generated from complete data, the first header structure in the sub-data packet may include a first identifier (e.g., LCID), a first indication information (e.g., length (L)), a second indication information (e.g., L field length indication (F)), and a third indication information (e.g., SI). The SI can indicate that the data segment has not been segmented, that is, the data segment is complete data.
[0150] Thus, since the embodiments of this application specify the specific content of the first header structure in at least one sub-data packet included in the first data packet and / or the second data packet, after the sending device sends the first data packet and / or the second data packet to the receiving device, the receiving device can accurately perform segmentation and reassembly based on the specific content of the first header structure to accurately obtain the first data packet and / or the second data packet.
[0151] Under the second architecture:
[0152] In some embodiments of this application, the transmitting device includes at least one PDCP entity; wherein each PDCP entity is connected to a MAC entity through at least one RLC entity.
[0153] In some embodiments of this application, each PDCP entity corresponds to a logical channel.
[0154] In some embodiments of this application, the at least one PDCP entity described above may include at least one of an AM PDCP entity and a UM PDCP entity.
[0155] Since one PDCP entity corresponds to one bearer or one logical channel, the data type carried by this PDCP entity can still be distinguished between AM and UM based on data QoS or transmission attribute requirements. That is, the data carried by a PDCP entity can be classified as AM data or UM data; for example, AM data has high transmission reliability requirements, while UM data has lower requirements. It can be considered that a PDCP entity transmitting AM data can be an AM PDCP entity, and a PDCP entity transmitting UM data can be a UM PDCP entity.
[0156] In some embodiments of this application, the number of MAC entities can be at least one, and a MAC entity can be connected to a PDCP entity through at least one RLC entity. Each RLC entity corresponds to one PDCP entity.
[0157] For example, as shown in Figure 8, the transmitting device includes two PDCP entities and two RLC entities. The two PDCP entities include one AM PDCP entity and one UM PDCP entity. The two RLC entities include one AM RLC entity and one UM RLC entity. The AM PDCP entity is connected to the MAC entity through the AM RLC entity, and the UM PDCP entity is connected to the MAC entity through the UM RLC entity. The AM RLC entity and the UM RLC entity can maintain segmentation, resegmentation, and reassembly functions.
[0158] Understandably, in the second architecture, RLC entities can be retained, but the RLC entities no longer have ARQ functionality, and can only perform segmentation, resegmentation, and reassembly functions.
[0159] Thus, since each PDCP entity of the transmitting device in this embodiment is connected to the MAC entity through at least one RLC entity, when reassembling retransmitted data in a data packet, the RLC entity can reassemble the retransmitted data of the PDCP entity, and the MAC entity can obtain the retransmitted data from the data reassembled by the RLC entity for reassembly, instead of reassembling the retransmitted data of the PDCP entity entirely through each RLC entity as in the ARQ mechanism. Therefore, the influence of the RLC entity's timer settings and transmission scheduling can be reduced, thereby reducing the waiting time required to reassemble retransmitted data.
[0160] In some embodiments of this application, each PDCP entity corresponds to one logical channel. In some examples, referring to FIG3 and FIG9, before step 101 above, the data transmission method provided by the embodiments of this application may include step 210 below.
[0161] Step 210: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity and assembles them into a packet to obtain the first data packet.
[0162] In some embodiments of this application, when the transmitting device is a UE, the transmitting device can start the first transmission by scheduling a HARQ process according to a network-side device (e.g., a receiving device). At this time or before, the PDCP entity of the transmitting device can send the data SDU (which can be understood as complete data) to the connected RLC entity. The RLC entity can buffer the data in the transmission buffer and wait for the scheduling resources to arrive. When the scheduling resources arrive, the MAC can allocate transmission resources for at least a portion of the logical channels in at least one logical channel according to the LCP principle, and according to the size of the transmission resources allocated to a logical channel (i.e., any logical channel in which transmission resources have been allocated), it can obtain at least one transmission data or at least one transmission data segment from the transmission data (e.g., SDU or SDU segments in the transmission buffer) of the RLC entity corresponding to that logical channel, and assemble them into a packet to obtain the first data packet.
[0163] In some embodiments of this application, when the transmitting device is a network-side device, the transmitting device can schedule a HARQ process to the UE (e.g., a receiving device) to start the first transmission. At this time or before, the PDCP entity of the transmitting device can send the data SDU (which can be understood as complete data) to the connected RLC entity. The RLC entity can buffer the data in the transmission buffer and wait for the scheduling resources to arrive. When the scheduling resources arrive, the MAC can allocate transmission resources for at least a portion of the logical channels in at least one logical channel according to the LCP principle, and according to the size of the transmission resources allocated to a logical channel (i.e., any logical channel in which transmission resources have been allocated), it can obtain at least one transmission data or at least one transmission data segment from the transmission data (e.g., SDU or SDU segments in the transmission buffer) of the RLC entity corresponding to that logical channel, and assemble them into a packet to obtain the first data packet.
[0164] In some examples, if the transmission resource size allocated to a logical channel is smaller than the transmission data size of the RLC entity corresponding to the logical channel, the MAC entity can segment the transmission data of the RLC entity corresponding to the logical channel based on the transmission resource size allocated to the logical channel, obtain at least two data segments, and then obtain one data segment from the at least two data segments to assemble a packet to obtain a sub-data packet (e.g., MAC-sub PDU).
[0165] In other examples, if the size of the transmission resources allocated to a logical channel is greater than the size of the transmission data of the RLC entity corresponding to that logical channel, the MAC entity can directly obtain the complete data from the transmission data of the RLC entity corresponding to that logical channel to assemble a sub-data packet (e.g., MAC-sub PDU).
[0166] In some embodiments of this application, after receiving the first data packet, the sending device can send the first data packet to the receiving device via a MAC entity on a scheduling resource.
[0167] Thus, it can be seen that since the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity and assemble it into a packet by means of the transmission resource size allocated by the MAC entity according to any logical channel, without having to use the ARQ mechanism to obtain at least one transmission data or at least one transmission data segment for packet assembly, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for packet assembly and improving the efficiency of obtaining the first data packet.
[0168] In some embodiments of this application, each PDCP entity corresponds to one logical channel. In some examples, referring to Figure 3 and as shown in Figure 10, step 101 above can be specifically implemented through step 101b below.
[0169] Step 101b: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding RLC entity and assembles it into a packet.
[0170] In some embodiments of this application, the MAC entity can first obtain the retransmission data of the RLC entity, then wait for the scheduling resources to arrive. When the scheduling resources arrive, the MAC entity can allocate transmission resources for at least a portion of the logical channels in at least one logical channel according to the Logical Channel Prioritization (LCP) principle. Thus, the transmitting device can obtain at least one retransmission data or assemble at least one retransmission data segment into a packet according to the transmission resource size allocated to a logical channel (i.e., any logical channel in which transmission resources have been allocated), from the retransmission data of the RLC entity corresponding to the logical channel (the retransmission data can be stored in the retransmission buffer of the RLC entity), to obtain at least one sub-data packet (e.g., MAC-sub PDU), and according to the packet assembly principle, assemble the at least one sub-data packet into a packet through the MAC entity to obtain a second data packet.
[0171] In some examples, if the transmission resource size allocated to a logical channel is smaller than the size of the retransmission data of the RLC entity corresponding to the logical channel, the MAC entity can segment the retransmission data of the RLC entity corresponding to the logical channel based on the transmission resource size allocated to the logical channel, obtain at least two data segments, and obtain one data segment from the at least two data segments to assemble a packet to obtain a sub-data packet (e.g., MAC-sub PDU).
[0172] In other examples, if the transmission resource size allocated to a logical channel is greater than the size of the retransmission data of the RLC entity corresponding to that logical channel, the MAC entity can directly obtain complete data from the retransmission data of the RLC entity corresponding to that logical channel to assemble a sub-data packet (e.g., MAC-sub PDU).
[0173] Thus, it can be seen that since the sending device can obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding RLC entity according to the transmission resource size allocated by the MAC entity according to any logical channel, and assemble it into a packet, without using the ARQ mechanism to obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity through the RLC entity, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for packet assembly and improving the efficiency of obtaining the second data packet.
[0174] In some embodiments of this application, the data transmission method provided in this application may further include the following step 211.
[0175] Step 211: The transmitting device obtains at least one data segment or at least one data segment from the transmission data of the corresponding RLC entity through the MAC entity, according to the transmission resource size allocated by the logical channel.
[0176] In some embodiments of this application, the aforementioned transmission data can be understood as newly transmitted data. It should be noted that the transmission data in step 211 and the transmission data in step 201 can be different transmission data. For example, the transmission data in step 211 can be the transmission data of the fourth data packet (e.g., other data packets besides the first and second data packets).
[0177] In this embodiment of the application, the "packet assembly" in step 101b above satisfies the following: the sending device assembles packets based on the acquired retransmitted data or retransmitted data segments and the acquired transmitted data or transmitted data segments through the MAC entity.
[0178] In some embodiments of this application, the transmitting device can obtain at least one transmission data or at least one transmission data segment and at least one retransmission data or at least one retransmission data segment from the transmission data and retransmission data of the corresponding RLC entity according to the transmission resource size allocated for a logical channel through the MAC entity. Thus, the transmitting device can assemble packets based on the obtained retransmission data or retransmission data segment and the obtained transmission data or transmission data segment through the MAC entity.
[0179] In some embodiments of this application, the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity according to the transmission resource size allocated by a logical channel through a MAC entity, and obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding RLC entity according to the transmission resource size allocated by another logical channel. Thus, the transmitting device can assemble packets based on the obtained transmission data or transmission data segment and the obtained retransmission data or retransmission data segment through the MAC entity.
[0180] Thus, it can be seen that since the transmitting device can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity through the MAC entity according to the transmission resource size allocated by the logical channel, and assemble the at least one transmission data or at least one transmission data segment with the at least one retransmission data or at least one retransmission data segment, the second data packet obtained by assembling the packet can include not only retransmission data, but also transmission data (e.g., newly transmitted data), instead of only including retransmission data. Therefore, the flexibility of the transmitting device in assembling packets through the MAC entity can be improved.
[0181] In some embodiments of this application, the data of the aforementioned RLC entity includes a second header structure; wherein the second header structure includes at least one of the following:
[0182] The sixth indication information is used to indicate the data segmentation information corresponding to the data of the RLC entity;
[0183] The seventh indication information is used to indicate the offset byte of the start character in the complete data in the second data segment, which is a data segment of the RLC entity's data;
[0184] The eighth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment of the RLC entity belongs.
[0185] In some embodiments of this application, the data of the RLC entity may include at least one of the following: transmission data of the RLC entity and retransmission data of the RLC entity.
[0186] In some embodiments of this application, the aforementioned sixth indication information can be a segmentation information (SI) field. This data segmentation information is used to characterize whether the data of the RLC entity is segmented, or which segment it is. For example, a value of 00 for the sixth indication information indicates that the data of the RLC entity is not segmented; a value of 01 for the sixth indication information indicates that the data of the RLC entity is in the first segment; a value of 10 for the third indication information indicates that the data of the RLC entity is in the middle segment; and a value of 11 for the third indication information indicates that the data of the RLC entity is in the last segment, etc.
[0187] In some embodiments of this application, the aforementioned seventh indication information may be a segment offset field. The aforementioned complete data can be understood as data sent by the PDCP entity.
[0188] In some embodiments of this application, the eighth indication information mentioned above may be a sequence number (SN) field. Only segmented data needs to carry a sequence number. The transmitting device can use the SN to indicate the same data SDU segment, so that the receiving device can reassemble different segments of the same data according to the SN.
[0189] Understandably, in the second architecture, the MAC layer's packet assembly is basically the same as before, so the existing MAC header can be reused. However, since the RLC entity has removed the ARQ function and only retains the fragmentation, refraction, and reassembly functions, the RLC header needs to be redesigned. Basically, the RLC UM PDU format can be retained, and the RLCAM entity allows packet refraction.
[0190] Thus, since the specific content of the second header structure in the data of the RLC entity is specified in the embodiments of this application, after the sending device sends the first data packet and / or the second data packet to the receiving device, the receiving device can accurately perform segmentation and reassembly based on the specific content of the second header structure to accurately obtain the first data packet and / or the second data packet.
[0191] It is important to note that for both architectures described above, it is possible that during the initial transmission of the first data packet, resources are sufficient to transmit it as a complete SDU, thus omitting the serial number (SN). However, during retransmission, insufficient resources necessitate resegmentation. Since resegmented data packets need to distinguish their own segments for correct reassembly, they must carry a SN. In this case, a new SN can be assigned to the data packet (e.g., the fifth indicator information in the first header structure of a sub-data packet under the first architecture, or the eighth indicator information in the second header structure of an RLC entity under the second architecture). This SN can be a previously used SN number plus one, as it is only used for data segmentation and does not indicate any data order. Therefore, even if the resegmented data packet contains older data, it does not affect the correct use of the SN. At the receiving end, it can still be correctly reassembled based on the SN number and segment identifier fields to recover the complete SDU.
[0192] In some embodiments of this application, step 101 described above can be implemented by step 101c described below.
[0193] Step 101c: If the first condition is met, the sending device uses the MAC entity to reassemble the data into a second data packet based on the retransmission data in the first data packet.
[0194] In this embodiment of the application, the first condition includes at least one of the following:
[0195] The ninth indication message was received, which indicates that the first data packet was not successfully received;
[0196] The number of times the ninth instruction message is received is greater than or equal to the number threshold.
[0197] The tenth instruction message is received, which is used to indicate that the transmission of the first data packet should be abandoned.
[0198] In some embodiments of this application, the aforementioned ninth indication information may be HARQ feedback information. It is understood that, in the case of a negative (NACK) HARQ feedback, this HARQ feedback information is used to indicate that the first data packet was not successfully received.
[0199] In some embodiments of this application, the above-mentioned number threshold can be a positive integer, for example, the number threshold can be 4. Of course, the number threshold can also be other positive integers, and this application does not limit this.
[0200] In some embodiments of this application, when the transmitting device is a network-side device (e.g., the first network-side device in the following embodiments), the first condition may include at least one of receiving the ninth indication information and receiving the ninth indication information more than or equal to a number threshold.
[0201] In this scenario, the transmitting device can schedule a HARQ process to begin the first transmission (e.g., transmitting the first data packet), and determine whether to schedule a retransmission based on the uplink HARQ feedback information (e.g., the ninth indication information) from the receiving device (e.g., the UE). Specifically, if the uplink HARQ feedback information is ACK (indicating successful reception of the first data packet), the transmission is successful, and the transmitting device completes the current transmission and prepares to schedule the transmission of the next data packet. If the uplink HARQ feedback information is NACK (indicating unsuccessful reception of the first data packet), the transmission fails, and the transmitting device schedules a retransmission until the transmission is successful or the transmitting device abandons the retransmission.
[0202] In general, the sending device abandons retransmission because after the number of retransmission attempts reaches the aforementioned threshold, failure may occur due to factors such as poor link performance of the receiving device (e.g., UE), inaccurate link estimation, or an inappropriate MCS level selection. The probability of successful HARQ retransmission is low in these cases. Alternatively, factors such as high-priority service preemption, load, or algorithm issues may also cause the sending device to abandon HARQ retransmission. Furthermore, if a false detection occurs in the ninth indication information (e.g., the ninth indication information indicates successful reception of the first data packet, but the sending device falsely detects that the first data packet was not successfully received, or vice versa), the sending device can also abandon retransmission. In this case, the sending device can determine which HARQ process's feedback is based on the ninth indication information and perform necessary retransmission processing on the data from that HARQ process. Specifically, the sending device reassembles the data based on the retransmitted data in the first data packet using the MAC entity.
[0203] In some embodiments of this application, when the transmitting device is a UE, the first condition may be at least one of receiving the ninth indication information, receiving the ninth indication information more than or equal to a number threshold, and receiving the tenth indication information.
[0204] In this scenario, the receiving device can schedule a HARQ process to begin the first transmission (e.g., transmitting the first data packet), and determine whether to schedule the sending device to retransmit based on whether the first data packet is successfully received. Further, the receiving device can determine whether to schedule the sending device to retransmit based on the data composition of the first data packet sent by the sending device, such as whether there is an RLCAM logical channel configuration, and whether there is data to be transmitted in the RLCAM logical channel (this can be roughly judged based on BSR reports). If it is determined that the data of this HARQ process likely contains RLCAM data, then the sending device is triggered to reassemble packets based on the retransmitted data in the first data packet via the MAC entity. Otherwise, if all the data is RLC UM data or data that does not need to be retransmitted, then it is not necessary to trigger the sending device to reassemble packets based on the retransmitted data in the first data packet via the MAC entity. For the sending device, if the first condition is met, it can determine which HARQ process is providing feedback based on the ninth and / or tenth indication information, and thus perform necessary retransmission processing on the data of that HARQ process, i.e., the sending device reassembles packets based on the retransmitted data in the first data packet via the MAC entity.
[0205] Thus, it can be seen that, if the first condition is met, the sending device can accurately reassemble packets based on the retransmitted data in the first data packet through the MAC entity.
[0206] In some embodiments of this application, at least one of the above-mentioned ninth and tenth instruction information is carried by a first MAC CE.
[0207] In one possible implementation of this application, when the ninth indication information is carried by the first MAC CE, if the number of times the ninth indication information is received is less than the aforementioned threshold, the ninth indication information can be carried by the target channel; if the number of times the ninth indication information is received is equal to the threshold, the ninth indication information can be carried by the first MAC CE. Wherein, when the transmitting device is a network-side device (e.g., the first network-side device), the target channel can be an uplink channel, such as the Physical Uplink Control Channel (PUCCH). When the transmitting device is a UE, the target channel can be a downlink channel, such as the Physical Downlink Control Channel (PDCCH).
[0208] Here, since the sending device (or receiving device) may abandon the transmission of the first data packet if the number of times the ninth indication information is received exceeds the above-mentioned threshold, the ninth indication information can be fed back in the last time through the feedback method of the first MAC CE in order to improve the feedback reliability.
[0209] It is understandable that when the sending device is a network-side device, i.e., in the DL transmission scenario, the receiving device can perform HARQ feedback on the PUCCH in the traditional way and / or enhanced MAC CE level HARQ feedback, that is, to feed back the ninth indication information through the first MAC CE. When certain conditions are met (such as the first condition mentioned above), the MAC entity can initiate the retransmission / re-segmentation and re-packet reassembly mechanism to replace the HARQ process according to the service type. For example, when the HARQ still feeds back NACK (i.e. the ninth indication information is received), but the sending device abandons the retransmission scheduling of the HARQ process (e.g., the ninth indication information is received, and / or the number of times the ninth indication information is received is greater than or equal to the number threshold, etc.), or the sending device explicitly indicates to the receiving device that if the ninth indication information still indicates that the first data packet was not successfully received, the receiving device is triggered to send the ninth indication information through the first MAC CE. The transmission feedback of the first MAC CE is also for the HARQ process.
[0210] When the transmitting device is a UE, i.e. in the UL transmission scenario, the transmitting device can transmit the HARQ process according to the scheduling resources of the receiving device. The receiving device decides whether to schedule the retransmission of the HARQ process based on whether the reception is correct or incorrect. When the receiving device abandons the further retransmission scheduling of the HARQ process (i.e. when the transmitting device receives the tenth indication information), the MAC entity can initiate the retransmission / re-segmentation and re-packet reassembly mechanism of the HARQ process according to the service type. That is, the MAC entity reassembles the packet based on the retransmitted data in the first data packet.
[0211] For example, when the transmitting device is a network-side device and the receiving device is a UE, as shown in Figure 11A, the transmitting device schedules the first DL transmission, such as scheduling the transmission of the first data packet, and sends the first data packet to the receiving device. At this time, the receiving device provides feedback information via PUCCH and / or the first MAC CE, indicating that the first data packet was not successfully received. The transmitting device can then schedule a retransmission of the first data packet and send a retransmitted data packet to the receiving device. The receiving device again provides feedback information via PUCCH and / or the first MAC CE, indicating that the first data packet was not successfully received. The transmitting device can then schedule another retransmission of the first data packet and send a retransmitted data packet to the receiving device. The receiving device again provides feedback information via PUCCH and / or the first MAC CE, indicating that the first data packet was not successfully received. The transmitting device can then schedule another retransmission of the first data packet and send a retransmitted data packet to the receiving device. The receiving device again provides feedback information via PUCCH and / or the first MAC CE, indicating that the first data packet was not successfully received. In this way, the sending device schedules the retransmission of the first data packet and sends the retransmitted data packet to the receiving device. At this time, the receiving device can provide feedback indication information through the first MAC CE, which indicates that the first data packet was not successfully received. Thus, if the number of times the sending device receives the indication information indicating that the first data packet was not successfully received is greater than or equal to the number threshold (e.g., 4 times), the sending device can assemble the packet based on the retransmitted data in the first data packet and send the second data packet to the receiving device.
[0212] To illustrate further, when the sending device is a UE and the receiving device is a network-side device, as shown in Figure 11B, the sending device performs the first UL transmission according to the receiving device's scheduling. For example, it sends a first data packet to the receiving device. If the receiving device fails to receive the first data packet, it schedules the UE to retransmit the first data packet, allowing the sending device to send a retransmitted data packet to the receiving device. If the receiving device fails to receive the first data packet again and schedules the UE to retransmit it, the sending device can then retransmit the data packet based on the retransmitted data in the first data packet if the number of times it receives an indication that the first data packet was not successfully received is greater than or equal to a threshold (e.g., 4 times).
[0213] It is understandable that, regardless of UL or DL, when the transmitting device receives transmission feedback information based on the first MAC CE (e.g., the ninth indication information and / or the tenth indication information), it can decompose the MAC PDU in the MAC process according to the MAC process information contained therein. For PDUs belonging to the AM attribute, the MAC layer will initiate a retransmission to replace the HARQ process or request a retransmission from the corresponding RLC entity. For PDUs belonging to the UM attribute, the retransmission will be abandoned and the feedback will be ignored.
[0214] In another possible implementation of this application, when the ninth indication information is carried by the first MAC CE, the transmitting device can feed back the ninth indication information each time through the feedback method of the first MAC CE.
[0215] Therefore, since the reliability of information transmission via MAC CE is high, when the ninth and / or tenth indication information is carried by the first MAC CE, the transmitting device can accurately detect the specific content indicated by the ninth and / or tenth indication information, thereby reducing the possibility of false detection of the specific content indicated by the ninth and / or tenth indication information.
[0216] Step 102: The sending device sends a second data packet to the receiving device through the MAC entity.
[0217] In some embodiments of this application, the receiving device may be any of the following: UE, network-side device (e.g., the third network-side device in the following embodiments).
[0218] It is understandable that when the sending device is a network-side device, the receiving device can be a UE, and the sending of data packets from the sending device to the receiving device can be understood as downlink transmission. When the sending device is a UE, the receiving device can be a network-side device, and the sending of data packets from the sending device to the receiving device can be understood as uplink transmission. Furthermore, when the sending device is a UE, the receiving device can also be a UE, and the sending of data packets from the sending device to the receiving device can be understood as sidelink (SL) transmission.
[0219] This application provides a data transmission method in which a sending device can reassemble retransmitted data from a first data packet using a MAC entity, and then send the reassembled second data packet to a receiving device via the MAC entity. On one hand, since the sending device can reassemble data from the first data packet using the MAC entity without needing to do so through an RLC entity, the sending device is not affected by the timer settings and transmission scheduling of the RLC entity during the packet assembly process. Therefore, the waiting time required for the sending device to send the second data packet to the receiving device can be reduced. On the other hand, since the sending device can reassemble retransmitted data from the first data packet—meaning it can reassemble only a portion of the data in the first data packet instead of all of it—the amount of data to be reassembled can be reduced, thereby reducing the time required for packet assembly and consequently reducing the waiting time required for the sending device to send the second data packet to the receiving device. This improves the transmission efficiency of service data.
[0220] It is understood that in this embodiment of the application, the MAC entity fast transmission feedback method is introduced to prompt the sending device to retransmit in a timely manner, and the MAC entity executes or controls functions such as full retransmission and re-segmentation to replace the traditional RLCARQ function, thereby simplifying the protocol process and improving reliability and latency performance.
[0221] Furthermore, this application provides a data transmission method that enables the transmitting device and the receiving device to perform highly reliable feedback operations using MAC CE and trigger fast retransmission at the RLC or MAC layer. This compensates for the long recovery delay of the original RLC ARQ and reduces the complexity of the entire retransmission, thereby improving data transmission efficiency and service experience. This ensures system efficiency while enhancing data transmission performance.
[0222] In some embodiments of this application, the data transmission method provided in this application may further include the following steps 212 or 213.
[0223] Step 212: When the sending device is a first network-side device and the receiving device is a UE, the first network-side device sends the first configuration to the UE.
[0224] Step 213: When the receiving device is a first network-side device and the sending device is a UE, the UE receives the first configuration from the first network-side device.
[0225] In this embodiment of the application, the first configuration described above is used for at least one of the following:
[0226] Configure the UE to boot the first architecture;
[0227] Disable UE from starting the first architecture;
[0228] The UE is configured to use the first architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0229] The UE is prohibited from using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0230] Configure the data segmentation function of the UE's MAC entity;
[0231] Disable the data segmentation function of the UE's MAC entity;
[0232] Configure the data resegmentation function of the UE's MAC entity;
[0233] Disable the data resegmentation function of the UE's MAC entity;
[0234] Configure the UE's MAC entity data reassembly function;
[0235] Disable the UE's MAC entity's data reassembly function;
[0236] Configure the UE's MAC entity to perform packet reassembly or deassembly based on retransmitted data;
[0237] Disable the UE's MAC entity's function of reassembling or deassembling packets based on retransmitted data;
[0238] Configure the UE to start the second architecture;
[0239] Disable UE from starting the second architecture;
[0240] The UE is configured to use the second architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0241] The UE is prohibited from using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0242] Configure the UE to send or receive a second MAC CE;
[0243] The UE is prohibited from sending or receiving a second MAC CE.
[0244] In some examples, the first configuration is used for at least one of the following:
[0245] Configure the UE to boot the first architecture;
[0246] The UE is configured to use the first architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0247] Configure the data segmentation function of the UE's MAC entity;
[0248] Configure the data resegmentation function of the UE's MAC entity;
[0249] Configure the UE's MAC entity data reassembly function;
[0250] Configure the UE's MAC entity to perform packet reassembly or deassembly based on retransmitted data;
[0251] Configure the UE to start the second architecture;
[0252] The UE is configured to use the second architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0253] Configure the UE to send or receive a second MAC CE;
[0254] or,
[0255] The first configuration is used for at least one of the following:
[0256] Disable UE from starting the first architecture;
[0257] The UE is prohibited from using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0258] Disable the data segmentation function of the UE's MAC entity;
[0259] Disable the data resegmentation function of the UE's MAC entity;
[0260] Disable the UE's MAC entity's data reassembly function;
[0261] Disable the UE's MAC entity's function of reassembling or deassembling packets based on retransmitted data;
[0262] Disable UE from starting the second architecture;
[0263] The UE is prohibited from using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0264] The UE is prohibited from sending or receiving a second MAC CE.
[0265] In this embodiment of the application, when the UE architecture is a first architecture, each PDCP entity of the UE is connected to the UE's MAC entity; when the UE architecture is a second architecture, each PDCP entity of the UE is connected to the UE's MAC entity through at least one RLC entity.
[0266] In some embodiments of this application, the effective time of the first configuration can be the time when the UE receives the first configuration.
[0267] In some embodiments of this application, when the first configuration is used for at least one of the following: configuring the UE to start a first architecture; configuring the UE to adopt the first architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; configuring the data segmentation function of the UE's MAC entity; configuring the data resegmentation function of the UE's MAC entity; configuring the data reassembly function of the UE's MAC entity; and configuring the function of the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data, the UE can start the first architecture. For example, the UE can remove the RLC entity and connect each PDCP entity to the MAC entity. Furthermore, taking the UE as the transmitting device, when sending the first data packet, the UE can use the MAC entity to obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity according to the transmission resource size allocated by the logical channel, assemble it into a packet, obtain the first data packet, and send the first data packet to the first network-side device through the MAC entity. Furthermore, when retransmission is required, the UE can obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity through the MAC entity according to the transmission resource size allocated to the logical channel, and assemble it into a second data packet. The UE can then send the second data packet to the first network-side device through the MAC entity.
[0268] In some embodiments of this application, when the first configuration is used for at least one of the following: prohibiting the UE from starting the first architecture; prohibiting the UE from using the first architecture to reassemble or deassemble packets based on retransmitted data through the MAC entity of the receiving device; prohibiting the data segmentation function of the UE's MAC entity; prohibiting the data resegmentation function of the UE's MAC entity; prohibiting the data reassembly function of the UE's MAC entity; and prohibiting the function of the UE's MAC entity to reassemble or deassemble packets based on retransmitted data, the UE can prohibit starting the first architecture. In this case, the UE can delete the data packets obtained by reassembling packets based on data through the MAC entity.
[0269] In some embodiments of this application, the first configuration is used for at least one of the following: configuring the UE to start a second architecture; configuring the UE to adopt the second architecture, and when the UE's MAC entity performs packet assembly or depacketization based on retransmitted data, the UE can start the second architecture. For example, the UE can remove the ARQ function of the RLC entity, in which case each PDCP entity is connected to the MAC entity through at least one RLC entity. Furthermore, taking the UE as the transmitting device, when sending the first data packet, the UE can obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity through the MAC entity, according to the transmission resource size allocated to the logical channel, and assemble it into a packet to obtain the first data packet. Moreover, when retransmission is required, the UE can obtain at least one retransmitted data or at least one retransmitted data segment from the retransmitted data of the corresponding RLC entity through the MAC entity, according to the transmission resource size allocated to the logical channel, and assemble it into a packet to obtain the second data packet, and send the second data packet to the first network-side device through the MAC entity.
[0270] In some embodiments of this application, the first network-side device may send a first configuration to the UE if the second condition is met.
[0271] The second condition includes at least one of the following:
[0272] The first network-side device is the latest version;
[0273] The RLC entity and MAC entity of the first network-side device are located on the same node;
[0274] The first network-side equipment includes AM type services.
[0275] It is understandable that, since the first network-side device may be an older version base station, it may not support the first architecture and / or the second architecture and / or the aforementioned functions. Therefore, the first network-side device will only send the first configuration to the UE if it is the latest version. And / or, if the first network-side device is deployed using a CU-DU split architecture, or other service-oriented, bus-based, or cloud-based architecture, the RLC entity and MAC entity will reside on different nodes, making it inconvenient to introduce interaction between them. Therefore, the first network-side device may only send the first configuration to the UE if its RLC entity and MAC entity reside on the same node. And / or, if the first network-side device includes AM-type services, if the UE fails to receive the first data packet, it may need to retransmit the retransmitted data in the first data packet. Therefore, the first network-side device may only send the first configuration to the UE if it includes AM-type services.
[0276] In some embodiments of this application,
[0277] The first network-side device can send different first configurations to each UE at a per-UE granularity, or control the configuration / disable separately for uplink and downlink. For example, the first network-side device can configure the UE to enable the first architecture during downlink transmission and disable the first architecture during uplink transmission.
[0278] In this embodiment of the application, the second MAC CE carries a twelfth indication information, which is used to indicate at least one of the following:
[0279] The data packet sent by the receiving device was not successfully received;
[0280] Successfully received the data packet sent by the receiving device;
[0281] Discard the data packets sent by the receiving device.
[0282] In some embodiments of this application, when the first configuration is configured to configure the transmitting device to send a second MAC CE, when the transmitting device receives a data packet sent by the receiving device, the transmitting device can feed back a twelfth indication information to the receiving device through the second MAC CE.
[0283] In some embodiments of this application, when the first configuration is used to prohibit the transmitting device from sending a second MAC CE, when the transmitting device receives a data packet sent by the receiving device, the transmitting device can feed back the twelfth indication information to the receiving device through the aforementioned target channel.
[0284] In some embodiments of this application, when the first configuration is used to prohibit the sending device from sending a second MAC CE, the sending device may also delete data packets obtained by data packet assembly based on MAC entities.
[0285] In some embodiments of this application, the first configuration described above may further include some configuration parameters, which may include the format information of the MAC feedback, and / or the length of each field in the first data packet, and / or the length of each field in the second data packet, etc. Of course, these parameters may also be agreed upon by the protocol, and this application embodiment does not limit them.
[0286] Thus, since the UE can receive the first configuration sent by the first network-side device, it can accurately interact with the first network-side device and / or provide data feedback in accordance with the requirements of the first network-side device through the first configuration. Therefore, the situation where the UE and the first network-side device cannot obtain data and / or provide data feedback can be reduced, thereby improving the reliability of communication.
[0287] In some embodiments of this application, before step 212 described above, the data transmission method provided in this application may further include step 214 as described below. Before step 213 described above, the data transmission method provided in this application may further include step 215 as described below.
[0288] Step 214: When the transmitting device is a first network-side device and the receiving device is a UE, the first network-side device receives first capability information from the UE.
[0289] Step 215: When the receiving device is the first network-side device and the sending device is the UE, the UE sends the first capability information to the first network-side device.
[0290] In this embodiment of the application, the aforementioned first capability information is used to indicate at least one of the following:
[0291] Does the UE support the first architecture?
[0292] Does the UE support using the first architecture, where the UE's MAC entity performs packet reassembly or deassembly based on retransmitted data?
[0293] Does the UE support data segmentation for MAC entities?
[0294] Does the UE support the data resegmentation function of MAC entities?
[0295] Does the UE support the data reassembly function of MAC entities?
[0296] Does the UE support the function of MAC entities to reassemble or deassemble packets based on retransmitted data?
[0297] Does the UE support a second architecture?
[0298] Does the UE support using a second architecture, where the UE's MAC entity performs packet reassembly or deassembly based on retransmitted data?
[0299] Does the UE support sending or receiving a second MAC CE?
[0300] Thus, since the UE can send first capability information to the first network-side device, the first network-side device can accurately know the architecture and / or functions supported by the UE through the first capability information. Therefore, the first network-side device can accurately configure the UE with the architecture and / or functions it supports based on the architecture and / or functions it supports, without configuring the UE with an architecture and / or functions it does not support.
[0301] Of course, during the interaction between the transmitting and receiving devices, the UE (i.e., the transmitting or receiving device) may switch to other cells. In this case, the first network device can also send the first configuration to the network-side device corresponding to other cells. The following will illustrate this with an example.
[0302] In some embodiments of this application, when the sending device is a first network-side device and the receiving device is a UE, the data transmission method provided in the embodiments of this application may further include the following step 216.
[0303] Step 216: The first network-side device sends a first handover request to the second network-side device.
[0304] In this embodiment of the application, the first handover request is used to request the UE's serving cell to be switched to the cell corresponding to the second network-side device, and the first handover request includes a first configuration.
[0305] In some embodiments of this application, when the first network-side device enables any of the above-mentioned architectures and / or functions, regardless of whether the second network-side device enables any of the architectures and / or functions in the first configuration, the unsuccessful MAC CE feedback from the first network-side device and the data packets obtained by assembling data based on data through the MAC entity can be deleted. This is because cell handover does not support forwarding and continuity of MAC entity data, and the data that has been received and triggered by MAC CE feedback to retransmit MAC / RLC maintains the handover process for MAC / RLC entity retransmission data. Generally, the MAC / RLC entity is also reset during cell handover, and only the PDCP entity performs data forwarding and state retention. Therefore, basically both the RLC and MAC entities are reset, and no data related to the new function needs special processing during the handover process.
[0306] Thus, during the process of the UE switching from the cell corresponding to the first network-side device to the cell corresponding to the second network-side device, the first network-side device can also send the first configuration to the second network-side device. In this way, the second network-side device can configure the receiving device to enable / disable any architecture and / or any function based on the first configuration, without the UE having to report the capability information again. Therefore, the waste of transmission resources can be reduced.
[0307] Figure 12 shows a schematic flowchart of the data transmission method provided in an embodiment of this application. As shown in Figure 12, the data transmission method provided in an embodiment of this application may include the following steps 301 and 302.
[0308] Step 301: The receiving device unpacks the data of the second data packet received from the sending device through the MAC entity to obtain at least one sub-data packet of the second data packet.
[0309] In this embodiment of the application, the second data packet is obtained by the sending device through the MAC entity based on the retransmission data in the first data packet, and each sub-data packet corresponds to a PDCP entity or an RLC entity of the receiving device.
[0310] In some embodiments of this application, the architecture of the receiving device may include a first architecture and a second architecture. The following will use the architecture of the receiving device as the first architecture and the second architecture respectively to illustrate the specific scheme of packet assembly by the receiving device.
[0311] Under the first architecture:
[0312] In some embodiments of this application, the receiving device includes at least one PDCP entity; wherein each PDCP entity is connected to a MAC entity.
[0313] Understandably, in the first architecture, the PDCP entity is directly connected to the MAC entity, eliminating the intermediate RLC entity, thus allowing the PDCP entity to directly interact with the MAC entity.
[0314] In some embodiments of this application, each PDCP entity corresponds to a logical channel.
[0315] In some embodiments of this application, the at least one PDCP entity described above may include at least one of an AM PDCP entity and a UM PDCP entity.
[0316] Thus, since each PDCP entity of the receiving device in this embodiment is connected to the MAC entity, when the receiving device sends a data packet to the sending device, the MAC entity can directly obtain data from each PDCP entity for reassembly, without using the ARQ mechanism to obtain data from each PDCP entity through the RLC entity for reassembly. Therefore, it is not affected by the timer settings and transmission scheduling of the RLC entity, thereby reducing the waiting time required for data packet reassembly.
[0317] In some embodiments of this application, each PDCP entity corresponds to a logical channel, and at least one of the first data packet and the second data packet includes at least one sub-data packet, which includes a first header structure; wherein the first header structure includes at least one of the following:
[0318] A first identifier is used to indicate the logical channel corresponding to the sub-data packet;
[0319] First indication information, which is used to indicate the length of the data used to generate the sub-data packet;
[0320] The second instruction information is used to indicate the length of the first instruction information;
[0321] The third indication information is used to indicate the data segmentation information corresponding to the data that generates the sub-data packet;
[0322] The fourth indication information is used to indicate the offset byte of the start character in the first data segment within the complete data, the first data segment being the data segment for generating the sub-data packet;
[0323] The fifth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment that generated the sub-data packet belongs.
[0324] Thus, since the embodiments of this application specify the specific content of the first header structure in at least one sub-data packet included in the first data packet and / or the second data packet, the receiving device can accurately perform segmentation and reassembly based on the specific content of the first header structure to accurately obtain the first data packet and / or the second data packet.
[0325] In some embodiments of this application, before the receiving device unpacks the data based on the data received from the sending device in the second data packet, the receiving device can use a MAC entity to unpack the data based on the data received from the sending device in the first data packet to obtain at least one sub-data packet of the first data packet. Then, the receiving device can use the MAC entity to reassemble the data segments in the sub-data packet according to the first header structure in the at least one sub-data packet included in the first data packet to obtain a complete data packet, and send the complete data packet to the corresponding PDCP entity.
[0326] Under the second architecture:
[0327] In some embodiments of this application, the receiving device includes at least one PDCP entity; wherein each PDCP entity is connected to a MAC entity through at least one RLC entity.
[0328] In some embodiments of this application, each PDCP entity corresponds to a logical channel.
[0329] In some embodiments of this application, the at least one PDCP entity described above may include at least one of an AM PDCP entity and a UM PDCP entity.
[0330] Thus, since each PDCP entity of the receiving device in this embodiment is connected to the MAC entity through at least one RLC entity, when the receiving device sends data to the transmitting device, each RLC entity can reassemble the data of the PDCP entity, and the MAC entity can obtain data from the data reassembled by each RLC entity for reassembly, instead of reassembling the data of the PDCP entity entirely through each RLC entity as in the ARQ mechanism. Therefore, the influence of the timer settings and transmission scheduling of the RLC entity can be reduced, thereby reducing the waiting time required for data packet assembly.
[0331] In some embodiments of this application, the data of the aforementioned RLC entity includes a second header structure; wherein the second header structure includes at least one of the following:
[0332] The sixth indication information is used to indicate the data segmentation information corresponding to the data of the RLC entity;
[0333] The seventh indication information is used to indicate the offset byte of the start character in the complete data in the second data segment, which is a data segment of the RLC entity's data;
[0334] The eighth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment of the RLC entity belongs.
[0335] Thus, since the specific content of the second header structure in the data of the RLC entity is specified in the embodiments of this application, the receiving device can accurately perform segmentation and reassembly based on the specific content of the second header structure to accurately obtain the first data packet and / or the second data packet.
[0336] In some embodiments of this application, before the receiving device unpacks the data based on the data received from the sending device in the second data packet, the receiving device can use a MAC entity to unpack the data based on the data received from the sending device in the first data packet to obtain at least one sub-data packet of the first data packet. Thus, the receiving device can directly send the sub-data packet (e.g., a complete data packet) to the PDCP entity corresponding to the sub-data packet. Alternatively, the receiving device can use a corresponding RLC entity to reassemble the data segments in the sub-data packet according to the second header structure in at least one sub-data packet included in the first data packet to obtain a complete data packet, and send the complete data packet to the corresponding PDCP entity.
[0337] In some embodiments of this application, before step 301 above, the data transmission method provided in the embodiments of this application may further include step 401 below.
[0338] Step 401: The receiving device sends at least one of the following to the transmitting device:
[0339] The ninth indication message is used to indicate that the first data packet was not successfully received.
[0340] The tenth instruction message is used to indicate that the transmission of the first data packet should be abandoned.
[0341] Thus, the receiving device can accurately send the ninth indication information and / or the tenth indication information to the sending device based on the reception status of the first data packet, so that the sending device can accurately determine whether to retransmit the first data packet.
[0342] In some embodiments of this application, at least one of the above-mentioned ninth and tenth instruction information is carried by a first MAC CE.
[0343] Therefore, since the reliability of information transmission via MAC CE is high, when the ninth and / or tenth indication information is carried by the first MAC CE, the transmitting device can accurately detect the specific content indicated by the ninth and / or tenth indication information, thereby reducing the possibility of false detection of the specific content indicated by the ninth and / or tenth indication information.
[0344] Step 302: The receiving device performs at least one of the following actions through the MAC entity: sending a complete data packet to the corresponding PDCP entity, which is obtained by the MAC entity reassembling the data segments in the sub-data packet; or sending a sub-data packet to the corresponding PDCP entity or the corresponding RLC entity.
[0345] In some embodiments of this application, the aforementioned "corresponding PDCP entity" can be understood as the PDCP entity corresponding to the sub-data packet. The aforementioned "corresponding RLC entity" can be understood as the RLC entity corresponding to the sub-data packet.
[0346] In some embodiments of this application, before “sending the complete data packet to the corresponding PDCP entity” in step 302 above, the data transmission method provided in this application may further include step 402 below, and step 302 above can be specifically implemented by step 302a below.
[0347] Step 402: The receiving device reassembles the data segments in the sub-data packet based on the first header structure in at least one sub-data packet using the MAC entity to obtain a complete data packet.
[0348] In some embodiments of this application, when the receiving device has a first architecture, the receiving device can reassemble the data segments in the sub-data packets based on the first header structure in at least one sub-data packet using a MAC entity to obtain a complete data packet. It is understood that the MAC entity can reassemble the data segments in the sub-data packets to obtain a complete data packet.
[0349] In some embodiments of this application, the receiving device can determine the complete data packet to which the data segment in the sub-data packet belongs, and the position of the data segment in the complete data packet within the complete data packet, based on the first header structure in at least one sub-data packet, through a MAC entity. Thus, the receiving device can reassemble the data segment in the sub-data packet through the MAC entity to obtain a complete data packet.
[0350] In some embodiments of this application, in order to avoid endless waiting, the receiving device may also start a reassembly timer. For example, when a sub-data packet corresponding to one data segment of a complete data packet indicated by a SN is received, the reassembly timer is started. If the complete data packet indicated by the SN is not reassembled before the reassembly timer, the waiting is abandoned and the other cached data of the SN that has not been completed is deleted.
[0351] Step 302a: The receiving device sends the complete data packet to the corresponding PDCP entity through the MAC entity.
[0352] In some embodiments of this application, after sending a complete data packet to the corresponding PDCP entity, the corresponding PDCP entity can perform in-order-delivery operations on the received complete data packet, such as reordering, duplicate detection, etc.
[0353] Thus, since the receiving device can accurately obtain the complete data packet by reassembling the data segments in the sub-data packet based on the first header structure in at least one sub-data packet through the MAC entity, it can avoid the situation where the receiving device cannot reassemble the second data packet when the second data packet is obtained by the sending device through the MAC entity based on the retransmitted data in the first data packet. Therefore, the PDCP entity can accurately obtain the complete data packet to accurately obtain the second data packet.
[0354] In some embodiments of this application, in the step 302 above, "sending a sub-data packet to the corresponding PDCP entity", since a sub-data packet may be a complete data packet, the receiving device can send the sub-data packet directly to the PDCP entity corresponding to the sub-data packet through the MAC entity.
[0355] In some embodiments of this application, after "sending sub-data packets to the corresponding RLC entity" in step 302 above, the data transmission method provided in this application embodiment may further include the following step 403.
[0356] Step 403: The receiving device reassembles the data segments in the sub-data packet based on the second header structure in at least one sub-data packet using the corresponding RLC entity to obtain a complete data packet.
[0357] In some embodiments of this application, the receiving device can reassemble the data segments in the sub-data packet based on the second header structure in the sub-data packet using the RLC entity corresponding to the sub-data packet, thereby obtaining a complete data packet.
[0358] In some embodiments of this application, when the receiving device has a second architecture, the receiving device can reassemble the data segments in the sub-data packet based on the second header structure in at least one sub-data packet using the RLC entity corresponding to the sub-data packet to obtain a complete data packet. It can be understood that the RLC entity can reassemble the data segments in the sub-data packet to obtain a complete data packet.
[0359] In some embodiments of this application, in order to avoid endless waiting, the receiving device may also start a reassembly timer. For example, when a sub-data packet corresponding to one of the data segments of a SN is received, the reassembly timer is started. Before the reassembly timer is started, if the complete data packet corresponding to the SN is not reassembled, the waiting is abandoned and the other cached data of the SN that has not been completed is cleared.
[0360] In some embodiments of this application, when the RLC entity corresponding to the sub-data packet obtains the complete data packet, the corresponding RLC entity can send the complete data packet to the connected PDCP entity.
[0361] In some embodiments of this application, after the PDCP entity corresponding to the sub-data packet obtains the complete data packet, the corresponding PDCP entity can perform in-order-delivery operations on the received complete data packet, such as reordering, duplicate detection, etc.
[0362] Thus, it can be seen that since the receiving device can reassemble the data segments in the sub-data packet based on the second header structure in at least one sub-data packet through the RLC entity corresponding to the sub-data packet, it can accurately obtain the complete data packet. This avoids the situation where the receiving device cannot reassemble the second data packet when the second data packet is obtained by the sending device through the MAC entity based on the retransmitted data in the first data packet. Therefore, the PDCP entity can accurately obtain the complete data packet to accurately obtain the second data packet.
[0363] This application provides a data transmission method in which a receiving device can unpack the data of a second data packet received from a sending device through a MAC entity to obtain at least one sub-data packet of the second data packet. Each sub-data packet corresponds to a PDCP entity or an RLC entity of the receiving device. The receiving device can then perform at least one of the following actions through the MAC entity: sending a complete data packet to the corresponding PDCP entity, wherein the complete data packet is obtained by the MAC entity reassembling the data segments in the sub-data packet; or sending the sub-data packet to the corresponding PDCP entity or the corresponding RLC entity. The second data packet is obtained by the sending device through the MAC entity by reassembling the packet based on the retransmitted data in the first data packet. On the one hand, since the second data packet is assembled by the sending device through the MAC entity based on the retransmitted data in the first data packet, the sending device is not affected by the timer settings and transmission scheduling of the RLC entity during the assembly process through the MAC entity. Therefore, the waiting time required for the sending device to send the second data packet to the receiving device can be reduced. On the other hand, since the second data packet is assembled from the retransmitted data in the first data packet, the sending device can assemble a portion of the data in the first data packet, rather than having to assemble all the data in the first data packet. Therefore, the amount of data to be assembled can be reduced, thereby reducing the time required for assembly and further reducing the waiting time required for the sending device to send the second data packet to the receiving device. Furthermore, since the receiving device can unpack the data in the second data packet received from the sending device through the MAC entity to accurately obtain at least one sub-data packet, the receiving device can reassemble the data segments in the sub-data packet to obtain a complete data packet. Therefore, it can be ensured that each PDCP entity can accurately obtain the complete data in the second data packet. Alternatively, the receiving device can send each sub-data packet to the corresponding PDCP entity or RLC entity via the MAC entity. In this way, the receiving device can obtain the complete data packet through the PDCP entity, or reassemble the data segments in the sub-data packet into a complete data packet through the RLC entity. Therefore, it can be ensured that the PDCP entity can accurately obtain the complete data in the second data packet. This improves the transmission efficiency of service data while ensuring accurate reception by the receiving device.
[0364] In some embodiments of this application, before step 302 above, the data transmission method provided in the embodiments of this application may further include step 404 or step 405 as described below.
[0365] Step 404: When the sending device is a first network-side device and the receiving device is a UE, the UE receives the first configuration from the first network-side device.
[0366] Step 405: When the receiving device is a first network-side device and the sending device is a UE, the first network-side device sends the first configuration to the UE.
[0367] In this embodiment of the application, the first configuration described above is used for at least one of the following:
[0368] Configure the UE to boot the first architecture;
[0369] Disable UE from starting the first architecture;
[0370] The UE is configured to use the first architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0371] The UE is prohibited from using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0372] Configure the data segmentation function of the UE's MAC entity;
[0373] Disable the data segmentation function of the UE's MAC entity;
[0374] Configure the data resegmentation function of the UE's MAC entity;
[0375] Disable the data resegmentation function of the UE's MAC entity;
[0376] Configure the UE's MAC entity data reassembly function;
[0377] Disable the UE's MAC entity's data reassembly function;
[0378] Configure the UE's MAC entity to perform packet reassembly or deassembly based on retransmitted data;
[0379] Disable the UE's MAC entity's function of reassembling or deassembling packets based on retransmitted data;
[0380] Configure the UE to start the second architecture;
[0381] Disable UE from starting the second architecture;
[0382] The UE is configured to use the second architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data;
[0383] The UE is prohibited from using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity;
[0384] Configure the UE to send or receive a second MAC CE;
[0385] The UE is prohibited from sending or receiving a second MAC CE.
[0386] In this embodiment of the application, when the UE architecture is a first architecture, each PDCP entity of the UE is connected to the UE's MAC entity; when the UE architecture is a second architecture, each PDCP entity of the UE is connected to the UE's MAC entity through at least one RLC entity.
[0387] In some embodiments of this application, when the first configuration is used for at least one of the following: configuring the UE to start a first architecture; configuring the UE to adopt the first architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; configuring the data segmentation function of the UE's MAC entity; configuring the data resegmentation function of the UE's MAC entity; configuring the data reassembly function of the UE's MAC entity; and configuring the function of the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data, the receiving device can use the MAC entity to reassemble the data segments in the sub-data packet based on the first header structure in at least one sub-data packet to obtain a complete data packet.
[0388] In some embodiments of this application, the first configuration is used for at least one of the following: configuring the UE to start a second architecture; configuring the UE to adopt the second architecture, and when the UE's MAC entity performs packet reassembly or depacketization based on retransmitted data, the receiving device can reassemble the data segments in the sub-data packet based on the second header structure in at least one sub-data packet through the RLC entity corresponding to the sub-data packet to obtain a complete data packet.
[0389] In this embodiment of the application, the second MAC CE carries a twelfth indication information, which is used to indicate at least one of the following:
[0390] The data packet sent by the receiving device was not successfully received;
[0391] Successfully received the data packet sent by the receiving device;
[0392] Discard the data packets sent by the receiving device.
[0393] In some embodiments of this application, when the first configuration is used to configure the receiving device to send a second MAC CE, at least one of the aforementioned ninth indication information and tenth indication information is carried by the first MAC CE.
[0394] Thus, since the UE can receive the first configuration sent by the first network-side device, it can accurately interact with the first network-side device and / or provide data feedback in accordance with the requirements of the first network-side device through the first configuration. Therefore, the situation where the UE and the first network-side device cannot obtain data and / or provide data feedback can be reduced, thereby improving the reliability of communication.
[0395] In some embodiments of this application, before step 404 described above, the data transmission method provided in this application may further include step 406 as described below. Before step 405 described above, the data transmission method provided in this application may further include step 407 as described below.
[0396] Step 406: When the sending device is the first network-side device and the receiving device is the UE, the UE sends the first capability information to the first network-side device.
[0397] Step 407: When the receiving device is a first network-side device and the sending device is a UE, the first network-side device receives first capability information from the UE.
[0398] In this embodiment of the application, the aforementioned first capability information is used to indicate at least one of the following:
[0399] Does the UE support the first architecture?
[0400] Does the UE support using the first architecture, where the UE's MAC entity performs packet reassembly or deassembly based on retransmitted data?
[0401] Does the UE support data segmentation for MAC entities?
[0402] Does the UE support the data resegmentation function of MAC entities?
[0403] Does the UE support the data reassembly function of MAC entities?
[0404] Does the UE support the function of MAC entities to reassemble or deassemble packets based on retransmitted data?
[0405] Does the UE support a second architecture?
[0406] Does the UE support using a second architecture, where the UE's MAC entity performs packet reassembly or deassembly based on retransmitted data?
[0407] Does the UE support sending or receiving a second MAC CE?
[0408] Thus, since the UE can send first capability information to the first network-side device, the first network-side device can accurately know the architecture and / or functions supported by the UE through the first capability information. Therefore, the first network-side device can accurately configure the UE with the architecture and / or functions it supports based on the architecture and / or functions it supports, without configuring the UE with an architecture and / or functions it does not support.
[0409] Of course, during the interaction between the transmitting and receiving devices, the UE (i.e., the transmitting or receiving device) may switch to other cells. In this case, the first network device can also send the first configuration to the network-side device corresponding to other cells. The following will illustrate this with an example.
[0410] In some embodiments of this application, when the receiving device is a first network-side device and the sending device is a UE, the data transmission method provided in the embodiments of this application may further include the following step 408.
[0411] Step 408: The first network-side device sends a first handover request to the second network-side device.
[0412] In this embodiment of the application, the first handover request is used to request the UE's serving cell to be switched to the cell corresponding to the second network-side device, and the first handover request includes a first configuration.
[0413] In some embodiments of this application, when the first network-side device enables any of the above-mentioned architectures and / or functions, regardless of whether the second network-side device enables any of the architectures and / or functions in the first configuration, the unsuccessful MAC CE feedback from the first network-side device and the data packets obtained by assembling data based on data through the MAC entity can be deleted. This is because cell handover does not support forwarding and continuity of MAC entity data, and the data that has been received and triggered by MAC CE feedback to retransmit MAC / RLC maintains the handover process for MAC / RLC entity retransmission data. Generally, the MAC / RLC entity is also reset during cell handover, and only the PDCP entity performs data forwarding and state retention. Therefore, basically both the RLC and MAC entities are reset, and no data related to the new function needs special processing during the handover process.
[0414] Thus, during the process of the UE switching from the cell corresponding to the first network-side device to the cell corresponding to the second network-side device, the first network-side device can also send the first configuration to the second network-side device. In this way, the second network-side device can configure the receiving device to enable / disable any architecture and / or any function based on the first configuration, without the UE having to report the capability information again. Therefore, the waste of transmission resources can be reduced.
[0415] The data transmission method provided in this application can be executed by a data transmission device. This application uses a data transmission device executing the data transmission method as an example to illustrate the data transmission device provided in this application.
[0416] This application provides a data transmission device. As an example, the data transmission device may be a communication device or a component within a communication device, such as a chip. The communication device may be a terminal, a network-side device, or a server, etc. Exemplarily, the terminal may include, but is not limited to, the type of terminal 11 listed above, and the network-side device may include, but is not limited to, the type of network-side device 12 listed above. This application does not impose specific limitations.
[0417] The data transmission device includes a receiving module, a transmitting module, and a processing module. These modules can be implemented in software or hardware. When implemented in hardware, the processing module can be implemented by a processor. For example, the processor can include general-purpose processors, special-purpose processors, etc., such as central processing units (CPUs), microprocessors, digital signal processors (DSPs), artificial intelligence (AI) processors, graphics processing units (GPUs), application-specific integrated circuits (ASICs), network processors (NPs), field-programmable gate arrays (FPGAs), or other programmable logic devices, gate circuits, transistors, discrete hardware components, etc. The receiving and transmitting modules can be implemented by a communication interface, which can include one or more of the following: transceivers, pins, circuits, buses, radio frequency units, etc.
[0418] Specifically, referring to Figure 13, when the data transmission device is a terminal or a component within a terminal, or a network-side device or a component within a network-side device, the data transmission device 500 includes: a processing module 501, used to assemble packets based on retransmitted data in the first data packet using a MAC entity to obtain a second data packet; and a sending module 502, used to send the second data packet assembled by the processing module 501 to the receiving device using a MAC entity.
[0419] This application provides a data transmission apparatus. On one hand, since the data transmission apparatus can reassemble data in a first data packet via a MAC entity without needing to reassemble data in the first data packet via an RLC entity, the data transmission apparatus is not affected by the timer settings and transmission scheduling of the RLC entity during the packet assembly process via the MAC entity. Therefore, the waiting time required for the data transmission apparatus to send a second data packet to the receiving device can be reduced. On the other hand, since the data transmission apparatus can reassemble retransmitted data in the first data packet, that is, the data transmission apparatus can reassemble a portion of the data in the first data packet instead of necessarily reassembling all the data in the first data packet, the amount of data to be reassembled can be reduced, thereby reducing the time required for packet assembly and further reducing the waiting time required for the data transmission apparatus to send a second data packet to the receiving device. Thus, the transmission efficiency of service data can be improved.
[0420] In one possible implementation, the data transmission device 500 includes at least one PDCP entity; wherein each PDCP entity of the data transmission device 500 is connected to the MAC entity of the data transmission device 500.
[0421] In one possible implementation, each PDCP entity corresponds to one logical channel. The aforementioned processing module 501 is further configured to, through the MAC entity, according to the transmission resource size allocated to the logical channel, obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity and assemble it into a packet to obtain a first data packet.
[0422] In one possible implementation, each PDCP entity corresponds to a logical channel. Specifically, the processing module 501 is used by the MAC entity to obtain at least one retransmission data point or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity, according to the transmission resource size allocated to the logical channel, and then assembles these segments into packets.
[0423] In one possible implementation, the processing module 501 is further configured to: obtain retransmission data for each PDCP entity from all data in the first data packet; and delete first data from the first data packet to obtain retransmission data for each PDCP entity. The first data includes at least one of the following: MAC CE; UM data.
[0424] In one possible implementation, the processing module 501 is further configured to, through the MAC entity, obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity according to the transmission resource size allocated to the logical channel. The packet assembly described above satisfies the following condition: packet assembly is performed based on the obtained retransmission data or retransmission data segment and the obtained transmission data or transmission data segment.
[0425] In one possible implementation, each PDCP entity corresponds to one logical channel. The data transmission device 500 includes at least one first buffer, each first buffer corresponding to one PDCP entity or one logical channel. The processing module 501 described above is further configured to store the transmission data of the corresponding PDCP entity in each first buffer.
[0426] In one possible implementation, the data transmission device 500 includes at least one second buffer, each second buffer corresponding to one AM PDCP entity in at least one PDCP entity. The processing module 501 described above is further configured to: store AM data of the corresponding AM PDCP entity in each second buffer; and store AM retransmission data of the corresponding AM PDCP entity in each second buffer.
[0427] In one possible implementation, the data transmission device 500 includes at least one third buffer, and the number of MAC entities is at least one, with each third buffer corresponding to at least one MAC entity. The processing module 501 described above is further configured to: store a first data packet in the third buffer; and store a second data packet in the third buffer.
[0428] In one possible implementation, at least one of the first data packet and the second data packet includes at least one sub-data packet, the sub-data packet including a first header structure; wherein the first header structure includes at least one of the following: a first identifier, the first identifier being used to indicate the logical channel corresponding to the sub-data packet; first indication information, the first indication information being used to indicate the length of the data that generated the sub-data packet; second indication information, the second indication information being used to indicate the length of the first indication information; third indication information, the third indication information being used to indicate the data segment information corresponding to the data that generated the sub-data packet; fourth indication information, the fourth indication information being used to indicate the offset byte of the start character in the first data segment in the complete data, the first data segment being the data segment that generated the sub-data packet; and fifth indication information, the fifth indication information being used to indicate the identifier or sequence number of the complete data to which the data segment that generated the sub-data packet belongs.
[0429] In one possible implementation, the data transmission device 500 includes at least one PDCP entity; wherein each PDCP entity of the data transmission device 500 is connected to the MAC entity of the data transmission device 500 via at least one RLC entity.
[0430] In one possible implementation, each PDCP entity corresponds to one logical channel. The aforementioned processing module 501 is further configured to, through the MAC entity, according to the transmission resource size allocated to the logical channel, obtain at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity and assemble it into a packet to obtain a first data packet.
[0431] In one possible implementation, each PDCP entity corresponds to one logical channel. Specifically, the processing module 501 is used by the MAC entity to obtain at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding RLC entity, according to the transmission resource size allocated to the logical channel, and then assembles it into a packet.
[0432] In one possible implementation, the processing module 501 is further configured to, through the MAC entity, obtain at least one piece of transmission data or at least one piece of transmission data segment from the transmission data of the corresponding RLC entity according to the transmission resource size allocated to the logical channel. The packet assembly process includes: assembling packets based on the obtained retransmission data or retransmission data segment, and the obtained transmission data and transmission data segment.
[0433] In one possible implementation, the data of the RLC entity includes a second header structure; wherein the second header structure includes at least one of the following: a sixth indication information, which indicates the data segment information corresponding to the data of the RLC entity; a seventh indication information, which indicates the offset byte of the start character in the second data segment in the complete data, the second data segment being a data segment of the RLC entity's data; and an eighth indication information, which indicates the identifier or sequence number of the complete data to which the data segment of the RLC entity's data belongs.
[0434] In one possible implementation, the processing module 501 is specifically used to reassemble packets based on retransmitted data in the first data packet through a MAC entity when a first condition is met; wherein the first condition includes at least one of the following: receiving a ninth indication message, the ninth indication message being used to indicate that the first data packet was not successfully received; receiving the ninth indication message more than or equal to a number threshold; receiving a tenth indication message, the tenth indication message being used to indicate that the transmission of the first data packet should be abandoned.
[0435] In one possible implementation, at least one of the aforementioned ninth and tenth instruction messages is carried by the first MAC CE.
[0436] In one possible implementation, the data transmission apparatus 500 provided in this application embodiment may further include a receiving module. Wherein, when the data transmission apparatus 500 is a first network-side device and the receiving device is a UE, the sending module 502 sends a first configuration to the UE; or, when the receiving device is a first network-side device and the data transmission apparatus 500 is a UE, the receiving module is used to receive the first configuration from the first network-side device. The first configuration is used for at least one of the following: configuring the UE to start a first architecture; disabling the UE to start a first architecture; configuring the UE to use the first architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; disabling the UE to use the first architecture and perform packet assembly or depacketization based on retransmitted data through the receiving device's MAC entity; configuring the data segmentation function of the UE's MAC entity; disabling the data segmentation function of the UE's MAC entity; configuring the data resegmentation function of the UE's MAC entity; disabling the data resegmentation function of the UE's MAC entity; configuring the data reassembly function of the UE's MAC entity; disabling the data reassembly function of the UE's MAC entity; configuring the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data; disabling the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data; configuring the UE to start a second architecture; disabling the UE to start a second architecture; configuring the UE to use the second architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; disabling the UE to use the second architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; configuring the UE to send or receive a second MAC CE; disabling the UE to send or receive a second MAC CE. CE; wherein, in the case of the UE architecture being the first architecture, each PDCP entity of the UE is connected to the UE MAC entity; in the case of the UE architecture being the second architecture, each PDCP entity of the UE is connected to the UE MAC entity through at least one RLC entity; the second MAC CE carries a twelfth indication information, the twelfth indication information being used to indicate at least one of the following: the data packet sent by the data transmission device 500 was not successfully received; the data packet sent by the data transmission device 500 was successfully received; or the data packet sent by the data transmission device 500 was abandoned.
[0437] In one possible implementation, when the data transmission device 500 is a first network-side device and the receiving device is a UE, the aforementioned sending module 502 is further configured to send a first handover request to the second network-side device. The first handover request is used to request the UE's serving cell to be switched to the cell corresponding to the second network-side device. The first handover request includes a first configuration.
[0438] In one possible implementation, the receiving module is further configured to receive first capability information from the UE when the data transmission device 500 is a first network-side device and the receiving device is a UE; or, the sending module 502 is further configured to send the first capability information to the first network-side device when the receiving device is a first network-side device and the data transmission device 500 is a UE. The first capability information indicates at least one of the following: whether the UE supports a first architecture; whether the UE supports using the first architecture to reassemble or deassemble packets based on retransmitted data via the UE's MAC entity; whether the UE supports the data segmentation function of the MAC entity; whether the UE supports the data resegmentation function of the MAC entity; whether the UE supports the data reassembly function of the MAC entity; whether the UE supports the function of reassembling or deassembling packets based on retransmitted data via the MAC entity; whether the UE supports a second architecture; whether the UE supports using the second architecture to reassemble or deassemble packets based on retransmitted data via the UE's MAC entity; and whether the UE supports sending or receiving a second MAC CE.
[0439] Referring to Figure 14, when the data transmission device is a terminal or a component in a terminal, or a network-side device or a component in a network-side device, the data transmission device 600 includes: a processing module 601, configured to, through a MAC entity, unpack the data of the second data packet received from the sending device to obtain at least one sub-data packet of the second data packet, each sub-data packet corresponding to a PDCP entity or an RLC entity of the data transmission device 600; and through the MAC entity, perform at least one of the following: send a complete data packet to the corresponding PDCP entity, the complete data packet being obtained by the MAC entity reassembling the data segments in the sub-data packet; send the sub-data packet to the corresponding PDCP entity or the corresponding RLC entity; wherein the second data packet is obtained by the sending device through the MAC entity reassembling the packet based on the retransmitted data in the first data packet.
[0440] This application provides a data transmission apparatus. On one hand, since the second data packet is obtained by the sending device through a MAC entity based on retransmitted data from the first data packet, the sending device is not affected by timer settings and transmission scheduling of the RLC entity during the packet assembly process. Therefore, the waiting time required for the sending device to send the second data packet to the data transmission apparatus can be reduced. On the other hand, since the second data packet is obtained by assembling retransmitted data from the first data packet, the sending device can assemble a portion of the data in the first data packet, rather than necessarily assembling all the data. Therefore, the amount of data to be assembled can be reduced, thereby reducing the time required for packet assembly and further reducing the waiting time required for the sending device to send the second data packet to the data transmission apparatus. Furthermore, since the data transmission apparatus can unpack the data received from the sending device based on the second data packet through the MAC entity to accurately obtain at least one sub-data packet, the data transmission apparatus can reassemble the data segments in the sub-data packet to obtain a complete data packet. Therefore, it can ensure that each PDCP entity can accurately obtain the complete data in the second data packet. Alternatively, the data transmission device can send each sub-data packet to the corresponding PDCP entity or RLC entity via the MAC entity. In this way, the data transmission device can obtain the complete data packet through the PDCP entity, or reassemble the data segments in the sub-data packet through the RLC entity to obtain the complete data packet. Therefore, it can be ensured that the PDCP entity can accurately obtain the complete data in the second data packet. This improves the transmission efficiency of service data while ensuring that the service data is accurately received by the data transmission device.
[0441] In one possible implementation, the data transmission device 600 includes at least one PDCP entity; wherein each PDCP entity of the data transmission device 600 is connected to the MAC entity of the data transmission device 600.
[0442] In one possible implementation, the processing module 601 is further configured to, before sending the complete data packet to the corresponding PDCP entity, reassemble the data segments in the sub-data packet based on the first header structure in at least one sub-data packet through the MAC entity to obtain the complete data packet.
[0443] In one possible implementation, the data transmission device 600 includes at least one PDCP entity; wherein each PDCP entity of the data transmission device 600 is connected to the MAC entity of the data transmission device 600 via at least one RLC entity.
[0444] In one possible implementation, the processing module 601 is further configured to, after sending the sub-data packet to the corresponding RLC entity, reassemble the data segments in the sub-data packet based on the second header structure in at least one sub-data packet by the corresponding RLC entity to obtain a complete data packet.
[0445] In one possible implementation, the data transmission apparatus 600 provided in this application embodiment may further include: a sending module. The sending module is configured to send at least one of the following to the sending device: a ninth indication message, which indicates that the first data packet was not successfully received; and a tenth indication message, which indicates that the transmission of the first data packet should be abandoned.
[0446] In one possible implementation, at least one of the ninth and tenth instruction messages is carried by the first MAC CE.
[0447] In one possible implementation, the data transmission apparatus 600 provided in this application embodiment may further include a receiving module and a sending module. The receiving module is configured to receive a first configuration from the first network-side device when the sending device is a first network-side device and the data transmission apparatus 600 is a UE; or, the sending module is configured to send the first configuration to the UE when the data transmission apparatus 600 is a first network-side device and the sending device is a UE. The first configuration is used for at least one of the following: configuring the UE to start a first architecture; disabling the UE to start a first architecture; configuring the UE to adopt the first architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; disabling the UE to adopt the first architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; configuring the data segmentation function of the UE's MAC entity; disabling the data segmentation function of the UE's MAC entity; configuring the data resegmentation function of the UE's MAC entity; disabling the data resegmentation function of the UE's MAC entity; configuring the data reassembly function of the UE's MAC entity; disabling the data reassembly function of the UE's MAC entity; configuring the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data; disabling the UE's MAC entity to perform packet assembly or depacketization based on retransmitted data; configuring the UE to start a second architecture; disabling the UE to start a second architecture; configuring the UE to adopt a second architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; disabling the UE to adopt a second architecture and perform packet assembly or depacketization based on retransmitted data through the UE's MAC entity; configuring the UE to send or receive a second MAC CE; disabling the UE to send or receive a second MAC CE. CE; wherein, in the case of the UE architecture being the first architecture, each PDCP entity of the UE is connected to the UE MAC entity; in the case of the UE architecture being the second architecture, each PDCP entity of the UE is connected to the UE MAC entity through at least one RLC entity; the second MAC CE carries a twelfth indication information, which is used to indicate at least one of the following: the data packet sent by the transmitting device was not successfully received; the data packet sent by the transmitting device was successfully received; or the transmission of the data packet sent by the transmitting device was abandoned.
[0448] In one possible implementation, when the data transmission device 600 is a first network-side device and the transmitting device is a UE, the transmitting module is further configured to send a first handover request to the second network-side device. The first handover request is used to request the UE's serving cell to be switched to the cell corresponding to the second network-side device. The first handover request includes a first configuration.
[0449] In one possible implementation, the sending module is further configured to send first capability information to the first network-side device when the sending device is a first network-side device and the data transmission device 600 is a UE; or, the receiving module is further configured to receive first capability information from the UE when the data transmission device 600 is a first network-side device and the sending device is a UE; wherein the first capability information is used to indicate at least one of the following: whether the UE supports a first architecture; whether the UE supports using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; whether the UE supports the data segmentation function of the MAC entity; whether the UE supports the data resegmentation function of the MAC entity; whether the UE supports the data reassembly function of the MAC entity; whether the UE supports the function of reassembling or deassembling packets based on retransmitted data through the MAC entity; whether the UE supports a second architecture; whether the UE supports using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; and whether the UE supports sending or receiving a second MAC CE.
[0450] The data transmission device provided in this application embodiment can implement the various processes implemented in the method embodiments of Figures 3 to 12 and achieve the same technical effect. To avoid repetition, it will not be described again here.
[0451] As shown in Figure 15, this application embodiment also provides a communication device 700, including a processor 701 and a memory 702. The memory 702 stores programs or instructions that can run on the processor 701. For example, when the communication device 700 is a terminal, the program or instructions executed by the processor 701 implement the various steps of the above-described data transmission method embodiment and achieve the same technical effect. When the communication device 700 is a network-side device, the program or instructions executed by the processor 701 implement the various steps of the above-described data transmission method embodiment and achieve the same technical effect. To avoid repetition, this will not be described again here.
[0452] This application also provides a terminal, including a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the steps in any of the method embodiments shown in Figures 3 to 12. This terminal embodiment corresponds to the above-described terminal-side method embodiments, and all implementation processes and methods of the above-described method embodiments can be applied to this terminal embodiment and achieve the same technical effect. The terminal may be the data transmission device shown in Figure 13 or Figure 14. Specifically, Figure 16 is a schematic diagram of the hardware structure of a terminal implementing an embodiment of this application.
[0453] The terminal 800 includes, but is not limited to, at least some of the following components: radio frequency unit 801, network module 802, audio output unit 803, input unit 804, sensor 805, display unit 806, user input unit 807, interface unit 808, memory 809, and processor 810.
[0454] Those skilled in the art will understand that the terminal 800 may also include a power supply (such as a battery) for powering various components. The power supply can be logically connected to the processor 810 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. The terminal structure shown in Figure 16 does not constitute a limitation on the terminal. The terminal may include more or fewer components than shown, or combine certain components, or have different component arrangements, which will not be elaborated here.
[0455] It should be understood that, in this embodiment, the input unit 804 may include a graphics processor 8041 and a microphone 8042. The graphics processor 8041 processes image data of still images or videos obtained by an image capture device (such as a camera) in video capture mode or image capture mode. The display unit 806 may include a display panel 8061, which may be configured in the form of a liquid crystal display, an organic light-emitting diode, or the like. The user input unit 807 includes at least one of a touch panel 8071 and other input devices 8072. The touch panel 8071 is also called a touch screen. The touch panel 8071 may include two parts: a touch detection device and a touch controller. Other input devices 8072 may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, power buttons, etc.), trackballs, mice, and joysticks, which will not be described in detail here.
[0456] In this embodiment, after receiving downlink data from the network-side device, the radio frequency unit 801 can transmit it to the processor 810 for processing; in addition, the radio frequency unit 801 can send uplink data to the network-side device. Typically, the radio frequency unit 801 includes, but is not limited to, antennas, amplifiers, transceivers, couplers, low-noise amplifiers, duplexers, etc.
[0457] The memory 809 can be used to store software programs or instructions, as well as various data. The memory 809 may primarily include a first storage area for storing programs or instructions and a second storage area for storing data. The first storage area may store the operating system, application programs or instructions required for at least one function (such as sound playback, image playback, etc.). Furthermore, the memory 809 may include volatile memory or non-volatile memory. The non-volatile memory may 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), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM). The memory 809 in the embodiments of this application includes, but is not limited to, these and any other suitable types of memory.
[0458] Processor 810 may include one or more processing units; optionally, processor 810 integrates an application processor and a modem processor, wherein the application processor mainly handles operations involving the operating system, user interface, and applications, and the modem processor mainly handles wireless communication signals, such as a baseband processor. It is understood that the aforementioned modem processor may also not be integrated into processor 810.
[0459] In one example, processor 810 is used to reassemble a second data packet based on retransmitted data in the first data packet via a MAC entity.
[0460] The radio frequency unit 801 is used to send a second data packet to the receiving device via the MAC entity.
[0461] This application provides a terminal that, on the one hand, can reassemble data in a first data packet via a MAC entity without needing to reassemble data in the first data packet via an RLC entity. In other words, during the packet assembly process via the MAC entity, the terminal is not affected by the timer settings and transmission scheduling of the RLC entity, thus reducing the waiting time required for the terminal to send a second data packet to the receiving device. On the other hand, since the terminal can reassemble retransmitted data in the first data packet—meaning it can reassemble only a portion of the data in the first data packet instead of all of it—the amount of data to be reassembled can be reduced, thereby reducing the time required for packet assembly and further reducing the waiting time required for the terminal to send a second data packet to the receiving device. This improves the transmission efficiency of service data.
[0462] In another example, processor 810 is configured to, via a MAC entity, unpack the data received from the sending device into at least one sub-data packet of the second data packet, each sub-data packet corresponding to a PDCP entity or an RLC entity of the terminal; and via the MAC entity, perform at least one of the following:
[0463] Send the complete data packet to the corresponding PDCP entity. The complete data packet is obtained by the MAC entity reassembling the data segments in the sub-data packet.
[0464] Send sub-data packets to the corresponding PDCP entity or the corresponding RLC entity.
[0465] The second data packet is obtained by the sending device through the MAC entity by reassembling the packet based on the retransmission data in the first data packet.
[0466] This application provides a terminal. On one hand, since the second data packet is assembled by the sending device through a MAC entity based on retransmitted data from the first data packet, the sending device is not affected by timer settings and transmission scheduling of the RLC entity during the assembly process. Therefore, the waiting time required for the sending device to send the second data packet to the terminal can be reduced. On the other hand, since the second data packet is assembled from retransmitted data from the first data packet, the sending device can assemble only a portion of the data in the first data packet, rather than all of it. This reduces the amount of data to be assembled, thereby reducing the time required for assembly and further reducing the waiting time required for the sending device to send the second data packet to the terminal. Furthermore, since the terminal can unpack the second data packet received from the sending device through the MAC entity to accurately obtain at least one sub-data packet, the terminal can reassemble the data segments in the sub-data packet to obtain a complete data packet. Therefore, it can be ensured that each PDCP entity can accurately obtain the complete data in the second data packet. Alternatively, the terminal can send each sub-data packet to the corresponding PDCP entity or RLC entity via the MAC entity. In this way, the terminal can obtain the complete data packet through the PDCP entity, or reassemble the data segments in the sub-data packet through the RLC entity to obtain the complete data packet. Therefore, it can be ensured that the PDCP entity can accurately obtain the complete data in the second data packet. This improves the transmission efficiency of service data while ensuring accurate reception by the terminal.
[0467] It is understood that the implementation process of each implementation method mentioned in this embodiment can refer to the relevant description of the data transmission method in the method embodiment and achieve the same or corresponding technical effect. To avoid repetition, it will not be described again here.
[0468] This application also provides a network-side device, including a processor and a communication interface. The communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the steps of any one of the method embodiments shown in Figures 3 to 12. This network-side device embodiment corresponds to the above-described network-side device method embodiment. All implementation processes and methods of the above-described method embodiments can be applied to this network-side device embodiment and achieve the same technical effects.
[0469] Specifically, this application embodiment also provides a network-side device, which can be the data transmission device shown in FIG13 or FIG14. As shown in FIG17, the network-side device 900 includes: an antenna 901, a radio frequency device 902, a baseband device 903, a processor 904, and a memory 905. The antenna 901 is connected to the radio frequency device 902. In the uplink direction, the radio frequency device 902 receives information through the antenna 901 and sends the received information to the baseband device 903 for processing. In the downlink direction, the baseband device 903 processes the information to be transmitted and sends it to the radio frequency device 902, which processes the received information and then transmits it through the antenna 901.
[0470] The method executed by the network-side device in the above embodiments can be implemented in the baseband device 903, which includes a baseband processor.
[0471] The baseband device 903 may include at least one baseband board, on which multiple chips are disposed, as shown in FIG17. One of the chips is, for example, a baseband processor, which is connected to the memory 905 via a bus interface to call the program or instructions in the memory 905 to execute the network-side device operation shown in the above method embodiment.
[0472] The network-side device may also include a network interface 906, such as a Common Public Radio Interface (CPRI).
[0473] In one example, processor 904 is used to reassemble a second data packet based on retransmitted data in the first data packet via a MAC entity.
[0474] Radio frequency device 902 is used to send a second data packet to a receiving device via a MAC entity.
[0475] This application provides a network-side device. On one hand, because the network-side device can reassemble data in the first data packet through the MAC entity without needing to reassemble data in the first data packet through the RLC entity, the network-side device is not affected by the timer settings and transmission scheduling of the RLC entity during the packet assembly process through the MAC entity. Therefore, the waiting time required for the network-side device to send the second data packet to the receiving device can be reduced. On the other hand, because the network-side device can reassemble retransmitted data in the first data packet, that is, the network-side device can reassemble part of the data in the first data packet instead of having to reassemble all of the data in the first data packet, the amount of data to be reassembled can be reduced, thereby reducing the time required for packet assembly and further reducing the waiting time required for the network-side device to send the second data packet to the receiving device. Thus, the transmission efficiency of service data can be improved.
[0476] In another example, processor 904 is configured to, via a MAC entity, unpack the data received from the sending device into at least one sub-data packet of the second data packet, each sub-data packet corresponding to a PDCP entity or an RLC entity of the network-side device; and via the MAC entity, perform at least one of the following:
[0477] Send the complete data packet to the corresponding PDCP entity. The complete data packet is obtained by the MAC entity reassembling the data segments in the sub-data packet.
[0478] Send sub-data packets to the corresponding PDCP entity or the corresponding RLC entity.
[0479] The second data packet is obtained by the sending device through the MAC entity by reassembling the packet based on the retransmission data in the first data packet.
[0480] This application provides a network-side device. On one hand, since the second data packet is reassembled by the sending device using a MAC entity based on retransmitted data from the first data packet, the sending device is not affected by timer settings and transmission scheduling of the RLC entity during the packet assembly process. Therefore, the waiting time required for the sending device to send the second data packet to the network-side device can be reduced. On the other hand, since the second data packet is reassembled from retransmitted data from the first data packet, the sending device can reassemble only a portion of the data from the first data packet, rather than all of it. This reduces the amount of data to be reassembled, thereby reducing the time required for packet assembly and further reducing the waiting time for the sending device to send the second data packet to the network-side device. Furthermore, since the network-side device can unpack the second data packet received from the sending device using a MAC entity to accurately obtain at least one sub-data packet, the network-side device can reassemble the data segments in the sub-data packet to obtain a complete data packet. Therefore, it can be ensured that each PDCP entity can accurately obtain the complete data in the second data packet. Alternatively, the network-side device can send each sub-data packet to the corresponding PDCP entity or RLC entity via the MAC entity. In this way, the network-side device can obtain the complete data packet through the PDCP entity, or reassemble the data segments in the sub-data packet through the RLC entity to obtain the complete data packet. Therefore, it can be ensured that the PDCP entity can accurately obtain the complete data in the second data packet. This improves the transmission efficiency of service data while ensuring that the service data is accurately received by the network-side device.
[0481] In addition, the network-side device 900 of this application embodiment also includes: a program or instructions stored in a memory 905 and executable on a processor 904. The processor 904 calls the program or instructions in the memory 905 to execute the methods executed by the modules shown in FIG14 or FIG15 and achieve the same technical effect. To avoid repetition, it will not be described in detail here.
[0482] This application also provides a readable storage medium storing a program or instructions. When the program or instructions are executed by a processor, they implement the various processes of the above-described data transmission method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.
[0483] The processor mentioned above is either the processor in the terminal described in the above embodiments or the processor in the network-side device. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk. In some examples, the readable storage medium may be a non-transient readable storage medium.
[0484] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above data transmission method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0485] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0486] This application also provides a computer program / program product, which is stored in a storage medium and executed by at least one processor to implement the various processes of the above-described data transmission method embodiments, and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0487] This application embodiment also provides a data transmission system, including: a terminal and a network-side device. The terminal can be used to execute the steps of the data transmission method corresponding to the sending device side or the receiving device side as described above, and the network-side device can be used to execute the steps of the data transmission method corresponding to the receiving device side or the sending device side as described above.
[0488] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
[0489] From the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of computer software products plus necessary general-purpose hardware platforms, and of course, they can also be implemented by hardware. The computer software product is stored in a storage medium (such as ROM, RAM, magnetic disk, optical disk, etc.), and the computer software product includes several instructions to cause the terminal or network-side device to execute the methods described in the various embodiments of this application.
[0490] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other implementations under the guidance of this application without departing from the spirit and scope of the claims. All of these implementations are within the protection scope of this application.
Claims
1. A data transmission method, comprising: The transmitting device uses the Media Access Control (MAC) entity to assemble packets based on the retransmitted data in the first data packet to obtain the second data packet; The sending device sends the second data packet to the receiving device via a MAC entity.
2. The method according to claim 1, wherein, The transmitting device includes at least one Data Packet Convergence Protocol (PDCP) entity; Each PDCP entity of the transmitting device is connected to the MAC entity of the transmitting device.
3. The method according to claim 2, wherein, Each PDCP entity corresponds to one logical channel, and the method further includes: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity and assembles them into a packet to obtain the first data packet.
4. The method according to claim 2, wherein, Each PDCP entity corresponds to a logical channel. The transmitting device assembles packets based on the retransmitted data in the first data packet through the MAC entity, including: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding PDCP entity and assembles it into a packet.
5. The method according to claim 4, wherein, The method further includes any one of the following: The sending device obtains the retransmission data of the PDCP entity from all the data in the first data packet; The sending device deletes the first data from the first data packet to obtain the retransmission data of the PDCP entity; The first data includes at least one of the following: MAC control unit CE; Unconfirmed UM data.
6. The method according to claim 4, wherein, The method further includes: The transmitting device, through the MAC entity, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding PDCP entity according to the transmission resource size allocated by the logical channel. The process of assembling packages satisfies: Packets are assembled based on the acquired retransmitted data or retransmitted data segments and the acquired transmitted data or transmitted data segments.
7. The method according to any one of claims 2 to 6, wherein, Each PDCP entity corresponds to one logical channel, the transmitting device includes at least one first buffer, each first buffer corresponds to one PDCP entity or one of the logical channels, and the method further includes: The transmitting device stores the transmission data of the corresponding PDCP entity in each of the first buffers.
8. The method according to any one of claims 2 to 7, wherein, The transmitting device includes at least one second buffer, each second buffer corresponding to an AM PDCP entity in at least one PDCP entity, and the method further includes at least one of the following: The transmitting device stores the AM data of the corresponding AM PDCP entity in each of the second buffers; The transmitting device stores the AM retransmission data of the corresponding AM PDCP entity in each of the second buffers.
9. The method according to any one of claims 2 to 8, wherein, The transmitting device includes at least one third buffer, and the number of MAC entities is at least one, with each third buffer corresponding to at least one MAC entity. The method further includes at least one of the following: The transmitting device stores the first data packet in the third buffer; The transmitting device stores the second data packet in the third buffer.
10. The method according to any one of claims 2 to 9, wherein, Each PDCP entity corresponds to a logical channel, and at least one of the first data packet and the second data packet includes at least one sub-data packet, the sub-data packet including a first header structure; The first head structure includes at least one of the following: A first identifier, which is used to indicate the logical channel corresponding to the sub-data packet; First indication information, wherein the first indication information is used to indicate the length of the data used to generate the sub-data packet; The second indication information is used to indicate the length of the first indication information; The third indication information is used to indicate the data segmentation information corresponding to the data that generated the sub-data packet; The fourth indication information is used to indicate the offset byte of the starting character in the first data segment in the complete data, and the first data segment is the data segment that generates the sub-data packet; The fifth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment that generated the sub-data packet belongs.
11. The method according to claim 1, wherein, The transmitting device includes at least one PDCP entity; Each PDCP entity of the transmitting device is connected to the MAC entity of the transmitting device through at least one Radio Link Layer Control (RLC) entity.
12. The method according to claim 11, wherein, Each PDCP entity corresponds to one logical channel, and the method further includes: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity and assembles them into a packet to obtain the first data packet.
13. The method according to claim 11, wherein, Each PDCP entity corresponds to a logical channel. The transmitting device assembles packets based on the retransmitted data in the first data packet through the MAC entity, including: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one retransmission data or at least one retransmission data segment from the retransmission data of the corresponding RLC entity and assembles them into packets.
14. The method according to claim 13, wherein, The method further includes: The transmitting device, through the MAC entity, according to the transmission resource size allocated by the logical channel, obtains at least one transmission data or at least one transmission data segment from the transmission data of the corresponding RLC entity. The process of assembling packages includes: Packets are assembled based on the acquired retransmitted data or retransmitted data segments and the acquired transmitted data and transmitted data segments.
15. The method according to any one of claims 10 to 14, wherein, The data of the RLC entity includes a second header structure; The second head structure includes at least one of the following: The sixth indication information is used to indicate the data segmentation information corresponding to the data of the RLC entity; The seventh indication information is used to indicate the offset byte of the starting character in the second data segment in the complete data, where the second data segment is a data segment of the data of the RLC entity; The eighth indication information is used to indicate the identifier or sequence number of the complete data to which the data segment of the RLC entity belongs.
16. The method according to any one of claims 1 to 15, wherein, The sending device assembles packets based on retransmitted data in the first data packet using a MAC entity, including: If the first condition is met, the sending device reassembles packets based on the retransmission data in the first data packet through the MAC entity; The first condition includes at least one of the following: A ninth indication message is received, which indicates that the first data packet was not successfully received. The number of times the ninth instruction message is received is greater than or equal to the number threshold; Upon receiving the tenth instruction information, the tenth instruction information is used to indicate that the transmission of the first data packet should be abandoned.
17. The method according to claim 16, wherein, At least one of the ninth and tenth instruction messages is carried by the first MAC CE.
18. The method according to any one of claims 1 to 17, wherein, The method further includes any one of the following: When the transmitting device is a first network-side device and the receiving device is a UE, the first network-side device sends a first configuration to the UE; When the receiving device is a first network-side device and the transmitting device is a UE, the UE receives a first configuration from the first network-side device; Wherein, the first configuration is used for at least one of the following: Configure the UE to start the first architecture; The UE is prohibited from starting the first architecture; The UE is configured to use a first architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data; The UE is prohibited from using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; Configure the data segmentation function of the MAC entity of the UE; Disable the data segmentation function of the UE's MAC entity; Configure the data resegmentation function of the MAC entity of the UE; Disable the data resegmentation function of the UE's MAC entity; Configure the data reassembly function of the UE's MAC entity; Disable the data reassembly function of the UE's MAC entity; Configure the UE's MAC entity to perform packet reassembly or deassembly based on retransmitted data; The MAC entity of the UE is prohibited from performing packet reassembly or deassembly based on retransmitted data; Configure the UE to start the second architecture; The UE is prohibited from starting the second architecture; The UE is configured to use a second architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data; The UE is prohibited from using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; Configure the UE to send or receive a second MAC CE; The UE is prohibited from sending or receiving a second MAC CE; Wherein, when the UE architecture is the first architecture, each PDCP entity of the UE is connected to the UE's MAC entity; when the UE architecture is the second architecture, each PDCP entity of the UE is connected to the UE's MAC entity through at least one RLC entity. The second MAC CE carries a twelfth indication information, which indicates at least one of the following: The data packet sent by the transmitting device was not successfully received; Successfully received the data packet sent by the transmitting device; The data packets sent by the transmitting device are abandoned.
19. The method according to claim 18, wherein, When the transmitting device is a first network-side device and the receiving device is a UE, the method further includes: The first network-side device sends a first handover request to the second network-side device. The first handover request is used to request that the serving cell of the UE be switched to the cell corresponding to the second network-side device. The first handover request includes the first configuration.
20. The method according to claim 18, wherein, The method further includes any one of the following: When the transmitting device is a first network-side device and the receiving device is a UE, the first network-side device receives first capability information from the UE; When the receiving device is a first network-side device and the sending device is a UE, the UE sends first capability information to the first network-side device; Wherein, the first capability information is used to indicate at least one of the following: Does the UE support the first architecture? Whether the UE supports the first architecture is determined by the UE's MAC entity performing packet reassembly or deassembly based on retransmitted data; Does the UE support the data segmentation function of the MAC entity? Does the UE support the data resegmentation function of the MAC entity? Does the UE support the data reassembly function of the MAC entity? Does the UE support the MAC entity's function of repackaging or unpacking data based on retransmitted data? Does the UE support the second architecture? Whether the UE supports the second architecture is determined by the UE's MAC entity performing packet reassembly or deassembly based on retransmitted data; Does the UE support sending or receiving the second MAC CE? 21. A data transmission method, comprising: The receiving device unpacks the data of the second data packet received from the sending device through the MAC entity to obtain at least one sub-data packet of the second data packet, and each sub-data packet corresponds to a PDCP entity or an RLC entity of the receiving device; The receiving device performs at least one of the following via the MAC entity: Send a complete data packet to the corresponding PDCP entity. The complete data packet is obtained by the MAC entity reassembling the data segments in the sub-data packet. Send the sub-data packet to the corresponding PDCP entity or the corresponding RLC entity; The second data packet is obtained by the sending device through the MAC entity by reassembling the packet based on the retransmission data in the first data packet.
22. The method according to claim 21, wherein, The receiving device includes at least one PDCP entity; Each PDCP entity of the receiving device is connected to the MAC entity of the receiving device.
23. The method according to claim 22, wherein, Before sending the complete data packet to the corresponding PDCP entity, the method further includes: The receiving device, through a MAC entity, reassembles the data segments in the sub-data packet based on the first header structure in at least one of the sub-data packets to obtain the complete data packet.
24. The method according to claim 21, wherein, The receiving device includes at least one PDCP entity; Each PDCP entity of the receiving device is connected to the MAC entity of the receiving device through at least one RLC entity.
25. The method according to claim 24, wherein, After sending the sub-data packet to the corresponding RLC entity, the method further includes: The receiving device reassembles the data segments in the sub-data packet based on the second header structure in at least one of the sub-data packets using the corresponding RLC entity to obtain the complete data packet.
26. The method according to any one of claims 21 to 25, wherein, The method further includes: The receiving device sends at least one of the following to the transmitting device: Ninth indication information, the ninth indication information being used to indicate that the first data packet was not successfully received; The tenth instruction information is used to indicate that the transmission of the first data packet should be abandoned.
27. The method according to claim 26, wherein, At least one of the ninth and tenth instruction messages is carried by the first MAC CE.
28. The method according to any one of claims 21 to 27, wherein, The method further includes any one of the following: When the transmitting device is a first network-side device and the receiving device is a UE, the UE receives a first configuration from the first network-side device; When the receiving device is a first network-side device and the sending device is a UE, the first network-side device sends a first configuration to the UE; Wherein, the first configuration is used for at least one of the following: Configure the UE to start the first architecture; The UE is prohibited from starting the first architecture; The UE is configured to use a first architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data; The UE is prohibited from using the first architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; Configure the data segmentation function of the MAC entity of the UE; Disable the data segmentation function of the UE's MAC entity; Configure the data resegmentation function of the MAC entity of the UE; Disable the data resegmentation function of the UE's MAC entity; Configure the data reassembly function of the UE's MAC entity; Disable the data reassembly function of the UE's MAC entity; Configure the UE's MAC entity to perform packet reassembly or deassembly based on retransmitted data; The MAC entity of the UE is prohibited from performing packet reassembly or deassembly based on retransmitted data; Configure the UE to start the second architecture; The UE is prohibited from starting the second architecture; The UE is configured to use a second architecture, and the UE's MAC entity performs packet assembly or depacketization based on retransmitted data; The UE is prohibited from using the second architecture to reassemble or deassemble packets based on retransmitted data through the UE's MAC entity; Configure the UE to send or receive a second MAC CE; The UE is prohibited from sending or receiving a second MAC CE; Wherein, when the UE architecture is the first architecture, each PDCP entity of the UE is connected to the UE's MAC entity; when the UE architecture is the second architecture, each PDCP entity of the UE is connected to the UE's MAC entity through at least one RLC entity. The second MAC CE carries a twelfth indication information, which indicates at least one of the following: The data packet sent by the transmitting device was not successfully received; Successfully received the data packet sent by the transmitting device; The data packets sent by the transmitting device are abandoned.
29. The method according to claim 28, wherein, When the receiving device is a first network-side device and the transmitting device is a UE, the method further includes: The first network-side device sends a first handover request to the second network-side device. The first handover request is used to request that the serving cell of the UE be switched to the cell corresponding to the second network-side device. The first handover request includes the first configuration.
30. The method according to claim 28, wherein, The method further includes any one of the following: When the transmitting device is a first network-side device and the receiving device is a UE, the UE sends first capability information to the first network-side device; When the receiving device is a first network-side device and the transmitting device is a UE, the first network-side device receives first capability information from the UE; Wherein, the first capability information is used to indicate at least one of the following: Does the UE support the first architecture? Whether the UE supports the first architecture is determined by the UE's MAC entity performing packet reassembly or deassembly based on retransmitted data; Does the UE support the data segmentation function of the MAC entity? Does the UE support the data resegmentation function of the MAC entity? Does the UE support the data reassembly function of the MAC entity? Does the UE support the MAC entity's function of repackaging or unpacking data based on retransmitted data? Does the UE support the second architecture? Whether the UE supports the second architecture is determined by the UE's MAC entity performing packet reassembly or deassembly based on retransmitted data; Does the UE support sending or receiving the second MAC CE? 31. A data transmission apparatus, comprising: The processing module is used to reassemble the data into a second data packet based on the retransmission data in the first data packet using the MAC entity. The sending module is used to send the second data packet obtained by the processing module to the receiving device via a MAC entity.
32. The apparatus according to claim 31, wherein, The data transmission device includes at least one PDCP entity; Each PDCP entity of the data transmission device is connected to the MAC entity of the data transmission device.
33. The apparatus according to claim 31, wherein, The data transmission device includes at least one PDCP entity; Each PDCP entity of the data transmission device is connected to the MAC entity of the data transmission device through at least one RLC entity.
34. A data transmission apparatus, comprising: The processing module is configured to, through a MAC entity, unpack the data of the second data packet received from the sending device to obtain at least one sub-data packet of the second data packet, each sub-data packet corresponding to a PDCP entity or an RLC entity of the receiving device; and through the MAC entity, perform at least one of the following: Send a complete data packet to the corresponding PDCP entity. The complete data packet is obtained by the MAC entity reassembling the data segments in the sub-data packet. Send the sub-data packet to the corresponding PDCP entity or the corresponding RLC entity; The second data packet is obtained by the sending device through the MAC entity by reassembling the packet based on the retransmission data in the first data packet.
35. The apparatus according to claim 34, wherein, The data transmission device includes at least one PDCP entity; Each PDCP entity of the data transmission device is connected to the MAC entity of the data transmission device.
36. The apparatus according to claim 34, wherein, The data transmission device includes at least one PDCP entity; Each PDCP entity of the data transmission device is connected to the MAC entity of the data transmission device through at least one RLC entity.
37. A terminal comprising a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the data transmission method as claimed in any one of claims 1 to 20, or implementing the steps of the data transmission method as claimed in any one of claims 21 to 30.
38. A network-side device, comprising a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the data transmission method as claimed in any one of claims 1 to 20, or implementing the steps of the data transmission method as claimed in any one of claims 21 to 30.
39. A readable storage medium storing a program or instructions that, when executed by a processor, implement the steps of the data transmission method as claimed in any one of claims 1 to 20, or implement the steps of the data transmission method as claimed in any one of claims 21 to 30.