Data transmission method and device

By setting indication information to request status reports and actively triggering retransmissions during data transmission, the problem of completing the transmission of task-level data within the time requirement is solved, achieving the effects of reducing latency and improving communication quality.

CN120934698APending Publication Date: 2025-11-11HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510431106.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-05-10
Filing Date
2025-04-07
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

There is no effective method in the existing technology to guarantee that task-level data is transmitted within the task's latency requirements.

Method used

By setting a first indication message during data transmission to request a status report, and actively triggering data retransmission under specific conditions, different resources are used for transmission to ensure that task data is completed within the time delay requirements.

Benefits of technology

It reduces transmission and retransmission latency, improves communication quality, and ensures that task data is successfully transmitted within the specified time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120934698A_ABST
    Figure CN120934698A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method and device, belongs to the technical field of communication, and is used for ensuring that task data is transmitted within a time delay requirement of a task. In the method, first data is the last data in a first task or a first data set, and the first data comprises first indication information used for requesting a state report, so that a second device returns the state report to a first device according to the first indication information in the last data in the first task or the first data set, according to the embodiment of the invention, the second equipment sends the status report to indicate the transmission condition of each data in the first task or the first data set, such as transmission success or transmission failure, so that the second equipment can quickly feed back the status report, and the first equipment can quickly retransmit the data failed in transmission according to the status report. Therefore, the transmission (or retransmission) time delay and the tail time delay of task-level transmission can be reduced, so that the task data can be ensured to be transmitted within the time delay requirement of the task, and the communication quality is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a data transmission method and apparatus. Background Technology

[0002] Currently, data transmission requirements can be at the packet level, such as latency requirements for each packet in a data stream. Data transmission requirements can also be at the task level, such as a task containing one or more (or N) data packets with task-level transmission requirements, for example, requiring the transmission of these N data packets to meet certain latency requirements, such as completing the transmission of these N data packets within 2 seconds.

[0003] However, for task-level transmission, there is currently no effective method to guarantee that task data can be transmitted within the task's latency requirements. Summary of the Invention

[0004] This application provides a data transmission method and apparatus to ensure that task data is transmitted within the time delay requirements of the task.

[0005] To achieve the above objectives, this application adopts the following technical solution:

[0006] Firstly, a data transmission method is provided. This method can be executed by a first device, or by a component of the first device, such as a processor, chip, or chip system, or by a logic module or software capable of implementing all or part of the functions of the first device. The first device can be a terminal device or a network device. The following description uses the execution of this method by a first device as an example. The method includes: satisfying a first condition to determine that first data includes first indication information; wherein the first condition includes: the first data is the last data in a first task or a first data set, and the first indication information is used to request a status report; and sending the first data.

[0007] Based on the method described in the first aspect, satisfying the first condition and determining that the first data includes first indication information for requesting a status report enables the second device (i.e., the receiving end) to return a status report to the first device based on the first indication information in the last data in the first task or the first data set, indicating the transmission status of each data, such as successful or failed transmission. This allows the second device to quickly provide status report feedback, enabling the first device to quickly retransmit failed data based on the status report. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, thereby ensuring that task data is transmitted within the task's latency requirements and improving communication quality.

[0008] In one possible design, the first data is the last data in the first task or the first data set, including at least one of the following: the first data is the last data in the first task or the first data set that can be transmitted; after sending the first data, there is no data in the first task or the first data set in the buffer; or, after sending the first data, except for data awaiting acknowledgment, there is no data in the first task or the first data set in the buffer. The first data can be determined to be the last data in the first task or the first data set based on the above conditions. The specific first condition can be flexibly set according to the actual situation and is not limited.

[0009] Optionally, the cache includes a transmission cache; or, the cache includes both a transmission cache and a retransmission cache, which can be configured according to the actual situation without limitation.

[0010] Optionally, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation. Data awaiting confirmation may be data located in the buffer but still requiring confirmation and therefore cannot be transmitted. Data that has already been sent and is awaiting confirmation may be data intended for retransmission. For example, if the first device initially transmits data in the first task or first data set, but the first device has not received a status report for that data, then it is not yet determined whether the data in the first task or first data set intended for retransmission will be transmitted; that is, the data in the first task or first data set may be data that has already been sent and is awaiting confirmation.

[0011] Optionally, the data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation. For example, the data awaiting confirmation could be data received by the RLC layer.

[0012] In one possible design, the first data is an RLC protocol data unit (PDU). For example, the first data can be data sent by the RLC layer.

[0013] In one possible design, the first indication information is carried in the polling bit. For example, if the first data has a polling bit field, the value of this field can be set to 1 to request a status report, and the first indication information is carried in the polling bit. This way, existing fields can be used to indicate the first indication information, eliminating the need to set additional fields and saving resources. Of course, if the first data does not have a polling bit field, the first indication information can be set in the first data; the specific setting can be flexibly adjusted according to the actual situation without restriction.

[0014] In one possible design, the first task is associated with a first data set; or, the first data set is associated with the first task. For example, the first data is the last data in the first task, and the first task may include one or more data, which is a data set, such as the first data set, in which case the first task is associated with the first data set; or, the first data is the last data in the first data set, and the one or more data included in the first data set may be data from the same task (such as the first task), in which case the first data set is associated with the first task.

[0015] In one possible design, the first task can be any one of multiple tasks. For example, in a multi-tasking scenario, for any one of the multiple tasks, the first indication information can be included in the last data of that task to request a status report when sending the last data.

[0016] Secondly, a data transmission method is provided. This method can be executed by a first device, or by a component of the first device, such as its processor, chip, or chip system, or by a logic module or software capable of implementing all or part of the functions of the first device. The first device can be a terminal device or a network device. The following description uses the execution of this method by the first device as an example. The method includes: acquiring a first task or a first data set; and triggering a retransmission of the first task or the first data set if a first condition is met. The first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of transmission of the first task or the first data set.

[0017] Based on the second aspect of the method, if the first condition is met, the first device triggers the retransmission of the first task or the first data set, enabling the first device to actively and quickly retransmit, which can reduce the transmission (or retransmission) delay and the tail delay of the task-level transmission, thereby ensuring that the task data is retransmitted within the delay requirement and improving the communication quality.

[0018] In one possible design scheme, the initial transmission of the first task or the first data set is completed, including: the transmission buffer does not contain data for the first task or the first data set; or, except for data awaiting confirmation, the transmission buffer does not contain data for the first task or the first data set. In other words, the initial transmission of the first task or the first data set can be represented by the above two cases. The specific first condition can be flexibly set according to the actual situation without restriction.

[0019] In one possible design, the transmission of the first task or the first data set stops when: apart from data awaiting acknowledgment, there is no data for the first task or the first data set in the buffer. This situation can be used to indicate the stoppage of the transmission of the first task or the first data set.

[0020] Optionally, the cache may include a transmission cache, or the cache may include both a transmission cache and a retransmission cache. The specific settings can be configured according to the actual situation and are not limited.

[0021] Optionally, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation. The data awaiting confirmation may be data stored in a buffer but not yet ready for transmission. Furthermore, the data that has already been sent and is awaiting confirmation may be data intended for retransmission. For example, data from the first task or first data set may have been initially transmitted, but the sender has not received a status report for that data. Therefore, it is not yet determined whether the data from the first task or first data set intended for retransmission will be transmitted. This data may be data that has already been sent and is awaiting confirmation.

[0022] Optionally, the data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation. For example, the data awaiting confirmation could be data received by the RLC layer.

[0023] In one possible design scheme, satisfying the first condition includes any one of the following: satisfying the first condition and satisfying the second condition; satisfying the first condition and satisfying the third condition; or, satisfying the first condition, satisfying the second condition, and satisfying the third condition; wherein the second condition includes: the remaining time of the first task or the first data set is less than or equal to the first threshold; the third condition includes: acquiring new transmission resources.

[0024] For example, if the remaining time for the first task or the first data set is greater than the first threshold, it indicates that there is still considerable latency remaining after the initial data transmission. In this case, retransmission using the existing retransmission method (such as RLC retransmission) is likely to meet the latency requirements. Therefore, setting a second condition can prevent proactive data retransmission when there is ample remaining time, thus avoiding resource waste. Furthermore, triggering the retransmission of the first task or the first data set only after acquiring new transmission resources can prevent the initial and retransmitted data from being transmitted on the same resource, which could lead to retransmission failure. In other words, after acquiring new transmission resources, the initial and retransmitted data can be transmitted on different resources, or the retransmitted data can be transmitted on the new transmission resource, thereby improving the success rate of retransmitted data transmission. Moreover, the above conditions can be flexibly set according to actual circumstances without restriction.

[0025] Optionally, the method in the second aspect further includes: performing a retransmission of the first task or the first data set on a new transmission resource. In this way, the initial first task or the first data set and the retransmitted task or the first data set can be transmitted through different resources, thereby improving the success rate of data transmission during retransmission.

[0026] In one possible design, triggering the retransmission of the first task or the first data set includes at least one of the following: triggering the retransmission of at least one data in the first task or the first data set; or, triggering the retransmission for at least one data in the first task or the first data set in the cache.

[0027] In one possible design, retransmissions include RLC retransmissions. For example, triggering a retransmission for the first task or the first data set could be an RLC retransmission.

[0028] In one possible design, the first task is associated with a first data set; or, the first data set is associated with the first task. For example, the first condition includes the initial completion or termination of transmission of the first task. The first task may include one or more (or N) data items, which form a data set, such as the first data set. In this case, the first task is associated with the first data set. Alternatively, the first data item may be the last data item in the first data set. The N data items included in the first data set may be data from a single task (such as the first task). In this case, the first data set is associated with the first task.

[0029] In one possible design, the first task can be any one of multiple tasks. For example, in a multi-tasking scenario, for any one of the multiple tasks, a retransmission of that task can be triggered when the initial transmission of that task is completed or when the transmission of that task stops.

[0030] Thirdly, a communication device is provided. The communication device includes modules for performing the methods described in the first or second aspect, such as a transceiver module and a processing module. For example, the transceiver module is used to indicate the transceiver functions of the communication device, and the processing module is used to perform functions of the communication device other than the transceiver functions.

[0031] Optionally, the transceiver module may include a sending module and a receiving module. The sending module implements the sending function of the communication device described in the third aspect, and the receiving module implements the receiving function of the communication device described in the third aspect.

[0032] Optionally, the communication device described in the third aspect may further include a storage module storing programs or instructions. When the processing module executes the program or instructions, the communication device can perform the method described in the first or second aspect.

[0033] It is understood that the communication device described in the third aspect may be a terminal device or a network device, or it may be a chip (system) or other component or assembly that can be disposed in the terminal device or the network device, or it may be a device that includes the terminal device or the network device. This application does not limit it in this regard.

[0034] Furthermore, the technical effects of the communication device described in the third aspect can be referred to the technical effects of the method described in any of the implementations of the first or second aspect, and will not be repeated here.

[0035] Fourthly, a communication device is provided. The communication device includes a processor, which, when executing computer instructions, causes the communication device to perform the method described in either the first or second aspect.

[0036] In one possible design, the communication device described in the fourth aspect may further include a transceiver. This transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in the fourth aspect and other communication devices.

[0037] In one possible design, the communication device described in the fourth aspect may further include a memory. This memory may be integrated with the processor or disposed separately. The memory may be used to store computer programs and / or data involved in the methods described in the first or second aspect.

[0038] In the embodiments of this application, the communication device described in the fourth aspect may be the terminal device or network device described in the first or second aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0039] Furthermore, the technical effects of the communication device described in the fourth aspect can be referred to the technical effects of the method described in any of the implementations of the first or second aspect, and will not be repeated here.

[0040] Fifthly, a communication device is provided. The communication device includes a processor coupled to a memory, the processor being configured to execute a computer program stored in the memory, such that the communication device performs the method described in either the first or second aspect.

[0041] In one possible design, the communication device described in the fifth aspect may further include a transceiver. This transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in the fifth aspect and other communication devices.

[0042] In the embodiments of this application, the communication device described in the fifth aspect may be the terminal device or network device described in the first or second aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0043] Furthermore, the technical effects of the communication device described in the fifth aspect can be referred to the technical effects of the method described in any of the implementations of the first or second aspect, and will not be repeated here.

[0044] A sixth aspect provides a communication device, comprising: a processor and a memory; the memory being used to store a computer program, which, when executed by the processor, causes the communication device to perform the method described in either the first aspect or the second aspect.

[0045] In one possible design, the communication device described in the sixth aspect may further include a transceiver. This transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in the sixth aspect and other communication devices.

[0046] In the embodiments of this application, the communication device described in the sixth aspect may be the terminal device or network device described in the first or second aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0047] Furthermore, the technical effects of the communication device described in the sixth aspect can be referred to the technical effects of the method described in any of the implementations of the first or second aspect, and will not be repeated here.

[0048] In a seventh aspect, a communication chip is provided, wherein instructions are stored that, when the chip is operated on a communication device, cause the method described in any one of the first or second aspects to be implemented.

[0049] Eighthly, a communication chip is provided, comprising: a logic circuit and a communication interface, the logic circuit being used to execute computer instructions, and the communication interface being used for the communication chip to communicate with other devices or chips, wherein when the logic circuit executes the computer instructions, the method described in any one of the first or second aspects is implemented.

[0050] A ninth aspect provides a computer-readable storage medium comprising: a computer program or instructions; wherein, when the computer program or instructions are executed on a computer, the computer causes the computer to perform the method described in any possible implementation of the first aspect or the second aspect.

[0051] A tenth aspect provides a computer program product, including a computer program or instructions that, when run on a computer, cause the computer to perform the method described in any possible implementation of the first or second aspect.

[0052] Eleventhly, a data transmission method is provided. This method can be executed by a first device, or by a component of the first device, such as a processor, chip, or chip system of the first device, or by a logic module or software capable of implementing all or part of the functions of the first device. The first device can be a terminal device or a network device. The following description uses the execution of this method by the first device as an example. The method includes: acquiring first data, where the first data is data associated with a first task or a first data set; and triggering the retransmission of the first data when a first condition is met; wherein the first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of the transmission of the first task or the first data set.

[0053] As can be seen from the method in the eleventh aspect, if the first condition is met, the first device triggers the retransmission of the first data, enabling the first device to actively and quickly retransmit based on a certain data, which can reduce the transmission (or retransmission) delay and the tail delay of the task-level transmission, thereby ensuring that the task data is retransmitted within the transmission delay requirement and improving the communication quality.

