Communication method and device
By starting a timer on the terminal device, the problem of excessive data transmission delay caused by late triggering of status reports or failure to receive status reports in time in the prior art is solved, and the requirement of high reliability and low latency is achieved by starting a timer on the terminal device.
Patent Information
- Application Number
- CN202410594492.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-10
- Publication Date
- 2025-11-11
AI Technical Summary
Existing retransmission mechanisms cannot effectively meet the requirements of high reliability and low latency in data transmission with low latency requirements, resulting in problems such as the sending end receiving the status report late or not receiving the status report at all.
By starting a timer on the terminal device and determining whether to retransmit after the monitor times out, the technical problem of excessive data transmission delay caused by late triggering time or failure to receive status reports in the prior art is solved.
It enables timely determination of whether to retransmit data under low latency requirements, avoiding communication device issues caused by late status report triggering time or failure to receive status reports in a timely manner, thus achieving the requirements of high reliability and low latency.
Smart Images

Figure CN120934701A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a communication method and apparatus. Background Technology
[0002] To ensure the reliability of data transmission, a retransmission mechanism is proposed. The retransmission mechanism refers to the sending end retransmitting data that has already been sent. Under the current retransmission mechanism, when the sending end receives a status report from the receiving end indicating that data reception was unsuccessful, the sending end considers retransmitting the data.
[0003] However, if the status report is triggered too late or the sender does not receive the status report in time, the data transmission time may exceed the data transmission latency budget. For data with low latency requirements, retransmission by the sender is not very meaningful or necessary. Therefore, the current retransmission mechanism cannot meet the requirements of high reliability and low latency. Summary of the Invention
[0004] This application provides a communication method and apparatus for determining as early as possible whether to retransmit data, so as to meet the high reliability and low latency requirements of services as much as possible.
[0005] To achieve the above objectives, the embodiments of this application adopt the following technical solutions:
[0006] Firstly, this application provides a communication method applied to a terminal side. For example, the method may be applied to a terminal device or a component within the terminal device (e.g., a circuit, chip, or chip system), or it may be applied to a larger device including the terminal device. For ease of description, the following example illustrates the method applied to a terminal device. This terminal device includes multiple protocol layers; for example, it may include a first protocol layer and a second protocol layer. In the embodiments of this application, interaction between protocol layers refers to interaction between entities corresponding to those protocol layers. For example, data delivery from the first protocol layer to the second protocol layer refers to data delivery from an entity in the first protocol layer to an entity in the second protocol layer.
[0007] The communication method includes: when the terminal device submits first data to the first protocol layer, starting a first timer; during the operation of the first timer, receiving feedback information for the first submission, stopping and / or resetting the first timer; when the first timer times out, determining to retransmit the first data.
[0008] The first timer is used to determine whether to retransmit the first data. In this scheme, the first timer is started after the first data is submitted to the first protocol layer. If feedback information regarding the first data is received during the operation of the first timer, the first timer is stopped and / or reset. For example, if an acknowledgment (ACK) is received during the operation of the first timer, it indicates that the first data has been successfully received and does not need to be retransmitted, so the first timer is stopped and / or reset. Conversely, if a negative acknowledgment (NACK) is received during the operation of the first timer, it indicates that the first data has not been successfully received, and retransmission will be considered, so the first timer is stopped and / or reset. When the first timer times out, it means that no feedback information regarding the first data was received during the operation of the first timer, so retransmission of the first data is considered. In this scheme, whether the first data is retransmitted depends on the first timer, and the first timer is started after the first data is submitted. Compared to determining retransmission based on whether a status report indicating unsuccessful data reception is received, this solution avoids long data transmission delays caused by late status report trigger times or failure to receive status reports in a timely manner, thus meeting the requirements for high reliability and low latency.
[0009] In a possible implementation, the terminal device submitting first data to the first protocol layer includes: the terminal device submitting first data to the first protocol layer through a second protocol layer, wherein the first protocol layer is a lower layer than the second protocol layer.
[0010] In a possible implementation, before the terminal device submits the first data to the first protocol layer, the method further includes: the terminal device's second protocol layer receiving second data from the third protocol layer; the terminal device receiving indication information from the first protocol layer, the indication information indicating that the resources indicated by the transmission opportunity are insufficient to transmit the second data; and the terminal device determining, based on the indication information, to submit the first data from the second data to the first protocol layer.
[0011] The second data is the data that needs to be submitted to the first protocol layer, and is subsequently transmitted through the first protocol layer. Considering that the resources of the first protocol layer may not be sufficient to transmit the entire second data, the second data can be segmented and submitted to the first protocol layer in segmented form. For example, the terminal device can submit the first data from the second data to the first protocol layer through the second protocol layer to ensure that the first protocol layer has sufficient resources to transmit the received data, thereby improving the success rate of data transmission.
[0012] In a possible implementation, the method further includes: the terminal device receiving first configuration information, which is used to configure a first timer.
[0013] The first timer can be configured by other devices for the terminal device, or it can be a timer maintained by the terminal device itself. For example, the duration of the first timer can be determined according to the data transmission latency requirements. For data with high transmission latency requirements, the duration of the first timer is shorter, thereby meeting the needs of services with low latency requirements.
[0014] In possible implementations, the first timer can be maintained by either the second or third protocol layer. For example, the second protocol layer could be the radio link control (RLC) layer, and the third protocol layer could be the packet data convergence protocol (PDCP). If the first timer is maintained by the second protocol layer, the RLC layer delivers the first data to the MAC layer to start the first timer. If the first timer expires, the first data is retransmitted, eliminating the need for signaling interaction with other protocol layers and saving on signaling communication steps. Alternatively, if the first timer is maintained by the third protocol layer, the RLC layer delivers the first data to the MAC layer and notifies the PDCP layer, which then starts the first timer.
[0015] Secondly, this application provides a communication method applied to a terminal side. For example, the method may be applied to a terminal device or a component within the terminal device (e.g., a circuit, chip, or chip system), or it may be applied to a larger device including the terminal device. For ease of description, the following example illustrates the method applied to a terminal device.
[0016] The communication method includes: a terminal device submitting first data to a first protocol layer; the terminal device determining whether to retransmit the first data at a first moment based on the latency budget of the first data. Specifically, if the latency budget of the first data is lower than a first threshold, retransmission of the first data is determined, and the first moment is related to the latency budget of the first data.
[0017] The first threshold can be applied to retransmitted data. If the latency budget of the first data is lower than the first threshold, it can be considered that the first data cannot be transmitted within the specified time. In this case, retransmission of the first data can be considered / determined. For example, retransmission of the first data can be considered / determined at the first moment, which can be determined based on the latency budget of the first data to maximize the chances of the first data being transmitted within the specified time. This solution determines whether to retransmit the first data by setting a first threshold. Compared to determining retransmission based on whether a status report indicating unsuccessful data reception is received, this solution avoids long data transmission delays caused by late status report triggering times or failure to receive status reports in a timely manner, thus meeting the requirements of high reliability and low latency.
[0018] In possible implementations, the first moment is the moment when the latency budget of the first data is lower than a first threshold; or, the first moment is the interval between the first moment and the moment when the first data is received, as stated in the first threshold.
[0019] The scheme provides two methods for determining the first moment. Both methods ensure that the first data is transmitted within the specified time and can also retransmit the first data as early as possible to minimize the transmission delay of the first data.
[0020] In possible implementations, if the latency budget of the first data is lower than a first threshold, then it is determined to retransmit the first data, including: if the latency budget of the first data is lower than the first threshold, and no feedback information for the first data is received before the first moment, then it is determined to retransmit the first data.
[0021] The proposed retransmission conditions for the first data include not only that the latency budget of the first data is lower than a first threshold, but also that no feedback information for the first data has been received before the first moment. It is understandable that even if the latency budget of the first data is lower than the first threshold, if an ACK for the first data is received before the first moment, it indicates that the first data was successfully transmitted and does not need to be retransmitted. Therefore, this scheme can avoid unnecessary retransmissions. Furthermore, even if a NACK for the first data is not received, retransmission of the first data is still determined to ensure the reliability of the first data transmission.
[0022] In a possible implementation, the method further includes: the terminal device determining a first threshold.
[0023] In a possible implementation, the terminal device determines the first threshold by receiving third configuration information, which is used to indicate the first threshold.
[0024] The first threshold can be (pre)configured or predefined. For example, the first threshold could be the remaining delay threshold that triggers a delay status report (DSR). The terminal device can store the first threshold and retrieve it when determining whether to retransmit the first data. Alternatively, the first threshold can be configured via third configuration information, offering greater flexibility.
[0025] In a possible implementation, after the terminal device submits the first data to the first protocol layer, the method further includes: the terminal device starting a second timer, the remaining runtime of which is used to determine a latency budget.
[0026] This scheme provides one way to determine the latency budget for the first data, namely by using a second timer. For example, the second timer could be a packet loss timer.
[0027] In a possible implementation, the method further includes: the terminal device receiving first configuration information, which is used to configure a second timer. The second timer can be flexibly configured using the second configuration information.
[0028] In possible implementations, the first threshold is 0, and the first time point is the time when the second timer expires.
[0029] In a possible implementation, the method further includes: the terminal device sending indication information to a first protocol layer, the indication information being used to indicate retransmission of the first data. When the second protocol layer determines that the first data needs to be retransmitted, it may notify the first protocol layer.
[0030] In a possible implementation, the method further includes: the terminal device receiving fourth configuration information, which is used to configure a second threshold, the second threshold being lower than a first threshold. In this case, the terminal device determines whether to retransmit the first data at a first moment based on the latency budget of the first data, including: if the latency budget of the first data is lower than the second threshold, then the terminal device determines to retransmit the first data.
[0031] In this scheme, the second threshold can also be used to determine whether to retransmit the first data. In other words, whether to retransmit the first data depends on both the first and second thresholds. For example, the second threshold is less than the first threshold. This scheme allows for early determination of whether to retransmit the first data, minimizing transmission delay.
[0032] In one possible implementation, if the latency budget of the first data is lower than a second threshold, the terminal device determines to retransmit the first data. This includes: if the latency budget of the first data is lower than the first threshold, and no feedback information regarding the first data is received before a second time point, then the terminal device determines to retransmit the first data. The second time point is the moment when the latency budget of the first data is lower than the second threshold.
[0033] In this scheme, when the latency budget of the first data is lower than the first threshold, it is not necessary to wait until the first moment to determine whether to retransmit the first data. Instead, it can be determined at the second moment to determine whether to retransmit the first data as early as possible, so as to minimize the transmission latency of the first data.
[0034] Thirdly, this application provides a communication method applied to a terminal side. For example, the method may be applied to a terminal device or a component within the terminal device (e.g., a circuit, chip, or chip system), or it may be applied to a larger device including the terminal device. For ease of description, the following example illustrates the method applied to a terminal device.
[0035] The communication method includes: a terminal device submitting first data to a first protocol layer; the terminal device determining to retransmit the first data, triggering first information or second information, wherein the first information is used to indicate the buffer status of the sending end of the first data, and the second information is used to request resources for retransmitting the first data; the terminal device receiving resource configuration information, wherein the resource configuration information is used to indicate a first resource; and the terminal device retransmitting the first data on the first resource.
[0036] The first piece of information can be a buffer status report (BSR), and the second piece of information can be a scheduling request (SR). In this scheme, when the terminal device determines that it needs to retransmit the first data, it can trigger either the first or the second piece of information. This avoids the situation where the network device cannot detect whether the terminal device is retransmitting the first data, thus preventing the network device from being unable to allocate resources for retransmitting the first data in a timely manner, thereby ensuring the normal transmission of the first data as much as possible.
[0037] In a possible implementation, the terminal device determines to retransmit the first data by: if the terminal device determines that the latency budget of the first data is lower than a first threshold, then it determines to retransmit the first data at a first moment, which is related to the latency budget of the first data.
[0038] In possible implementations, the first moment is the moment when the delay budget of the first data is less than or equal to a first threshold; or, the first moment is separated from the moment of receiving the first data by a first threshold.
[0039] In possible implementations, determining to retransmit the first data at a first moment if the latency budget of the first data is determined to be lower than a first threshold includes: determining to retransmit the first data at a first moment if the latency budget of the first data is determined to be lower than the first threshold and no feedback information for the first data is received at the first moment.
[0040] In possible implementations, determining to retransmit the first data includes: if the first timer times out, then determining to retransmit the first data, where the first timer is the timer started when the first data is submitted.
[0041] In possible implementations, determining to retransmit the first data and trigger the first or second information includes: determining to retransmit the first data and triggering the first or second information if one or more of the following conditions are met: there is no second information to be sent, and for the logical channel that triggers the second information, there is no second information to be sent that has already been triggered; or, the logical channel scheduling request delay timer is not running, and the logical channel scheduling request delay timer switch configured for each logical channel is activated.
[0042] The beneficial effects of possible implementations of the third aspect can be found in the beneficial effects described in the first or second aspects mentioned above, and will not be repeated here.
[0043] Fourthly, embodiments of this application provide a communication device that has the functionality to implement the behaviors described in any of the method examples of the first to third aspects. The beneficial effects can be found in the relevant descriptions of the first to third aspects and will not be repeated here. For example, the communication device can be a terminal device in any of the first to third aspects, or it can be a device capable of supporting the terminal device in implementing the functions required by the methods provided in any of the first to third aspects. For example, the communication device can be a chip or chip system in the terminal device.
[0044] In one possible design, the communication device includes a baseband device and a radio frequency device.
[0045] In one possible design, the communication device includes corresponding means or modules for performing the methods of any of the first to third aspects. For example, the communication device includes a processing unit (sometimes also called a processing module or processor) and / or a transceiver unit (sometimes also called a transceiver module or transceiver). The transceiver unit is capable of both transmitting and receiving functions. When the transceiver unit performs the transmitting function, it may be called a transmitting unit (sometimes also called a transmitting module), and when it performs the receiving function, it may be called a receiving unit (sometimes also called a receiving module). The transmitting unit and the receiving unit may be the same functional unit, referred to as the transceiver unit, which performs both transmitting and receiving functions; or, the transmitting unit and the receiving unit may be different functional units, with "transceiver unit" being a collective term for these functional units. These units (modules) can perform the corresponding functions in the method examples of any of the first to third aspects described above, as detailed in the method examples, and will not be repeated here.
[0046] Fifthly, embodiments of this application provide a communication device, which can be the communication device of the fourth aspect of the above embodiments, or a chip or chip system disposed in the communication device of the tenth aspect. The communication device includes a communication interface and a processor, and optionally, a memory. The memory is used to store computer programs, instructions, or data, and the processor is coupled to the memory and the communication interface. When the processor reads the computer program, instructions, or data, it causes the communication device to execute the method executed by the terminal device in the above method embodiments. For example, the communication device can be a terminal device or a functional module in a terminal device, such as a baseband chip and a radio frequency chip.
[0047] Sixthly, embodiments of this application provide a chip system including a processor and a communication interface for implementing the methods described in any of the first to eighth aspects. Optionally, the chip system further includes a memory. The memory stores a computer program (also referred to as code or instructions). The processor retrieves and runs the computer program from the memory, causing a device equipped with the chip system to perform the methods of any of the first to third aspects and any implementation thereof. The chip system may be composed of chips or may include chips and other discrete devices.
[0048] In a seventh aspect, embodiments of this application provide a communication device including an input / output interface and logic circuitry. The input / output interface is used for inputting and / or outputting information. The input / output interface may be an interface circuit, an output circuit, an input circuit, a pin, or related circuitry, etc. The logic circuitry is used to execute the methods described in any of the first to third aspects.
[0049] In practical implementation, the aforementioned communication device can be a chip, the input circuit can be an input pin, the output circuit can be an output pin, and the logic circuit can be a transistor, gate circuit, flip-flop, and various other logic circuits. The input signal received by the input circuit can be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit can be, for example, but not limited to, output to and transmitted by a transmitter. Furthermore, the input circuit and the output circuit can be the same circuit, which is used as both the input circuit and the output circuit at different times. This application does not limit the specific implementation of the input / output interface and the logic circuit.
[0050] In one implementation, when the communication device is a wireless communication device, the wireless communication device can be a terminal device such as a mobile phone. The interface circuit can be a radio frequency processing chip in the wireless communication device, and the processing circuit can be a baseband processing chip in the wireless communication device.
[0051] Eighthly, embodiments of this application provide a communication system, the communication system including a terminal device and a network device, wherein the terminal device is used to implement the function of the method described in the first aspect; or, the terminal device is used to implement the function of the method described in the second aspect; or, the terminal device is used to implement the function of the method described in the third aspect.
[0052] Ninthly, embodiments of this application provide a computer-readable storage medium for storing a computer program or instructions that, when executed, cause the methods described in any of the first to third aspects and any implementation thereof to be implemented.
[0053] In a tenth aspect, embodiments of this application also provide a computer program product containing instructions that, when run on a computer, cause the methods described in any of the first to third aspects and any implementation thereof to be implemented.
[0054] The beneficial effects of the above-mentioned fourth to tenth aspects and their implementation methods can be referenced to the beneficial effects of any aspect of the first to third aspects and any implementation method thereof. Attached Figure Description
[0055] Figure 1 A schematic diagram of the architecture of a communication system provided in an embodiment of this application;
[0056] Figure 2 Schematic diagrams of two typical protocol stacks for a base station provided in the embodiments of this application;
[0057] Figure 3 A schematic diagram illustrating the data transmission between layers from a terminal device to a network device according to an embodiment of this application;
[0058] Figure 4 A schematic diagram of the ARQ process for an RLC entity provided in this application embodiment;
[0059] Figure 5 A flowchart illustrating the communication method 500 provided in an embodiment of this application;
[0060] Figure 6 A flowchart illustrating the communication method 600 provided in an embodiment of this application;
[0061] Figure 7 A schematic diagram illustrating the determination of the first moment provided in an embodiment of this application;
[0062] Figure 8 This is a schematic diagram illustrating whether or not the first data is retransmitted, as provided in an embodiment of this application.
[0063] Figure 9 A flowchart illustrating the communication method 900 provided in an embodiment of this application;
[0064] Figure 10 A schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0065] Figure 11 Another schematic diagram of the communication device provided in the embodiments of this application. Detailed Implementation
[0066] The technical solutions provided in the embodiments of this application can be applied to communication systems related to the 3rd Generation Partnership Project (3GPP), such as Long Term Evolution (LTE) communication systems, 5th Generation (5G) mobile communication systems, or other next-generation mobile communication systems, such as 6th Generation (6G) communication systems, or other similar communication systems. Other similar communication systems may include Wireless Fidelity (WIFI), Vehicle-to-Everything (V2X), Internet of Things (IoT) systems, Narrow Band Internet of Things (NB-IoT) systems, and so on.
[0067] Please see Figure 1 This illustration shows a communication system applicable to embodiments of this application. The communication system includes a wireless access network 100 and a core network 200. Optionally, the communication system may further include the Internet. Figure 1 (Using this as an example).
[0068] The wireless access network 100 may include at least one network device and at least one terminal device. For example, the wireless access network 100 includes two network devices, 110a and 110b, and terminal devices, 120a to 120j. Figure 1 The network architecture shown is merely illustrative; the number of terminal devices and / or network devices may be fewer or more. The communication system described in the embodiments of this application is intended to more clearly illustrate the technical solutions of the embodiments of this application and does not constitute a limitation on the communication system to which the embodiments of this application apply. For example, the communication system may also include other devices, such as wireless relay devices and wireless backhaul devices, etc. Figure 1 Not shown in the diagram. Those skilled in the art will recognize that, with the evolution of network architecture, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems. When applying the technical solutions of the embodiments of this application to other communication systems, the devices, components, modules, etc., in the embodiments can be replaced with corresponding devices, components, modules in other communication systems, without limitation.
[0069] In this embodiment, the network device refers to a radio access network (RAN) device. The RAN can be a 3GPP-related cellular system, such as a 5G / new radio (NR) mobile communication system, or a future-oriented evolution system (e.g., a 6G mobile communication system). The RAN can also be an open RAN (O-RAN or ORAN), a cloud radio access network (CRAN), or a virtualized RAN (vRAN), etc. The RAN can also be a communication system that integrates two or more of the above systems. The RAN device can also be referred to as a RAN node, RAN entity, or access node, etc.
[0070] In one possible scenario, a RAN node can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a next-generation base station in a 6G mobile communication system, or a base station in a future mobile communication system. A RAN node can also be a macro base station, a micro base station, an indoor station, a relay node, a donor / host node, or a radio controller. RAN nodes can also be servers, wearable devices, vehicles, or in-vehicle equipment. For example, in V2X technology, a RAN node can be a roadside unit (RSU).
[0071] In another possible scenario, a RAN node can be a module or unit that performs some of the functions of a base station; or multiple RAN nodes can collaborate to assist terminal devices in achieving wireless access, with different RAN nodes performing some of the functions of a base station. For example, a RAN node can be a central unit (CU), a distributed unit (DU), or a radio unit (RU). The function of a CU can be implemented by a single entity or by different entities. For example, the function of a CU can be further divided, that is, the control plane and the user plane can be separated and implemented by different entities, namely the control plane CU entity (i.e., CU-control plane (CP) entity) and the user plane CU entity (i.e., CU-user plane (UP) entity). The CU-CP entity and the CU-UP entity can be coupled with the DU to jointly complete the function of the RAN node. The CU and DU can be set up separately or included in the same network element, such as in the baseband unit (BBU). Any of the units among the CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented by software modules, hardware modules, or a combination of software modules and hardware modules.
[0072] 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-CU (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.
[0073] The CU and DU can be configured according to the protocol layer functions of the wireless network they implement: for example, the CU can be configured to implement the functions of the PDCP layer and above (such as the RRC layer and / or the Service Data Adaptation Protocol (SDAP) layer); the DU can be configured to implement the functions of the protocol layers below the PDCP layer (such as the RLC, Media Access Control (MAC) layer, and / or the Physical (PHY) layer). For specific descriptions of the above protocol layers, please refer to the relevant 3GPP technical specifications or the technical specifications of other applicable communication protocols.
[0074] For example, see Figure 2The following are schematic diagrams of two typical protocol stacks of a base station provided in the embodiments of this application. In base station (1), the base station is divided into CU and DU. CU is configured to implement the functions of protocol layers above PDCP (e.g., RRC layer and / or SDAP layer, etc.); DU is configured to implement the functions of protocol layers below PDCP (e.g., RLC layer, MAC layer, and / or PHY layer, etc.). CU and DU communicate with each other based on the F1 interface. In base station (2), the base station is divided into CU and DU. CU includes CU-CP and CU-UP. CU-CP is used to implement the control plane functions of CU, and CU-UP is used to implement the user plane functions of CU. CU-CP and CU-UP can communicate based on the E1 interface. CU-CP and DU communicate based on the F1 interface (also called F1-C) that supports the control plane. CU-UP and DU communicate based on the F1 interface (also called F1-U) that supports the user plane. CU-CP is configured to implement the control plane and RRC layer functions of the PDCP layer, and CU-UP is configured to implement the user plane and SDAP layer functions of the PDCP layer. DU is configured to implement the functions of protocol layers below the PDCP layer (such as RLC, MAC, and / or PHY layers).
[0075] The above division of the processing functions of CU and DU according to protocol layers is merely an example; other division methods are also possible, and this application does not limit this. For example, in one design, CU or DU can be further divided into processing functions with protocol layers. In one design, some functions of the RLC layer and the functions of the protocol layer above the RLC layer are located in the CU, while the remaining functions of the RLC layer and the functions of the protocol layer below the RLC layer are located in the DU.
[0076] In another design, the DU and RU collaborate to implement the PHY layer functionality, or, more specifically, a portion of the PHY layer functionality of the DU is moved to the RU. A DU can be connected to one or more RUs. The functions of the DU and RU can be configured in various ways depending on the design. For example, the DU may be configured to implement baseband functions, and the RU to implement mid-RF functions. Alternatively, the DU may be configured to implement higher-level functions in the PHY layer, and the RU may be configured to implement lower-level functions in the PHY layer, or both lower-level and RF functions. Higher-level functions in the physical layer may include a portion of the physical layer's functionality closer to the MAC layer, while lower-level functions may include another portion closer to the mid-RF side. This application does not limit the specific functions of the DU and RU. The interface between the DU and RU can be called a fronthaul interface. In one design, the CU may not have a PDCP layer; for example, the CU may only include an RRC layer. The CU-CP may not have PDCP-C. The CU-UP may not have PDCP-U, or may not have a CU-UP. In one design, the DU may not have an RLC layer; for example, the DU may only have a MAC and a higher PHY layer.
[0077] When the RAN is O-RAN, it can also have artificial intelligence (AI) capabilities. For example, O-RAN includes an intelligent controller. The intelligent controller can be a non-real-time RAN intelligent controller (RIC / non-RT RIC / NRTRIC) or a near-real-time RAN intelligent controller (RIC / nRT RIC / nRT RIC). A non-real-time RIC can be used to implement non-real-time intelligent management of RAN functions, enabling workflows including model training and updates, and guiding applications / functions in the nRT RIC based on policies. A near-real-time RIC can be used to implement near-real-time intelligent management of the RAN. Through data collection and related operations on the E2 interface, near-real-time control and optimization of O-RAN modules and resources are achieved.
[0078] In the embodiments of this application, the means for implementing the functions of the network device can be the network device itself, or it can be a means that supports the network device in implementing the functions, such as a chip system or a combination of devices or components that can implement the functions of the network device. This means can be installed in the network device. The embodiments of this application do not limit the specific technology or specific device form used in the network device.
[0079] In this application embodiment, anything capable of data communication with a base station can be considered a terminal device. Terminal devices are also called terminals, terminal equipment, user equipment (UE), mobile stations, or mobile terminals, etc. Terminal devices can be widely used in various scenarios. For example, terminal devices can be: mobile phones, computers, mobile internet devices (MID), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, stations (STA), robotic arms, cameras, robots, vehicles, drones, helicopters, airplanes, ships, or smart home devices (such as televisions, air conditioners, robot vacuums, speakers, set-top boxes), relays, customer premises equipment (CPE), etc.
[0080] Furthermore, in this embodiment, the terminal device can also be a terminal device in an IoT system, such as a water meter or electricity meter. IoT is an important component of future information technology development. Its main technical characteristic is connecting objects to networks through communication technology, thereby realizing an intelligent network that enables human-machine interconnection and object-to-object interconnection.
[0081] When the terminal device is applied to V2X, it can also be called a V2X device, such as a smart car, digital car, unmanned car, driverless car, pilotless car, autonomous car, pure electric vehicle, hybrid electric vehicle (HEV), range-extended electric vehicle (REEV), plug-in hybrid electric vehicle (PHEV), new energy vehicle, and RSU.
[0082] The various terminal devices described above, if located on a vehicle (e.g., placed / installed inside the vehicle), can all be considered in-vehicle terminal devices. In-vehicle terminal devices can be built into a vehicle's in-vehicle module, in-vehicle component, in-vehicle chip, or in-vehicle unit as one or more components or units. The vehicle can implement the methods of this application through the built-in in-vehicle module, in-vehicle component, in-vehicle chip, or in-vehicle unit. In-vehicle terminal devices can be vehicle equipment, in-vehicle modules, vehicles, in-vehicle units (on-board units, OBUs), remote sensing units (RSUs), in-vehicle infotainment systems (or in-vehicle transmission units) (telematics boxes, T-boxes), chips, or systems on a chip (SOCs), etc. These chips or SOCs can be installed in the vehicle, OBU, RSU, or T-box.
[0083] In the embodiments of this application, the device for implementing the functions of the terminal device can be the terminal device itself, or it can be a device that supports the terminal device in implementing the functions, such as a chip system or a combination of devices or components that can implement the functions of the terminal device. This device can be installed in the terminal device. The embodiments of this application do not limit the specific technology or device form used in the terminal device.
[0084] Taking a network device as a base station and a terminal device as a UE as an example, the base station and UE can be fixed or mobile. The base station and UE can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; and they can also be deployed on airplanes, balloons, and artificial satellites. The embodiments of this application do not limit the application scenarios of the base station and UE.
[0085] The roles of the base station and the UE can be relative, for example, Figure 1 The helicopter or drone 120i can be configured as a mobile base station. For UEs 120j accessing the wireless access network 100 via 120i, UE 120i is a base station; however, for base station 110a, 120i is a UE, meaning that 110a and 120i communicate via a radio interface protocol. Of course, 110a and 120i can also communicate via a base station-to-base station interface protocol; in this case, 120i is also a base station relative to 110a. Therefore, both the base station and the UE can be collectively referred to as a communication device. Figure 1 The 110a and 110b in the text can be referred to as communication devices with base station functions. Figure 1 The 120a-120j in the text can be referred to as communication devices with UE functionality.
[0086] The communication system applicable to the embodiments of this application has been described above. The following describes some contents involved in the embodiments of this application, such as the protocol layer structure between terminal devices and network devices.
[0087] 1) Protocol layer structure between network devices and terminal devices
[0088] Communication between network devices and terminal devices follows a specific protocol layer structure. For example, data sent from a network device to a terminal device must pass through the user plane protocol layer. The user plane protocol layer structure includes the SDAP layer, PDCP layer, RLC layer, MAC layer, and PHY layer. The functions of one or more of these protocol layers can be implemented by one or more nodes of the network device or terminal device. For example, if the network device includes a CU and a DU, the functions of the PDCP layer and above are located in the CU, while the functions of protocol layers below the PDCP layer, such as the RLC and MAC layers, are located in the DU. This division of protocol layers is just one example; it can also be done at other protocol layers. For example, at the RLC layer, the functions of the RLC layer and above are located in the CU, and the functions of protocol layers below the RLC layer are located in the DU; or, within a specific protocol layer, for example, some functions of the RLC layer and the functions of protocol layers above the RLC layer are located in the CU, and the remaining functions of the RLC layer and the functions of protocol layers below the RLC layer are located in the DU. Furthermore, it can be divided in other ways, such as by latency, where functions that need to meet latency requirements are located in the DU, and functions that do not need to meet latency requirements are located in the CU.
[0089] The SDAP layer, PDCP layer, RLC layer, MAC layer, and physical layer can all be collectively referred to as the access layer. Based on the direction of data transmission, they are divided into transmitting and receiving layers, and each of these layers is further divided into a transmitting section and a receiving section. The following data transmission example is shown below. Figure 3 This is a schematic diagram illustrating the data transmission between layers from a terminal device to a network device. Figure 3 The downward arrow indicates data transmission, and the upward arrow indicates data reception. In this embodiment, the data sent from the access network device to the terminal device is also referred to as downlink data.
[0090] During uplink data transmission, after the PDCP layer receives data from the upper layer, it transmits the data to the RLC and MAC layers. The MAC layer then generates a transport block (TB), which is then wirelessly transmitted through the physical layer. In this embodiment, the data exchanged between protocol layers can be data generated by application layer source coding, also known as application data or payload. Data is encapsulated in each layer. Data received by a layer from the upper layer is considered a service data unit (SDU) of that layer. The protocol stack header of the current layer is added to the SDU, and after encapsulation, it becomes a PDU, which is then passed to the next layer. For example, the data received by the PDCP layer from the upper layer is called a PDCP SDU, and the data sent by the PDCP layer to the lower layer is called a PDCP PDU; the data received by the RLC layer from the upper layer is called an RLC SDU, and the data sent by the RLC layer to the lower layer is called an RLC PDU; the data received by the MAC layer from the upper layer is called a MAC SDU, and the data sent by the MAC layer to the lower layer is called a MAC PDU. A MAC PDU can also be called a transport block. In the protocol, the communication between layers is mostly represented by channels. The RLC layer and MAC layer correspond via a logical channel (LCH), while the MAC layer and physical layer correspond via a transport channel. Below the physical layer is the physical channel, which is used to map to the physical layer at the other end.
[0091] Similar to network devices, terminal devices also have an access layer consisting of SDAP, PDCP, RLC, MAC, and physical layers. Terminal devices also have an application layer and a non-access layer. The application layer provides services to applications installed on the terminal device. For example, downlink data received by the terminal device can be sequentially transmitted from the physical layer to the application layer, and then provided to the application. Alternatively, the application layer can acquire data generated by applications (such as videos recorded by users using the application) and sequentially transmit the data to the physical layer for transmission to other communication devices. The non-access layer forwards user data, such as forwarding uplink data received from the application layer to the SDAP layer or forwarding downlink data received from the SDAP layer to the application layer.
[0092] 2) RLC SDU segmentation
[0093] When an RLC entity operates in either acknowledged mode (AM) or unacknowledged mode (UM), and receives a transmission opportunity indication from a lower layer (such as the MAC layer), it adds a header to the RLC SDU to generate an RLC PDU and delivers the RLC PDU to the lower layer. However, when the authorized resources of the transmission opportunity indication are less than the RLC PDU's requirements, the sender of the AM RLC entity segments the RLC SDU and updates the corresponding RLC header for each segment to accommodate the RLC PDU size indicated by the lower layer. When the size of the RLC SDU to be transmitted is not suitable for the current RLC PDU size indicated by the lower layer, the RLC SDU can be segmented or re-segmented; there is no limit to the number of segmentations.
[0094] 3) Scheduling request (SR)
[0095] SR (Request for Resources) is used to request resources. There are various triggering methods / conditions for SR. For example, triggering based on DSR (Detailed Suggestion Request) will trigger SR; similarly, triggering based on BSR (Browser Request) will trigger SR. Of course, SR can also be triggered independently under specific conditions. The triggering methods or conditions for DSR, BSR, and SR are described below.
[0096] DSR Triggering: For a logical channel group (LCG), if the LCG is configured with a remaining time threshold, a DSR can be triggered when the remaining time budget of any data within the LCG is lower than the threshold. Further, the triggering methods for a DSR may include one or more of the following: (1) when the shortest remaining time threshold among all data within an LCG becomes lower than the remaining time threshold; (2) when data in the LCG buffer has not been transmitted; (3) when data in the LCG buffer has not been reported by a DSR; (4) when there are no DSRs in a pending (or triggered) state. The data can be a PDCP SDU or an RLC SDU, etc. In this embodiment, the LCG can also be replaced by a logical channel (LCH).
[0097] BSR triggering: Triggering methods one through four can all trigger BSR. Triggering methods one through four will be introduced in turn below.
[0098] Triggering Method 1: BSR is triggered when any of the following conditions are met:
[0099] Condition 1: New data arrives at the LCH in a certain LCG, and the new uplink data is available to the MAC entity, and the priority of this LCH is higher than the priority of any other LCH with data to be transmitted.
[0100] Condition 2: When new data arrives at an LCH in a certain LCG, the new uplink data is available to the MAC entity, and no uplink data can be sent at any LCH in any other LCG.
[0101] It should be noted that data availability to a MAC entity means that the data can be used, obtained, or allocated by the MAC entity. For example, a MAC entity can reuse the data in a MAC PDU.
[0102] In the second triggering method, the network device configures a retransmission BSR timer (retxBSR-timer) for the terminal device via signaling. This timer is used to prevent the terminal device from waiting indefinitely for uplink resources after sending a BSR if the network device has not allocated corresponding uplink resources. The BSR will be triggered when this timer expires.
[0103] If an uplink MAC protocol data unit (PDU), after being multiplexed according to logical channel multiplexing priority, can completely accommodate the BSR MAC control element (CE) and its corresponding MAC CE header, then the retransmission BSR timer will be started or restarted. The logical channel multiplexing priority is used to determine the order in which signaling or data is multiplexed into uplink resources. When the terminal device decides which signaling or data can be carried in an uplink resource, it can multiplex the signaling or data into the uplink resource according to the logical channel multiplexing priority.
[0104] BSRs triggered by triggering method one or triggering method two are usually called regular BSRs.
[0105] Triggering method three: The network device configures a periodic BSR timer for the terminal device via RRC signaling. When the timer expires, the BSR will be triggered.
[0106] A BSR triggered by trigger mode 3 is usually called a periodic BSR. Additionally, when the terminal device triggers and reports a regular BSR for other reasons, the periodic BSR timer will be reset.
[0107] Triggering method four: After the terminal device fills the MAC PDU according to the logical channel multiplexing priority of the MAC CE and data, if the number of remaining bits in the MAC PDU is greater than or equal to the size of a BSR MAC CE and the sub-header of the BSR MAC CE, then the BSR is triggered, and the terminal device can transmit the BSR through the remaining number of bits in the MAC PDU.
[0108] BSRs based on trigger mode 4 are usually called padding BSRs.
[0109] SR triggering: can be triggered by DSR, BSR or other conditions.
[0110] For example, if the logical channel that triggers DSR does not have a pre-existing SR that has already been triggered by the DSR process, then an SR can be triggered. The pre-existing SR can be triggered by either BSR or DSR.
[0111] For example, if a terminal device triggers a BSR (Browser Response Scheduler), and the triggered BSR is not canceled, then the terminal device can also trigger an SR (Signal Response Scheduler), provided that the conditions for triggering an SR are met. The conditions for triggering an SR include any one or more of the following:
[0112] Condition 3: The logical channel scheduling request delay timer (logicalChannelSR-DelayTimer) configured for the logical channel corresponding to the BSR is not running, and the terminal device currently has no uplink resources available for transmitting the data to be transmitted.
[0113] Condition 4: The logical channel scheduling request delay timer configured for the logical channel corresponding to the BSR is in an inactive state, the SR-mask (logicalChannelSR-Mask) corresponding to the logical channel that triggered the BSR is in a closed (false) state, and the MAC entity has configured uplink resource grant scheduling for the terminal device.
[0114] Condition 5: The logical channel scheduling request delay timer configured for the logical channel corresponding to the BSR is not running, and the terminal device currently has uplink resources available for transmitting data to be transmitted, but these uplink resources do not meet the parameter requirements of the data to be transmitted in this logical channel (e.g., logical channel prioritization (LCP)). This logical channel can be understood as the logical channel that triggers the BSR.
[0115] When the logical channel scheduling request delay timer (logicalChannelSR-DelayTimer) for any logical channel is enabled, a regular BSR that has been triggered will not be triggered. The logical channel scheduling delay timer can be configured for a MAC entity. Network devices can configure a logical channel scheduling request delay timer switch (logicalChannelSR-DelayTimerApplied) for each logical channel to indicate whether the logical channel will enable the logical channel scheduling request delay timer. When the logical channel scheduling request delay timer switch is off (e.g., false), the logical channel will not enable the logical channel scheduling request delay timer.
[0116] If the terminal device meets the above conditions 3, 4 or 5, the terminal device will trigger SR.
[0117] It should be noted that conditions 3 to 5 above are mainly applied to scenarios where the currently triggered BSR is a regular BSR.
[0118] During the process of reporting SRs on the terminal device, the terminal device needs to report the SR based on the SR configuration information. The SR configuration information includes the SR ID, the SR prohibition timer (sr-ProhibitTimer), and the maximum number of SR transmissions (sr-TransMax). The sr-ProhibitTimer indicates that the SR corresponding to this SR configuration will not be sent within the timer's runtime; that is, when the timer runs, the SR of the corresponding SR configuration will not be sent. The sr-TransMax indicates the maximum number of times the SR can be sent. When the number of transmissions reaches sr-TransMax, the random access procedure is initialized. The SR ID is used to distinguish SR configurations; each SR configuration has its own ID. The SR ID can be associated with the LCH or LCG. The terminal device can obtain the SR configuration information through RRC signaling (e.g., scheduling request configuration signaling).
[0119] It should be noted that network devices can configure or associate an SR ID for each LCH or LCG. If the data to be transmitted in an LCH or LCG triggers a regular BSR or DSR and meets the SR triggering conditions, the terminal device triggers an SR. If the number of SR transmissions has not reached sr-TransMax, the terminal device transmits the SR according to the uplink resources corresponding to the SR configuration indicated by the SR ID. Simultaneously, the sr-prohibitTimer in the SR configuration corresponding to the SR ID is enabled. Therefore, it can be understood that when a logical channel triggers an SR (e.g., triggering a BSR or DSR and then an SR), the SR is triggered according to the SR configuration corresponding to that logical channel. For example, the SR is triggered based on the timer, number of transmissions, and transmission resources configured in the SR configuration.
[0120] 4) Automatic Repeat Request (ARQ)
[0121] RLC AM mode supports the ARQ mechanism to ensure the reliability of data transmission. For example, please refer to [link to relevant documentation]. Figure 4 This is a flowchart illustrating the ARQ process of an RLC entity provided in an embodiment of this application. The RLC entity includes an RLC sending entity and an RLC receiving entity, such as... Figure 4 As shown, taking the example of an RLC sending entity sending data 0 to data 2 to an RLC receiving entity, where data 0 is data that failed to be sent, or data that the RLC receiving entity did not receive. When the RLC receiving entity detects that data 0 was not successfully or completely received, it starts a timer, which can be called a reassembly timer (t-reassembly). The duration of this timer can be the transmission delay budget. If the timer expires and the RLC receiving entity does not receive data 0, then the RLC receiving entity will trigger a status report. The status report may include a NACK for data 0. Correspondingly, after receiving the status report, the RLC sending entity can identify that data 0 was not successfully received based on the NACK for data 0 in the status report and will prepare to retransmit data 0. Here, data 0 can be an RLC SDU or a segment of an RLC SDU. Conversely, if the RLC sending entity determines that data 0 has been successfully received based on the ACK for data 0 in the status report, it can send an indication that data 0 has been successfully received to a higher layer and update the corresponding transmission window.
[0122] 5) Packet loss timer
[0123] The PDCP layer configures a packet loss timer for each SDU. When an SDU from a higher layer arrives at the PDCP layer, the packet loss timer is started for that PDCP SDU. When the packet loss timer expires, the PDCP SDU or the PDU corresponding to that PDCP SDU will be discarded.
[0124] Optionally, the duration of the packet loss timer corresponding to different PDCP SDUs may differ. For example, the duration of packet loss timer #a corresponding to PDCP SDU#a is longer than the duration of packet loss timer #b corresponding to PDCP SDU#b. The duration of the packet loss timer corresponding to a PDCP SDU can be determined based on the importance or latency requirements of the PDCP SDU. For example, if PDCP SDU#a is more important than PDCP SDU#b, then the duration of packet loss timer #a corresponding to PDCP SDU#a is longer than the duration of packet loss timer #b corresponding to PDCP SDU#b. Or, for example, if PDCP SDU#a requires lower latency than PDCP SDU#b, then the duration of packet loss timer #a corresponding to PDCP SDU#a is longer than the duration of packet loss timer #b corresponding to PDCP SDU#b. Here, packet loss timer #a can be a regular packet loss timer; packet loss timer #b can be a timer configured for low-importance packet loss in higher-layer signaling (discardTimerForLowImportance).
[0125] The packet loss timer is maintained by the PDCP layer, while the DSR is typically triggered at the MAC layer. Therefore, when the remaining transmission delay budget of a PDCP SDU is lower than the remaining delay threshold, the PDCP SDU can send an indication message to lower layers, such as the RLC layer or the MAC layer. For example, when a PDCP SDU becomes a delay-critical PDCP SDU, if the PDCP SDU has already been delivered to a lower layer, a delay-critical indication message can be sent to that lower layer. In one scenario, when the remaining transmission delay budget of a PDCP SDU is lower than the remaining delay threshold, the PDCP SDU becomes a low-latency PDCP SDU. In this case, if the PDCP PDU has already been delivered to a lower layer, a low-latency indication message associated with that PDCP PDU can be sent to that lower layer.
[0126] When the packet loss timer associated with a PDCP SDU expires, the PDCP layer can inform the RLC layer of the timeout. For example, the RLC layer can receive information from the PDCP layer indicating that the packet loss timer has expired. In this case, if the RLC SDU corresponding to the PDCP SDU has not been sent—for example, the RLC SDU or any segment within the RLC SDU has not been delivered to a lower layer, such as the MAC layer—the sending entity of the RLC layer can discard the RLC SDU or the RLC PDU corresponding to it. For instance, after receiving PDCP SDU#1 from a higher layer, the PDCP layer (or PDCP entity) can start the associated packet loss timer #1 for PDCP SDU#1. If packet loss timer #1 expires and the PDCP SDU#1 has not been delivered to a lower layer (such as the RLC layer), the PDCP SDU#1 or the PDCP PDU#1 containing the PDCP SDU#1 can be discarded. Alternatively, if packet loss timer #1 times out and the PDCP SDU #1 has already been delivered to a lower layer (such as the RLC layer), a packet loss indication message is sent to the lower layer. If the corresponding RLC SDU #1 or any segment of the RLC SDU #1 has not been delivered to the lower layer (such as the MAC layer) at this time, the RLC SDU #1 or the RLC PDU #1 containing the PDCP SDU #1 can be discarded.
[0127] When the packet loss timer corresponding to any PDCP SDU in the PDU set times out, if any PDCP SDU or PDCP PDU in the PDU set has already been delivered to a lower layer, the PDCP layer can inform the RLC layer of the packet loss timer timeout. In this case, if the RLC SDU corresponding to the PDU set has not been sent, the RLC layer can discard the RLC SDU or RLC PDU corresponding to the PDU set. For example, the PDU set includes PDCP SDU#1 to PDCP SDU#4. PDCP SDU#1 to PDCP SDU#4 correspond one-to-one with RLC SDU#1 to RLC SDU#4 according to their numbers; for example, PDCP SDU#1 corresponds to RLC SDU#1. When the packet loss timer corresponding to any of the PDCP SDUs from PDCP SDU#1 to PDCP SDU#4 times out—for example, when the packet loss timer associated with the first SDU arriving at the PDCP layer times out—PDCP SDUs from PDCP SDU#1 to PDCP SDU#4 corresponding to that PDU set have not been sent, then PDCP SDUs from PDCP SDU#1 to PDCP SDU#4 can be discarded. For example, packet loss at the data unit group level can be configured by the receiving device (e.g., network equipment) for the PDCP entity of the sending device (e.g., terminal equipment) via an RRC message (such as PDU group discard (pdu-SetDiscard)).
[0128] 6) In this application, the unit of data can be any of the following: a data frame, an SDU, a protocol data unit (PDU), a PDU set, or a data burst. A PDU may include an SDU or a segment (or byte segment) of an SDU, and may also include a header. For example, an RLC PDU may include an RLC SDU or a segment of an RLC SDU, and may also include a header. A PDU set may include at least one PDU, which may carry an information unit generated by an application (or application layer). For example, when the data volume of a data frame is large, the data frame may be divided into multiple PDUs for transmission, and a PDU set may include these multiple PDUs. A data burst can be understood as a group of PDUs generated and sent by an application (or application layer) within a certain period of time. This group of PDUs may come from one or more PDU sets, and the duration of this period may be less than a set value.
[0129] 7) In the embodiments of this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to XX" can be understood as the destination of the information being XX, which may include direct transmission via the air interface or indirect transmission by other units or modules via the air interface. "Receive information from YY" can be understood as the source of the information being YY, which may include direct reception from YY via the air interface or indirect reception from YY by other units or modules via the air interface. "Send" can also be understood as the "output" of the chip interface, and "receive" can also be understood as the "input" of the chip interface. In other words, sending and receiving can occur between devices, such as between network devices and terminal devices, or within a device, such as between components, modules, chips, software modules, or hardware modules within the device via a bus, wiring, or interface.
[0130] In this application embodiment, the number of nouns, unless otherwise specified, refers to "singular nouns or plural nouns," that is, "one or more." "At least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, or B exists alone, 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. For example, A / B means: A or B. "At least one 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 of a, b, or c means: 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.
[0131] In the embodiments of this application, "when," "if," and "if" all refer to the device taking corresponding actions under certain objective circumstances, and are not time-limited, nor do they require the device to perform a judgment action, nor do they imply any other limitations. Unless otherwise specified, "if" and "if" can be substituted, and "when" and "in the case of" can be substituted. "When" and "if" / "if" can be substituted.
[0132] 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 this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0133] In this application's embodiments, ordinal numbers such as "first" and "second" are used to distinguish multiple objects, and are not used to limit the size, content, order, timing, priority, or importance of the multiple objects. For example, "first protocol layer" and "second protocol layer" refer to two different protocol layers, and do not indicate a difference in the priority or importance of these two protocol layers.
[0134] According to the foregoing Figure 4 As the process shows, in RLC AM mode, the RLC sending entity will only consider retransmitting data 0 after receiving a status report from the RLC receiving entity indicating that data 0 was not successfully received (e.g., a certain SDU or SDU segment). However, in some scenarios, the status report triggers late, causing the transmission time of data 0 to exceed the transmission delay budget. In this case, retransmitting data 0 by the RLC sending entity is not very meaningful or necessary. Alternatively, when the status report is triggered, there are no resources available to transmit it, preventing timely delivery. The RLC sending entity does not receive the status report in time, further causing the transmission time of data 0 to exceed the transmission delay budget. In this case, retransmitting data 0 by the RLC sending entity is also not very meaningful. Therefore, Figure 4 The process cannot meet the requirements of high reliability and low latency.
[0135] To address the aforementioned technical problems, this application provides a solution based on its embodiments. In this embodiment, whether to retransmit data can be determined based on the data's latency budget. For example, if the data's latency budget is below a certain threshold, retransmission is determined. Compared to determining retransmission based on feedback status reports, the solution provided in this application can determine whether to retransmit data earlier, thus enabling earlier retransmission and meeting the requirements for high reliability and low latency.
[0136] The communication methods provided in the embodiments of this application will be described in detail below with reference to the accompanying drawings.
[0137] In the following description, the communication method provided in the embodiments of this application is applied to... Figure 1Taking the network architecture shown as an example, the communication method provided in this application embodiment can be executed by a first communication device and a second communication device. The steps executed by the first communication device can be implemented by the first communication device itself, by components within the first communication device (such as a baseband chip, or other processing units or processor modules), or by a device including the first communication device. The steps executed by the second communication device can be implemented by the second communication device itself, by components within the second communication device (such as a baseband chip, or other processing units or processor modules), or by a device including the second communication device. The specific form of the first and second communication devices is not limited; for example, the first communication device can be a chip, and the second communication device can be a device; or both the first and second communication devices can be chips or devices. In possible scenarios, the first communication device can be... Figure 1 The terminal device 120a shown, or it could be Figure 1 The chip (system) in the terminal device 120a; the second communication device can be Figure 1 The network device 110a in the middle, or it could be Figure 1 The chip (system) in network device 110a. Alternatively, the first communication device may be... Figure 1 The network device 110a in the middle, or it could be Figure 1 The chip (system) in the network device 110a; the second communication device can be Figure 1 The terminal device 120a shown, or it could be Figure 1 The chip (system) in the terminal device 120a.
[0138] It should be noted that the method provided in this application is applicable to data interaction between two communication ends. This application does not limit the specific implementation of the two communication ends. For example, the sending end can be a first communication device, and the receiving end can be a second communication device.
[0139] Please see Figure 5 , Figure 5 This is a flowchart illustrating the communication method 500 provided in an embodiment of this application. Figure 5 Taking a terminal device as the first communication device and a network device as the second communication device as an example, this method is introduced from the perspective of the interaction between the terminal device and the network device. It should be understood that the communication method can also be implemented by other devices, such as chips or communication devices with communication functions. Figure 5Taking the sending of first data from a terminal device to a network device as an example, where the first data is delivered from a second protocol layer to a first protocol layer, the first protocol layer is a lower layer than the second protocol layer. For example, the second protocol layer is the RLC layer and the first protocol layer is the MAC layer; or, the second protocol layer is the PDCP layer and the first protocol layer is the RLC layer.
[0140] S501. When submitting the first data to the first protocol layer, start the first timer.
[0141] The first data can be data submitted by the second protocol layer of the terminal device to the first protocol layer. Submitting the first data to the first protocol layer includes submitting the first data through the second protocol layer to the first protocol layer. For example, if the second protocol layer is the RLC layer and the first protocol layer is the MAC layer, the first data can be an RLC SDU or an RLC SDU segment. Another example is if the second protocol layer is the PDCP layer and the first protocol layer is the RLC layer, the first data can be a PDCP SDU. Here, "submission" can also be referred to as delivery.
[0142] The first data can originate from an upper layer of the second protocol layer. For example, S501 includes S501a and S501b. S501a indicates that the second protocol layer receives second data from the third protocol layer; S501b indicates that the second protocol layer submits the first data to the first protocol layer. This first data can be the second data itself, a segment of the second data, or the first data contained within the second data, or the second data including the first data. The inclusion of the first data in the second data can be at the logical layer level or the physical layer level. For example, the first protocol layer is the MAC layer, the second protocol layer is the RLC layer, the third protocol layer is the PDCP layer, the second data is a PDCP SDU or a PDCP PDU, and the first data can be a portion of the PDCP SDU or PDCP PDU.
[0143] In this embodiment, a first timer is started when first data is submitted to the first protocol layer. It can be considered that the condition for starting the first timer is either submitting first data to the first protocol layer or the second protocol layer submitting first data to the first protocol layer. Figure 5 (Using this as an example).
[0144] As an alternative, the condition for starting the first timer can also be that the second protocol layer receives second data from the third protocol layer. This second data can be the first data, or the second data can include the first data. In other words, the first timer is started when the second protocol layer receives the second data from the third protocol layer. Alternatively, the condition for starting the first timer can also be that the second protocol layer receives an indication from the first protocol layer, which can indicate that there are available transmission resources for the first protocol layer. That is, the first timer is started when the second protocol layer receives the indication from the first protocol layer.
[0145] In this embodiment of the application, "submitting first data to the first protocol layer and starting the first timer" can be replaced with "the second protocol layer starts the first timer upon receiving indication information from the first protocol layer," where the indication information can be used to indicate that the first protocol layer has available transmission resources. Unless otherwise specified, the following mainly uses the example of the second protocol layer starting the first timer when delivering first data to a lower layer; that is, the following uses the condition of submitting first data to the first protocol layer as an example to start the first timer.
[0146] Understandably, when the second protocol layer determines that the MAC layer cannot transmit the second data received from the third protocol layer, it can segment the second data and deliver it in segmented form. For example, when the second protocol layer receives the second data from the third protocol layer and receives an indication from the first protocol layer, it can determine that the resources corresponding to the transmission opportunity are insufficient to transmit the second data. Therefore, based on this indication, it determines to deliver the first data segment of the second data to the first protocol layer. Here, the third protocol layer is the layer above the second protocol layer; for example, the second protocol layer is the RLC layer, and the third protocol layer could be the PDCP layer. Accordingly, the second data is an RLC SDU, and the first data is an RLC SDU segment. After the RLC layer receives the RLC SDU from the PDCP layer, if the RLC layer receives an indication from the MAC layer, and determines that the resources corresponding to the MAC layer's transmission opportunity are insufficient to transmit the RLC SDU, then the RLC layer segments the RLC SDU and delivers one of the RLC SDU segments to the MAC layer.
[0147] The first timer can be used to retransmit data. For example, if the remaining runtime of the first timer is less than a threshold, then the second protocol layer can be determined to retransmit the first data. It can be understood that when the threshold value is 0, the first timer times out, and correspondingly, the second protocol layer can be determined to retransmit the first data.
[0148] In possible implementations, the first timer can be maintained by the second protocol layer. The first timer is started when the second protocol layer submits the first data to the first protocol layer, without requiring additional interaction. For example, the second protocol layer could be the RLC layer, which can maintain the first timer. The RLC layer can start the first timer when it submits the first data to the MAC layer. Alternatively, the first timer can be started when the second protocol layer receives the second data (second data from the third protocol layer). Taking the second protocol layer as the RLC layer and the third protocol layer as the PDCP layer as an example, the first timer is started when the RLC layer receives the second data from the PDCP layer, such as PDCP SDU#1.
[0149] Alternatively, the first timer can be maintained by the layer above the second protocol layer. When the second protocol layer submits the first data to the first protocol layer, it informs the layer above it, which then starts the first timer. For example, if the second protocol layer is the RLC layer, the first timer can be maintained by the PDCP layer. The RLC layer submits the first data to the MAC layer and notifies the PDCP layer, which then starts the first timer.
[0150] Alternatively, the first timer can also be maintained by the layer below the second protocol layer. When the second protocol layer submits the first data to the first protocol layer, the first protocol layer starts the first timer. For example, if the second protocol layer is an RLC layer, the first timer can be maintained by the MAC layer. When the RLC layer submits the first data to the MAC layer, the MAC layer starts the first timer.
[0151] Optionally, the first timer can be configured by higher-layer signaling. For example, the terminal device can receive first configuration information from other devices (e.g., network devices) for configuring the first timer.
[0152] Optionally, the first timer can also be configured or started at the granularity of a data set; that is, the first timer can be associated with a PDU set. For example, the first timer is started when any SDU in a PDU set is delivered to a lower layer; or, the first timer is started when all PDUs in a PDU set are delivered to a lower layer. Further, when a configuration signaling, such as pdu-SetDiscard, is received, the first timer can be configured or started at the granularity of a data set.
[0153] Optionally, the timing duration of the first timer can be determined based on the size of the first data. For example, if the first data is an RLC SDU, the timing duration of the first timer is longer; if the first data is an RLC SDU segment, the timing duration of the first timer is shorter. For example, in this embodiment, different data can correspond to different timers. For example, taking RLC SDU#1 as an example, the RLC layer submits RLC SDU#1 to the MAC layer, which can start timer #1; or, the RLC layer submits RLC SDU segment #1 included in RLC SDU#1 to the MAC layer, which can start timer #2; or, the RLC layer submits RLC SDU segment #11 included in RLC SDU segment #1 included in RLC SDU#1 to the MAC layer, which can start timer #11. That is, if the first data is RLC SDU#1, the first timer is timer #1; if the first data is RLC SDU segment #1, the first timer is timer #2; if the first data is RLC SDU segment #11, the first timer is timer #11. The timing durations of Timer #1, Timer #2, and Timer #11 can be different.
[0154] Alternatively, one timer can correspond to one or more data. Continuing with the example above, for instance, if the first data is RLCSDU#1 or segment #1 of RLC SDU#1, the first timer is timer #1 in both cases. The RLC layer can start timer #1 by submitting RLC SDU#1 to the MAC layer; the RLC layer can also start timer #1 by submitting segment #1 of RLC SDU#1 to the MAC layer.
[0155] In this embodiment, when the terminal device submits first data to the first protocol layer through the second protocol layer, a first timer can be started to determine whether the first data needs to be retransmitted. For example, if the first timer times out, it is determined that the second protocol layer will retransmit the first data. Alternatively, starting the first timer when submitting the first data to the first protocol layer through the second protocol layer can be replaced by starting the first timer at time A when the first data is submitted to the first protocol layer through the second protocol layer; or by starting the first timer at time A when the first data is submitted from the second protocol layer to the first protocol layer through the second protocol layer.
[0156] S502. During the operation of the first timer, the second protocol layer receives feedback information for the first data, and the terminal device stops and / or resets the first timer.
[0157] Before the first timer expires, if the second protocol layer receives feedback information for the first data, it can determine whether to retransmit the first data based on the feedback information. The feedback information for the first data can be an ACK or a NACK for the first data. When the second protocol layer receives an ACK for the first data, it considers the first data to have been successfully transmitted and does not need to be retransmitted. In this case, the terminal device can stop and / or reset the first timer. When the second protocol layer receives a NACK for the first data, it considers the first data to have not been successfully transmitted and will determine to retransmit the first data, therefore the first timer is not needed. In this case, the terminal device can stop and / or reset the first timer. For example, taking the first data as data #a, for the second protocol layer, timer #a is started when data #a (SDU or SDU segment) or any segment of data #a is delivered to a lower layer; when the second protocol layer receives feedback information for data #a (such as ACK or NACK), the second protocol layer can stop and / or reset timer #a.
[0158] Optionally, one SDU segment corresponds to one timer. For example, SDU#a contains segment #1 and segment #2, segment #1 corresponds to timer #1, and segment #2 corresponds to timer #2. Timer #1 and timer #2 are different timers, can operate independently, and do not affect each other.
[0159] Optionally, timer #a is associated with data #a, or timer #a is associated with the SDU corresponding to data #a.
[0160] In this scenario, timer #a can be restarted based on the delivery of SDU #a or the delivery of SDU #a segments. For example, if SDU #a contains segments #1 and #2, timer #a is started when segment #1 is delivered. When segment #2 is delivered, if timer #a is already running, timer #a can be restarted. Optionally, timer #a can be restarted if segments #1 and #2 have the same number of deliveries. For example, if segment #1 is the first delivery (initial transmission) and segment #2 is the second delivery (first retransmission), timer #a does not need to be restarted if it is already running when segment #2 is delivered.
[0161] Alternatively, for the transmission of an SDU#a, timer #a can be started only once. For example, timer #a is started when SDU#a or a segment of SDU#a is delivered to a lower layer, and no bytes of SDU#a have been transmitted (delivered to a lower layer). For example, if SDU#a contains segments #1 and #2, timer #a is started when segment #1 is delivered to a lower layer, and then timer #a is not started when segment #2 is delivered to a lower layer. Alternatively, timer #a is started when segment #1 is delivered to a lower layer, and then timer #a is running when segment #2 is delivered to a lower layer, and timer #a is not restarted. Alternatively, timer #a is started when data #a or any segment of data #a is delivered to a lower layer, and timer #a is not running. Alternatively, timer #a can be started only after all data #a has been transmitted, for example, when all segments (or bytes) of data #a are delivered to the lower layer. In other words, timer #a is started when the last byte of data #a is delivered to the lower layer. Accordingly, timer #a can be stopped and / or reset when the second protocol layer receives feedback information for data #a. Alternatively, timer #a can be stopped and / or reset when the second protocol layer receives feedback information for data #a or all segments of data #a.
[0162] Optionally, when timer #a is associated with the SDU corresponding to data #a, if the SDU is divided into multiple segments, timer #a will only be stopped / terminated after all segments of the SDU have received feedback information. For example, if SDU #a contains segments #1 and #2, timer #a will only be stopped / terminated after feedback information for segments #1 and #2 has been received.
[0163] S503, the first timer times out, and the terminal device determines to retransmit the first data at the second protocol layer.
[0164] Since the terminal device stops and / or resets the first timer if the second protocol layer receives feedback information regarding the first data during the operation of the first timer, it can be assumed that the first timer has timed out and the second protocol layer has not received feedback information regarding the first data. Therefore, when the first timer times out, the terminal device determines that the second protocol layer should retransmit the first data. It can be considered that if the second protocol layer does not receive feedback information regarding the first data within a certain period (e.g., within the duration of the first timer) after delivering the first data to the first protocol layer, it determines that the second protocol layer should retransmit the first data or consider retransmitting the first data.
[0165] For example, the conditions for retransmitting the first data may include one or more of the following conditions A-1 to A-3:
[0166] Condition A-1: The first timer times out;
[0167] Condition A-2: No feedback was received regarding the first data.
[0168] Condition A-3: The first data has been delivered to a lower level.
[0169] For example, if the first timer expires and only some segments of the first data receive feedback, the second protocol layer can retransmit the segments that were not received in the first data. As another example, if SDU#a contains segments #1 and #2, and the second protocol layer only receives feedback for segment #1 before the first timer for SDU#a expires, then when the first timer for SDU#a expires, it determines or considers retransmitting segment #2. In this case, segment #1 can be understood as one set of first data, and segment #2 can be understood as another set of first data.
[0170] In possible scenarios, if the data belongs to a dataset, such as a PDU set, whether to retransmit the first data can also be considered by considering whether all datasets (such as PDU sets) to which the first data belongs have already undergone initial transmission. Accordingly, the conditions for retransmitting the first data can include one or more of the following conditions B-1 to B-3:
[0171] Condition B-1: The first timer times out;
[0172] Condition B-2: In the data set to which the first piece of data belongs, each piece of data is delivered to a lower level;
[0173] Condition B-3: No feedback was received regarding the first data.
[0174] Optionally, when a configuration signaling message, such as pdu-SetDiscard, is received, the decision to retransmit the first data may further consider whether each piece of data in the data set to which the first data belongs has been delivered to a lower layer. The delivery of each piece of data in the data set to the first layer can also be understood as each piece of data in the data set having undergone initial transmission.
[0175] Similarly, when the first timer is started when the second protocol layer receives the second data, that is, when the second protocol layer receives the second data, the conditions for retransmitting the first data include one or more of the following conditions C-1 to C-3:
[0176] Condition C-1: The first timer is below a certain threshold or times out;
[0177] Condition C-2: The first data has already been transmitted or delivered to a lower layer;
[0178] Condition C-3: No feedback information was received regarding the first data.
[0179] In a possible scenario, the second protocol layer starts a first timer when it receives the second data. When the first timer falls below a certain threshold or times out, and the first data has already been transmitted or delivered to a lower layer, and no feedback information is received regarding the first data, the terminal device determines to retransmit the first data.
[0180] Similarly, when the first timer is started when the second protocol layer receives the second data, that is, when the second protocol layer receives the second data, the conditions for retransmitting segments of the first data include one or more of the following conditions D-1 to D-3:
[0181] Condition D-1: When the first timer falls below a certain threshold or times out;
[0182] Condition D-2: Segment #1 of the first data has been transmitted or delivered to a lower layer;
[0183] Condition D-3: No feedback information was received for segment #1 of the first data.
[0184] In a possible scenario, when the second protocol layer receives the second data, it starts the first timer. When the first timer falls below a certain threshold or times out, and segment #1 of the first data has already been transmitted or delivered to a lower layer, and no feedback information for segment #1 of the first data has been received, the terminal device determines that the second protocol layer should retransmit the first data segment #1.
[0185] When the second protocol layer retransmits the first data, if it receives an indication from the MAC layer that there are insufficient transmission opportunities to transmit the first data, then the second protocol layer segments the first data and submits the first data in segment form. For example, if the first data is an RLC SDU, and the RLC layer receives an indication from the MAC layer that the resources indicated by the MAC layer's transmission opportunities are insufficient to transmit the RLC SDU, then the RLC layer segments the RLC SDU and submits one of the RLC SDU segments to the MAC layer. Figure 5The process illustrated is such that if the second protocol layer does not receive feedback information for the first data within a certain period after submitting the first data, it determines to retransmit the first data or considers retransmitting it. For example, for the second protocol layer, when data #a (SDU or SDU segment) or any segment of data #a is delivered to a lower layer, timer #a is started; when the second protocol layer receives feedback information (such as ACK or NACK) for data #a, it can stop and / or reset timer #a; conversely, if timer #a times out, it considers retransmitting data #a or determines to retransmit data #a; or, if timer #a times out, it considers retransmitting the segments of data #a for which no feedback information was received. It is understood that the starting of timer #a is performed by the protocol layer that maintains timer #a.
[0186] In some scenarios, only a portion of the data submitted by the second protocol layer to the first protocol layer is transmitted. In this case, whether to retransmit the data depends on whether all the SDUs corresponding to the data have been submitted to the lower layer before the timer expires. For example, for the second protocol layer, when data #a (SDU or SDU segment) is submitted to the lower layer, timer #a is started; when the second protocol layer receives feedback information (such as ACK or NACK) for data #a, the second protocol layer can stop and / or reset timer #a; conversely, when timer #a expires and all the SDUs corresponding to data #a have been submitted to the lower layer, retransmission of data #a is considered or retransmission of data #a is determined.
[0187] For example, if only a portion of data #a is transmitted, retransmission of that portion can be considered when timer #a expires. Taking RLC layer as the second protocol layer as an example, data #a is RLC SDU #a. If only RLC SDU segment #1 within RLC SDU #a is transmitted, retransmission of RLC SDU segment #1 can be considered when timer #a expires. As another example, if only feedback information for a portion of the segments is received before timer #a expires, and information for the other portion of the segments is not received, then retransmission of the other portion of the segments can be considered when timer #a expires. For instance, if data #a includes segments #1 and #2, and feedback information for segment #1 has been received before timer #a expires, but feedback information for segment #2 has not been received, then retransmission of segment #2 can be considered when timer #a expires.
[0188] For example, RLC SDU#1 includes RLC SDU segment #1 and RLC SDU segment #2. The second protocol layer sequentially delivers RLC SDU segment #1 and RLC SDU segment #2 to the first protocol layer. RLC SDU segment #1 has been delivered to a lower layer. Before the timer corresponding to RLC SDU segment #2 expires, RLC SDU segment #2 has also been delivered to a lower layer. When the timer expires, if only feedback from RLC SDU segment #1 is received, it is determined to retransmit RLC SDU segment #2.
[0189] For example, RLC SDU#1 includes RLC SDU segment #1 and RLC SDU segment #2. The second protocol layer delivers RLC SDU segment #1 to the first protocol layer. Before the timer corresponding to RLC SDU segment #2 expires, RLC SDU segment #2 has not been delivered to a lower layer, so it can be considered that RLC SDU#1 cannot complete the transmission within the specified time. In this case, the transmission of RLC SDU segment #1 can be abandoned, thereby saving resources. The timer corresponding to the RLC SDU segment (such as segment #1 or segment #2) can be the SDU's timer or the timer corresponding to the segment itself. The relationship between the timer and the data can be referred to the explanations in S502 and S503, which will not be repeated here.
[0190] In possible scenarios, if the remaining transmission delay budget for data #a is below a certain threshold, or if there is no remaining transmission delay budget, then data #a can be discarded. In this case, timer #a can also be stopped or reset. For example, timer #a can be stopped or reset when the packet loss timer (or low-importance packet loss timer) corresponding to data #a times out. Data #a can be an RLC SDU or a PDCP SDU, etc. Optionally, this threshold can be dynamically indicated, semi-statically configured (such as an RRC message), or factory-preconfigured.
[0191] It should be noted that, Figure 5 The illustrated process also applies to retransmitted data; in other words, it applies to cases where the first data is retransmitted data. Figure 5 This process also applies. For example, when data #a is delivered to a lower layer due to retransmission, timer #a is started; when timer #a times out, it can be determined to retransmit data #a again. Optionally, timer #a is started when it is not running. Optionally, if only part of the data in data #a is transmitted, timer #a may not be started during retransmission. For example, if data #a contains segment #1 and segment #2, segment #1 is sent at time t1, and segment #2 has not been sent (e.g., it has not been delivered to a lower layer) at time t2 when timer #a times out, then segment #1 may not be retransmitted.
[0192] In communication method 500, if no feedback information is received regarding the first data within a certain period after the second protocol layer submits the first data, then it is determined to retransmit the first data or to consider retransmitting the first data. Compared to Figure 4 The process shown is that the sending end of the RLC entity will only consider retransmitting data when it receives a status report from the receiving end of the RLC entity, and the status report indicates that the data was not successfully received. Communication method 500 can avoid the inability to retransmit data in time due to the late receipt of the status report, and can retransmit data as early as possible, thereby meeting the requirements of high reliability and low latency as much as possible.
[0193] This application also provides a communication method 600. In the communication method 600, retransmission can be triggered based on the remaining transmission delay budget of the data. Compared to Figure 4 This process can also avoid the inability to retransmit data in a timely manner due to the late receipt of status reports, and can meet the requirements of high reliability and low latency as much as possible.
[0194] Please see Figure 6 , Figure 6 This is a flowchart illustrating the communication method 600 provided in an embodiment of this application. Figure 6 Taking a terminal device as the first communication device and a network device as the second communication device as an example, this method is introduced from the perspective of the interaction between the terminal device and the network device. It should be understood that the communication method can also be implemented by other devices, such as chips or communication devices with communication functions. Figure 6 Taking the sending of first data from a terminal device to a network device as an example, where the first data is delivered from the second protocol layer to the first protocol layer at the terminal device, the first protocol layer is a lower layer than the second protocol layer. For example, the second protocol layer is the RLC layer and the first protocol layer is the MAC layer; or, the second protocol layer is the PDCP layer and the first protocol layer is the RLC layer.
[0195] S601, Submit the first data to the first protocol layer through the second protocol layer.
[0196] The first data can be data submitted from the second protocol layer to the first protocol layer. For example, if the second protocol layer is the RLC layer and the first protocol layer is the MAC layer, the first data can be an RLC SDU or an RLC SDU segment. Another example is if the second protocol layer is the PDCP layer and the first protocol layer is the RLC layer, the first data can be a PDCP SDU. Similar to S501, S601 includes S601a and S601b. S601a: The second protocol layer receives the second data from the third protocol layer. S601b: The second protocol layer submits the first data to the first protocol layer. For details, please refer to the relevant content in the aforementioned S501; it will not be repeated here.
[0197] S602. The terminal device determines whether to retransmit the first data at the first moment based on the latency budget of the first data.
[0198] The delay budget, also known as the remaining transmission delay budget, determines whether to retransmit the first data if its delay budget is lower than a first threshold. For example, if the delay budget of the first data is less than or equal to the first threshold, or if the delay budget of the first data becomes less than or equal to the first threshold, then it is determined that the first data will be retransmitted at the first moment; if the delay budget of the first data is greater than the first threshold, then it is determined that the first data does not need to be retransmitted at the first moment. Alternatively, if the delay budget of the first data is less than the first threshold, then it is determined that the first data will be retransmitted at the first moment; if the delay budget of the first data is greater than or equal to the first threshold, then it is determined that the first data does not need to be retransmitted at the first moment. Here, the first moment is related to the delay budget of the first data.
[0199] The relationship between the latency budget for the first moment and the first data will be discussed below. First, we will introduce how to determine the latency budget for the first data, including but not limited to the following three methods.
[0200] In method A, the latency budget for the first data can be the packet delay budget (PDB).
[0201] PDB can be understood as the latency requirement from a terminal device to a base station or user plane function (UPF) network element. For example, it's the time elapsed from when a PDU arrives at the terminal device until it is successfully received by the network device or UPF network element. Typically, PDB is configured by the core network (CN) using a Quality of Service (QoS) identifier.
[0202] In method B, the delay budget for the first data can be the timeout of the PDU set delay budget (PSDB) corresponding to the first data.
[0203] PSDB can be understood as the transmission latency requirement of a PDU set. For example, it is the time from the arrival of the first PDU in a PDU set at the terminal device until all PDUs in that PDU set are successfully received by the network device or UPF element. Alternatively, it is the time from the arrival of the first PDU in a PDU set at any entity of the UPF or RAN until all PDUs in that PDU set are successfully received by the terminal device.
[0204] In method C, the delay budget for the first data can be determined based on the second timer.
[0205] The second timer can be a packet loss timer. For example, if the first data is a PDCP SDU, the delay budget for the first data can be determined based on the packet loss timer of the PDCP layer. For instance, the delay budget for the first data can be the remaining runtime of the packet loss timer. For more information on packet loss timers, please refer to section 5) above; further details will not be provided here.
[0206] Alternatively, the second timer can be a separate timer from the packet loss timer. The second timer can be configured by the network device; for example, the network device sends second configuration information to the terminal device, which is used to configure the second timer. The terminal device receives the second configuration information and can configure the second timer accordingly. The second configuration information can be carried in one or more fields of RRC signaling, MAC CE, or downlink control information (DCI), and this application embodiment does not impose any limitations on this. The second timer can be maintained by the first protocol layer or the second protocol layer, and this application embodiment does not impose any limitations on this.
[0207] In communication method 600, a first threshold can be set. When the delay budget of the first data is less than or equal to the first threshold, it can be considered that the first data may not be able to be transmitted within the specified time. In this case, retransmission of the first data can be determined / considered. The first threshold can be (pre)configured; for example, the network device can send third configuration information to the terminal device, which is used to configure the first threshold. For example, the third configuration information includes the first threshold. The third configuration information can be carried in one or more fields of RRC signaling, MAC CE, or DCI; this application embodiment does not limit this. Optionally, the first threshold can be the remaining delay threshold that triggers DSR. The first threshold can be determined before determining whether to retransmit the first data.
[0208] Optionally, after the second protocol layer submits the first data, it can start a second timer to determine the latency budget of the first data. Alternatively, after the second protocol layer receives the second data (e.g., from the third protocol layer), it can start a second timer to determine the latency budget of the first data.
[0209] Optionally, if the latency budget of the first data is less than or equal to a first threshold, then it is determined that the first data will be retransmitted at a first time. The first time can be determined based on the latency budget of the first data. For example, the first time is the moment when the latency budget of the first data is equal to or lower than the first threshold. Figure 7 As shown in (a) above. For example, the first threshold is 0, and the first time point is the time when the second timer expires. Another example is that the interval between the first time point and the time the first data is received is a first threshold, such as... Figure 7As shown in (b) of the diagram. Figure 7 Taking RLC SDU#1 as the first data as an example, time 1 is the time when the RLC layer receives PRCP SDU#1 from PDCP, time 2 is the time when RLC SDU#1 is first transmitted, and time 3 is the first time. Figure 7 (b) can also be understood as the moment when the storage duration of the first data exceeds the first threshold being the first moment. Optionally, the starting moment of the storage duration of the first data can be the moment when the first data arrives at the second protocol layer.
[0210] Taking a scenario where the second protocol layer is PDCP and the first protocol layer is RLC, the first data is PDCP SDU#1. When the latency budget of PDCP SDU#1 is less than or equal to a first threshold, PDCP SDU#1 has been submitted to the RLC layer. The PDCP layer can then send an indication message to the RLC layer to indicate or trigger the retransmission of PDCP SDU#1. Accordingly, the RLC layer responds to this indication message by triggering a retransmission for SDU#1. For example, the RLC layer considers or determines to retransmit the RLC SDU#1 corresponding to PDCP SDU#1. Similarly, the second protocol layer is the RLC layer, and the first protocol layer is the MAC layer. If RLC SDU#1 has been delivered to the MAC layer, when the delay budget of RLC SDU#1 is less than or equal to the first threshold, the RLC layer can send an indication message to the MAC layer to indicate or trigger the retransmission of RLC SDU#1. Accordingly, the MAC layer responds to the indication message and considers retransmitting the MAC SDU#1 corresponding to RLC SDU#1.
[0211] Optionally, when the first protocol layer receives the indication information, if the first data has already been transmitted or delivered to a lower layer of the first protocol layer, the first protocol layer may consider or determine to retransmit the first data. Alternatively, when the first protocol layer receives the indication information, if a portion of the first data, such as segment #1, has already been transmitted or delivered to a lower layer of the first protocol layer, the first protocol layer may consider or determine to retransmit the portion of the first data, such as segment #1.
[0212] For example, taking a second protocol layer as the PDCP layer and a first protocol layer as the RLC layer, the first data is PDCPSDU#1. When the latency budget of PDCP SDU#1 is less than or equal to a first threshold, and PDCP SDU#1 has been delivered / delivered to the RLC layer, the PDCP layer can send an indication message to the RLC layer to indicate or trigger the retransmission of PDCP SDU#1. When the RLC layer receives the indication message, if the data corresponding to PDCP SDU#1 (such as RLC SDU#1) has been delivered by the RLC layer to a lower layer (such as the MAC layer), in response to the indication message, it triggers a retransmission for SDU#1. For example, the RLC layer considers retransmitting the RLC SDU#1 corresponding to PDCP SDU#1. Optionally, if the RLC layer receives the indication information and a portion of the data corresponding to the PDCP SDU#1, such as RLC SDU#1 segment #1, is delivered by the RLC layer to a lower layer, then in accordance with the indication information, it may consider or determine to retransmit RLC SDU#1 segment #1.
[0213] Alternatively, when the first protocol layer receives the indication, if a portion of the first data (e.g., segment #1) has already been transmitted or delivered to a lower layer of the first protocol layer, while other portions of the first data (e.g., segment #2) have not been transmitted to a lower layer of the first protocol layer, then the first protocol layer can determine not to retransmit the portion of the first data (e.g., segment #1). In this case, it can be considered that the first data cannot be received completely, and therefore there is no need to transmit segment #1. In other words, when the first protocol layer receives the indication, if the first data has already been transmitted or delivered to a lower layer of the first protocol layer, it can consider or determine to retransmit the first data.
[0214] Understandably, when the first threshold is the remaining delay threshold for triggering DSR, and the delay budget of PDCP SDU#1 is lower than the first threshold, the second protocol layer (such as the PDCP layer) also sends a low-latency indication for PDCP SDU#1 to the lower layer(s). That is, when the first threshold is the remaining delay threshold for triggering DSR, and the delay budget of PDCP SDU#1 is lower than the first threshold, the PDCP layer sends a retransmission indication for the RLC SDU corresponding to PDCP SDU#1, as well as a low-latency indication for PDCP SDU#1, to the lower layer. If the RLC layer receives a low-latency indication for a PDCP SDU, it can consider retransmitting the RLC SDU corresponding to that PDCP SDU.
[0215] Optionally, the low-latency indication of PDCP SDU#1 and the retransmission indication of the corresponding RLC SDU can be carried in the same signaling. For example, the retransmission indication of the corresponding RLC SDU can reuse the low-latency indication of PDCP SDU#1. That is, the low-latency indication of PDCP SDU#1 can indicate both the conversion of PDCP SDU#1 to low-latency data and the retransmission of the corresponding RLC SDU. Of course, the low-latency indication of PDCP SDU#1 and the retransmission indication of the corresponding RLC SDU can also be carried in different signaling. When the retransmission indication of the corresponding RLC SDU of PDCP SDU#1 reuses the low-latency indication of PDCP SDU#1, it can also be understood that when an RLC SDU or RLCSDU segment corresponding to a PDCP SDU is indicated as / converted to low-latency data, retransmission of the RLC SDU or RLC SDU segment is considered.
[0216] In one possible scenario, whether to send a retransmission indication can be (pre)configured, for example, by configuring whether to send a retransmission indication via an RRC message. Alternatively, it can be configured via a MAC CE or DCI message.
[0217] Optionally, whether the retransmission indication and the low-latency indication use the same signaling can be (pre)configured. For example, the retransmission indication and the low-latency indication can be indicated by an RRC message, MAC CE, or DCI. For example, when configuration information is received, and the configuration information indicates that the second protocol layer can send a retransmission indication, the low-latency indication signaling can also indicate the retransmission of the first protocol layer.
[0218] The aforementioned example of whether to retransmit the first data at the first moment is that the latency budget of the first data is less than or equal to a first threshold. In the embodiments of this application, the conditions for whether to retransmit the first data at the first moment may also include the first data being transmitted or no feedback information of the first data being received before the first moment. In other words, the conditions for whether to retransmit the first data at the first moment include one or more of the following conditions: (1) the latency budget of the first data is less than or equal to the first threshold; (2) the first data is transmitted or delivered by the first protocol layer to a lower layer; (3) no feedback information of the first data being received before the first moment.
[0219] For example, if the latency budget for the first data is less than or equal to a first threshold, and no feedback information for the first data is received before the latency budget reaches the first threshold, then it is determined that the first data will be retransmitted at the first moment. Alternatively, if the latency budget for the first data is less than or equal to the first threshold, and no feedback information for the first data is received before the first moment, then it is determined that the first data will be retransmitted at the first moment. The feedback information for the first data can be either an ACK or a NACK for the first data.
[0220] Taking RLC SDU#1 as the first data as an example, if the delay budget of RLC SDU#1 is less than or equal to the first threshold, and the RLC layer has not received feedback information from RLC SDU#1 before receiving the retransmission instruction from the PDCP layer, then retransmission of RLC SDU#1 is considered. Alternatively, if the delay budget of RLC SDU#1 is less than or equal to the first threshold, and the RLC layer has not received feedback information from a portion of RLC SDU#1 before receiving the retransmission instruction from the PDCP layer, then retransmission of that portion of RLC SDU#1 is considered.
[0221] For example, if the first data has already been transmitted or submitted to a lower layer by the first protocol layer, and the latency budget of the first data is less than or equal to a first threshold, and no feedback information for the first data is received before the latency budget reaches the first threshold, then it is determined to retransmit the first data at the first moment. Alternatively, if the latency budget of the first data is less than or equal to the first threshold, and no feedback information for the first data is received before receiving a retransmission instruction from the second protocol layer, and the first data has already been transmitted or submitted to a lower layer by the first protocol layer, then it is determined to retransmit the first data at the first moment. The feedback information for the first data can be either an ACK or a NACK.
[0222] Taking RLC SDU#1 as the first data as an example, if the delay budget of RLC SDU#1 is less than or equal to the first threshold, and the RLC layer has not received feedback information from RLC SDU#1 before receiving the retransmission instruction from the PDCP layer, then retransmission of RLC SDU#1 is considered. Alternatively, if the delay budget of RLC SDU#1 is less than or equal to the first threshold, and the RLC layer has not received feedback information from a portion of RLC SDU#1 before receiving the retransmission instruction from the PDCP layer, then retransmission of that portion of RLC SDU#1 is considered.
[0223] Alternatively, if the delay budget of RLC SDU#1 is less than or equal to the first threshold, and the RLC layer has not received an ACK for RLC SDU#1 before receiving a retransmission instruction from the PDCP layer, then retransmitting that portion of RLC SDU#1 is considered.
[0224] In possible implementations, multiple thresholds can be set for retransmission; for example, in addition to the first threshold, a second threshold can also be set. Similar to the first threshold, the second threshold can also be (pre)configured. For example, the network device can send fourth configuration information to the terminal device, which is used to configure the second threshold.
[0225] The second threshold can be lower than the first threshold. When both the first and second thresholds are configured, whether to retransmit the first data is determined based on the latency budget of the first data, the first threshold, and the second threshold. For example, if the latency budget of the first data is lower than the first threshold, and no feedback information for the first data is received before a second time point, then retransmission of the first data is determined / considered. The second time point is either the moment when the latency budget of the first data is lower than the second threshold, or the interval between the second time point and the reception time of the first data is the second threshold.
[0226] For easier understanding, please refer to Figure 8 This is a schematic diagram illustrating whether or not the first data is retransmitted, as provided in an embodiment of this application. Figure 8 (a) is the moment when the delay budget of the first data at the first time point is lower than the first threshold T1, and the moment when the delay budget of the first data at the second time point is lower than the second threshold T2. Figure 8(b) takes the interval between the first time and the first data reception time as a first threshold T1, and the interval between the second time and the first data reception time as a second threshold T2. Figure 8 Taking RLC SDU#1 as the first data as an example, time 1 is the time when the RLC layer receives PRCP SDU#1 from PDCP, time 2 is the time when RLC SDU#1 is first transmitted, and time 3 is the first time.
[0227] Taking RLC SDU#1 as the first data as an example, if RLC SDU#1 has already been transmitted, and its delay budget is less than or equal to the first threshold T1, and no feedback information from RLC SDU#1 has been received before the first time point, then retransmission of RLC SDU#1 is considered / determined. Alternatively, if RLC SDU#1 has already been transmitted, and its delay budget is less than or equal to the second threshold T2, and no feedback information from RLC SDU#1 has been received before the second time point, then retransmission of RLC SDU#1 is considered / determined. Or, if RLC SDU#1 has already been transmitted, and its delay budget is less than or equal to the first threshold T1, and no feedback information from RLC SDU#1 has been received before the second time point, then retransmission of RLC SDU#1 is considered / determined.
[0228] Alternatively, only a portion of the data submitted from the second protocol layer to the first protocol layer may be transmitted. In this case, whether to retransmit the data depends on whether all the corresponding SDUs have been submitted to the next lower layer. For example, for a retransmitted RLC SDU#1, where RLC SDU segment #1 has been transmitted but RLC SDU segment #2 has not, then the latency budget of RLC SDU#1 is lower than the first threshold, and no feedback information for RLC SDU segment #1 has been received before the second time step, so retransmission of RLC SDU segment #1 can be considered. Alternatively, if RLC SDU segment #1 has been transmitted but RLC SDU segment #2 has not, even if the latency budget of RLC SDU#1 is lower than the first threshold, retransmission of RLC SDU segment #1 may not be necessary. When it is determined that the first data will be retransmitted at the second time, the process of retransmitting the first data can be referred to S501-S503, simply by replacing the first time with the second time.
[0229] It should be noted that in S602, the terminal device determines whether to retransmit the first data at the first moment based on the delay budget of the first data, which can also be achieved through communication method 500. For example, based on communication method 500, when the first timer expires, it is determined that the delay budget of the first data is lower than the first threshold, and it is determined to retransmit the first data at the first moment.
[0230] Both communication methods 500 and 600 automatically trigger the retransmission of the first data under certain conditions. However, the network device does not perceive when the terminal device triggers the retransmission of the first data and cannot allocate resources to the terminal device.
[0231] In view of this, embodiments of this application also provide a communication method 900. In the communication method 900, if a terminal device determines that it needs to retransmit the first data, it triggers an SR to trigger a network device to allocate resources for retransmitting the first data to the terminal device.
[0232] Please see Figure 9 , Figure 9 This is a flowchart illustrating the communication method 600 provided in an embodiment of this application. Figure 9 Taking a terminal device as the first communication device and a network device as the second communication device as an example, this method is introduced from the perspective of the interaction between the terminal device and the network device. It should be understood that the communication method can also be implemented by other devices, such as chips or communication devices with communication functions. Figure 9 The communication method 900 is described below.
[0233] S901, Submit the first data to the first protocol layer.
[0234] S901 includes S901a and S901b. For specific implementation, please refer to the relevant content in the aforementioned S501 or S601, but the first timer is not started, so it will not be described again here.
[0235] S902, The terminal device determines to retransmit the first data and triggers the first information or the second information. The first information is used to indicate the buffer status of the sending end of the first data, and the second information is used to request uplink resources, which can be resources for retransmitting the first data.
[0236] The first piece of information can be a BSR (Background Reference Message) or a DSR (Data Source Reference Message). For example, the second piece of information can be an SR (Background Reference Message). It is understood that when a terminal device triggers a BSR or DSR, it can also trigger an SR; details can be found above and will not be repeated here. The sender of the first data is the terminal device. The sender's buffer status can include: the amount of buffered data within any LCH / LCG / DRB; and / or, the latency information of the buffered data within any LCH / LCG / DRB. The latency information can be the remaining transmission latency budget corresponding to the data with the shortest remaining latency budget among any data in the LCH / LCG / DRB.
[0237] In this embodiment of the application, determining to retransmit the first data may also mean determining that the first data is considered for retransmission, or determining that the first data is in a pending retransmission state. The terminal device may determine to retransmit the first data according to communication method 500 or communication method 600. For details, please refer to the relevant content in the aforementioned communication method 500 or communication method 600, which will not be repeated here.
[0238] When the terminal device determines to retransmit the first data, it triggers either the first information message or the second information message. Taking data #a (an RLC SDU or a segment of an RLC SDU) as an example, when data #a is considered for retransmission or is to be retransmitted, either the first or second information message can be triggered. Alternatively, taking data #a (an RLC SDU or a segment of an RLC SDU) as an example, when retransmitting data #a is determined, if the latency budget of data #a is below a certain threshold, a SR (Retransmission Response) can be triggered. Or, when retransmitting data #a is determined, and data #a is low-latency data, a SR can be triggered. Low-latency data refers to data whose remaining transmission latency budget is below a certain threshold. For example, if the latency budget of data #a is below the remaining latency threshold that triggers DSR, then data #a is low-latency data. Taking the first threshold as the remaining latency threshold that triggers DSR, when the latency budget of the first data is below the first threshold, the retransmitted first data can trigger a SR.
[0239] Optionally, the condition for triggering the first message may also include condition A. Condition A is that there is no third message to be sent or already triggered, where the third message is used to indicate the buffer status of the sender of the first data. For example, the third message may be BSR or DSR; or, the third message may be used to request uplink resources, such as SR. When it is determined that the first data will be retransmitted and condition A is met, the first message is triggered. Alternatively, the condition for triggering the first message can be considered as condition B, that is, it is determined that the first data will be retransmitted and condition A is met.
[0240] In this context, the first and third information can be associated with different logical channels or the same logical channel. Associating the first and third information with different logical channels means they are triggered by different logical channels. Associating them with the same logical channel means they are triggered by the same logical channel. For example, if logical channel 1 triggers the third information (such as a BSR) at time t1, and retransmits the first data at time t2 (later than t1), and if there is a BSR in a pending transmission state at this time, and this BSR is triggered by the same logical channel, then logical channel 1 will not trigger the BSR again at time t2. The method by which logical channel 1 triggers the third information at time t1 is not limited; it can include the retransmission-based triggering method described in this embodiment, or it can exclude the retransmission-based triggering method described in this embodiment. For another example, if logical channel 1 triggers the third information (such as a BSR) at time t1, and the DRB corresponding to logical channel 2 retransmits the first data at time t2, then logical channel 2 can trigger the first information at time t2. The method by which logical channel 1 triggers the third information at time t1 is not limited. It may include the triggering method based on retransmission as described in this embodiment, or it may not include the triggering method based on retransmission as described in this embodiment.
[0241] Optionally, the conditions that trigger the second information may also include one or more of the following conditions E-1 to E-7.
[0242] Condition E-1: There is no first message to be sent or has been triggered.
[0243] Condition E-2: There is no triggered fourth message to be sent. The fourth message can be used to request uplink resources, such as an SR (Search Service Request).
[0244] Condition E-3: The logical channel scheduling request delay timer is not running, and the logical channel scheduling request delay timer switch for the logical channel that triggers the first or second message is activated. The logical channel scheduling request delay timer is used to determine whether the second message can be triggered. For example, when the logical channel scheduling request delay timer is running, even if other conditions for triggering the second message are met, such as condition E-1 above, the second message still cannot be triggered. The logical channel scheduling request delay timer is also used to prevent frequent triggering of the second message. The logical channel scheduling disable timer can be used to prevent frequent transmission of the second message. For example, when the logical channel scheduling disable timer is running, the second message in the triggered state cannot be transmitted.
[0245] Condition E-4: Logical channel scheduling disable timer is not running.
[0246] Condition E-5: The terminal device currently has no uplink resources available for transmitting the data to be transmitted.
[0247] Condition E-6: The SR-mask (logicalChannelSR-Mask) corresponding to the logical channel that triggered the second information is in a closed (false) state, and the MAC entity has configured uplink resource grant scheduling for the terminal device.
[0248] Condition E-7: The terminal device currently possesses uplink resources available for transmitting data to be transmitted, but these uplink resources do not meet the parameter requirements of the data to be transmitted in the logical channel (e.g., logical channel prioritization (LCP)). This can also be understood as the existence of uplink transmission resources, but these resources cannot be used for transmitting the first data, or cannot carry the first data. For example, the subcarrier spacing of the transmission resources required by the first data does not match the subcarrier spacing of the currently existing uplink resources. This logical channel can be a logical channel that triggers BSR.
[0249] For example, the condition for triggering the second message could be: determining to retransmit the first data, and that the logical channel triggering the second message (e.g., SR) does not have a fourth message yet to be sent. Alternatively, the condition for triggering the second message could be: determining to retransmit the first data, and that no logical channel scheduling request delay timer is currently running. Of course, network devices can configure each logical channel to have its logical channel scheduling request delay timer switch activated (or enabled).
[0250] Optionally, the second and fourth information can be determined based on the same configuration information or different configuration information. For example, the second and fourth information can be determined based on the same configuration information, such as both being SR (Redirect Resource) and corresponding to the same SR configuration. For details, please refer to the preceding text; further explanation is omitted here. Optionally, the triggering method for the fourth information can be the same as the retransmission-based triggering method described in this embodiment, or it can exclude the retransmission-based triggering method described in this embodiment.
[0251] Optionally, the second and fourth pieces of information can be associated with the same logical channel or with different logical channels. For details, please refer to the section on whether the first and third pieces of information can be associated with the same logical channel or with different logical channels; this will not be elaborated upon here.
[0252] It should be noted that for a single SDU, if multiple segments of that SDU can trigger either the first or second information message, then triggering the first or second information message once for that SDU is sufficient. Alternatively, for a data set, such as a PDU set, if any SDU or PDU in that PDU set triggers an SR (Signal Request), then triggering the first or second information message once for that PDU set is sufficient. For example, in XR services, a PDU set typically contains dozens to hundreds of SDUs, and the data from a PDU set usually arrives in the sender's buffer simultaneously. Therefore, multiple SDUs or segments of SDUs may simultaneously meet the conditions for triggering an SR at the same or similar time. In this case, the terminal device can trigger only one SR.
[0253] In one possible scenario, the terminal device can determine to retransmit the first data through a second protocol layer, and trigger either first or second information through the first protocol layer. When determining to retransmit the first data, the second protocol layer can send a second indication message to the first protocol layer. This second indication message can trigger either the first or second information, or it can be used to indicate the retransmission of the first data. For example, taking the second protocol layer as the RLC layer and the first protocol layer as the MAC layer, when the RLC layer determines to retransmit the first data, it can send a second indication message to the MAC layer. In response to the second indication message, the first protocol layer (such as the MAC layer) can trigger either the first or second information. In this case, the condition for triggering the first or second information can also include receiving the second indication message. For example, when the first protocol layer receives indication message X, it can further trigger the first information according to the triggering conditions described above.
[0254] Optionally, when the terminal device receives the second instruction information, it can trigger the first information or the second information according to the scheme in S902.
[0255] S903, the network device sends the first resource to the terminal device.
[0256] Accordingly, the terminal device receives resource configuration information from the network device. When the network device receives the first or second information, it determines that the terminal device has data to transmit, and thus schedules resources for the terminal device. For example, the network device sends resource configuration information to the terminal device, whereby the first resource configuration indicates a first resource. The resource configuration information can be carried in RRC signaling, or DCI or MAC CE.
[0257] S904, The terminal device retransmits the first data on the first resource.
[0258] The terminal device receives the resource configuration information and retransmits the first data on the first resource.
[0259] In communication method 900, when a terminal device determines that it needs to retransmit the first data, it can trigger either the first or second information to send the first or second information to the network device, thereby requesting the network device to allocate transmission resources for the first data. Compared to current SR triggering, such as the aforementioned DSR and BSR triggering, this allows the network device to sense or promptly sense that the terminal device needs to transmit data, enabling the network device to allocate resources for the terminal device to ensure the normal operation of services as much as possible.
[0260] The communication methods 500, 600, and 900 described above can be combined with each other. For example, communication method 500 and communication method 900 can be combined to determine the retransmission of the first data based on communication method 500, and to trigger DSR / BSR / SR based on communication method 900. As another example, communication method 600 and communication method 900 can be combined to determine the retransmission of the first data based on communication method 600, and to trigger DSR / BSR / SR based on communication method 900.
[0261] The methods provided in the embodiments of this application above are described using terminal devices and network devices as examples. In this application, each embodiment can be implemented independently or in combination based on certain inherent connections; in each embodiment, different implementation methods can be implemented in combination or independently. To achieve the functions of the methods provided in the embodiments of this application above, the steps executed by the terminal device can be implemented by different functional entities constituting the terminal device. To achieve the functions of the methods provided in the embodiments of this application above, the terminal device may include hardware structures and / or software modules, implementing the above functions in the form of hardware structures, software modules, or hardware structures plus software modules. Whether a particular function is executed in the form of hardware structures, software modules, or hardware structures plus software modules depends on the specific application and design constraints of the technical solution.
[0262] Based on the same inventive concept as the method embodiments, this application provides a communication device. The communication device used to implement the above method in the embodiments of this application is described below with reference to the accompanying drawings. The content above can be used in subsequent embodiments, and repeated content will not be repeated.
[0263] Figure 10 This is a schematic block diagram of a communication device 1000 provided in an embodiment of this application. The communication device 1000 can be a terminal device as described in the above embodiments. For example, the communication device 1000 can be... Figure 1The communication device 1000 can be a terminal device; or, the communication device 1000 can be a chip (system) within the terminal device; or, the communication device 1000 can be a software module of the terminal device. The communication device 1000 can correspondingly implement the functions or steps implemented by the terminal device in the various method embodiments described above. The communication device 1000 may include a processing module 1010 and a transceiver module 1020. Optionally, it may also include a storage module, which can be used to store instructions (code or program) and / or data. The storage module may be, for example, a memory. The processing module 1010 and the transceiver module 1020 may be coupled to the storage module. For example, the processing module 1010 can read instructions (code or program) and / or data from the storage module to implement the corresponding method. When the communication device 1000 is a chip within the terminal device, the storage module may be a storage module within the chip, such as a register or cache. For example, the storage module can also be an external storage module located within the terminal device, such as read-only memory (ROM) or other types of static storage devices capable of storing static information and instructions, random access memory (RAM), etc. The aforementioned units can be configured independently, or partially or completely integrated.
[0264] Processing module 1010 may be a processor or controller, such as a general-purpose central processing unit (CPU), a general-purpose processor, a digital signal processing unit (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc. Transceiver module 1020 is a transceiver, interface circuit, bus, pin, or other possible communication interface for receiving signals from other devices. For example, when the device is implemented as a chip, transceiver module 1020 is an interface circuit for the chip to receive signals from other chips or devices, or an interface circuit for the chip to send signals to other chips or devices.
[0265] In one implementation, the communication device 1000 can correspondingly implement the behavior and functions of the terminal device in the above method embodiments. The communication device 1000 can be the terminal device, a component (e.g., a chip or circuit) applied in the terminal device, a part of a chip or chipset in the terminal device used to execute related method functions, or a software module capable of implementing the methods executed by the terminal device in the above communication method; no limitation is imposed. For details, please refer to the relevant content of the foregoing method embodiments, which will not be repeated here.
[0266] For example, the transceiver module 1020 is used to submit first data to the first protocol layer. The processing module 1010 is used to start a first timer when the transceiver module 1020 submits the first data to the first protocol layer. During the operation of the first timer, the transceiver module 1020 receives feedback information for the first submission, stops and / or resets the first timer; when the first timer times out, it determines to retransmit the first data.
[0267] As an optional implementation, the transceiver module 1020 is specifically used to submit first data to the first protocol layer through the second protocol layer, where the first protocol layer is a lower layer than the second protocol layer.
[0268] As an optional implementation, before submitting the first data to the first protocol layer, the transceiver module 1020 is further configured to: receive second data from the third protocol layer via the second protocol layer; and receive indication information from the first protocol layer, the indication information indicating that the resources indicated by the transmission opportunity are insufficient to transmit the second data. The processing module 1010 is further configured to determine the first data in the second data to be submitted to the first protocol layer based on the indication information.
[0269] As an optional implementation, the transceiver module 1020 is also used to receive first configuration information, which is used to configure the first timer.
[0270] As an optional implementation, the first timer can be maintained by the second protocol layer or by the third protocol layer.
[0271] For example, the transceiver module 1020 is used to submit first data to the first protocol layer. The processing module 1010 is used to determine whether to retransmit the first data at a first moment based on the latency budget of the first data. Wherein, if the latency budget of the first data is lower than a first threshold, it is determined to retransmit the first data, and the first moment is related to the latency budget of the first data.
[0272] As an optional implementation, the first moment is the moment when the latency budget of the first data is lower than the first threshold; or, the first moment is the interval between the first moment and the moment when the first data is received, as stated in the first threshold.
[0273] As an optional implementation, if the latency budget of the first data is lower than the first threshold, then it is determined to retransmit the first data, including: if the latency budget of the first data is lower than the first threshold, and no feedback information for the first data is received before the first moment, then it is determined to retransmit the first data.
[0274] As an optional implementation, the processing module 1010 is also used to determine the first threshold.
[0275] As an optional implementation, the transceiver module 1020 is also used to receive third configuration information, which is used to indicate the first threshold.
[0276] As an optional implementation, after the terminal device submits the first data to the first protocol layer, the processing module 1010 is also used to start a second timer, the remaining runtime of which is used to determine the delay budget.
[0277] As an optional implementation, the transceiver module 1020 is also used to receive first configuration information, which is used to configure the second timer.
[0278] As an optional implementation, the first threshold is 0, and the first time is the time when the second timer expires.
[0279] As an optional implementation, the transceiver module 1020 is also used to send indication information to the first protocol layer, which is used to indicate the retransmission of the first data.
[0280] As an optional implementation, the transceiver module 1020 is also used to receive fourth configuration information, which is used to configure a second threshold, the second threshold being lower than the first threshold. Specifically, the processing module 1010 is used to determine to retransmit the first data if the latency budget of the first data is lower than the second threshold.
[0281] As an optional implementation, the processing module 1010 is specifically used to: determine to retransmit the first data if the latency budget of the first data is lower than a first threshold and no feedback information for the first data is received before a second time step. The second time step is the moment when the latency budget of the first data falls below the second threshold.
[0282] For example, the transceiver module 1020 is used to submit first data to the first protocol layer. The processing module 1010 is used to determine to retransmit the first data and trigger first information or second information. The first information is used to indicate the buffer status of the sending end of the first data, and the second information is used to request the resource for retransmitting the first data. The transceiver module 1020 is also used to receive resource configuration information and retransmit the first data on the first resource. The resource configuration information is used to indicate the first resource.
[0283] As an optional implementation, the processing module 1010 is specifically used to: determine that if the latency budget of the first data is lower than a first threshold, then determine to retransmit the first data at a first moment, the first moment being related to the latency budget of the first data.
[0284] As an optional implementation, the first moment is the moment when the latency budget of the first data is less than or equal to the first threshold; or, the first moment is spaced apart from the moment when the first data is received by the first threshold.
[0285] As an optional implementation, if the latency budget of the first data is determined to be lower than a first threshold, then it is determined to retransmit the first data at the first moment. This includes: if the latency budget of the first data is determined to be lower than the first threshold, and no feedback information for the first data is received at the first moment, then it is determined to retransmit the first data at the first moment.
[0286] As an optional implementation, the processing module 1010 is specifically used to: determine to retransmit the first data if the first timer times out, wherein the first timer is a timer started when the first data is submitted.
[0287] As an optional implementation, the processing module 1010 is specifically used to: determine that the first data is retransmitted and that one or more of the following conditions are met, then trigger the first information or the second information: there is no second information to be sent, and for the logical channel that triggers the second information, there is no second information to be sent that has already been triggered; or, the logical channel scheduling request delay timer is not running, and the logical channel scheduling request delay timer switch configured for each logical channel is activated.
[0288] When the communication device 1000 is a chip-based device or circuit, the transceiver module can be an input / output circuit and / or a communication interface; the processing module is an integrated processor, microprocessor, or integrated circuit.
[0289] Figure 11 This is a schematic block diagram of a communication device 1100 provided in an embodiment of this application. The communication device 1100 can be a terminal device as described in the above embodiments. For example, the communication device 1100 can be... Figure 1 The terminal device or the chip (system) within the terminal device. In the embodiments of this application, the chip system may be composed of chips or may include chips and other discrete devices. For specific functions, please refer to the description in the above method embodiments.
[0290] The communication device 1100 includes one or more processors 1101 for implementing or supporting the communication device 1100 in implementing the functions of the terminal device in the methods provided in the embodiments of this application. For details, please refer to the detailed description in the method examples, which will not be repeated here. The processor 1101 can also be called a processing unit or processing module, and can implement certain control functions. The processor 1101 can be a general-purpose processor or a dedicated processor, etc. For example, it includes: a baseband processor, a central processing unit, an application processor, a modem processor, a graphics processor, an image signal processor, a digital signal processor, a video codec processor, a controller, a memory, and / or a neural network processor, etc. The baseband processor can be used to process communication protocols and communication data. The central processing unit can be used to control the communication device 1100 (e.g., a network device or a terminal device), execute software programs, and / or process data. Different processors can be independent devices or integrated into one or more processors, for example, integrated on one or more application-specific integrated circuits.
[0291] In one design, processor 1101 may include program 1103 (sometimes also referred to as code or instructions), which can be executed on processor 1101 to cause communication device 1100 to perform the methods described in the embodiments below. In yet another possible design, communication device 1100 includes circuitry (…). Figure 11 (Not shown), the circuit is used to implement the functions of the terminal device in the above embodiments.
[0292] In one design, the communication device 1100 may include one or more memories 1102 storing a program 1104 (sometimes referred to as code or instructions), which can be run on the processor 1101 to cause the communication device 1100 to perform the methods described in the above method embodiments.
[0293] In one design, the processor 1101 and / or memory 1102 may include an artificial intelligence (AI) module 1107 and an AI module 1108, which are used to implement AI-related functions. The AI modules may be implemented through software, hardware, or a combination of both. For example, the AI module may include a RAN intelligent controller (RIC) module. For example, the AI module may be a near real-time RIC or a non-real-time RIC.
[0294] In one possible design, the processor 1101 and / or memory 1102 may also store data. The processor and memory may be configured separately or integrated together.
[0295] In one possible design, the communication device 1100 may further include a transceiver 1105 and / or an antenna 1106. The processor 1101, sometimes referred to as a processing unit, controls the communication device 1100. The transceiver 1105, sometimes referred to as a transceiver unit, transceiver, transceiver circuit, or transceiver, is used to realize the transmission and reception functions of the communication device 1100 through the antenna 1106.
[0296] In one possible design, the communication device 1100 may further include one or more of the following components: a wireless communication module, an audio module, an external memory interface, internal memory, a universal serial bus (USB) interface, a power management module, an antenna, a speaker, a microphone, an input / output module, a sensor module, a motor, a camera, or a display screen, etc. It is understood that in some embodiments, the communication device 1100 may include more or fewer components, or some components may be integrated, or some components may be separated. These components may be implemented in hardware, software, or a combination of software and hardware.
[0297] The communication device in the above embodiments can be a terminal device, a circuit, a chip applied in a terminal device, or other combined devices or components having the aforementioned terminal device. Alternatively, the communication device in the above embodiments can be a network device, a circuit, a chip applied in a network device, or other combined devices or components having the aforementioned network device. When the communication device is a terminal device or a network device, the transceiver module can be a transceiver, which may include an antenna and radio frequency circuits, etc., and the processing module can be a processor, such as a CPU. When the communication device is a chip system, the communication device can be an FPGA, a dedicated ASIC, a system-on-chip (SoC), a CPU, a network processor (NP), a DSP, a microcontroller unit (MCU), a programmable logic device (PLD), or other integrated chips. The processing module can be the processor of the chip system. The transceiver module or communication interface can be the input / output interface or interface circuit of the chip system. For example, the interface circuit can be a code / data read / write interface circuit. The interface circuit can be used to receive code instructions (the code instructions are stored in memory and can be read directly from memory or through other devices) and transmit them to the processor; the processor can then execute the code instructions to perform the methods described in the above method embodiments. Alternatively, the interface circuit can also be a signal transmission interface circuit between a communication processor and a transceiver.
[0298] This application also provides a communication system, which includes at least one terminal device and at least one network device. The terminal device is used to implement the relevant functions of the communication method 500 and / or communication method 900 described above. Alternatively, the terminal device is used to implement the relevant functions of the communication method 600 and / or communication method 900 described above.
[0299] This application also provides a computer-readable storage medium including instructions that, when run on a computer, cause the computer to execute the method performed by the terminal device or network device (e.g., a first network device or a second network device) in the above-described communication method.
[0300] This application also provides a computer program product, including computer program code, which, when executed, causes a computer to perform the method executed by the terminal device or network device (e.g., a first network device or a second network device) in the above-described communication method.
[0301] This application provides a chip system including a processor and potentially a memory, for implementing the functions of a terminal device or network device (e.g., a first network device or a second network device) in the aforementioned communication method. The chip system can be composed of chips or may include chips and other discrete components.
[0302] To achieve the above Figures 10-11 In addition to the functions of the communication device, this application also provides a chip, including a processor, for supporting the communication device in implementing the functions involved in the terminal device or network device (e.g., a first network device or a second network device) in the above method embodiments. In one possible design, the chip is connected to a memory or the chip includes a memory for storing the computer programs or instructions and data necessary for the communication device.
[0303] 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.
[0304] Those skilled in the art will recognize that the various illustrative logical blocks and steps 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 implementations should not be considered beyond the scope of this application.
[0305] 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.
[0306] 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.
[0307] 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.
[0308] 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 essential contributing part of the technical solution of this application, 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, external hard drives, ROM, RAM, magnetic disks, or optical disks.
[0309] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A communication method, characterized in that, include: When submitting the first data to the first protocol layer, start the first timer. The first protocol layer is a lower layer than the first protocol layer. During the operation of the first timer, if feedback information for the first submission is received, the first timer is stopped and / or reset; If the first timer times out, it is determined to retransmit the first data.
2. The method as described in claim 1, characterized in that, Submitting the first data to the first protocol layer includes: The first data is submitted to the first protocol layer through the second protocol layer, the second protocol layer is used to determine the retransmission of the first data, and the first protocol layer is a lower layer than the second protocol layer.
3. The method as described in claim 1 or 2, characterized in that, Before submitting the first data to the first protocol layer, the method further includes: Receive the second data from the third protocol layer; Receive indication information from the first protocol layer, the indication information being used to indicate that the resources indicated by the transmission opportunity are insufficient to transmit the second data; Based on the instruction information, the first data in the second data is determined to be delivered to the first protocol layer.
4. The method according to any one of claims 1-3, characterized in that, The method further includes: Receive first configuration information, which is used to configure the first timer.
5. A communication method, characterized in that, include: Submit the first data to the first protocol layer; If it is determined that the first data will be retransmitted, a first message or a second message will be triggered. The first message is used to indicate the buffer status of the sending end of the first data, and the second message is used to request the resource to retransmit the first data. Receive resource configuration information, wherein the resource configuration information is used to indicate a first resource; Retransmit the first data on the first resource.
6. The method as described in claim 5, characterized in that, Determining to retransmit the first data includes: If the latency budget of the first data is determined to be lower than a first threshold, then the first data is determined to be retransmitted at a first moment, where the first moment is related to the latency budget.
7. The method as described in claim 6, characterized in that, The first moment is the moment when the delay budget is less than or equal to the first threshold; or, the first moment is the moment when the first data is received, with the interval between the first moment and the first data reception moment being the first threshold.
8. The method as described in claim 5 or 6, characterized in that, If the latency budget of the first data is determined to be lower than a first threshold, then it is determined to retransmit the first data at the first moment, including: If the latency budget of the first data is determined to be lower than the first threshold, and no feedback information of the first data is received at the first moment, then it is determined to retransmit the first data at the first moment.
9. The method as described in claim 5, characterized in that, Determining to retransmit the first data includes: If the first timer times out, it is determined that the first data will be retransmitted. The first timer is the timer started when the first data is submitted.
10. The method according to any one of claims 5-9, characterized in that, Determining to retransmit the first data triggers either the first or second message, including: If it is determined that the first data will be retransmitted, and one or more of the following conditions are met, then the first message or the second message will be triggered: The second message to be sent does not exist; For the logical channel that triggers the second information, there is no already triggered second information to be sent; or, The logical channel scheduling request delay timer is not running, and the logical channel scheduling request delay timer switch configured for each logical channel is activated.
11. A communication device, characterized in that, include: The transceiver module is used to submit the first data to the first protocol layer; The processing module is configured to start a first timer when the transceiver module submits the first data to the first protocol layer, wherein the first protocol layer is a lower layer than the first protocol layer; during the operation of the first timer, the transceiver module receives feedback information for the first submission and stops and / or resets the first timer; if the first timer times out, it determines to retransmit the first data.
12. The apparatus as claimed in claim 11, characterized in that, The transceiver module is specifically used for: The first data is submitted to the first protocol layer through the second protocol layer, the second protocol layer is used to determine the retransmission of the first data, and the first protocol layer is a lower layer than the second protocol layer.
13. The apparatus as claimed in claim 11 or 12, characterized in that, The transceiver module is further configured to: receive second data from a third protocol layer before submitting the first data to the first protocol layer; and receive indication information from the first protocol layer, the indication information being used to indicate that the resources indicated by the transmission opportunity are insufficient to transmit the second data; The processing module is further configured to: determine, based on the indication information, to submit the first data in the second data to the first protocol layer.
14. The apparatus as claimed in any one of claims 11-13, characterized in that, The transceiver module is also used for: Receive first configuration information, which is used to configure the first timer.
15. A communication device, characterized in that, include: The transceiver module is used to submit the first data to the first protocol layer; The processing module is used to determine to retransmit the first data and trigger a first message or a second message. The first message is used to indicate the buffer status of the sending end of the first data, and the second message is used to request resources to retransmit the first data. The transceiver module is also used to receive resource configuration information and retransmit the first data on the first resource, wherein the resource configuration information is used to indicate the first resource.
16. The apparatus as claimed in claim 15, characterized in that, The processing module is specifically used for: If the latency budget of the first data is determined to be lower than a first threshold, then the first data is determined to be retransmitted at a first moment, where the first moment is related to the latency budget.
17. The apparatus as claimed in claim 16, characterized in that, The first moment is the moment when the delay budget is less than or equal to the first threshold; or, the first moment is the moment when the first data is received, with the interval between the first moment and the first data reception moment being the first threshold.
18. The apparatus as claimed in claim 15 or 16, characterized in that, The processing module is specifically used for: If the latency budget of the first data is determined to be lower than the first threshold, and no feedback information of the first data is received at the first moment, then it is determined to retransmit the first data at the first moment.
19. The apparatus as claimed in claim 15, characterized in that, The processing module is specifically used for: If the first timer times out, it is determined that the first data will be retransmitted. The first timer is the timer started when the first data is submitted.
20. The apparatus as claimed in any one of claims 15-19, characterized in that, The processing module is specifically used for: If it is determined that the first data will be retransmitted, and one or more of the following conditions are met, then the first message or the second message will be triggered: The second message to be sent does not exist; For the logical channel that triggers the second information, there is no second information that has already been triggered and is yet to be sent; or, The logical channel scheduling request delay timer is not running, and the logical channel scheduling request delay timer switch configured for each logical channel is activated.
21. A communication device, characterized in that, The communication device includes at least one processor and at least one memory, the at least one memory being used to store a computer program, and the at least one processor being used to execute the computer program stored in the memory, causing the communication device to perform the method as described in any one of claims 1 to 4, or causing the communication device to perform the method as described in any one of claims 5 to 10.
22. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store a computer program that, when run on a computer, causes the computer to perform the method as described in any one of claims 1 to 4, or causes the computer to perform the method as described in any one of claims 5 to 10.
23. A computer program product, characterized in that, The computer program product includes a computer program that, when run on a computer, causes the computer to perform the method as described in any one of claims 1 to 4, or causes the computer to perform the method as described in any one of claims 5 to 10.
24. A chip or chip system, characterized in that, The chip or chip system includes: At least one processor and an interface, the at least one processor being configured to call and execute instructions from the interface, wherein when the at least one processor executes the instructions, it implements the method as described in any one of claims 1 to 4, or implements the method as described in any one of claims 5 to 10.
Citation Information
Cited By
Data transmission method, electronic equipment and storage medium
CN121462147A
Data transmission method, electronic device, and storage medium
CN121462147B