[0054] In one possible design scheme, satisfying the first condition also includes satisfying at least one of the following conditions: Condition 1 includes: the first data is data awaiting confirmation; Condition 2 includes: the sequence number (SN) of the first data is located in the sending window; Condition 3 includes: the first duration associated with the first data is less than or equal to the first threshold, or the second timer associated with the first data times out; Condition 4 includes: no discard indication corresponding to the first data or the first task or the first data set has been received; Condition 5 includes: new transmission resources have been acquired.

[0055] For example, for the first piece of data to be confirmed, if the remaining time for discarding the first piece of data is greater than a first threshold, it means that after the initial transmission of the data, to avoid the situation where the remaining time is short, the first device can actively retransmit the data. This can reduce transmission (or retransmission) latency and the tail latency of task-level transmission, thereby ensuring that the task data is retransmitted within the required transmission latency and improving communication quality. Furthermore, if the retransmission of the first piece of data is triggered after acquiring the new transmission resource, it can avoid the initial transmission data and the retransmitted data being transmitted on the same resource, which would lead to retransmission failure. In other words, after acquiring the new transmission resource, the initial transmission data and the retransmitted data can be transmitted on different resources, or the retransmitted data can be transmitted on the new transmission resource, thereby improving the success rate of retransmitted data transmission. Moreover, the above conditions can be flexibly set according to actual conditions without restriction.

[0056] In one possible design, the sequence number (SN) of the first data is located in the transmission window, including: the SN of the first data is greater than or equal to a first state variable, and / or, the SN of the first data is less than or equal to a second state variable or the sum of the first state variable and the window length or the highest SN of the data to be transmitted; wherein, the first state variable is the lower limit of the transmission window or the minimum SN of the data awaiting acknowledgment; the second state variable is the SN of the next newly generated data or PDU.

[0057] In one possible design, the failure to receive a discard instruction corresponding to the first data, the first task, or the first data set includes: the first timer associated with the first data has not expired, and the first timers associated with at least one other data or all other data associated with the first task or the first data set have not expired; or, the first timers associated with at least one data or all other data associated with the first task or the first data set have not expired.

[0058] In one possible design, the first duration is the remaining duration of either the first timer or the second timer.

[0059] In one possible design, the method further includes: starting a first timer associated with the first data when or after acquiring the first data; and / or starting a second timer associated with the first data when or after performing the initial transmission of the first data.

[0060] In one possible design, the method further includes: if a discard instruction corresponding to the first data, the first task, or the first data set is received, stopping the second timer associated with the first data.

[0061] In one possible design, the initial transmission of the first task or the first data set is completed when: the data of the first task or the first data set is not present in the transmission buffer; or, except for the data awaiting confirmation, the data of the first task or the first data set is not present in the transmission buffer.

[0062] In one possible design, the transmission of the first task or the first data set is stopped, including: the first task or the first data set does not exist in the cache except for the data waiting for confirmation.

[0063] In one possible design, the cache includes a transmission cache, or the cache includes a transmission cache and a retransmission cache.

[0064] In one possible design, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

[0065] In one possible design, the data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

[0066] In one possible design, the first data is an RLC protocol data unit (PDU) or an RLC SDU.

[0067] In one possible design, retransmission includes RLC retransmission.

[0068] In one possible design, the first task is associated with the first data set; or, the first data set is associated with the first task.

[0069] In one possible design, the first task is any one of multiple tasks.

[0070] In a twelfth aspect, a communication device is provided. The communication device includes modules for performing the method described in the eleventh aspect, such as a transceiver module and a processing module. For example, the transceiver module is used to indicate the transceiver functions of the communication device, and the processing module is used to perform functions of the communication device other than the transceiver functions.

[0071] Optionally, the transceiver module may include a transmitting module and a receiving module. The transmitting module implements the transmitting function of the communication device described in the twelfth aspect, and the receiving module implements the receiving function of the communication device described in the twelfth aspect.

[0072] Optionally, the communication device described in the twelfth aspect may further include a storage module storing programs or instructions. When the processing module executes the program or instructions, the communication device can perform the method described in the eleventh aspect.

[0073] It is understood that the communication device described in the twelfth aspect may be a terminal device or a network device, or a chip (system) or other component or assembly that can be disposed in the terminal device or the network device, or a device that includes the terminal device or the network device. This application does not limit it in this regard.

[0074] Furthermore, the technical effects of the communication device described in the eleventh aspect can be referred to the technical effects of the method described in any implementation of the eleventh aspect, and will not be repeated here.

[0075] In a thirteenth aspect, a communication device is provided. The communication device includes a processor, which, when executing computer instructions, causes the communication device to perform the method described in any possible implementation of the eleventh aspect.

[0076] In one possible design, the communication device described in aspect thirteen may further include a transceiver. The transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in aspect thirteen and other communication devices.

[0077] In one possible design, the communication device described in aspect thirteen may further include a memory. This memory may be integrated with the processor or disposed separately. The memory may be used to store computer programs and / or data related to the methods described in aspect eleven.

[0078] In the embodiments of this application, the communication device described in the thirteenth aspect may be the terminal device or network device described in the eleventh aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0079] Furthermore, the technical effects of the communication device described in aspect thirteen can be referred to the technical effects of the method described in any implementation of aspect eleven, and will not be repeated here.

[0080] Fourteenth aspect: A communication device is provided. The communication device includes a processor coupled to a memory, the processor being configured to execute a computer program stored in the memory, such that the communication device performs the method described in any possible implementation of the eleventh aspect.

[0081] In one possible design, the communication device described in aspect fourteen may further include a transceiver. The transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in aspect fourteen and other communication devices.

[0082] In the embodiments of this application, the communication device described in the fourteenth aspect may be the terminal device or network device described in the eleventh aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0083] Furthermore, the technical effects of the communication device described in aspect fourteen can be referred to the technical effects of the method described in any implementation of aspect eleven, and will not be repeated here.

[0084] In a fifteenth aspect, a communication device is provided, comprising: a processor and a memory; the memory is configured to store a computer program, which, when executed by the processor, causes the communication device to perform the method described in any implementation of the eleventh aspect.

[0085] In one possible design, the communication device described in aspect fifteen may further include a transceiver. The transceiver may be a transceiver circuit or an interface circuit. The transceiver can be used for communication between the communication device described in aspect fifteen and other communication devices.

[0086] In the embodiments of this application, the communication device described in the fifteenth aspect may be the terminal device or network device described in the eleventh aspect, or may be a chip (system) or other component or assembly disposed in the terminal device or network device, or may include the terminal device or network device.

[0087] Furthermore, the technical effects of the communication device described in aspect 15 can be referred to the technical effects of the method described in any implementation of aspect 11, and will not be repeated here.

[0088] In a sixteenth aspect, a communication chip is provided, wherein instructions are stored that, when the chip is operated on a communication device, cause the method described in any of the implementations of the first eleventh aspect to be implemented.

[0089] In a seventeenth aspect, a communication chip is provided, comprising: a logic circuit and a communication interface, the logic circuit being used to execute computer instructions, and the communication interface being used for the communication chip to communicate with other devices or chips, wherein when the logic circuit executes the computer instructions, the method described in any one of the first or second aspects is implemented.

[0090] Eighteenth aspect: A computer-readable storage medium is provided, comprising: a computer program or instructions; when the computer program or instructions are executed on a computer, the computer causes the computer to perform the method described in any possible implementation of the eleventh aspect.

[0091] In a nineteenth aspect, a computer program product is provided, comprising a computer program or instructions that, when executed on a computer, cause the computer to perform the method described in any possible implementation of the eleventh aspect. Attached Figure Description

[0092] Figure 1 A schematic diagram of the user plane protocol stack provided in an embodiment of this application;

[0093] Figure 2 A schematic diagram of the control plane protocol stack provided in an embodiment of this application;

[0094] Figure 3 A schematic diagram of the structure of the AMD protocol data unit (PDU) for confirmation mode data provided in the embodiments of this application;

[0095] Figure 4 This is a schematic diagram of the architecture of the communication system provided in the embodiments of this application;

[0096] Figure 5 A flowchart illustrating the data transmission method provided in the embodiments of this application. Figure 1 ;

[0097] Figure 6AA flowchart illustrating the data transmission method provided in the embodiments of this application. Figure 2 ;

[0098] Figure 6B A flowchart illustrating the data transmission method provided in the embodiments of this application. Figure 3 ;

[0099] Figure 7 Schematic diagram of the communication device provided in the embodiments of this application Figure 1 ;

[0100] Figure 8 Schematic diagram of the communication device provided in the embodiments of this application Figure 2 . Detailed Implementation

[0101] For ease of understanding, the technical terms involved in the embodiments of this application will be introduced below.

[0102] 1. Protocol Layer

[0103] Communication between terminal devices and network devices follows a certain protocol layer structure.

[0104] For example, such as Figure 1 As shown, for the access-stratum (AS) layer, the user plane protocol stack may include the service data adaptation protocol (SDAP) layer, the packet data convergence protocol (PDCP) layer, the radio link control (RLC) layer, the medium access control (MAC) layer, and the physical (PHY) layer.

[0105] For example, such as Figure 2 As shown, for the AS layer, the control plane protocol stack can include the radio resource control (RRC) layer, PDCP layer, RLC layer, MAC layer, and PHY layer. Additionally, the control plane protocol stack can also include a non-access-stratum (NAS) layer.

[0106] 2. Automatic Repeat Request (ARQ)

[0107] ARQ is a retransmission technique used by the radio link control (RLC) layer, meaning the RLC layer has ARQ functionality. ARQ can be understood as the receiver sending an RLC status report (described below) to the transmitter, indicating the reception status of different data packets, such as successful or failed reception. The transmitter can then use the RLC status report to perform RLC retransmission for failed reception data. For example, acknowledged mode (AM) RLC entities support ARQ.

[0108] 3. RLC Retransmission

[0109] RLC retransmission can be triggered in two situations: first, the sender receives a NACK in the RLC status report; second, the polling timer times out and the transmission window stalls. For example, a stalled transmission window can include two scenarios: the transport buffer and retransmission buffer are empty, except for the RLC service data unit (SDU) or RLC SDU segment awaiting acknowledgment; that is, there is no data to transmit in the transport buffer and retransmission buffer; and no new RLC SDU or RLC SDU segment can be transmitted (e.g., due to window stalling). For example, the polling timer might start or restart after the sender transmits an RLC protocol data unit (PDU) with polling bits.

[0110] 4. RLC Status Report

[0111] RLC status reports can be used by the receiver to report data reception status to the sender, such as whether reception was successful or failed. There are two main reasons why the receiver might trigger an RLC status report: either the receiver's receive window has a hole (e.g., the received data is not in order), or the receiver receives a polling request from the sender.

[0112] For example, the sending end can poll the receiving end using the polling bit in the RLC PDU. The conditions for the sending end to set the polling bit in the RLCPDU are as follows: First, the number of PDUs sent or the number of bytes sent since the last RLC PDU with polling bits has reached a threshold; second, the sending window is stuck (see section "3. RLC Retransmission" for details); third, the polling timer times out and the sending window is stuck.

[0113] 5. Acknowledged Mode Data (AMD) PDU

[0114] An AMD PDU is an RLC data PDU of an AM PLC entity (or, associated with it). The format of an AMD PDU is described below.

[0115] For example, such as Figure 3 As shown, an AMD PDU consists of a data field and an AMD PDU header. The AMD PDU header is byte-aligned. For example, an AMD PDU header may include a data / control (D / C) field, a polling bit (P) field, a segmentation info (SI) field, and a sequence number (SN) field. For example, an AMD PDU header may include a reserved (R) field. For instance, when a data field contains an RLC SDU segment that is not the first segment, it is necessary to indicate the position of that RLC SDU segment in the original SDU. This can be indicated using a segment offset (SO) field. In other words, the AMD PDU header may include an SO field in this case; for example, a 16-bit SO field may be present. The D / C and P fields are described below.

[0116] For example, the D / C field can indicate whether an RLC PDU is an RLC data PDU or an RLC control PDU. When the D / C field value is 0, it can represent an RLC control PDU, and when the D / C field value is 1, it can represent an RLC data PDU. The length of the D / C field can be 1 bit.

[0117] For example, the P field can be used to indicate whether the sending side of an AM RLC entity requests a status report from its peer AM RLC entity. When the value of the P field is 0, it can indicate that no status report is requested, and when the value of the P field is 1, it can indicate that a status report is requested. The length of the P field can be 1 bit.

[0118] For example, the SI field can be used to indicate whether an RLC PDU contains a complete RLC SDU or the first, middle, or last segment of an RLC SDU. The SI field can be 2 bits long. For instance, when the SI field is 00, it indicates that the data field contains all bytes of the RLC SDU; when the SI field is 01, it indicates that the data field contains the first segment of the RLC SDU; when the SI field is 10, it indicates that the data field contains the last segment of the RLC SDU; and when the SI field is 11, it indicates that the data field contains neither the first nor the last segment of the RLC SDU.

[0119] For example, the SN field can be used to indicate the serial number of an RLC SDU. For RLC AM, the serial number increments by 1 for each RLC SDU. For example, for an AMD PDU, the SN field can be 12 bits or 18 bits long.

[0120] For example, the SO field can be used to indicate the location (in bytes) of an RLC SDU segment within the original RLC SDU. For example, the SO field indicates the location within the original RLC SDU, and the first byte of the RLC SDU segment in the data field corresponds to this location; the first byte of the original RLC SDU is represented by the SO field value "0000000000000000", meaning the numbering starts from zero.

[0121] For example, the R field is a reserved field for the protocol version. For example, the sender should set the R field to "0", and the receiver should ignore the R field.

[0122] 6. Task-level transmission

[0123] For example, task-level transmission can be designed for bursts of data (or, big data), requiring task-level latency and data volume guarantees (or, requiring task-level latency guarantees).

[0124] For example, in existing technologies, data transmission requirements are at the packet level. For instance, each packet in a data stream has / needs to meet its corresponding latency requirements (or, requirements, or, packet-level requirements). However, for task-level transmission, a task contains (or corresponds to) one or more packets. During transmission, there are no packet-level requirements for the transmission of each individual packet, but rather requirements for the latency of all packets related to the entire task (or, requirements, or, task-level requirements). For example, transmission needs to be completed within 2 seconds.

[0125] For example, task-related data can be called task data.

[0126] For example, task-level transmission may have one or more of the following characteristics: the task is triggered randomly; the data size of the task depends on air interface conditions; data generation / whether data is generated depends on air interface conditions; whether the data is processed in the cloud (or whether the terminal device sends the task data to the base station) depends on air interface conditions. For example, air interface conditions may include one or more of the following: whether the base station can promise to complete the transmission of the task; the data size and / or latency promised by the base station, etc.

[0127] It is understood that "task-level transmission" in the embodiments of this application is only an exemplary expression, and "task-level transmission" can be replaced with any possible expression, such as "task transmission", "data set-level transmission", "data set transmission", "data set transmission", "data burst-level transmission", "data burst transmission", "PDU set-level transmission", "PDU set transmission", etc., without limitation.

[0128] For example, a task may include one or more (or N) data packets. When these N data packets are transmitted, there are task-level transmission requirements for these N data packets. For example, the transmission of these N data packets is required to meet certain latency requirements, such as the transmission of these N data packets needing to be completed within 2 seconds.

[0129] For example, a task may include one or more (or N) data packets. When these N data packets are transmitted, there are no data packet-level transmission requirements for each of these N data packets, but there are task-level transmission requirements for these N data packets. For example, the transmission of these N data packets is required to meet certain latency requirements, such as the transmission of these N data packets needing to be completed within 2 seconds.

[0130] For example, one task can correspond to one photo.

[0131] For example, after taking a photo locally on a mobile phone, the phone typically performs image processing to enhance the image quality. Common image processing techniques include noise reduction, super-resolution, and low-light enhancement. Some of these techniques require significant computing power, and local processing on a mobile phone is limited by its processing capabilities, meaning that once the processing quality reaches a certain level, it's difficult to improve further. One solution is to upload the photo to the cloud for processing. The cloud can deploy a large number of graphical processing units (GPUs) for image processing, resulting in higher processing quality than local processing on the phone. This method requires the user to take a photo, the phone to upload it to the cloud, the cloud to process it, and then the photo is returned to the local device for display. This can be called cloud photography. Cloud photography is triggered randomly, and the amount of data uploaded to the cloud for processing is large, such as 50 MB or 100 MB. For example, cloud photography can be an example of task-level transfer. Task-level transfer is not only applicable to cloud photography but also to 3D model transfer in cloud gaming, AI, etc., without limitation.

[0132] For example, in cloud photography, after the user presses the shutter button but before data generation, the terminal device (i.e., the aforementioned mobile phone) may need to interact with the base station to determine the amount of data the base station can guarantee (or, maximum data volume, or, data volume and latency, or, maximum data volume and latency). Based on this, the terminal device determines the photo format and generates photo data. For example, the interaction between the terminal device and the base station is as follows: Step 1, a channel is established between the terminal device and the base station (e.g., QoS flow, and / or, data radio bearer (or (user) data radio bearer, DRB)). For example, the attributes corresponding to this channel could be a latency of 3 seconds and a data size of 30-300MB; Step 2, after triggering a task, the terminal device confirms with the base station whether the task can be transmitted, and if the task can be transmitted, confirms the amount of data the base station can guarantee (or, maximum data volume, or, data volume and latency, or, maximum data volume and latency); Step 3, the terminal device transmits the data.

[0133] However, for task-level transmission, there is currently no effective method to guarantee that task data can be transmitted successfully within the task's latency requirements. For example, even if the new transmission resources allocated by the base station for task data are within the task's latency requirements, it does not necessarily guarantee that all data will be successfully transmitted within those requirements.

[0134] To address the aforementioned technical problems, this application proposes the following technical solutions to ensure that task data is transmitted within the task's latency requirements.

[0135] The technical solutions in this application will now be described with reference to the accompanying drawings.

[0136] The technical solutions of this application can be applied to various communication systems, such as 4th generation (4G) mobile communication systems, such as long term evolution (LTE) systems, 5th generation (5G) mobile communication systems, such as new radio (NR) systems, and communication systems that evolve after 5G, such as 6th generation (6G) mobile communication systems. They can also be applied to wireless fidelity (WiFi) systems, vehicle to everything (V2X) communication systems, device-to-device (D2D) communication systems, vehicle-to-everything (V2X) communication systems, and vehicle-to-everything (V2X) communication systems.

[0137] This application will present various aspects, embodiments, or features relating to systems that may include multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all the devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches are also possible.

[0138] Furthermore, in the embodiments of this application, the words "exemplary," "for example," etc., are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "exemplary" is intended to present the concept in a concrete manner.

[0139] In the embodiments of this application, the terms "information," "signal," "message," "channel," and "signaling" may sometimes be used interchangeably. It should be noted that, without emphasizing their distinction, their intended meanings are consistent. Similarly, "of," "corresponding (relevant)," and "corresponding" may sometimes be used interchangeably. It should be noted that, without emphasizing their distinction, their intended meanings are consistent. Furthermore, the " / " mentioned in this application can be used to indicate an "or" relationship.

[0140] For example, in the embodiments of this application, the data set may include / be replaced by: PDU set, or, PDU set, or, data burst.

[0141] For example, in the embodiments of this application, the data may include / be replaced with: PDU, or SDU, or PDCP PDU, or PDCP SDU, or RLC PDU, or RLC SDU.

[0142] For example, in the embodiments of this application, MAC, or MAC layer, may include / be replaced by: first layer (or, first protocol layer).

[0143] For example, in the embodiments of this application, RLC, or RLC layer, may include / be replaced by: second layer (or, referred to as, second protocol layer).

[0144] For example, in the embodiments of this application, PDCP, or the PDCP layer, may include / be replaced by: a third layer (or, referred to as, a third protocol layer).

[0145] Optionally, the first layer may support at least one of the following functions: Logical Channel Prioritization (LCP), mapping of logical channels and transport channels, multiplexing (e.g., multiplexing MAC SDUs from one or different logical channels onto a transport block (TB)), demultiplexing (demultiplexing MAC SDUs from a transport block (TB) to one or different logical channels), scheduling information reporting (e.g., at least one of Scheduling Request (SR), Buffer Status Report (BSR), and Delay Status Report (DSR)), hybrid automatic repeat request (HARQ) (e.g., error correction via HARQ), priority handling among overlapping resources of a UE, and radio resource selection.

[0146] Optionally, the second layer may support at least one of the following functions: transmission of upper layer PDUs, error correction via ARQ, segmentation and reassembly of SDUs or RLC SDUs, resegmentation of SDUs or RLC SDUs, duplicate detection, discarding of SDUs or RLC SDUs, RLC reconstruction, and protocol error detection.

[0147] Optionally, the third layer may support at least one of the following functions: data transmission (user plane or control plane), maintenance of PDCP sequence numbers, compression and decompression, header compression and decompression using the ROHC protocol, header compression and decompression using the EHC protocol, uplink data compression and decompression using the UDC protocol, security, encryption and decryption, integrity protection and integrity verification, SDU dropping, timer-based SDU dropping, PDU set dropping, PSI-based SDU dropping, routing, replication, reordering and in-order delivery, out-of-order delivery, and duplicate dropping.

[0148] For example, in the embodiments of this application, at least two of the first layer, second layer, and third layer can be the same layer. For example, the first layer and the second layer are the same layer. For example, the second layer and the third layer are the same layer.

[0149] For example, in the embodiments of this application, "bottom layer" may include / be replaced by: "lower layer". For example, in the embodiments of this application, "lower layer" may include / be replaced by: "bottom layer".

[0150] For example, in the embodiments of this application, for a single piece of data (e.g., first data), the data in the PDCP layer (e.g., first data) and the data in the RLC layer (e.g., first data) are not necessarily completely identical, and this application does not impose any restrictions. For example, the first data in "the first device (or, the PDCP layer of the first device) acquires the first data" and the first data in "the first device acquires the first data" or "the first device (or, the RLC layer of the first device) acquires the first data" in S01 are not necessarily completely identical, and this application does not impose any restrictions. For example, the first data may reach the RLC layer after undergoing some processing in the PDCP layer (e.g., adding a PDCP header, security processing or integrity protection processing (e.g., adding MAC-I), header compression, etc., at least one of these).

[0151] The network architecture and business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0152] To facilitate understanding of the embodiments of this application, a communication system applicable to the embodiments of this application will be introduced first.

[0153] The communication system includes a first device and a second device. For example, the first device is a network device and the second device is a terminal device; or, the first device is a terminal device and the second device is a network device. The network device can be referred to in the relevant description in "Network Device 110" below, and the terminal device can be referred to in the relevant description in "Terminal Device 120" below, which will not be repeated here. Optionally, in the embodiments of this application, the first device can be understood as the RLC layer of the first device, and the second device can be understood as the RLC layer of the second device.

[0154] To facilitate understanding of the embodiments of this application, Figure 4 The application scenario used in this application is illustrated using the communication system architecture shown below. Figure 4 This is a schematic diagram of a possible, non-limiting communication system. (Example) Figure 4 As shown, the communication system 4000 includes a radio access network (RAN) 100 and a core network (CN) 200. RAN 100 includes at least one network device (such as...). Figure 4 110a and 110b (collectively referred to as 110) and at least one terminal device (such as Figure 4 RAN 100, denoted as RAN 120a to 120j, is collectively referred to as RAN 120. RAN 100 may also include other RAN nodes, such as wireless relay equipment and / or wireless backhaul equipment. Figure 4 (Not shown in the image). Terminal device 120 is connected to network device 110 wirelessly. Network device 110 is connected to core network 200 wirelessly or via wired connection. The core network device in core network 200 and network device 110 in RAN 100 can be different physical devices, or they can be the same physical device integrating core network logical functions and radio access network logical functions.

[0155] RAN 100 can be used for 3rd Generation Partnership Project (3GPP) related cellular systems, such as 4th generation (4G) mobile communication systems like Long Term Evolution (LTE), 5G mobile communication systems like NR, and communication systems evolving beyond 5G, such as 6th generation (6G) mobile communication systems. It can also be applied to wireless fidelity (WiFi) systems, vehicle-to-everything (V2X) communication systems, device-to-device (D2D) communication systems, and vehicle-to-everything (V2X) communication systems. RAN 100 can also be an open radioaccess network (O-RAN or ORAN), a cloud radio access network (CRAN), or a WiFi system. RAN 100 can also be a communication system integrating two or more of the above systems.

[0156] Network device 110 is a node in the RAN, also known as an access network device or RAN node (or device). Network device 110 is used to help terminals achieve wireless access. Multiple network devices 110 in the communication system 4000 can be nodes of the same type or different types. In some scenarios, the roles of network device 110 and terminal device 120 are relative, for example... Figure 4 Network element 120i can be a helicopter or a drone, and it can be configured as a mobile base station. For terminals 120j that access RAN 100 through network element 120i, network element 120i is a base station; however, for base station 110a, network element 120i is a terminal. Network device 110 and terminal device 120 are sometimes referred to as communication devices, for example... Figure 4 Network elements 110a and 110b can be understood as communication devices with base station functions, while network elements 120a to 120j can be understood as communication devices with terminal functions.

[0157] In one possible scenario, network equipment can be a base station, an evolved NodeB (eNodeB), a transmitting and receiving point (TRP), a transmitting point (TP), a next-generation NodeB (gNB), a next-generation base station in a 6G mobile communication system, a base station in a future mobile communication system, a satellite, or an access point (AP) in a WiFi system, such as a home gateway, router, server, switch, bridge, etc. It can also be an integrated access and backhaul (IAB) node, or network equipment in a mobile switching center non-terrestrial network (NTN) communication system, meaning it can be deployed on a high-altitude platform or satellite. Network equipment can also be a macro base station (such as...). Figure 4 110a), micro base stations or indoor stations (such as Figure 4 In CRAN scenarios, network devices can be 110b), relay nodes or donor nodes, or wireless controllers. Network devices can also function as base stations in device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, drone communication, and machine-to-machine (M2M) communication. Optionally, network devices can also be servers, wearable devices, vehicles, or in-vehicle equipment. For example, in vehicle-to-everything (V2X) technology, the access network device can be a roadside unit (RSU).

[0158] In another possible scenario, multiple network devices collaborate to assist terminals in achieving wireless access, with each network device performing a portion of the base station's functions. For example, network devices can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be set up separately or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio equipment or radio units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs). It is understood that network devices can be CU nodes, DU nodes, or devices comprising both CU and DU nodes. Furthermore, CUs can be classified as network devices in the access network (RAN) or the core network (CN), without limitation.

[0159] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in an ORAN system, CU can also be called O (open)-CU, DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules.

[0160] In this embodiment, the form of the network device is not limited. The device used to implement the function of the network device can be the network device itself, or it can be a device that supports the network device in implementing the function, such as a chip system. The device can be installed in the network device or used in conjunction with the network device.

[0161] Terminal equipment 120, also known as user equipment (UE), mobile station (MS), mobile terminal (MT), user device, terminal equipment, access terminal, user unit, user station, mobile station, remote station, remote terminal, mobile device, user terminal, wireless communication equipment, user agent, or user device, is a device used to provide voice or data connectivity to users, and can also be an Internet of Things (IoT) device. For example, terminal equipment includes handheld devices with wireless connectivity, vehicle-mounted devices, etc. Currently, terminal devices can include: mobile phones, tablets, computers with wireless transceiver capabilities, laptops, handheld computers, mobile internet devices (MIDs), wearable devices (such as smartwatches, smart bracelets, pedometers, etc.), in-vehicle equipment (such as cars, bicycles, electric vehicles, airplanes, ships, trains, high-speed trains, etc.), satellite terminals, virtual reality (VR) devices, augmented reality (AR) devices, smart point-of-sale (POS) machines, customer-premises equipment (CPE), wireless terminals in industrial control, smart home devices (such as refrigerators, televisions, air conditioners, electricity meters, etc.), smart robots, robotic arms, workshop equipment, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, or wireless terminals in smart homes, and flying equipment (such as smart robots, hot air balloons, drones, airplanes), etc. Terminal devices can also be other devices with terminal functions. For example, a terminal device can also be a device that performs terminal functions in D2D communication.

[0162] The embodiments of this application do not limit the device form of the terminal. The device used to implement the functions of the terminal device can be the terminal device itself; it can also be a device that supports the terminal device in implementing the functions, such as a chip system. The device can be installed in the terminal device or used in conjunction with the terminal device. In the embodiments of this application, the chip system can be composed of chips or can include chips and other discrete components.

[0163] It should be noted that the solutions in the embodiments of this application can also be applied to other communication systems, and the corresponding names can be replaced by the names of the corresponding functions in other communication systems. Furthermore, the network architecture and business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. Those skilled in the art will understand that with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.

[0164] For example, if the first data is the last data in the first task or the first data set, and the first device determines that the first data includes first indication information, the second device, upon receiving the first data, can send a status report to the first device based on the first indication information in the first data. This report indicates the transmission status of each data item, such as successful or failed transmission. This allows the second device to quickly provide status report feedback, enabling the first device to rapidly retransmit failed data based on the status report. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, ensuring that task data is transmitted within the task's latency requirements and improving communication quality.

[0165] It is understood that the aforementioned communication system may also include other network devices and / or other terminal devices, without limitation.

[0166] For ease of understanding, the following will combine... Figure 5 The data transmission method provided in this application is described in detail in the embodiments.

[0167] For example, Figure 5 Flowchart of the data transmission method provided in this application embodiment Figure 1 This method can be applied to the interaction between the first and second devices in the aforementioned communication system.

[0168] like Figure 5 As shown, the flow of this data transmission method is as follows:

[0169] Optionally, in S500A, the first device acquires a first task or a first data set.

[0170] For example, the first task corresponds to one or more (or N) data items. For example, the data corresponding to the first task includes one or more (or N) data items. For example, the data corresponding to the first task can be replaced with / referred to as: the data of the first task.

[0171] For example, the first data set includes one or more (or N) data. For example, the data included in the first data set includes / is: one or more (or N) data. For example, the data included in the first data set can be replaced / referred to as: the data of the first data set.

[0172] For example, the first task is associated with the first data set; or, the first data set is associated with the first task. For example, the first task is any one of multiple tasks.

[0173] For example, N is greater than or equal to 1. For example, N is an integer.

[0174] For example, obtaining the first task can include / be replaced with: obtaining the data corresponding to the first task (e.g., one or more, or some or all of the data).

[0175] For example, obtaining a first data set may include / be replaced by: obtaining the data included in the first data set (e.g., one or more, or some or all of the data).

[0176] For example, the first task or the first data set is associated with any one or more of the first LCH, the first RLC entity, the first DRB, and the first PDCP entity.

[0177] For example, the first device acquiring the first task or the first data set can be understood as: the first device (or, the RLC layer of the first device) acquiring the data corresponding to the first task (e.g., one or more, or some or all of the data), or the first device (or, the RLC layer of the first device) acquiring the data included in the first data set (e.g., one or more, or some or all of the data). For example, the first device (or, the RLC layer of the first device) can acquire the first task or the first data set from an upper layer (or, the layer above the RLC layer of the first device) or other devices (e.g., directly or indirectly). For example, the upper layer (or, the layer above the RLC layer of the first device) can be: a protocol layer above the RLC layer of the first device, such as the PDCP layer, or an application layer, etc., without limitation.

[0178] For example, the data corresponding to the first task or the data included in the first data set can come from the application layer of the first device or from other devices, without restriction.

[0179] For example, when a user takes a photo with their mobile phone, the application layer can first transmit the photo and other data to the AS layer (e.g., the PDCP layer), and then from the PDCP layer to the RLC layer. This photo and other data can be / correspond to a task or a data set. Alternatively, the first device can also obtain the data for the first task or the first data set through other protocol layers. For instance, a user sends the data corresponding to the first task or the data included in the first data set to device #B through device #A, and then device #B sends it to the network side. For example, data from glasses (e.g., image data) is sent to the network side via a mobile phone, and this data (e.g., image data) is / corresponds to a task or a data set. It is understood that the various protocol layers involved in data transmission correspond to specific scenarios and can be determined according to actual circumstances without limitation.

[0180] Optionally, this application does not limit how the first device determines different tasks or data sets. For example, the first device can distinguish different tasks or data sets using information indicating the task or data set. For example, the information indicating the task or data set can be included in the upper-layer header. For example, the upper layer can include any one or more of the following: the upper layer of the first device, the NAS layer of the first device, or the APP layer of the first device. For example, the upper-layer header can include: a General Packet Radio Service Tunneling Protocol – User Plane (GTP-U) header. For example, the information indicating the task or data set can be: an end indication corresponding to the task or data set (e.g., end of data burst) or other indications. Alternatively, for example, the first device can also distinguish different tasks or data sets based on the time of data reception or through a related timer. For example, if the first device does not receive new data after a period of time, it can determine that a task or data set has ended. For example, data received in time period #1 can be identified as data for task #1 or data set #1; data received in time period #2 can be identified as data for task #2 or data set #2.

[0181] Optionally, in S500B, the first device acquires a second task or a second data set.

[0182] For example, the first device acquiring the second task or the second data set is similar to the first device acquiring the first task or the first data set. You can refer to the relevant introduction of the first device acquiring the first task or the first data set above for understanding, and it will not be repeated here.

[0183] For example, the second task or the second data set is associated with any one or more of the first LCH, the first RLC entity, the first DRB, and the first PDCP entity.

[0184] It is understood that the order in which the first device acquires the second task or second data set and the first task or first data set is not limited. That is, the first device can acquire the second task or second data set first, and then acquire the first task or first data set, or the first device can acquire the first task or first data set first, and then acquire the second task or second data set. The specific order can be determined according to the actual time situation and is not restricted. For example, the first device can acquire the first task or first data set first, and then acquire the second task or second data set.

[0185] S501, the first condition is met, and the first device determines that the first data includes the first instruction information.

[0186] For example, the first condition may include / be: the first data is the last (or, the last M) data in the first task or the first data set.

[0187] For example, the first task is the task corresponding to data transmission. For details, please refer to the relevant introduction in "6. Task-level Transmission" above. It will not be repeated here.

[0188] For example, M is greater than or equal to 1. For example, M is an integer.

[0189] For example, the first task can correspond to one or more (or N) data points. For example, the data corresponding to the first task (or N data points or all data points) can be considered a data set, or the data corresponding to the first task (or N data points or all data points) can constitute a data set, such as the first data set. For example, the first task can be associated with the first data set.

[0190] For example, correspondingly, it can include / replace with: association.

[0191] For example, the first task can be a single task. Alternatively, the first task can be any one of multiple tasks. In a multi-tasking scenario, the first task can be any one of multiple tasks.

[0192] For example, the first data set may include one or more (or N) data items. For example, the data (or N data items or all data items) included in the first data set may correspond to a task (such as the first task). For example, the first data set may be associated with the first task.

[0193] For example, whether the first condition refers to the first task or the first data set can be set according to the actual situation. For example, when transmitting at the task level, it can be the first task, or when transmitting multiple data sets, it can be the first data set, without any restrictions.

[0194] For example, the first data being the last (or the last M) data in a first task or a first data set can include: the first data being the last (or the last M) data in the data corresponding to the first task, or the first data being the last (or the last M) data in the data included in the first data set. For example, the data corresponding to the first task can include / be replaced with: the N data or all data corresponding to the first task. For example, the data included in the first data set can include / be replaced with: the N data or all data included in the first data set.

[0195] Optionally, the first data can be RLC PDU or other types of data. The specific settings can be made according to the actual situation and there are no restrictions.

[0196] In one possible design, the first data is the last (or the last M) data in the first task or the first data set, and may include / be replaced by at least one of the following: the first data is the last (or the last M) data that can be transmitted in the first task or the first data set; after sending the first data (or all the first data), there is no data in the first task or the first data set in the cache; or, after sending the first data (or all the first data), there is no data in the first task or the first data set in the cache except for data waiting for confirmation.

[0197] For example, the cache may include / be replaced by: a transport cache. Or, for example, the cache may include / be replaced by: a transport cache and a retransmission cache. For example, the cache may include / be replaced by: a cache of the first RLC entity, or, a transport cache of the first RLC entity, or, a transport cache and a retransmission cache of the first RLC entity.

[0198] For example, data awaiting confirmation can refer to data in the cache that needs confirmation but cannot be transmitted at present.

[0199] For example, data awaiting confirmation can include / be replaced with: data that has already been sent and is awaiting confirmation. For example, "data that has already been sent and is awaiting confirmation" can be understood as the first device transmitting (either new or retransmitting) the data corresponding to the first task, but the first device has not yet received a status report from the second device, that is, the first device does not know which data in the data corresponding to the first task has failed to be transmitted and needs to be retransmitted.

[0200] Optionally, the data awaiting confirmation may include / be replaced with: data of the first task or the first data set awaiting confirmation, or data of the first task or the first data set that has been sent and is awaiting confirmation.

[0201] Optionally, the data awaiting confirmation may include RLC SDUs or RLC SDU segments awaiting confirmation, or other types of data. The specific settings can be configured according to the actual situation and are not limited.

[0202] For example, the first data being the last (or the last M) data that can be transmitted in the first task or the first data set can be understood as at least one of the following: the first data is the last (or the last M) data that is transmitted (or can be transmitted) among the N data or all data corresponding to the first task; or, the first data is the last (or the last M) data that is transmitted (or can be transmitted) among the N data or all data included in the first data set. For example, if the first task corresponds to data #a1, data #a2, and data #a3, and the transmission order of these three data is data #a1, data #a2, and data #a3, then data #a3 is the last data transmitted, i.e., data #a3 is the first data. For example, the first data is the last (or the last M) data that can be transmitted in the first task or the first data set, which may include / be replaced by: after sending the first data, there is no data in the first task or the first data set that can be transmitted; after sending the first data, there is no data in the buffer that can be transmitted in the first task or the first data set; after sending the first data, there is no data in the first task or the first data set that can be transmitted except for data waiting for confirmation; or, after sending the first data, there is no data in the buffer that can be transmitted in the first task or the first data set except for data waiting for confirmation.

[0203] For example, the absence of data for the first task or the first data set in the cache after sending the first data can be understood as follows: before sending the first data, the cache did not contain data for the first task or the first data set, except for the first data. For example, it can be understood that the cache may / may contain other data besides the data for the first task or the first data set, without restriction. Continuing the example above, the three data items corresponding to the first task: data #a1, data #a2, and data #a3, and the five data items corresponding to the second task: data #b1-data #b5, are transmitted sequentially (or will be in that order). After sending data #a3, the cache contains the data corresponding to the second task, but not the data for the first task; that is, data #a3 is the first data item.

[0204] For example, the absence of data for the first task or the first data set in the cache after sending the first data, except for the data awaiting confirmation, can be understood as: before sending the first data, the cache did not contain data for the first task or the first data set, except for the first data and the data awaiting confirmation.

[0205] For example, the first indication information can be used to request a status report, or to request feedback from the second device on data reception status (or to request data reception status), or to poll.

[0206] For example, after receiving the first instruction information, the second device can send a status report back to the first device to indicate the data reception status of the second device.

[0207] Optionally, the status report can be an RLC status report or other types of status reports. The specific settings can be configured according to the actual situation, without any restrictions.

[0208] Optionally, the first indication information can be carried in polling bits. For example, the first data includes polling bits, and the first indication information can be carried in polling bits. For instance, the AMD PDU includes a P field, which can be used to indicate whether a status report is requested. For example, a value of 0 for the P field indicates that a status report is not requested; a value of 1 for the P field indicates that a status report is requested; or vice versa.

[0209] For example, if the first device determines that the first data includes first indication information, it may include / replace with: the first device includes first indication information in the first data, or, the first device determines that the first data sets first indication information, or, the first device determines that the first data sets first indication information, or, the first device sets first indication information in the first data.

[0210] For example, if the first condition is met, the first device determines that the first data includes the first instruction information, or in other words, the first device sets the first instruction information in the first data.

[0211] Optionally, in any one or more of S500A, S500B, and S501, the first device may include / be replaced by: the RLC layer (or, RLC entity) of the first device.

[0212] S502, the first device sends the first data. Optionally, or correspondingly, the second device receives the first data.

[0213] For example, the first device sending the first data may include / be replaced by: the first device (or, the RLC layer of the first device) delivering the first data to the lower layer (or, the lower layer of the RLC layer of the first device), or the first device sending the first data to the second device.

[0214] For example, the underlying layer (or the bottom layer of the RLC layer of the first device) can be: the MAC layer, or the PHY layer, or the protocol layer below the RLC layer of the first device, such as the MAC layer, or the physical layer, etc.

[0215] For example, after determining that the first data includes first indication information, the first device can send the first data to the second device. For example, the second device can receive the first data containing the first indication information.

[0216] Optionally, in S502, the first device may include / be replaced by: the RLC layer (or, RLC entity) of the first device, or the first device.

[0217] Optionally, embodiments of this application may further include: after receiving the first data, the second device may send a status report to the first device according to the first indication information. For example, the first device may receive a status report from the second device. For example, after receiving the status report, the first device may retransmit the data that failed to transmit as indicated in the status report (e.g., RLC retransmission).

[0218] In this embodiment, satisfying the first condition allows the first data to include first indication information, enabling the second device to send a status report to the first device based on the first indication information, indicating the data transmission status, such as successful or failed transmission. This allows the second device to quickly provide status report feedback, enabling the first device to quickly retransmit failed data based on the status report. This reduces transmission (or retransmission) latency and tail latency of task-level transmission, ensuring that task data is transmitted within the task's latency requirements and improving communication quality. For example, in this embodiment, even if the RLC window is not stuck (e.g., there is other data that can be transmitted in the first RLC entity / buffer, such as data from the second task or the second data set), satisfying the first condition allows the first data to include first indication information, enabling the second device to send a status report to the first device based on the first indication information, indicating the data transmission status, such as successful or failed transmission. This allows the second device to quickly provide status report feedback, enabling the first device to quickly retransmit failed data based on the status report. This reduces transmission (or retransmission) latency and tail latency of task-level transmission, thereby ensuring that task data is transmitted within the task's latency requirements and improving communication quality.

[0219] For example, Figure 6A Flowchart of the data transmission method provided in this application embodiment Figure 2 This method can be applied to the interaction between the first and second devices in the aforementioned communication system.

[0220] like Figure 6A As shown, the flow of this data transmission method is as follows:

[0221] Optionally, in S601, the first device acquires the first task or the first data set.

[0222] For example, content related to "the first task," "the first data set," and "the first device acquiring the first task or the first data set" can be referenced. Figure 5 The content described in the embodiments will not be repeated here.

[0223] Optionally, embodiments of this application may further include: S601A The first device acquires a second task or a second data set.

[0224] For example, content related to "second task," "second data set," and "first device acquiring second task or second data set" can be referenced. Figure 5 The content described in the embodiments will not be repeated here.

[0225] S602, if the first condition is met, the first device triggers the retransmission of the first task or the first data set.

[0226] For example, the first condition includes the initial transmission of the first task or the first data set being completed, or the transmission of the first task or the first data set being stopped, or the second state variable being greater than the highest SN associated with the first task or the first data set.

[0227] For example, "initial download" can include / be replaced with "new download", or "RLC initial download", or "RLC new download".

[0228] For example, the initial transmission completion of the first task or the first data set may include / be replaced by: the initial transmission completion of N data or all data corresponding to the first task, or the initial transmission completion of N data or all data included in the first data set.

[0229] For example, the initial transmission completion of the first task or the first data set may include / be replaced by: the first task or the first data set does not exist in the cache or the transmission cache; or, except for the data waiting for confirmation, the first task or the first data set does not exist in the cache or the transmission cache.

[0230] For example, information related to "data awaiting confirmation" can be found here. Figure 5 The content described in the embodiments will not be repeated here.

[0231] For example, the cache may include / be replaced by: a transport cache. Or, for example, the cache may include / be replaced by: a transport cache and a retransmission cache. For example, the cache may include / be replaced by: a cache of the first RLC entity, or, a transport cache of the first RLC entity, or, a transport cache and a retransmission cache of the first RLC entity.

[0232] For example, the cessation of transmission of the first task or the first data set may include / be replaced by: the cessation of transmission of N data or all data corresponding to the first task, or the cessation of transmission of N data or all data included in the first data set.

[0233] For example, the suspension of the first task or the first data set transmission may include / be replaced by: the first task or the first data set is not present in the cache except for the data awaiting confirmation.

[0234] For example, the highest SN associated with the first task or the first data set may include / be replaced with: the highest SN of the data in the first task or the first data set, or the SN of the data or the last data in the first task or the first data set, or the SN of all the data in the first task or the first data set, or the SN or the highest SN of the N data or all the data corresponding to the first task, or the SN or the highest SN of the N data or all the data included in the first data set; or the SN of the data or the last data corresponding to the first task, or the SN of the data or the last data included in the first data set.

[0235] For example, "highest" can be included / replaced with "maximum". For example, "highest SN" can be included / replaced with "highest SN".

[0236] For example, the second state variable is the SN of the next newly generated data or PDU (or, AMD PDU). For example, the second state variable is TX_Next. Optionally, TX_Next is updated (e.g., TX_Next is incremented by 1) when the first device (or, AM RLC entity) constructs an AMD PDU with SN = TX_Next and contains the last segment of the RLC SDU.

[0237] Optionally, "the initial transmission of the first task or the first data set is completed, or the transmission of the first task or the first data set stops" can include / be replaced with: the second state variable is greater than the highest SN associated with the first task or the first data set.

[0238] For example, retransmission can include / be replaced with: RLC retransmission, or other types of retransmission. The specific settings can be configured according to the actual situation and are not limited.

[0239] Optionally, satisfying the first condition may include / be replaced by any of the following: satisfying the first condition and satisfying the second condition; or, satisfying the first condition and satisfying the third condition; or, satisfying the first condition, satisfying the second condition, and satisfying the third condition.

[0240] For example, the second condition includes: the remaining time for the first task or the first data set is less than or equal to the first threshold.

[0241] For example, the third condition includes: the first device acquires new transmission resources.

[0242] For example, the remaining time for the first task or the first data set can be understood as the time remaining until the latency requirement for the first task or the first data set is met; or, the latency requirement for the first task or the first data set minus the time consumed in transmitting the first task or the first data set; or, the latency requirement for the first task or the first data set minus the time elapsed since the first task or the first data set was generated; or, the latency requirement for the first task or the first data set minus the time elapsed since the first task or the first data set was obtained from the first device (or, the AS layer of the first device). For example, if the latency requirement for the first task is 3 seconds, meaning the data transmission for the first task needs to be completed within 3 seconds, and 1 second has been used when the first task is initially completed or stopped, then the remaining time for the first task is 2 seconds. That is, the remaining time is the latency requirement minus the time spent until the first task is initially transmitted or stopped. The first device can transmit the first task or the first data set again within the remaining 2 seconds.

[0243] For example, the first device (or the AS layer of the first device) may include / be replaced by: the PDCP layer, RLC layer, or SDAP layer of the first device.

[0244] For example, the first threshold can be preset, predefined by the protocol, or configured by the network side. It can be set flexibly according to the actual situation without any restrictions.

[0245] For example, if the remaining time for the first task or the first data set is less than or equal to the first threshold, it indicates that after the initial data transmission or transmission stops, the remaining time available for retransmission is limited. Retransmission using existing methods (such as RLC retransmission) is unlikely to meet the data latency requirements. Conversely, if the remaining time for the first task or the first data set is greater than the first threshold, it indicates that after the initial data transmission or transmission stops, the remaining time available for retransmission is substantial. Retransmission using existing methods is likely to meet the data latency requirements. Therefore, setting a second condition can prevent the first device from actively retransmitting when there is ample remaining time, thus avoiding resource waste.

[0246] For example, the remaining time for the first task or the first data set can be implemented using a timer. For instance, the remaining time for the first task or the first data set can include / be replaced with: the remaining duration of the first timer associated with the first task or the first data set.

[0247] For example, a first timer associated with a first task or a first data set may include / be replaced with: a first timer associated with the data corresponding to the first task (or, one or more data or the first data), or a first timer associated with the data included in the first data set (or, one or more data or the first data).

[0248] Optionally, when or after the first device (or the PDCP layer of the first device) acquires the first task or the first data set (or the data corresponding to the first task (or one or more data or the first data), or the data included in the first data set (or one or more data or the first data)), the first device (or the PDCP layer of the first device) starts the first timer associated with the first task or the first data set.

[0249] Optionally, the first timer can be used to monitor (or control) whether data is discarded, or the first timer can be used to control data discarding. Optionally, the first timer is a timer at the PDCP layer. For example, the first timer is discardTimer or discardTimerForLowImportance. Optionally, the first timer can be data-granular (e.g., one first timer for one piece of data) or task or data set-granular (e.g., one first timer for one task or data set).

[0250] For example, information related to "the first timer" can be found in [reference needed]. Figure 6B The content described in the embodiments will not be repeated here.

[0251] For example, "the first device acquires new transmission resources" can include / be replaced with: the first device acquires a transmission opportunity, or, the lower layer notifies the transmission opportunity. For example, downlink can include / be replaced with: the lower layer of the RLC layer, or, the lower layer of the first device's RLC layer, or, the MAC layer.

[0252] For example, newtransmission resources can be: MAC layer or PHY layer newtransmission resources, or resources used to perform HARQ newtransmission / initial transmission. For instance, after the first device acquires a newtransmission resource, it can use that resource for RLC retransmission, thus avoiding the transmission of RLC initial transmission data and RLC retransmission data on the same resource, which would cause both RLC initial transmission and RLC retransmission to fail. Therefore, setting a third condition allows the initial transmission data and retransmission data to be transmitted on different resources, such as on different MAC PDUs, thereby improving the data transmission success rate.

[0253] For example, after acquiring a new transmission resource, the first device can utilize that resource for RLC retransmission, thus preventing two RLC transmissions of the same data (e.g., initial RLC transmission and RLC retransmission, or two RLC retransmissions) from failing on the same resource / MAC PDU. Therefore, the third condition allows two RLC transmissions of the same data (e.g., initial RLC transmission and RLC retransmission, or two RLC retransmissions) to be transmitted on different resources / MAC PDUs, such as on different MAC PDUs, thereby improving the data transmission success rate. For instance, the third condition prevents two RLC transmissions of the first data (e.g., initial RLC transmission and RLC retransmission, or two RLC retransmissions) from occurring on the same MAC PDU, improving transmission reliability and communication quality.

[0254] Optionally, embodiments of this application may further include: performing a first task or retransmitting a first data set on new transmission resources.

[0255] In this way, the initial and retransmitted data of the first task or the first data set can be transmitted on different resources.

[0256] Optionally, the above conditions can be used according to the actual situation. For example, when there are few transmission resources, the first condition and the second condition can be used. That is, if the first condition and the second condition are met, the first device triggers the retransmission of the first task or the first data set without restriction.

[0257] For example, the first device triggering the retransmission of the first task or the first data set may include at least one of the following: the first device triggering the retransmission of one or more data (or, N data or some data or all data) in the first task or the first data set; or, for one or more data (or, N data or some data or all data) in the first task or the first data set in the cache, the first device triggering the retransmission.

[0258] For example, triggering the retransmission of the first task or the first data set can include / be replaced by: performing the retransmission of the first task or the first data set.

[0259] For example, the retransmission of a first task or a first data set by the first device may include at least one of the following: the first device retransmits one or more data (or N data or some data or all data) in the first task or the first data set; or, the first device retransmits one or more data (or N data or some data or all data) in the first task or the first data set in the buffer.

[0260] For example, one or more data (or, N data or some data or all data) in the first task or the first data set may include at least one of the following: one or more data (or, N data or some data or all data) corresponding to the first task; or, one or more data (or, N data or some data or all data) included in the first data set.

[0261] For example, retransmission can include / replace with: RLC retransmission.

[0262] For example, the first device can trigger the retransmission of all or part of the data in the first task or the first data set. For example, all or part of the data in the first task or the first data set can be data located in a cache.

[0263] For example, in this embodiment, retransmission can be once or multiple times, without limitation. For instance, when retransmission is multiple times, the first device can start retransmission only after acquiring the new transmission resource, meaning that each retransmission uses a new new transmission resource, and the data from two retransmissions is not transmitted in the same new transmission resource. This improves the success rate of data transmission.

[0264] Optionally, in this embodiment of the application, the first device may include / be replaced by: the RLC layer (or, RLC entity) of the first device.

[0265] When the first condition is met, the first device triggers a retransmission of the first task or the first data set. This enables the first device to actively and quickly retransmit after the initial transmission of the first task or the first data set is completed or stopped. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, ensuring that task data is transmitted within the task's latency requirements and improving communication quality. For example, through this embodiment, for the first RLC entity, even if the RLC window is not yet stuck (e.g., there is still other data that can be transmitted in the first RLC entity / buffer, such as data from the second task or the second data set), when the first condition is met, the first device triggers a retransmission of the first task or the first data set. This enables the first device to actively and quickly retransmit after the initial transmission of the first task or the first data set is completed or stopped. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, ensuring that task data is transmitted within the task's latency requirements and improving communication quality.

[0266] For example, Figure 6B Flowchart of the data transmission method provided in this application embodiment Figure 3 This method can be applied to the interaction between the first and second devices in the aforementioned communication system.

[0267] like Figure 6B As shown, the flow of this data transmission method is as follows:

[0268] Optionally, S01, the first device acquires the first data.

[0269] For example, the first data is data associated with (or, in, corresponding to, or included in) the first task or the first data set (e.g., a single data point, or any single data point). For example, the first data is: data corresponding to the first task (e.g., a single data point, or any single data point), or data included in the first data set (e.g., a single data point, or any single data point).

[0270] Optionally, the first data can be an RLC PDU, RLC SDU, PDCP SDU, or PDCP PDU.

[0271] For example, "the first device acquires the first data" can be understood as: the first device (or, the RLC layer of the first device) acquires the first data (e.g., RLC SDU). For example, the first device (or, the RLC layer of the first device) can acquire the first data from an upper layer (or, the layer above the RLC layer of the first device) or other devices (e.g., directly or indirectly). For example, the upper layer can include / be replaced by: the layer above the RLC layer, or, the PDCP layer.

[0272] For example, the first data can come from the application layer of the first device or from other devices, without restriction.

[0273] For example, content related to "the first task" and "the first dataset" can be found here. Figure 5 , Figure 6A The content described in the embodiments will not be repeated here.

[0274] Optionally, S01 or "the first device acquires the first data" may include / be replaced by: the first device acquires the first task or the first data set.

[0275] For example, content related to "the first device acquires the first data" or "the first device acquires the first task or the first data set" can be found in [reference needed]. Figure 5 , Figure 6A The relevant content in the embodiments will not be repeated here.

[0276] Optionally, embodiments of this application may further include: S01-1, the first device acquires the second data.

[0277] For example, the second data is data associated with (or, in, or corresponding to, or included in) the first task or the first data set (e.g., a single data point, or any data point). Alternatively, for example, the second data is data associated with (or, in, or corresponding to, or included in) the second task or the second data set (e.g., a single data point, or any data point). For example, the second data is: data corresponding to the first task (e.g., a single data point, or any data point), or data included in the first data set (e.g., a single data point, or any data point). Alternatively, for example, the second data is: data corresponding to the second task (e.g., a single data point, or any data point), or data included in the second data set (e.g., a single data point, or any data point).

[0278] For example, the content of the first device acquiring the second data is similar to that of the first device acquiring the first data. You can refer to the relevant introduction of the first device acquiring the first data above for understanding, and it will not be repeated here.

[0279] For example, content related to the "second task" and the "second dataset" can be found here. Figure 5 , Figure 6A The content described in the embodiments will not be repeated here.

[0280] Optionally, S01-1 or “the first device acquires the second data” may include / be replaced with: the first device acquires the second task or the second data set.

[0281] For example, content related to "the first device acquires the second data" or "the first device acquires the second task or the second data set" can be found in [reference needed]. Figure 5 , Figure 6A The relevant content in the embodiments will not be repeated here.

[0282] It is understood that the order in which the first device acquires the first data and the second data is not limited. That is, the first device can acquire the first data first and then the second data, or the first device can acquire the second data first and then the first data. The specific order can be determined based on the actual time situation and is not restricted. For example, the first device can acquire the first data first and then the second data.

[0283] Optionally, in any one or more of S01, S01-1, the first device may include / be replaced by: the RLC layer (or, RLC entity) of the first device.

[0284] S02, the first condition is met, and the first device triggers the retransmission of the first data.

[0285] For example, the first condition includes the initial transmission of the first task or the first data set being completed, or the transmission of the first task or the first data set being stopped, or the second state variable being greater than the highest SN associated with the first task or the first data set.

[0286] For example, you can refer to the content related to the "first condition". Figure 6A The content described in the embodiments will not be repeated here.

[0287] For example, "initial download" can include / be replaced with "new download", or "RLC initial download", or "RLC new download".

[0288] For example, the initial transmission completion of the first task or the first data set may include / be replaced by: the initial transmission completion of N data or all data corresponding to the first task, or the initial transmission completion of N data or all data included in the first data set.

[0289] For example, the initial transmission completion of the first task or the first data set may include / be replaced by: the first task or the first data set does not exist in the cache or the transmission cache; or, except for the data waiting for confirmation, the first task or the first data set does not exist in the cache or the transmission cache.

[0290] For example, information related to "data awaiting confirmation" can be found here. Figure 5 or Figure 6A The content described in the embodiments will not be repeated here.

[0291] For example, the cache may include / be replaced by: a transport cache. Or, for example, the cache may include / be replaced by: a transport cache and a retransmission cache. For example, the cache may include / be replaced by: a cache of the first RLC entity, or, a transport cache of the first RLC entity, or, a transport cache and a retransmission cache of the first RLC entity.

[0292] For example, the cessation of transmission of the first task or the first data set may include / be replaced by: the cessation of transmission of N data or all data corresponding to the first task, or the cessation of transmission of N data or all data included in the first data set.

[0293] For example, the suspension of the first task or the first data set transmission may include / be replaced by: the first task or the first data set is not present in the cache except for the data awaiting confirmation.

[0294] For example, the highest SN associated with the first task or the first data set may include / be replaced with: the highest SN of the data in the first task or the first data set, or the SN of the data or the last data in the first task or the first data set, or the SN of all the data in the first task or the first data set, or the SN or the highest SN of the N data or all the data corresponding to the first task, or the SN or the highest SN of the N data or all the data included in the first data set; or the SN of the data or the last data corresponding to the first task, or the SN of the data or the last data included in the first data set.

[0295] For example, "highest" can be included / replaced with "maximum". For example, "highest SN" can be included / replaced with "highest SN".

[0296] For example, the second state variable is the SN of the next newly generated data or PDU (or, AMD PDU). For example, the second state variable is TX_Next. Optionally, TX_Next is updated (e.g., TX_Next is incremented by 1) when the first device (or, AM RLC entity) constructs an AMD PDU with SN = TX_Next and contains the last segment of the RLC SDU.

[0297] Optionally, "the initial transmission of the first task or the first data set is completed, or the transmission of the first task or the first data set stops" can include / be replaced with: the second state variable is greater than the highest SN associated with the first task or the first data set.

[0298] For example, by using the first condition, we can avoid blindly retransmitting the first data before the initial transmission of the first task or the first data set is completed, which can save resources and help improve system capacity.

[0299] For example, triggering the retransmission of the first data can include / be replaced with: performing the retransmission of the first data.

[0300] For example, retransmission can include / be replaced with: RLC retransmission, or other types of retransmission. The specific settings can be configured according to the actual situation and are not limited. For example, the retransmission of the first data can include / be replaced with: RLC retransmission of the first data, or other types of retransmission of the first data. The specific settings can be configured according to the actual situation and are not limited.

[0301] Optionally, the first data is considered important data. Optionally, the data corresponding to the first task is considered important data, or the data included in the first data set is considered important data.

[0302] Optionally, the first data is the data awaiting confirmation.

[0303] For example, information related to "data awaiting confirmation" can be found here. Figure 5 or Figure 6A The content described in the embodiments will not be repeated here.

[0304] For example, data awaiting confirmation can refer to data in the cache that needs confirmation but cannot be transmitted at present.

[0305] For example, data awaiting confirmation can include / be replaced with: data that has already been sent and is awaiting confirmation. For example, "data that has already been sent and is awaiting confirmation" can be understood as the first device transmitting (or retransmitting or retransmitting) the first data, but the first device has not yet received a status report from the second device, that is, the first device does not know whether the transmitted first data failed or was transmitted successfully.

[0306] Optionally, the data awaiting confirmation may include RLC SDUs or RLC SDU segments awaiting confirmation, or other types of data. The specific settings can be configured according to the actual situation and are not limited.

[0307] For example, the first data is data awaiting confirmation, including: the first device has not received a status report / affirmation for the first data, or the first device has not received a status report / affirmation indicating that the first data was successfully received.

[0308] Optionally, the sequence number (SN) of the first data is located in the sending window.

[0309] For example, the SN of the first data is located in the transmission window and can include / be replaced by: the SN of the first data is greater than or equal to the first state variable, and / or, the SN of the first data is less than or equal to the second state variable or the sum of the first state variable and the window length or the highest SN of the data to be transmitted.

[0310] For example, the first state variable is the lower limit (or lower boundary or lower edge) of the transmission window and / or the minimum serial number (SN) of the data awaiting acknowledgment. For example, the first state variable is the SN of the next data or SDU or RLC SDU that has been sequentially received with a positive acknowledgment. For example, the first state variable is TX_Next_Ack.

[0311] For example, the window length = 2^(number of bits in the SN - 1). For example, when using a 12-bit SN, the window length = 2048; when using an 18-bit SN, the window length = 131072. For example, the window length is AM_Window_Size.

[0312] For example, the highest SN of the data being transmitted can include / be replaced by: the highest SN of the data or PDU or AMD PDU that is delivered to the lower layer (or, the layer below the RLC layer of the first device). For example, the lower layer (or, the layer below the RLC layer of the first device) can include / be replaced by: the MAC layer, or, the PHY layer, or, the protocol layer below the RLC layer of the first device, such as the MAC layer, or, the physical layer, etc.

[0313] Optionally, satisfying the first condition may include / be replaced by: satisfying the first condition and satisfying at least one of the second, third, fourth, fifth, sixth, seventh, and eighth conditions. Alternatively, satisfying the first condition may include / be replaced by: satisfying at least one of the first, second, third, fourth, fifth, sixth, seventh, and eighth conditions.

[0314] For example, if the first condition is met, and at least one of the second, third, fourth, fifth, and sixth conditions is met, the first device triggers the retransmission of the first data.

[0315] For example, if at least one of the first, second, third, fourth, fifth, and sixth conditions is met, the first device triggers the retransmission of the first data.

[0316] For example, the second condition includes: the first duration associated with the first data is less than or equal to the first threshold, or the second timer associated with the first data times out.

[0317] For example, the first threshold can be preset, predefined by the protocol, or configured by the network side. It can be set flexibly according to the actual situation without any restrictions.

[0318] Optionally, the first duration of the first data association may include / be replaced with: the remaining time of the first task or the first data set.

[0319] For example, information related to "remaining time for the first task or the first dataset" can be found here. Figure 6A The content described in the embodiments will not be repeated here.

[0320] For example, the first duration associated with the first data can be represented by a timer.

[0321] In one optional implementation, the first duration can be the remaining duration of a first timer. Alternatively, the first duration associated with the first data can be the remaining duration of a first timer associated with the first data, or the remaining duration of a first timer associated with a first task or a first data set.

[0322] For example, when or after the first device (or the PDCP layer of the first device) acquires the first data (e.g., PDCP SDU), the first device (or the PDCP layer of the first device) starts the first timer associated with the first data.

[0323] For example, when or after the first device (or the PDCP layer of the first device) acquires the first data (e.g., PDCP SDU), a first timer is started for the first data.

[0324] For example, the acquisition of first data (e.g., PDCP SDU) by the first device (or the PDCP layer of the first device) can include / be replaced by: the first device (or the PDCP layer of the first device) can acquire the first data from an upper layer (or the layer above the PDCP layer of the first device) or other devices (e.g., directly or indirectly). For example, the upper layer (or the layer above the PDCP layer of the first device) can be: a protocol layer above the PDCP layer of the first device, such as the SDAP layer, or the application layer, or the NAS layer, etc., without limitation.

[0325] Optionally, when or after the first device (or the PDCP layer of the first device) acquires the first task or the first data set (or the data corresponding to the first task (or one or more data or the first data), or the data included in the first data set (or one or more data or the first data)), the first device (or the PDCP layer of the first device) starts the first timer associated with the first task or the first data set.

[0326] For example, the acquisition of a first task or a first data set (or the data corresponding to the first task (or one or more data or the first data), or the data included in the first data set (or one or more data or the first data)) by the first device (or the PDCP layer of the first device) may include / be replaced by: the first device (or the PDCP layer of the first device) may acquire (e.g., directly or indirectly) the first task or the first data set (or the data corresponding to the first task (or one or more data or the first data), or the data included in the first data set (or one or more data or the first data)) from an upper layer (or the upper layer of the PDCP layer of the first device) or other devices. For example, the upper layer (or the upper layer of the PDCP layer of the first device) may be: a protocol layer above the PDCP layer of the first device, such as the SDAP layer, or the application layer, or the NAS layer, etc., without limitation.

[0327] It should be noted that "the first device (or the PDCP layer of the first device) acquires the first data" is not necessarily completely identical to "the first device acquires the first data" or "the first device (or the RLC layer of the first device) acquires the first data" in S01, and this application does not impose any restrictions. For example, the first data may reach the RLC layer after undergoing some processing at the PDCP layer (e.g., adding a PDCP header, security processing or integrity protection processing (e.g., adding MAC-I), header compression, etc., at least one of these). Alternatively, the first data at the PDCP layer and the first data at the RLC layer are not necessarily completely identical, and this application does not impose any restrictions.

[0328] Optionally, the first timer can be data-granular (e.g., one first timer for one piece of data) or task or data set-granular (e.g., one first timer for one task or data set). Optionally, the first timer can be used to monitor (or control) whether to discard the first data, the first task, or the first data set, or the first timer can be used to control the discarding of the first data, the first task, or the first data set. For example, if the first timer associated with the first data times out, the first device (or, the PDCP layer of the first device) performs at least one of the following: discarding the first data, discarding the first task or the first data set, or sending (or sending to the lower layer (or the layer below the PDCP layer of the first device)) a discard indication corresponding to the first data, or sending (or sending to the lower layer) a discard indication corresponding to the first task or the first data set. For example, if the first timer associated with the first task or the first data set times out, the first device (or, the PDCP layer of the first device) performs at least one of the following: discarding the first task or the first data set, or sending (or sending to the lower layer) a discard indication corresponding to the first task or the first data set. For example, sending may include / be replaced by: a notification, or an indication.

[0329] For example, the first device discarding the first task or the first data set can be understood as: discarding the data corresponding to the first task (e.g., one or more or all data), or discarding the data included in the first data set (e.g., one or more or all data).

[0330] For example, sending (or sending to a lower layer (or a layer below the PDCP layer of the first device)) can include / be replaced by: indicating (or indicating to a lower layer (or a layer below the PDCP layer of the first device)). For example, lower layer (or a layer below the PDCP layer of the first device) can include / be replaced by: a layer below the PDCP layer, or a layer below the PDCP layer of the first device, or an RLC layer.

[0331] For example, the discard instruction corresponding to the first task or the first data set can be understood as: the discard instruction corresponding to the data of the first task (e.g., one or more or all data), or the discard instruction corresponding to the data included in the first data set (e.g., one or more or all data).

[0332] Optionally, the first timer is a timer from the PDCP layer. For example, the first timer is discardTimer or discardTimerForLowImportance.

[0333] Alternatively, the first duration can be the remaining duration of the second timer. Or, the first duration associated with the first data can be the remaining duration of the second timer associated with the first data.

[0334] Optionally, embodiments of this application may further include: when or after the first device (or, the RLC layer of the first device) performs the initial transmission / transmission of the first data, or, if the first device (or, the RLC layer of the first device) performs the initial transmission / transmission of the first data, the first device starts a second timer associated with the first data. For example, this step can be a standalone embodiment, independent of other steps.

[0335] Optionally, embodiments of this application may further include: during or after the initial transmission / transmission of a first task or a first data set (or, the data corresponding to the first task (or, one or more or all data or the first or last data), or, the data included in the first data set (or, one or more or all data or the first or last data)) by the first device (or, the RLC layer of the first device), or, if during or after the initial transmission / transmission of a first task or a first data set (or, the data corresponding to the first task (or, one or more or all data or the first or last data), or, the data included in the first data set (or, one or more or all data or the first or last data)) by the first device (or the RLC layer of the first device), the first device starts a second timer associated with the first data (or a second timer associated with the first task or the first data set). For example, this step can be a standalone embodiment, independent of other steps.

[0336] For example, "the first device (or the RLC layer of the first device) performs the initial transmission / transmission of the first data" can include / be replaced by: the initial transmission / transmission of the first data is completed; or, the first device (or the RLC layer of the first device) delivers the first data to the lower layer; or, the first device (or the RLC layer of the first device) delivers the first data to the lower layer for the first time. For example, downlink can include / be replaced by: the lower layer of the RLC layer, or, the lower layer of the RLC layer of the first device, or, the MAC layer.

[0337] For example, "initial download" can include / be replaced with "new download", or "RLC initial download", or "RLC new download".

[0338] For example, a transmission may include / be replaced by at least one of the following: RLC transmission, or, initial transmission, or, retransmission, or, RLC initial transmission, or, RLC new transmission, or, RLC retransmission, or, RLC retransmission.

[0339] Optionally, embodiments of this application may further include: the first device (or, the RLC layer of the first device) receiving a discard instruction corresponding to the first data, the first task, or the first data set; or, if the first device (or, the RLC layer of the first device) receives a discard instruction corresponding to the first data, the first task, or the first data set, the first device (or, the RLC layer of the first device) stopping the second timer associated with the first data (or the second timer associated with the first task or the first data set). For example, this step can be a standalone embodiment, independent of other steps.

[0340] Optionally, embodiments of this application may further include: the first device (or, the RLC layer of the first device) receiving a positive acknowledgment / negative acknowledgment / status report from the second device regarding the first data; or, if the first device (or, the RLC layer of the first device) receives a positive acknowledgment / negative acknowledgment / status report from the second device regarding the first data, the first device (or, the RLC layer of the first device) stops the second timer associated with the first data (or the second timer associated with the first task or the first data set). For example, this step can be a standalone embodiment, independent of other steps.

[0341] Optionally, embodiments of this application may further include: satisfying a first condition and at least one of a second, third, fourth, fifth, sixth, seventh, and eighth condition; or, satisfying at least one of a first, second, third, fourth, fifth, sixth, seventh, and eighth condition; or, after the first device triggers retransmission of the first data or after the first device triggers retransmission of the first data; or, after the first device performs retransmission of the first data or after the first device performs retransmission of the first data, the first device (or, the RLC layer of the first device) stops the second timer associated with the first data (or the second timer associated with the first task or the first data set). For example, this step can be a standalone embodiment, independent of other steps.

[0342] For example, the second timer associated with the first data may include / be replaced with: a second timer associated with the first task or the first data set.

[0343] It should be noted that the content related to the second timer (e.g., start conditions, or stop conditions) can be a standalone implementation, independent of other steps.

[0344] Optionally, the second timer can be a timer for the RLC layer.

[0345] For example, if the first duration associated with the first data (or the remaining time of the first timer associated with the first data, or the remaining time of the second timer associated with the first data) is less than or equal to the first threshold, it indicates that the remaining time available for retransmission is limited. If retransmission is triggered / executed in the existing manner, it is highly likely that the data latency requirements cannot be met (or, it is highly likely that retransmission cannot be triggered / executed in a timely manner within the data latency requirements). In other words, if the first duration associated with the first data (or the remaining time of the first timer associated with the first data, or the remaining time of the second timer associated with the first data) is greater than the first threshold, it indicates that the remaining time available for retransmission is substantial. If retransmission is triggered / executed in the existing manner, it is highly likely that the data latency requirements can be met (or, it is highly likely that retransmission can be triggered / executed in a timely manner within the data latency requirements).

[0346] For example, the second condition can trigger / execute the retransmission of the first data in a timely and rapid manner, thereby reducing transmission (or retransmission) latency and tail latency of task-level transmission. This ensures that task data is transmitted within the task's latency requirements, improving communication quality. And / or, the second condition can avoid multiple executions of "the first device triggers the retransmission of the first data," saving resources and improving system capacity.

[0347] For example, the third condition includes: the first device acquires new transmission resources.

[0348] For example, you can refer to the content related to the "third condition". Figure 6A The content described in the embodiments will not be repeated here.

[0349] For example, "the first device acquires new transmission resources" can include / be replaced with: the first device acquires a transmission opportunity, or, the lower layer notifies the transmission opportunity. For example, downlink can include / be replaced with: the lower layer of the RLC layer, or, the lower layer of the first device's RLC layer, or, the MAC layer.

[0350] For example, newtransmission resources can be: MAC layer or PHY layer newtransmission resources, or resources used to perform HARQ newtransmission / initial transmission. For example, after the first device acquires a newtransmission resource, it can use that resource for RLC retransmission or retransmission of the first data, thereby avoiding two RLC transmissions of the same data (e.g., RLC initial transmission and RLC retransmission, or two RLC retransmissions) from being transmitted on the same resource / MAC PDU, causing both RLC transmissions (e.g., RLC initial transmission and RLC retransmission, or two RLC retransmissions) to fail. Therefore, through the third condition, two RLC transmissions of the same data (e.g., RLC initial transmission and RLC retransmission, or two RLC retransmissions) can be transmitted on different resources / MAC PDUs, such as in different MAC PDUs, thereby improving the data transmission success rate.

[0351] For example, by using the third condition, two RLC transmissions of the first data (e.g., RLC initial transmission and RLC retransmission, or two RLC retransmissions) can be avoided in the same MAC PDU, which can improve the reliability of transmission and improve the quality of communication.

[0352] Optionally, embodiments of this application may further include: performing retransmission of the first data on new transmission resources.

[0353] For example, the fourth condition includes: the first device (or the RLC layer of the first device) has not received a discard instruction corresponding to the first data or the first task or the first data set.

[0354] For example, the absence of a discard instruction corresponding to the first data, the first task, or the first data set can include / be replaced by: the first timer associated with the first data not having expired, and the first timers associated with at least one other data or all other data associated with the first task or the first data set not having expired; or, the first timers associated with at least one data or all data associated with the first task or the first data set not having expired; or, the first timer associated with the first task or the first data set not having expired. For example, "other" can include / be replaced by: data other than the first data. For example, "at least one other data" can include / be replaced by: at least one data other than the first data. For example, "all other data" can include / be replaced by: all data other than the first data.

[0355] Optionally, if the first device receives a discard instruction corresponding to the first data, the first task, or the first data set, the first device stops the second timer associated with the first data.

[0356] For example, "not received" can include / be replaced with: "not received from the upper layer (or, the upper layer of the RLC layer of the first device)".

[0357] For example, "received" can include / be replaced with: received from an upper layer (or, the layer above the RLC layer of the first device). For example, "upper layer" can include / be replaced with: the layer above the RLC layer, or, the PDCP layer.

[0358] For example, the discard indication received by the first device corresponding to the first data or the first task or the first data set may include / be replaced by: the first timer associated with the first data timeout, and / or, at least one of the first timers associated with at least one other data associated with the first task or the first data set timeout; or, at least one of the first timers associated with at least one data or all data associated with the first task or the first data set timeout; or, the first timer associated with the first task or the first data set timeout.

[0359] For example, by using the fourth condition, meaningless retransmission of the first data can be avoided, which can save resources and help improve system capacity.

[0360] For example, the fifth condition includes: the first data is data awaiting confirmation.

[0361] For example, by using the fifth condition, meaningless retransmission of the first data can be avoided, resources can be saved, and system capacity can be improved.

[0362] For example, the sixth condition includes: the sequence number (SN) of the first data is located in the sending window.

[0363] For example, by using the sixth condition, meaningless retransmission of the first data can be avoided, resources can be saved, and system capacity can be improved.

[0364] For example, the seventh condition includes: the second state variable is greater than the SN of the first data.

[0365] For example, by using the seventh condition, we can avoid blindly retransmitting the first data before the initial transmission of the first data is completed, which can save resources and help improve system capacity.

[0366] For example, the eighth condition includes: the first flag, the first variable, or the first counter is A.

[0367] For example, A can be 0 or 1.

[0368] For example, a first flag, first variable, or first counter is associated with first data, a first task, or a first data set. For example, the initial value of the first flag, first variable, or first counter is A. For example, a first condition is met, and at least one of a second, third, fourth, fifth, sixth, seventh, or eighth condition is met; or, at least one of a first, second, third, fourth, fifth, sixth, seventh, or eighth condition is met; or, after the first device triggers the retransmission of the first data; or, after the first device performs the retransmission of the first data; or, after the first device triggers the retransmission of the first task or the first data set; or, after the first device performs the retransmission of the first task or the first data set, the first flag, first variable, or first counter is updated to B (e.g., A is incremented or decremented by 1, or A is incremented or decremented by 1 to become B). For example, this step can be a standalone embodiment, independent of other steps. For example, B can be 1 or 0. For example, A = B + 1, or A = B - 1.

[0369] For example, the content related to "retransmission of the first task or the first data set" can be found in [reference]. Figure 6A The content described in the embodiments will not be repeated here.

[0370] It should be noted that the content related to the first flag, the first variable, or the first counter (e.g., update conditions) can be a standalone embodiment, independent of other steps.

[0371] For example, by using the eighth condition, the repeated execution of "the first device triggers the retransmission of the first data" can be avoided, which can save resources and help improve system capacity.

[0372] Optionally, the above conditions can be used according to the actual situation.

[0373] For example, if the first condition is met, the retransmission of the first data is triggered.

[0374] For example, if the first condition and the fifth condition are met, the first device triggers the retransmission of the first data.

[0375] For example, if the first condition and the sixth condition are met, the first device triggers the retransmission of the first data.

[0376] For example, if the first condition, the fifth condition, and the sixth condition are met, the first device triggers the retransmission of the first data.

[0377] For example, if the first condition, the fifth condition, the sixth condition, and the second condition are met, the first device triggers the retransmission of the first data.

[0378] For example, if the first condition, the fifth condition, the sixth condition, the second condition, and the fourth condition are met, the first device triggers the retransmission of the first data.

[0379] For example, if the first condition, the fifth condition, the sixth condition, and the third condition are met, the first device triggers the retransmission of the first data.

[0380] Optionally, the "triggering retransmission of the first data" in this embodiment can be once or multiple times, without limitation. For example, when "triggering retransmission of the first data" is multiple times, the first device can start a new retransmission after acquiring the new transmission resource, that is, each retransmission uses a different new transmission resource, i.e., the data from two retransmissions is not transmitted in the same new transmission resource. In this way, the success rate of data transmission can be improved.

[0381] For example, if you want to limit an active retransmission to only one, you can do so using a flag, a variable, a counter (e.g., via an eighth condition) or a second timer (e.g., via a second condition, or by stopping a second timer). For instance, setting a flag, variable, or counter to 0 can trigger a retransmission, while setting it to 1 can prevent a retransmission.

[0382] Optionally, embodiments of this application may further include: a first device sending first data, and correspondingly, a second device receiving the first data.

[0383] The above Figure 6BIn this embodiment, if the first condition is met, the first device triggers the retransmission of the first data. This enables the first device to actively and quickly trigger / execute the retransmission of the first data after the initial transmission of the first task or the first data set is completed or the transmission stops. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, thereby ensuring that task data is transmitted within the time limit of the task and improving communication quality. For example, through this embodiment, for the first RLC entity, even if the RLC window is not stuck (e.g., there is still other data that can be transmitted in the first RLC entity / buffer, such as data of the second task or the second data set), if the first condition is met, the first device triggers the retransmission of the first data. This enables the first device to actively and quickly trigger / execute the retransmission of the first data after the initial transmission of the first task or the first data set is completed or the transmission stops. This reduces transmission (or retransmission) latency and the tail latency of task-level transmission, thereby ensuring that transmission is completed within the time limit of the data transmission and improving communication quality.

[0384] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; "and / or" in this text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.

[0385] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.

[0386] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.

[0387] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.

[0388] It should be understood that in this application, "at least one (item)" means one or more. "More than one" means two or more. "At least two (items)" means two or three or more. "And / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple. Both "...when" and "if" indicate that a corresponding action will be taken under certain objective circumstances. They are not time limits, nor do they require a judgment action to be taken when the action is taken, nor do they imply any other limitations.

[0389] In this application, "instruction" may include: direct instruction, or indirect instruction, or explicit instruction, or implicit instruction.

[0390] In this application, "including" can include: direct inclusion, indirect inclusion, explicit inclusion, or implicit inclusion.

[0391] It should be understood that existing technologies may change as technical solutions evolve, and the technical solutions provided in this application are not limited to the existing technologies provided.

[0392] It should be noted that different embodiments or some steps (e.g., any one or more steps) in different embodiments of this application can be combined with each other to form new embodiments. It should also be noted that the scope of this application is not limited to including optional steps in a certain embodiment, mandatory steps in a certain embodiment, or both optional and mandatory steps in a certain embodiment.

[0393] It should be noted that, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions between different embodiments are consistent and can be referenced in each other.

[0394] It should be noted that the order of the steps in the embodiments of this application is not limited by this application.

[0395] It should be noted that the order in which different conditions are judged in the embodiments of this application is not limited by this application.

[0396] It should be noted that the terms "after" and "time" in this application do not strictly limit the specific point in time.

[0397] It should be noted that the nouns and terms used in this application are merely examples and may be other names, which are not limited in this application.

[0398] The above combination Figure 5 , Figure 6A , Figure 6B The data transmission method provided in the embodiments of this application is described in detail below. Figures 7-8 This document describes in detail the communication apparatus used to perform the data transmission method provided in the embodiments of this application.

[0399] Figure 7 This is a schematic diagram of the structure of the communication device provided in the embodiments of this application. Figure 1 For example, such as Figure 7 As shown, the communication device 700 includes a processing module 701 and a transceiver module 702. For ease of explanation, Figure 7 Only the main components of the communication device are shown.

[0400] In some embodiments, the communication device 700 may be adapted to the above-described communication system to perform... Figure 5 The function of the first device in the data transmission method shown.

[0401] The processing module 701 is used to satisfy a first condition and determine that the first data includes first indication information; wherein the first condition includes: the first data is the last data in the first task or the first data set, and the first indication information is used to request a status report; the transceiver module 702 is used to send the first data.

[0402] In one possible design, the first data is the last data in the first task or the first data set, including at least one of the following: the first data is the last data in the first task or the first data set that can be transmitted; after sending the first data, there is no data in the first task or the first data set in the cache; or, after sending the first data, there is no data in the first task or the first data set in the cache except for data waiting for confirmation.

[0403] Optionally, the cache includes a transport cache; or, the cache includes a transport cache and a retransmission cache.

[0404] Optionally, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

[0405] Optionally, the data awaiting confirmation includes RLC SDUs or RLC SDU segments awaiting confirmation.

[0406] In one possible design, the first data is the RLC PDU.

[0407] In one possible design, the first indication information is carried in a polling bit.

[0408] In one possible design, the first task is associated with the first data set; or, the first data set is associated with the first task.

[0409] In one possible design, the first task is any one of multiple tasks.

[0410] Optionally, the transceiver module 702 may include a transmitting module ( Figure 7 (not shown in the image) and receiving module ( Figure 7 (Not shown in the diagram). The transmitting module implements the transmitting function of the communication device 700, and the receiving module implements the receiving function of the communication device 700.

[0411] Optionally, the communication device 700 may also include a storage module. Figure 7 (Not shown in the image), the storage module stores programs or instructions. When the processing module 701 executes the program or instructions, the communication device 700 can perform the above-described method. Figure 5 The function of the first device in the method shown.

[0412] It is understood that the communication device 700 may be a terminal device or a network device, or it may be a chip (system) or other component or assembly that can be set in a terminal device or a network device, or it may be a device that includes a terminal device or a network device. This application does not limit it in this regard.

[0413] In addition, the technical effects of the communication device 700 can be referenced. Figure 5 The technical effects of the data transmission method shown will not be elaborated here.

[0414] In some embodiments, the communication device 700 may be adapted to the above-described communication system to perform the above-described... Figure 6A The function of the first device in the method shown.

[0415] The processing module 701 is used to acquire a first task or a first data set; and to trigger the retransmission of the first task or the first data set when a first condition is met; wherein the first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of the transmission of the first task or the first data set.

[0416] In one possible design, the initial transmission of the first task or the first data set is completed when: the transmission buffer does not contain data for the first task or the first data set; or, except for data awaiting confirmation, the transmission buffer does not contain data for the first task or the first data set.

[0417] In one possible design, the transmission of the first task or the first data set stops when: apart from the data awaiting confirmation, there is no data in the cache for the first task or the first data set.

[0418] Optionally, the cache includes a transport cache, or the cache includes a transport cache and a retransmission cache.

[0419] Optionally, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

[0420] Optionally, the data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

[0421] In one possible design scheme, satisfying the first condition includes any one of the following: satisfying the first condition and satisfying the second condition; satisfying the first condition and satisfying the third condition; or, satisfying the first condition, satisfying the second condition, and satisfying the third condition; wherein the second condition includes: the remaining time of the first task or the first data set is less than or equal to the first threshold; the third condition includes: acquiring new transmission resources.

[0422] Optionally, the transceiver module 702 is specifically used to perform the first task or the retransmission of the first data set on the new transmission resources.

[0423] In one possible design, triggering the retransmission of the first task or the first data set includes at least one of the following: triggering the retransmission of at least one data in the first task or the first data set; or, triggering the retransmission for at least one data in the first task or the first data set in the cache.

[0424] In one possible design, retransmission includes RLC retransmission.

[0425] In one possible design, the first task is associated with the first data set; or, the first data set is associated with the first task.

[0426] In one possible design, the first task is any one of multiple tasks.

[0427] Optionally, the transceiver module 702 may include a transmitting module ( Figure 7 (not shown in the image) and receiving module ( Figure 7(Not shown in the diagram). The transmitting module implements the transmitting function of the communication device 700, and the receiving module implements the receiving function of the communication device 700.

[0428] Optionally, the communication device 700 may also include a storage module. Figure 7 (Not shown in the image), the storage module stores programs or instructions. When the processing module 701 executes the program or instructions, the communication device 700 can perform the above-described method. Figure 6A The function of the first device in the method shown.

[0429] It is understood that the communication device 700 may be a terminal device or a network device, or it may be a chip (system) or other component or assembly that can be set in a terminal device or a network device, or it may be a device that includes a terminal device or a network device. This application does not limit it in this regard.

[0430] In addition, the technical effects of the communication device 700 can be referenced. Figure 6A The technical effects of the data transmission method shown will not be elaborated here.

[0431] In some embodiments, the communication device 700 may be adapted to the above-described communication system to perform the above-described... Figure 6B The function of the first device in the method shown.

[0432] The processing module 701 is used to acquire first data, which is data associated with the first task or the first data set. If a first condition is met, the retransmission of the first data is triggered; the first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of transmission of the first task or the first data set.

[0433] In one possible design scheme, satisfying the first condition also includes satisfying at least one of the following conditions: Condition 1 includes: the first data is data awaiting confirmation; Condition 2 includes: the sequence number (SN) of the first data is located in the sending window; Condition 3 includes: the first duration associated with the first data is less than or equal to the first threshold, or the second timer associated with the first data times out; Condition 4 includes: no discard indication corresponding to the first data or the first task or the first data set has been received; Condition 5 includes: new transmission resources have been acquired.

[0434] In one possible design, the sequence number (SN) of the first data is located in the transmission window, including: the SN of the first data is greater than or equal to a first state variable, and / or, the SN of the first data is less than or equal to a second state variable or the sum of the first state variable and the window length or the highest SN of the data to be transmitted; wherein, the first state variable is the lower limit of the transmission window or the minimum SN of the data awaiting acknowledgment; the second state variable is the SN of the next newly generated data or PDU.

[0435] In one possible design, the failure to receive a discard instruction corresponding to the first data, the first task, or the first data set includes: the first timer associated with the first data has not expired, and the first timers associated with at least one other data or all other data associated with the first task or the first data set have not expired; or, the first timers associated with at least one data or all other data associated with the first task or the first data set have not expired.

[0436] In one possible design, the first duration is the remaining duration of either the first timer or the second timer.

[0437] In one possible design, the processing module 701 is used to start a first timer associated with the first data when or after acquiring the first data; and / or to start a second timer associated with the first data when or after performing the initial transmission of the first data.

[0438] In one possible design, if a discard instruction corresponding to the first data, the first task, or the first data set is received, the processing module 701 stops the second timer associated with the first data.

[0439] In one possible design, the initial transmission of the first task or the first data set is completed when: the data of the first task or the first data set is not present in the transmission buffer; or, except for the data awaiting confirmation, the data of the first task or the first data set is not present in the transmission buffer.

[0440] In one possible design, the transmission of the first task or the first data set is stopped, including: the first task or the first data set does not exist in the cache except for the data waiting for confirmation.

[0441] In one possible design, the cache includes a transmission cache, or the cache includes a transmission cache and a retransmission cache.

[0442] In one possible design, the data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

[0443] In one possible design, the data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

[0444] In one possible design, the first data is an RLC protocol data unit (PDU) or an RLC SDU.

[0445] In one possible design, retransmission includes RLC retransmission.

[0446] In one possible design, the first task is associated with the first data set; or, the first data set is associated with the first task.

[0447] In one possible design, the first task is any one of multiple tasks.

[0448] Optionally, the transceiver module 702 may include a transmitting module ( Figure 7 (not shown in the image) and receiving module ( Figure 7 (Not shown in the diagram). The transmitting module implements the transmitting function of the communication device 700, and the receiving module implements the receiving function of the communication device 700.

[0449] Optionally, the communication device 700 may also include a storage module. Figure 7 (Not shown in the image), the storage module stores programs or instructions. When the processing module 701 executes the program or instructions, the communication device 700 can perform the above-described method. Figure 6B The function of the first device in the method shown.

[0450] It is understood that the communication device 700 may be a terminal device or a network device, or it may be a chip (system) or other component or assembly that can be set in a terminal device or a network device, or it may be a device that includes a terminal device or a network device. This application does not limit it in this regard.

[0451] In addition, the technical effects of the communication device 700 can be referenced. Figure 6B The technical effects of the data transmission method shown will not be elaborated here.

[0452] Figure 8 Schematic diagram of the communication device provided in the embodiments of this application Figure 2 For example, the communication device may be a terminal device or a network device, or it may be a chip (system) or other component or assembly that can be disposed in the terminal device or network device. Figure 8 As shown, the communication device 800 may include a processor 801. Optionally, the communication device 800 may also include a memory 802 and / or a transceiver 803. The processor 801 is coupled to the memory 802 and the transceiver 803, for example, they may be connected via a communication bus.

[0453] The following is combined with Figure 8 A detailed description of each component of the communication device 800 is provided below:

[0454] The processor 801 is the control center of the communication device 800. It can be a single processor or a collective term for multiple processing elements. For example, the processor 801 can be one or more central processing units (CPUs), application-specific integrated circuits (ASICs), or one or more integrated circuits configured to implement the embodiments of this application, such as one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs).

[0455] Optionally, the processor 801 can perform various functions of the communication device 800, such as performing the data transmission method described above, by running or executing software programs stored in the memory 802 and calling data stored in the memory 802.

[0456] In a specific implementation, as one example, the processor 801 may include one or more CPUs, for example... Figure 8 CPU0 and CPU1 are shown in the diagram.

[0457] In a specific implementation, as one example, the communication device 800 may also include multiple processors, for example... Figure 8 The processors 801 and 804 are shown. Each of these processors can be a single-core processor or a multi-core processor. Here, "processor" can refer to one or more devices, circuits, and / or processing cores used to process data (e.g., computer program instructions).

[0458] The memory 802 is used to store the software program that executes the solution of this application, and is controlled by the processor 801 to execute it. The specific implementation method can be referred to the above method embodiment, and will not be repeated here.

[0459] Optionally, the memory 802 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. The memory 802 may be integrated with the processor 801 or exist independently, and may be connected via the interface circuit of the communication device 800. Figure 8 (Not shown in the image) is coupled to the processor 801, but this application embodiment does not specifically limit this.

[0460] Transceiver 803 is used for communication with other communication devices. For example, if communication device 800 is a terminal, transceiver 803 can be used to communicate with a network device or with another terminal device. As another example, if communication device 800 is a network device, transceiver 803 can be used to communicate with a terminal or with another network device.

[0461] Alternatively, transceiver 803 may include a receiver and a transmitter. Figure 8 (Not shown separately). The receiver is used to implement the receiving function, and the transmitter is used to implement the sending function.

[0462] Optionally, the transceiver 803 can be integrated with the processor 801, or it can exist independently and be connected via the interface circuit of the communication device 800. Figure 8 (Not shown in the image) is coupled to the processor 801, but this application embodiment does not specifically limit this.

[0463] Understandable, Figure 8 The structure of the communication device 800 shown does not constitute a limitation on the communication device. Actual communication devices may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0464] Furthermore, the technical effects of the communication device 800 can be referred to the technical effects of the method described in the above method embodiments, and will not be repeated here.

[0465] It should be understood that the processor in the embodiments of this application can be a central processing unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.

[0466] It should also be understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous DRAM (DDR SDRAM), enhanced synchronous DRAM (ESDRAM), synchronous linked DRAM (SLDRAM), and direct rambus RAM (DR RAM).

[0467] The above embodiments can be implemented, in whole or in part, by software, hardware (such as circuits), firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more sets of available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium. A semiconductor medium can be a solid-state drive.

[0468] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0469] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0470] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0471] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0472] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0473] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0474] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0475] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A data transmission method, characterized in that, The method includes: If the first condition is met, it is determined that the first data includes first indication information; wherein, the first condition includes: the first data is the last data in the first task or the first data set, and the first indication information is used to request a status report; Send the first data.

2. The method according to claim 1, characterized in that, The first data is the last data in the first task or the first data set, including at least one of the following: The first data is the last data that can be transmitted in the first task or the first data set; After sending the first data, the cache does not contain data from the first task or the first data set; or, After the first data is sent, apart from the data awaiting confirmation, there is no data in the cache for the first task or the first data set.

3. The method according to claim 2, characterized in that, The cache includes a transmission cache; or, the cache includes a transmission cache and a retransmission cache.

4. The method according to claim 2 or 3, characterized in that, The data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

5. The method according to any one of claims 2-4, characterized in that, The data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

6. The method according to any one of claims 1-5, characterized in that, The first data is an RLC protocol data unit (PDU).

7. The method according to any one of claims 1-6, characterized in that, The first indication information is carried in polling bits.

8. The method according to any one of claims 1-7, characterized in that, The first task is associated with the first data set; or, the first data set is associated with the first task.

9. The method according to any one of claims 1-8, characterized in that, The first task is any one of multiple tasks.

10. A data transmission method, characterized in that, The method includes: Obtain the first task or the first data set; If the first condition is met, the retransmission of the first task or the first data set is triggered; wherein, the first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of the transmission of the first task or the first data set.

11. The method according to claim 10, characterized in that, The initial transmission of the first task or the first data set is completed, including: The data for the first task or the first data set does not exist in the transmission buffer; or, Apart from the data awaiting confirmation, there is no data in the transmission buffer for the first task or the first data set.

12. The method according to claim 10, characterized in that, The transmission of the first task or the first data set stops, including: Apart from the data awaiting confirmation, there is no data in the cache for the first task or the first data set.

13. The method according to claim 12, characterized in that, The cache includes a transmission cache, or the cache includes a transmission cache and a retransmission cache.

14. The method according to any one of claims 11-13, characterized in that, The data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

15. The method according to any one of claims 11-14, characterized in that, The data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

16. The method according to any one of claims 10-15, characterized in that, The first condition being met includes any one of the following: The first condition is satisfied, and the second condition is also satisfied; The first condition is satisfied, and the third condition is also satisfied; or, The first condition is satisfied, the second condition is satisfied, and the third condition is satisfied; The second condition includes: the remaining time of the first task or the first data set is less than or equal to the first threshold. The third condition includes: obtaining new transmission resources.

17. The method according to any one of claims 10-16, characterized in that, The triggering of retransmission of the first task or the first data set includes at least one of the following: Trigger retransmission of at least one data item in the first task or the first data set; or, For at least one piece of data in the first task or the first data set in the cache, a retransmission is triggered.

18. The method according to any one of claims 10-17, characterized in that, The retransmissions include RLC retransmissions.

19. The method according to any one of claims 10-18, characterized in that, The first task is associated with the first data set; or, the first data set is associated with the first task.

20. The method according to any one of claims 10-19, characterized in that, The first task is any one of multiple tasks.

21. A data transmission method, characterized in that, The method includes: Obtain the first data, which is the data associated with the first data set of the first task; If a first condition is met, the retransmission of the first data is triggered; wherein, the first condition includes the completion of the initial transmission of the first task or the first data set, or the cessation of the transmission of the first task or the first data set.

22. The method according to claim 21, characterized in that, The condition of satisfying the first condition also includes satisfying at least one of the following conditions: Condition 1 includes: the first data is data awaiting confirmation; Condition 2 includes: the sequence number (SN) of the first data is located in the sending window; Condition 3 includes: the first duration associated with the first data is less than or equal to the first threshold, or the second timer associated with the first data times out; Condition 4 includes: No discard indication corresponding to the first data, the first task, or the first data set has been received; Condition 5 includes: obtaining new media resources.

23. The method according to claim 22, characterized in that, The sequence number (SN) of the first data is located in the sending window, including: The SN of the first data is greater than or equal to the first state variable, and / or the SN of the first data is less than or equal to the second state variable or the sum of the first state variable and the window length or the highest SN of the data to be transmitted; Wherein, the first state variable is the lower limit of the sending window or the minimum SN of the data waiting for acknowledgment; The second state variable is the SN of the next newly generated data or PDU.

24. The method according to claim 22, characterized in that, The discard indication that the first data, the first task, or the first data set has not been received includes: The first timer associated with the first data has not expired, and the first timers associated with at least one other data or all other data associated with the first task or the first data set have not expired; or, The first timer associated with at least one data or all data associated with the first task or the first data set has not timed out.

25. The method according to claim 22, characterized in that, The first duration is the remaining duration of the first timer or the second timer.

26. The method according to any one of claims 21-25, characterized in that, The method further includes: When or after acquiring the first data, start the first timer associated with the first data; and / or, When or after the initial transmission of the first data is performed, the second timer associated with the first data is started.

27. The method according to claim 26, characterized in that, The method further includes: If a discard instruction corresponding to the first data, the first task, or the first data set is received, the second timer associated with the first data is stopped.

28. The method according to any one of claims 21-27, characterized in that, The initial transmission of the first task or the first data set is completed, including: The data for the first task or the first data set does not exist in the transmission buffer; or, Apart from the data awaiting confirmation, there is no data in the transmission buffer for the first task or the first data set.

29. The method according to claim 28, characterized in that, The transmission of the first task or the first data set stops, including: Apart from the data awaiting confirmation, there is no data in the cache for the first task or the first data set.

30. The method according to claim 29, characterized in that, The cache includes a transmission cache, or the cache includes a transmission cache and a retransmission cache.

31. The method according to any one of claims 28-30, characterized in that, The data awaiting confirmation includes data that has already been sent and is awaiting confirmation.

32. The method according to any one of claims 28-31, characterized in that, The data awaiting confirmation includes Radio Link Control (RLC) Service Data Unit (SDU) or RLC SDU segments awaiting confirmation.

33. The method according to any one of claims 21-32, characterized in that, The first data is an RLC protocol data unit (PDU) or an RLC SDU.

34. The method according to any one of claims 21-33, characterized in that, The retransmissions include RLC retransmissions.

35. The method according to any one of claims 21-34, characterized in that, The first task is associated with the first data set; or, the first data set is associated with the first task.

36. The method according to any one of claims 21-35, characterized in that, The first task is any one of multiple tasks.

37. A communication device, characterized in that, The apparatus includes a module for performing the method as described in any one of claims 1-36.

38. A communication device, characterized in that, The communication device includes: a processor; when the processor executes computer instructions, it causes the communication device to perform the method as described in any one of claims 1-36.

39. A communication chip, characterized in that, The communication chip includes: a logic circuit and a communication interface. The logic circuit is used to execute computer instructions, and the communication interface is used for the communication chip to communicate with other devices or chips. When the logic circuit executes the computer instructions, the method as described in any one of claims 1-36 is implemented.

40. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a computer program or instructions that, when executed on a communication device, cause the communication device to perform the method as described in any one of claims 1-36.

41. A computer program product, characterized in that, The computer program product includes a computer program or instructions that, when executed by a communication device, cause the method of any one of claims 1-36 to be performed.