Error-tolerant data transmission method and communication apparatus
By sending feedback information according to the number of data units that have been received and the threshold value in the communication method, the problems of data packet jitter and loss in real-time video applications are solved, the number of retransmissions is reduced, and the transmission efficiency and user experience are improved.
Patent Information
- Application Number
- PCT/CN2024/120304
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-29
- Filing Date
- 2024-09-23
- Publication Date
- 2025-06-05
AI Technical Summary
The prior art is difficult to effectively reduce packet jitter and loss in real-time video applications, resulting in unstable video decoding and playback, and packet retransmission increases delay, resulting in lag and unsmooth problems.
By receiving a plurality of data units in the communication method and sending feedback information according to the number of error data units that have been received and the first threshold value, the second device can determine the error data unit and perform retransmissions, thereby reducing the number of retransmissions.
Reduces the number of packet retransmissions, improves transmission efficiency, reduces delay and lag, and improves user experience.
Smart Images

Figure CN2024120304_05062025_PF_FP_ABST
Abstract
Description
Fault-tolerant data transmission method and communication device
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on November 29, 2023, with application number 202311614439.9 and application name “A method and communication device for fault-tolerant data transmission”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The embodiments of the present application relate to the field of communications, and more specifically, to a method and a communication device for fault-tolerant data transmission. Background Art
[0003] Currently, extended reality (XR) services in fifth-generation (5G) systems or new radio (NR) enable basic interaction between people and the virtual world. However, future technologies such as holography will require an immersive experience, placing even higher demands on cellular communications. Average access rates must be increased from the current 120Mbps to 2Gbps, and interaction latency must be further reduced from the current 20ms to around 5ms. This will require further evolution of 5G. Therefore, XR services require both low latency and high speed.
[0004] Internet video communication technologies have explored congestion control and bitrate adaptation, but they still face challenges. In real-time video applications, packet jitter and loss significantly negatively impact the user experience. When packets jitter, they arrive at the receiver at irregular speeds, leading to unstable video decoding and playback. Packet loss, on the other hand, requires retransmission, which introduces additional latency and can cause lag and stuttering.
[0005] Therefore, how to reduce the number of data packet retransmissions and improve transmission efficiency has become an urgent problem to be solved.
[0006] Summary of the Invention
[0007] The present application provides a communication method and a communication device, which can reduce the number of retransmissions and improve transmission efficiency.
[0008] In the first aspect, a communication method is provided, which can be executed by a first device (for example, a network device or a terminal device), or by a module of the first device (for example, a processor, a chip, or a chip system, etc.), or by a logical node, a logical module or software that can realize all or part of the functions of the first device. This application is not limited to this.
[0009] The communication method includes: receiving multiple data units; and sending first feedback information based on the number of erroneous data units received in error among the multiple data units and a first threshold, the first feedback information indicating that the erroneous data unit was received in error. Furthermore, in some examples, the first feedback information may also indicate retransmission of the erroneous data unit.
[0010] The data unit may be a transport block TB, a code block group CBG or a code block CB.
[0011] The first threshold may be the maximum number of erroneous data units, or the first threshold may be the maximum ratio of the number of erroneous data units to the total number of data units.
[0012] Among them, "received erroneous data unit" can be understood as a data unit that is checked incorrectly by the first device when checking multiple received data units. For example, when the data unit is a TB, "received erroneous data unit" can refer to a TB that has an error in the TB-CRC check when the first device performs a cyclic redundancy check CRC check (i.e., TB-CRC check) on the received TB. For another example, when the data unit is a CB, "received erroneous data unit" can refer to a CB that has an error in the CB-CRC check when the first device performs a CRC check (i.e., CB-CRC check) on the received CB. For another example, when the data unit is a CBG, "received erroneous data unit" can refer to a CBG corresponding to at least one CB-CRC check error in the CBG when the first device performs a CRC check on the CB in the received CBG.
[0013] In the solution provided in the embodiment of the present application, after the first device receives multiple data units, it can obtain the number of erroneous data units received in the multiple data units, and determine the erroneous data units that need to be fed back based on the number of erroneous data units and the first threshold, and send first feedback information to the second device, so that the second device can determine the erroneous data units received in error based on the first feedback information, and retransmit the erroneous data units. That is to say, in the present application, there is no need to retransmit all erroneous data units, but retransmit the erroneous data units that need to be retransmitted based on the number of erroneous data units and the first threshold. It has a certain fault tolerance space, can reduce the number of retransmissions, and improve transmission efficiency.
[0014] In conjunction with the first aspect, in certain implementations of the first aspect, sending the first feedback information based on the number of erroneous data units received with errors among the multiple data units and a first threshold includes: sending the first feedback information if a ratio of the number of erroneous data units received with errors to the total number of the multiple data units is greater than the first threshold, and not sending the first feedback information if the ratio of the number of erroneous data units received with errors to the total number of the multiple data units is less than or equal to the first threshold.
[0015] It should be noted that, in this implementation, the first threshold is a proportional value. For example, the first threshold may be 10%, 20%, 30%, etc.
[0016] In one possible implementation, sending the first feedback information based on the number of erroneous data units received with errors among the multiple data units and a first threshold includes: sending the first feedback information if a ratio of the number of erroneous data units received with errors to the number of the multiple data units is greater than or equal to the first threshold, and not sending the first feedback information if the ratio of the number of erroneous data units received with errors to the number of the multiple data units is less than the first threshold.
[0017] It should be noted that, in this implementation, the first threshold is a proportional value. For example, the first threshold may be 10%, 20%, 30%, etc.
[0018] In the solution provided in the embodiment of the present application, the first device may determine the first feedback information to be sent based on the fact that the ratio of the number of erroneous data units to the total number of data units is greater than a first threshold, or the first device may determine the first feedback information to be sent based on the fact that the ratio of the number of erroneous data units to the total number of data units is greater than a first threshold. That is, only when the ratio of the number of erroneous data units to the total number of data units meets a certain threshold will the first device send the first feedback information to the second device, and the first feedback information indicates that the erroneous data unit is received incorrectly, so that the second device can determine the erroneous data unit that is received incorrectly based on the first feedback information, and can retransmit the erroneous data unit without retransmitting all erroneous data units. This has a certain fault tolerance space, can reduce the number of retransmissions, and improve transmission efficiency.
[0019] In conjunction with the first aspect, in certain implementations of the first aspect, sending the first feedback information based on the number of erroneous data units received with errors among the multiple data units and a first threshold includes: sending the first feedback information if the number of erroneous data units received with errors is greater than the first threshold, and not sending the first feedback information if the number of erroneous data units received with errors is less than or equal to the first threshold.
[0020] It should be noted that, in this implementation, the first threshold is a numerical value. For example, the first threshold may be 100, 200, 300, etc.
[0021] In one possible implementation, sending the first feedback information based on the number of erroneous data units received with errors among the multiple data units and a first threshold includes sending the first feedback information if the number of erroneous data units received with errors is greater than or equal to the first threshold, and not sending the first feedback information if the number of erroneous data units received with errors is less than the first threshold.
[0022] It should be noted that, in this implementation, the first threshold is a numerical value. For example, the first threshold may be 100, 200, 300, etc.
[0023] In the solution provided in the embodiment of the present application, the first device can determine the first feedback information to be sent based on the number of erroneous data units being greater than a first threshold, or the first device can determine the first feedback information to be sent based on the number of erroneous data units being greater than or equal to the first threshold. That is, when the number of erroneous data units meets a certain threshold, the first device will send the first feedback information to the second device, and the first feedback information indicates that the erroneous data unit is received incorrectly, so that the second device can determine the erroneous data unit that is received incorrectly based on the first feedback information, and can retransmit the erroneous data unit without retransmitting all erroneous data units. It has a certain fault tolerance space, can reduce the number of retransmissions, and improve transmission efficiency.
[0024] In combination with the first aspect, in some implementations of the first aspect, the first threshold is indicated by packet header information corresponding to the multiple data units.
[0025] In one possible implementation, when the data unit is a TB, each TB may carry a header. For example, each TB may carry a header, and thus the header information of each TB may carry the first threshold. Alternatively, multiple TBs may share a header, and thus the header information may carry the first threshold. For example, the header information may carry a first identifier, and the first identifier may indicate the first threshold.
[0026] In another possible implementation, when the data unit is a CBG, one CBG may carry one header, for example, each CBG may carry one header, and thus the header information of each CBG may carry the first threshold; or, multiple CBGs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0027] In another possible implementation, when the data unit is a CB, one CB may carry one header. For example, each CB may carry one header, and thus the header information of each CB may carry the first threshold. Alternatively, multiple CBs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0028] In the solution provided in the embodiment of the present application, the first threshold can be indicated by the packet header information corresponding to multiple data units received by the first device. In this case, after the first device receives the multiple data units, it can parse the first threshold carried in the packet header information of the multiple data units, so that it can determine whether to send the first feedback information based on the first threshold.
[0029] In conjunction with the first aspect, in certain implementations of the first aspect, the first threshold may be carried in multiple data units, rather than in packet header information corresponding to the multiple data units. Exemplarily, the multiple data units (e.g., TBs) include a media access control layer control element (MAC-CE), and the first threshold may be carried in the MAC-CE.
[0030] Specifically, after the physical PHY layer of the first device receives the multiple data units, it performs a CRC check and submits the data packet and the corresponding CRC check result to the MAC layer. The MAC layer can obtain the position of the MAC-CE in the TB and has the authority to parse the characteristic flow information of the MAC-CE (such as the first threshold); then the MAC layer of the first device determines that if all the CBs corresponding to the MAC-CE pass the CRC check, the MAC layer parses the information of the MAC-CE and determines whether the remaining data blocks reach the first threshold. If the first threshold is reached, a retransmission instruction (such as the first feedback information) is fed back to the PHY layer, and the PHY layer sends the retransmission instruction (such as the first feedback information) to the second device.
[0031] In this case, after receiving multiple data units, the first device may also parse the multiple data units to obtain a first threshold value, and thus may determine whether to send the first feedback information according to the first threshold value.
[0032] In combination with the first aspect, in some implementations of the first aspect, the communication method further includes: receiving first indication information, where the first indication information is used to indicate a first threshold.
[0033] In a possible implementation, if the first device is a terminal device, the first indication information may be carried in a downlink control signal DCI signaling, that is, the first indication information may be carried in a DCI signaling from a network device.
[0034] In another possible implementation, if the first device is a network device, the first indication information may be carried in an uplink control signal UCI signaling, that is, the first indication information may be carried in UCI signaling from the terminal device.
[0035] In the solution provided in the embodiment of the present application, the first threshold can be separately indicated by the first indication information instead of being carried in multiple data units. In this way, the first device can obtain the first threshold directly from the first indication information without having to parse the first threshold from multiple data units, and thus can also determine whether to send the first feedback information based on the first threshold.
[0036] In combination with the first aspect, in certain implementations of the first aspect, the communication method further includes: receiving second indication information; sending first feedback information based on the number of erroneous data units received with errors in the multiple data units and a first threshold, including: based on the second indication information, determining whether to send the first feedback information based on the number of erroneous data units received with errors in the multiple data units and the first threshold.
[0037] The second indication information can be used to indicate the activation of a fault-tolerant transmission service. It should be understood that when the first device receives the second indication information, it is equivalent to activating the fault-tolerant mode, and can then send the first feedback information based on the number of erroneous data units and the first threshold. When the first device does not receive the second indication information, it is equivalent to not activating the fault-tolerant mode. In this case, the first device determines that a data unit has been received with an error, and needs to feedback the data unit reception error to the other end.
[0038] In one example, the second indication information may include the aforementioned packet header information. In another example, the second indication information may include the aforementioned first indication information. In other words, when the first device obtains the first threshold, i.e., configures the first threshold, it is considered that the fault-tolerant mode is enabled, i.e., the fault-tolerant transmission service is enabled.
[0039] In a possible implementation, if the first device is a terminal device, the second indication information may be carried in a downlink control signal DCI signaling, that is, the second indication information may be carried in a DCI signaling from a network device.
[0040] In another possible implementation, if the first device is a network device, the second indication information may be carried in an uplink control signal UCI signaling, that is, the second indication information may be carried in UCI signaling from the terminal device.
[0041] In the solution provided in the embodiment of the present application, the first device can determine whether to enable the fault-tolerant transmission service based on the received second indication information. When the fault-tolerant transmission service is enabled, the first device can send first feedback information based on the number of erroneous data units and the first threshold, without having to feed back all erroneous data units, so that the second device can determine the erroneous data unit that has been received in error based on the first feedback information and retransmit the erroneous data unit, which is conducive to reducing the number of retransmissions and improving transmission efficiency.
[0042] On the second aspect, a communication method is provided, which can be executed by a second device (for example, a terminal device or a network device), or by a module of the second device (for example, a processor, a chip, or a chip system, etc.), or by a logical node, a logical module or software that can realize all or part of the functions of the second device. This application is not limited to this.
[0043] It should be noted that the second device and the first device are different communication devices. If the first device is a network device, the second device is a terminal device; if the first device is a terminal device, the second device is a network device.
[0044] The communication method includes: sending multiple data units; receiving first feedback information, the first feedback information indicating that an erroneous data unit was received in error; and retransmitting the erroneous data unit based on the first feedback information. The erroneous data unit is an erroneous data unit received in error by a first device among the multiple data units. The first feedback information is determined by the first terminal device based on the number of erroneous data units and a first threshold.
[0045] In some examples, the first feedback information may also directly indicate the retransmitted erroneous data unit, so that the second device may resend the erroneous data unit based on the first feedback information.
[0046] The data unit may be a transport block TB, a code block group CBG or a code block CB.
[0047] The first threshold may be the maximum number of erroneous data units, or the first threshold may be the maximum ratio of the number of erroneous data units to the total number of data units.
[0048] Among them, "received erroneous data unit" can be understood as a data unit that is checked incorrectly by the first device when checking multiple received data units. For example, when the data unit is a TB, "received erroneous data unit" can refer to a TB that has an error in the TB-CRC check when the first device performs a cyclic redundancy check CRC check (i.e., TB-CRC check) on the received TB. For another example, when the data unit is a CB, "received erroneous data unit" can refer to a CB that has an error in the CB-CRC check when the first device performs a CRC check (i.e., CB-CRC check) on the received CB. For another example, when the data unit is a CBG, "received erroneous data unit" can refer to a CBG corresponding to at least one CB-CRC check error in the CBG when the first device performs a CRC check on the CB in the received CBG.
[0049] In the solution provided in the embodiment of the present application, after the second device sends multiple data units, it can determine the erroneous data unit received incorrectly based on the first feedback information fed back by the first device, and thus can determine the erroneous data unit based on the first feedback information and retransmit the erroneous data unit.
[0050] In combination with the second aspect, in some implementations of the second aspect, the first threshold is indicated by packet header information corresponding to multiple data units.
[0051] In one possible implementation, when the data unit is a TB, each TB may carry a header. For example, each TB may carry a header, and thus the header information of each TB may carry the first threshold. Alternatively, multiple TBs may share a header, and thus the header information may carry the first threshold. For example, the header information may carry a first identifier, and the first identifier may indicate the first threshold.
[0052] In another possible implementation, when the data unit is a CBG, one CBG may carry one header, for example, each CBG may carry one header, and thus the header information of each CBG may carry the first threshold; or, multiple CBGs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0053] In another possible implementation, when the data unit is a CB, one CB may carry one header. For example, each CB may carry one header, and thus the header information of each CB may carry the first threshold. Alternatively, multiple CBs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0054] In the solution provided in the embodiment of the present application, the first threshold can be indicated by the packet header information corresponding to multiple data units. In this case, when the first device receives the multiple data units, it can parse the first threshold carried in the packet header information of the multiple data units, so that it can determine whether to send the first feedback information based on the first threshold.
[0055] In conjunction with the second aspect, in certain implementations of the second aspect, the first threshold may be carried in multiple data units, rather than in packet header information corresponding to the multiple data units. Exemplarily, the multiple data units (e.g., TBs) include a media access control layer control element (MAC-CE), and the first threshold may be carried in the MAC-CE.
[0056] In this case, when the second device sends multiple data units and the first device receives the multiple data units, it can parse the first threshold from the multiple data units, and thus determine whether to send the first feedback information to the second device based on the first threshold.
[0057] In combination with the second aspect, in some implementations of the second aspect, the communication method further includes: sending first indication information, where the first indication information is used to indicate a first threshold.
[0058] In a possible implementation, if the second device is a network device, the first indication information may be carried in a downlink control signal DCI signaling, that is, the first indication information may be carried in the DCI signaling from the network device.
[0059] In another possible implementation, if the second device is a terminal device, the first indication information may be carried in an uplink control signal UCI signaling, that is, the first indication information may be carried in the UCI signaling from the terminal device.
[0060] In the solution provided in the embodiment of the present application, the first threshold can be separately indicated by the first indication information instead of being carried in multiple data units, so that the first device can directly obtain the first threshold from the first indication information without having to parse the first threshold from multiple data units, and thus can also determine whether to send the first feedback information to the second device based on the first threshold.
[0061] In conjunction with the second aspect, in certain implementations of the second aspect, the communication method further includes: sending second indication information. The second indication information may be used to indicate the start of a fault-tolerant transmission service.
[0062] It should be understood that when the second device sends the second indication information and the first device receives the second indication information, it is equivalent to enabling the fault tolerance mode, and can also send the first feedback information based on the number of erroneous data units and the first threshold. When the first device does not receive the second indication information, it is equivalent to not enabling the fault tolerance mode. In this case, the first device determines that there is a data unit received with an error, and needs to feedback the data unit reception error to the second device.
[0063] On the third aspect, a communication method is provided, which can be executed by a first device (for example, a network device or a terminal device), or by a module of the first device (for example, a processor, a chip, or a chip system, etc.), or by a logical node, a logical module or software that can realize all or part of the functions of the first device. This application is not limited to this.
[0064] The communication method includes: receiving multiple data units; and sending second feedback information based on the number of error data units received with errors in the multiple data units and a first threshold, wherein the second feedback information indicates the error data units received with errors. Specifically, the first device may determine not to send the first feedback information but to send the second feedback information based on the number of error data units received with errors in the multiple data units and the first threshold.
[0065] The data unit may be a transport block TB, a code block group CBG or a code block CB.
[0066] Among them, "received erroneous data unit" can be understood as a data unit that is checked incorrectly by the first device when checking multiple received data units. For example, when the data unit is a TB, "received erroneous data unit" can refer to a TB that has an error in the TB-CRC check when the first device performs a cyclic redundancy check CRC check (i.e., TB-CRC check) on the received TB. For another example, when the data unit is a CB, "received erroneous data unit" can refer to a CB that has an error in the CB-CRC check when the first device performs a CRC check (i.e., CB-CRC check) on the received CB. For another example, when the data unit is a CBG, "received erroneous data unit" can refer to a CBG corresponding to at least one CB-CRC check error in the CBG when the first device performs a CRC check on the CB in the received CBG.
[0067] In the solution provided in the embodiments of the present application, a first device can determine, based on the erroneous data units and a first threshold, not to send the first feedback information but to send the second feedback information. The second feedback information can indicate to the second device which data units were received with errors, but if the number of erroneous data units is within a certain range, the first device can recover on its own without retransmitting data, thereby reducing the number of retransmissions and improving transmission efficiency. Furthermore, the second device can also perform channel measurements such as channel estimation and channel prediction based on the second feedback information.
[0068] In combination with the third aspect, in certain implementations of the third aspect, second feedback information is sent based on the number of erroneous data units received in error among multiple data units and a first threshold, including: when the proportion of the number of erroneous data units received in error to the number of multiple data units is less than or equal to the first threshold, the first feedback information is not sent, and the second feedback information is sent.
[0069] It should be noted that, in this implementation, the first threshold is a proportional value. For example, the first threshold may be 10%, 20%, 30%, etc.
[0070] In one possible implementation, the second feedback information is sent based on the number of erroneous data units received in error among multiple data units and a first threshold, including: when the proportion of the number of erroneous data units received in error to the number of multiple data units is less than the first threshold, the first feedback information is not sent, and the second feedback information is sent.
[0071] It should be noted that, in this implementation, the first threshold is a proportional value. For example, the first threshold may be 10%, 20%, 30%, etc.
[0072] In the solution provided in the embodiment of the present application, the first device determines whether to send first feedback information or second feedback information based on the relationship between the ratio of the number of erroneous data units to the total number of data units and the first threshold value. The first feedback information can indicate which erroneous data units are retransmitted, and the second feedback information can indicate which erroneous data units are received incorrectly, so that the second device can perform different operations based on different feedback information.
[0073] In combination with the third aspect, in certain implementations of the third aspect, second feedback information is sent based on erroneous data units received in multiple data units and a first threshold, including: when the number of erroneous data units received in error is less than or equal to the first threshold, the first feedback information is not sent, and the second feedback information is sent.
[0074] It should be noted that, in this implementation, the first threshold is a numerical value. For example, the first threshold may be 100, 200, 300, etc.
[0075] In one possible implementation, sending second feedback information based on erroneous data units received in multiple data units and a first threshold includes: when the number of erroneous data units received in error is less than the first threshold, not sending the first feedback information but sending the second feedback information.
[0076] It should be noted that, in this implementation, the first threshold is a numerical value. For example, the first threshold may be 100, 200, 300, etc.
[0077] In the solution provided in the embodiment of the present application, the first device determines whether to send first feedback information or second feedback information based on the relationship between the number of erroneous data units and the first threshold. The first feedback information can indicate which erroneous data units are retransmitted, and the second feedback information can indicate which erroneous data units are received incorrectly, so that the second device can perform different operations based on different feedback information.
[0078] In combination with the third aspect, in some implementations of the third aspect, the first threshold is indicated by packet header information corresponding to multiple data units.
[0079] In one possible implementation, when the data unit is a TB, each TB may carry a header. For example, each TB may carry a header, and thus the header information of each TB may carry the first threshold. Alternatively, multiple TBs may share a header, and thus the header information may carry the first threshold. For example, the header information may carry a first identifier, and the first identifier may indicate the first threshold.
[0080] In another possible implementation, when the data unit is a CBG, one CBG may carry one header, for example, each CBG may carry one header, and thus the header information of each CBG may carry the first threshold; or, multiple CBGs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0081] In another possible implementation, when the data unit is a CB, one CB may carry one header. For example, each CB may carry one header, and thus the header information of each CB may carry the first threshold. Alternatively, multiple CBs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0082] In conjunction with the third aspect, in certain implementations of the third aspect, the first threshold may be carried in multiple data units, rather than in packet header information corresponding to the multiple data units. Exemplarily, the multiple data units (e.g., TBs) include a media access control layer control element (MAC-CE), and the first threshold may be carried in the MAC-CE.
[0083] In combination with the third aspect, in some implementations of the third aspect, the communication method further includes: receiving first indication information, where the first indication information is used to indicate a first threshold.
[0084] In a possible implementation, if the first device is a terminal device, the first indication information may be carried in a downlink control signal DCI signaling, that is, the first indication information may be carried in a DCI signaling from a network device.
[0085] In another possible implementation, if the first device is a network device, the first indication information may be carried in an uplink control signal UCI signaling, that is, the first indication information may be carried in UCI signaling from the terminal device.
[0086] It should be noted that the beneficial effects of the third aspect can refer to the relevant beneficial effects of the first aspect, and will not be repeated here.
[0087] In a fourth aspect, a communication method is provided, which can be executed by a second device (for example, a terminal device or a network device), or by a module of the second device (for example, a processor, a chip, or a chip system, etc.), or by a logical node, a logical module or software that can realize all or part of the functions of the second device. This application is not limited to this.
[0088] It should be noted that the second device and the first device are different communication devices. If the first device is a network device, the second device is a terminal device; if the first device is a terminal device, the second device is a network device.
[0089] The communication method includes: sending multiple data units; receiving second feedback information, the second feedback information indicating an erroneous data unit received in error. Further, in some examples, the second device can perform channel measurement such as channel estimation or channel prediction based on the second feedback information.
[0090] The data unit may be a transport block TB, a code block group CBG or a code block CB.
[0091] Among them, "received erroneous data unit" can be understood as a data unit that is checked incorrectly by the first device when checking multiple received data units. For example, when the data unit is a TB, "received erroneous data unit" can refer to a TB that has an error in the TB-CRC check when the first device performs a cyclic redundancy check CRC check (i.e., TB-CRC check) on the received TB. For another example, when the data unit is a CB, "received erroneous data unit" can refer to a CB that has an error in the CB-CRC check when the first device performs a CRC check (i.e., CB-CRC check) on the received CB. For another example, when the data unit is a CBG, "received erroneous data unit" can refer to a CBG corresponding to at least one CB-CRC check error in the CBG when the first device performs a CRC check on the CB in the received CBG.
[0092] In the solution provided in the embodiment of the present application, after the second device sends multiple data units, it can receive second feedback information from the first device. The second feedback information can indicate an erroneous data unit that was received erroneously. When the second device receives the second feedback information, it does not retransmit the data, but can perform channel estimation, channel prediction and other channel measurements based on the second feedback information.
[0093] In the fifth aspect, a communication device is provided, which can be a first device (for example, a network device or a terminal device), or can be a module of the first device (for example, a processor, a chip, or a chip system, etc.), or can also be a logical node, logical module or software that implements all or part of the functions of the first device. This application is not limited to this.
[0094] The communication device includes an interface unit and a processing unit, wherein the interface unit is configured to receive multiple data units; and the processing unit is configured to control the interface unit to send first feedback information based on the number of erroneous data units received in error among the multiple data units and a first threshold, wherein the first feedback information indicates that the erroneous data unit was received in error. Furthermore, in some examples, the first feedback information may also indicate retransmission of the erroneous data unit.
[0095] In combination with the fifth aspect, in certain implementations of the fifth aspect, the data unit is a transport block TB, a code block group CBG, or a code block CB.
[0096] In combination with the fifth aspect, in certain implementations of the fifth aspect, the processing unit is used to control the interface unit to send first feedback information based on the number of erroneous data units received in multiple data units and a first threshold, including: the processing unit is used to control the interface unit to send the first feedback information when the proportion of the number of erroneous data units received in errors to the number of multiple data units is greater than the first threshold.
[0097] In combination with the fifth aspect, in certain implementations of the fifth aspect, the processing unit is used to control the interface unit to send first feedback information based on the number of erroneous data units received in multiple data units and a first threshold, including: the processing unit is used to control the interface unit to send first feedback information when the number of erroneous data units received in error is greater than the first threshold.
[0098] In combination with the fifth aspect, in certain implementations of the fifth aspect, the first threshold is indicated by packet header information corresponding to multiple data units.
[0099] In combination with the fifth aspect, in some implementations of the fifth aspect, the interface unit is further used to receive first indication information, where the first indication information is used to indicate a first threshold.
[0100] In combination with the fifth aspect, in certain implementations of the fifth aspect, the interface unit is further used to receive second indication information; the processing unit is used to control the interface unit to send first feedback information based on the number of erroneous data units received in errors among multiple data units and the first threshold, including: the processing unit is used to determine, based on the second indication information, whether to control the interface unit to send the first feedback information based on the number of erroneous data units received in errors among multiple data units and the first threshold.
[0101] It should be noted that the beneficial effects of the fifth aspect can refer to the relevant beneficial effects in the first aspect and will not be repeated here.
[0102] In the sixth aspect, a communication device is provided, which can be a second device (for example, a network device or a terminal device), or can be a module of the second device (for example, a processor, a chip, or a chip system, etc.), or can also be a logical node, logical module or software that implements all or part of the functions of the second device. This application is not limited to this.
[0103] It should be noted that the second device and the first device are different communication devices. If the first device is a network device, the second device is a terminal device; if the first device is a terminal device, the second device is a network device.
[0104] The communication device includes an interface unit and a processing unit, wherein the interface unit is used to send multiple data units; receive first feedback information, and the first feedback information indicates that an erroneous data unit is received incorrectly; and the processing unit is used to retransmit the erroneous data unit according to the first feedback information.
[0105] The error data unit is an error data unit received by the first device in error among the multiple data units. The first feedback information is determined by the first terminal device according to the number of error data units and a first threshold.
[0106] In some examples, the first feedback information may also directly indicate the retransmitted erroneous data unit, so that the second device may resend the erroneous data unit based on the first feedback information.
[0107] In combination with the sixth aspect, in certain implementations of the sixth aspect, the data unit may be a transport block TB, a code block group CBG, or a code block CB.
[0108] In combination with the sixth aspect, in some implementations of the sixth aspect, the interface unit is further used to receive first indication information, where the first indication information is used to indicate a first threshold.
[0109] In conjunction with the sixth aspect, in certain implementations of the sixth aspect, the interface unit is further configured to receive second indication information. The second indication information may be used to indicate the start of a fault-tolerant transmission service.
[0110] It should be noted that the beneficial effects of the sixth aspect can refer to the relevant beneficial effects in the second aspect and will not be repeated here.
[0111] In the seventh aspect, a communication device is provided, which can be a first device (for example, a network device or a terminal device), or can be a module of the first device (for example, a processor, a chip, or a chip system, etc.), or can also be a logical node, logical module or software that implements all or part of the functions of the first device. This application is not limited to this.
[0112] The communication device includes an interface unit and a processing unit, wherein the interface unit is used to receive multiple data units; the processing unit is used to control the interface unit to send second feedback information based on an erroneous data unit received in error among the multiple data units and a first threshold, wherein the second feedback information indicates the erroneous data unit received in error.
[0113] In combination with the seventh aspect, in certain implementations of the seventh aspect, the processing unit is used to control the interface unit to send second feedback information based on the erroneous data units received in error among multiple data units and the first threshold, including: the processing unit is used to control the interface unit to send the second feedback information when the proportion of the number of erroneous data units received in error to the number of multiple data units is less than or equal to the first threshold.
[0114] In one possible implementation, the processing unit is used to control the interface unit to send second feedback information based on the erroneous data units received in error among multiple data units and a first threshold, including: the processing unit is used to control the interface unit to send the second feedback information when the proportion of the number of erroneous data units received in error to the number of multiple data units is less than the first threshold.
[0115] In combination with the seventh aspect, in certain implementations of the seventh aspect, the processing unit is used to control the interface unit to send second feedback information based on the erroneous data units received in error among multiple data units and the first threshold, including: the processing unit is used to control the interface unit to send the second feedback information when the number of erroneous data units received in error is less than or equal to the first threshold.
[0116] In one possible implementation, the processing unit is used to control the interface unit to send second feedback information based on the erroneous data units received in error among multiple data units and the first threshold, including: the processing unit is used to control the interface unit to send the second feedback information when the number of erroneous data units received in error is less than the first threshold.
[0117] It should be noted that the beneficial effects of the seventh aspect can refer to the relevant beneficial effects in the third aspect and will not be repeated here.
[0118] In the eighth aspect, a communication device is provided, which can be a second device (for example, a network device or a terminal device), or can be a module of the second device (for example, a processor, a chip, or a chip system, etc.), or can also be a logical node, logical module or software that implements all or part of the functions of the second device. This application is not limited to this.
[0119] It should be noted that the second device and the first device are different communication devices. If the first device is a network device, the second device is a terminal device; if the first device is a terminal device, the second device is a network device.
[0120] The communication device includes an interface unit, which is configured to send a plurality of data units and receive second feedback information, wherein the second feedback information indicates that an erroneous data unit is received in error.
[0121] Furthermore, in some examples, the communication apparatus further includes a processing unit, which is configured to enable the second device to perform channel measurement such as channel estimation and channel prediction based on the second feedback information.
[0122] The data unit may be a transport block TB, a code block group CBG or a code block CB.
[0123] It should be noted that the beneficial effects of the eighth aspect can refer to the relevant beneficial effects in the fourth aspect and will not be repeated here.
[0124] In the ninth aspect, a communication device is provided, comprising a processor coupled to a memory, the memory being used to store programs or instructions, wherein when the program or instructions are executed by the processor, the device executes a method as in the first aspect or any possible implementation of the first aspect; or, the device executes a method as in the second aspect or any possible implementation of the second aspect; or, the device executes a method as in the third aspect or any possible implementation of the third aspect; or, the device executes a method as in the fourth aspect or any possible implementation of the fourth aspect.
[0125] In the tenth aspect, a computer-readable storage medium is provided, on which a computer program or instruction is stored. When the computer program or the instruction is executed, the method in the first aspect and any possible implementation of the first aspect is executed; or, the method in the second aspect and any possible implementation of the second aspect is executed; or, the method in the third aspect and any possible implementation of the third aspect is executed; or, the method in the fourth aspect and any possible implementation of the fourth aspect is executed.
[0126] In the eleventh aspect, a computer program product is provided, comprising instructions, which, when executed, cause the method in the first aspect and any possible implementation of the first aspect to be executed; or, cause the method in the second aspect and any possible implementation of the second aspect to be executed; or, cause the method in the third aspect and any possible implementation of the third aspect to be executed; or, cause the method in the fourth aspect and any possible implementation of the fourth aspect to be executed.
[0127] In the twelfth aspect, the present application provides a communication system, comprising: a first device and a second device, the first device being used to execute the method in the above-mentioned first aspect and any possible implementation of the first aspect, and the second device being used to execute the method in the above-mentioned second aspect and any possible implementation of the second aspect; or, the first device being used to execute the method in the above-mentioned third aspect and any possible implementation of the third aspect, and the second device being used to execute the method in the above-mentioned fourth aspect and any possible implementation of the fourth aspect.
[0128] In the thirteenth aspect, the present application provides a chip system, comprising: a processor, which is used to execute the computer program or instructions in the memory, so that the chip system implements the method in the above-mentioned first aspect and any possible implementation of the first aspect, or implements the method in the above-mentioned second aspect and any possible implementation of the second aspect, or implements the method in the above-mentioned third aspect and any possible implementation of the third aspect, or implements the method in the above-mentioned fourth aspect and any possible implementation of the fourth aspect.
[0129] It should be noted that the beneficial effects of the ninth to thirteenth aspects can refer to the relevant beneficial effects in the first, second, third or fourth aspects, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0130] FIG1 is a schematic diagram of a communication system applicable to an embodiment of the present application.
[0131] FIG2 is a schematic diagram showing parallel transmission of multiple HARQ processes.
[0132] FIG3 shows a schematic diagram of CBG-based retransmission.
[0133] FIG4 shows a schematic diagram of the addition of CRC to TB or CB.
[0134] FIG5 is a schematic diagram showing data flow transmission between some layers.
[0135] FIG6 is a schematic flowchart of a communication method provided in an embodiment of the present application.
[0136] 7 to 14 are schematic diagrams of data packets being transferred from the MAC layer to the PHY layer.
[0137] Figure 15 is a schematic flowchart of another communication method provided in an embodiment of the present application.
[0138] Figures 16 and 17 are schematic block diagrams of the communication device provided in the embodiments of the present application. DETAILED DESCRIPTION
[0139] The technical solution in this application will be described below with reference to the accompanying drawings.
[0140] In the description of the embodiments of this application, unless otherwise specified, " / " represents or. For example, A / B can represent A or B. "And / or" in this article is simply a description of the association relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of this application, "plurality" means two or more than two.
[0141] In the following, the terms "first" and "second" are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of the technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this embodiment, unless otherwise specified, "plurality" means two or more.
[0142] Furthermore, the terms "include," "comprise," and "have," and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus comprising a series of steps or elements is not limited to the listed steps or elements, but may optionally include steps or elements not listed, or may optionally include other steps or elements inherent to the process, method, product, or apparatus.
[0143] In the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner to facilitate understanding.
[0144] In this application, "at least one (item)" refers to one or more. "Multiple" refers to two or more. "At least two (items)" refers to two or three and more than three. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b and / or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple. “When” and “if” both mean that corresponding measures will be taken under certain objective circumstances. They do not limit the time, nor do they require any judgment action when they are implemented, nor do they mean that there are other limitations.
[0145] In this application, "sending information" can be understood as one device sending information to another device, or as one logical module within a device sending information to another logical module. For example, "a network device sending information" can be understood as a network device sending information to another device (such as a terminal device), or as one logical module within a network device sending information to another logical module within the network device.
[0146] In this application, "receiving information" can be understood as one device receiving information from another device, or it can also be understood as a logic module within a device receiving information from another logic module. For example, "a network device receiving information" can be understood as the network device receiving information from another device (such as a terminal device), or it can be understood as a logic module in the network device receiving information from another logic module in the network device.
[0147] In this application, "sending information to... (e.g., a terminal device)" can be understood as the destination of the information being the terminal device. This can include sending information to the terminal device directly or indirectly. "Receiving information from... (e.g., a terminal device)" can be understood as the source of the information being the terminal device, which can include receiving information from the terminal device directly or indirectly. The information may be processed as necessary between the source and destination of the information, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be understood similarly and will not be repeated here.
[0148] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as: global system of mobile communication (GSM) system, code division multiple access (CDMA) system, wideband code division multiple access (WCDMA) system, general packet radio service (GPRS), long term evolution (LTE) system, LTE frequency division duplex (FDD) system, LTE time division duplex (TDD), universal mobile telecommunication system (UMTS), world-wide interoperability for microwave access (WiMAX) communication system, fifth generation (5G) system or new radio (NR), 5.5G, sixth generation (6G) system or future communication system, etc.
[0149] Figure 1 is a schematic diagram of a communication system applicable to an embodiment of the present application. As shown in Figure 1, the communication system includes a radio access network (RAN) 10 and a core network (CN) 20. The RAN 10 includes at least one RAN node (such as 11a and 11b, collectively referred to as 11) and at least one terminal device (such as 12a-12j, collectively referred to as 12). The RAN 10 may also include other RAN nodes, such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 1). The terminal device 12 is connected to the RAN node 11 wirelessly. The RAN node 11 is connected to the core network 20 wirelessly or wiredly. The core network device in the core network 20 and the RAN node 11 in the RAN 10 can be different physical devices, or they can be the same physical device that integrates the core network logical functions and the radio access network logical functions.
[0150] The RAN 10 may be a cellular system related to the Third Generation Partnership Project (3GPP), such as a 4G or 5G mobile communication system, or a future-oriented evolutionary system (such as a 6G mobile communication system). The RAN 10 may also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. The RAN 10 may also be a communication system that integrates two or more of the above systems.
[0151] RAN node 11, sometimes also referred to as network equipment, access network equipment, RAN entity, or access node, constitutes part of a communication system and facilitates wireless access for terminal devices. Multiple RAN nodes 11 in the communication system can be of the same type or different types. In some scenarios, the roles of RAN node 11 and terminal device 12 are relative. For example, network element 12i can be a helicopter or drone configured as a mobile base station. For terminal device 12j accessing RAN 10 via network element 12i, network element 12i is a base station; however, for base station 11a, network element 12i is a terminal device. RAN node 11 and terminal 12 are sometimes referred to as communication devices. For example, network elements 11a and 11b can be understood as communication devices with base station functionality, and network elements 12a-12j can be understood as communication devices with terminal functionality.
[0152] In one possible scenario, a RAN node may be a base station (BS), an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a next-generation NodeB in a 6G mobile communication system, a base station in a future mobile communication system, or an access node in a WiFi system. A RAN node may be a macro base station (such as 11a in Figure 1), a micro base station or an indoor station (such as 11b in Figure 1), a relay node or a donor node, or a wireless controller in a CRAN scenario.
[0153] Optionally, the RAN node may also be a server, a wearable device, a vehicle or an on-board device, etc. For example, the access network device in the vehicle to everything (V2X) technology may be a road side unit (RSU). All or part of the functions of the RAN node in this application may also be implemented by software functions running on hardware, or by virtualization functions instantiated on a platform (such as a cloud platform). The RAN node in this application may also be a logical node, logical module or software that can implement all or part of the functions of the RAN node.
[0154] In another possible scenario, multiple RAN nodes collaborate to assist terminal devices in achieving wireless access, and different RAN nodes respectively implement part of the functions of the base station. For example, the RAN node can be a centralized unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU). The CU and DU can be set separately, or they can be included in the same network element, such as a baseband unit (BBU). The RU can be included in a radio frequency device or radio frequency unit, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH).
[0155] In different communication systems, CU (or CU-CP and CU-UP), DU or RU may also have different names, but those skilled in the art can understand their meanings. For example, in the ORAN system, CU may also be called O-CU (Open CU), DU may also be called O-DU, CU-CP may also be called O-CU-CP, CU-UP may also be called O-CU-UP, and RU may also be called O-RU. For the convenience of description, this application uses CU, CU-CP, CU-UP, DU and RU as examples for description. Any unit of CU (or CU-CP, CU-UP), DU and RU in this application can be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.
[0156] It should be understood that the number of each device in the above-mentioned communication system is only for illustration and is not limited thereto. In actual applications, the communication system may further include more terminal devices, more RAN devices, and other devices.
[0157] The network device in the embodiment of the present application may be a device for communicating with a terminal device. The network device may be a base transceiver station (BTS) in a GSM system or CDMA, a base station (NodeB, NB) in a WCDMA system, an evolved base station (eNB or eNodeB) in an LTE system, or a wireless controller in a cloud radio access network (CRAN) scenario. Alternatively, the network device may be a relay station, an access point, an in-vehicle device, a wearable device, a network device in a future 5G network, or a network device in a future evolved PLMN network. For example, the network device may include an access network device and / or a core network device.
[0158] The terminal device involved in the embodiments of the present application is a device with wireless transceiver functions, which can be a fixed device or a mobile device, and can refer to a user device, an access terminal, a user unit, a user station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communication device, a user agent or a user device. The terminal device can also be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a 5G network or a terminal device in a public land mobile communication network (PLMN) to be evolved in the future, etc. The terminal device can also be a handheld device (such as a mobile phone), a wearable device, a vehicle-mounted device, or a wireless device built into the above-mentioned device (such as a communication module, a modem, or a chip system, etc.). Terminal devices are used to connect people, objects, machines, etc. and can be widely used in various scenarios, including but not limited to the following scenarios: cellular communications, device-to-device communications (D2D), vehicle-to-everything (V2X), machine-to-machine / machine-type communications (M2M / MTC), Internet of Things (IoT), virtual reality (VR), augmented reality (AR), industrial control, self-driving, remote medical, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city, drones, robots, and other scenarios. The embodiments of the present application are not limited to this.
[0159] Currently, XR services in 5G NR enable basic interaction between people and the virtual world. However, future technologies like holography will require an immersive experience, placing even higher demands on cellular communications. The average access rate must be increased from the current 120Mbps to 2Gbps, and interaction latency must be further reduced from the current 20ms to around 5ms. This will require further evolution of 5G. Therefore, XR services require both low latency and high speed.
[0160] Internet video communication technologies have explored congestion control and bitrate adaptation, but they still face challenges. In real-time video applications, packet jitter and loss significantly negatively impact the user experience. When packets jitter, they arrive at the receiver at irregular speeds, leading to unstable video decoding and playback. Packet loss, on the other hand, requires retransmission, which introduces additional latency and can cause lag and stuttering.
[0161] The hybrid automatic repeat request (HARQ) mechanism of the media access control (MAC) layer is the most commonly used retransmission mechanism. It enables fast retransmission by immediately feeding back the success or failure of information transmission from the receiving end to the sending end.
[0162] The HARQ mechanism uses a stop-and-wait protocol, which has the following two characteristics: ① The receiver sends feedback to the transmitter regardless of whether the message is received correctly; ② The transmitter must receive an acknowledgment from the receiver before continuing to send a message. The next message will not be sent until the previous message has been acknowledged.
[0163] The stop-and-wait protocol requires the transmitter to stop and wait for feedback from the receiver after each transmission, which results in very low throughput. Therefore, HARQ uses multiple stop-and-wait processes for parallel processing. While one process is waiting for confirmation, the transmitter can continue sending information using another process. Similarly, while the receiver is processing information received by one process, it can continue receiving information using another process. Multiple HARQ processes are processed in parallel to form a HARQ entity. Each uplink or downlink carrier corresponds to a HARQ entity. 3GPP defines a HARQ entity as supporting up to 16 HARQ processes. When multiple processes are used for transmission, each process has independent HARQ feedback. HARQ feedback is the feedback information sent by the receiver in the HARQ mechanism. The transmitter determines whether the data transmission is successful based on the feedback information from the receiver. ACK (acknowledgement) indicates successful transmission, and NACK (negative acknowledgement) indicates transmission failure.
[0164] As shown in Figure 2, Figure 2 shows a schematic diagram of parallel transmission of multiple HARQ processes. HARQ allows three processes to transmit in parallel, and these three processes can be, for example, HARQ process 0, HARQ process 1, and HARQ process 2. The transmitter sends transport block 1 (TB1) to the receiver through HARQ process 0, and only after the receiver feedbacks ACK can the transmitter send other TBs through HARQ process 0. The transmitter can send TB2 to the receiver through HARQ process 1. After the receiver feedbacks ACK, the transmitter can continue to send TB4 to the receiver through HARQ process 1. After the receiver feedbacks ACK, the transmitter can send other TBs through HARQ process 1. The transmitter can send TB3 to the receiver through HARQ process 2. After the receiver feedbacks ACK, the transmitter can continue to send TB5 to the receiver through HARQ process 2. After the receiver feedbacks ACK, the transmitter can send other TBs through HARQ process 2.
[0165] If the transmitter sends TBs in code blocks (CBs), the receiver can only feedback the CBs with decoding errors. This allows the transmitter to retransmit only the CBs with decoding errors, reducing retransmission overhead compared to retransmitting the entire TB. However, if feedback is provided in CB units, the amount of feedback information increases because a TB contains multiple CBs, which in turn increases control signaling overhead.
[0166] Therefore, a compromise method is introduced in NR, which is based on the retransmission of code block groups (CBGs). Multiple CBs are combined into a CBG, and feedback is performed based on each CBG. During retransmission, only the erroneous CBG is retransmitted. Compared with retransmitting the entire TB, CBG-based retransmission can reduce resource consumption; compared with feedback for each CB, CBG-based feedback can reduce signaling overhead. 3GPP TS 38.331 stipulates that according to the number of CBs initially transmitted, the TB can be divided into 2, 4, 6 or 8 CBGs, and indicated to the UE through high-level signaling parameters. Once the CBG division is completed, the mapping relationship between each CBG and the CB is fixed, and will not change even if it is retransmitted multiple times, thereby ensuring the accuracy of the retransmitted information.
[0167] As shown in Figure 3, a schematic diagram of CBG-based retransmission is shown. During initial transmission, the transmitter can send TB1 to the receiver, which can include four CBGs. The receiver successfully receives CBG0 and CBG3, but fails to receive CBG1 and CBG2. Therefore, the receiver can feedback ACK, NACK, NACK, ACK to the transmitter. After receiving the feedback information, the transmitter learns that the transmission of CBG1 and CBG2 failed, and retransmits CBG1 and CBG2 to the receiver. The receiver clears the cache and re-receives CBG1 and CBG2. CBG1 and CBG2 are successfully received, thus successfully receiving all CBGs transmitted in TB1. Therefore, the receiver can feedback ACK, ACK, ACK, ACK to the transmitter.
[0168] It should be noted that before sending data to the receiving end, the sending end needs to add a cyclic redundancy check (CRC) to the TB so that the receiving end can verify whether the received data is correct.
[0169] For example, as shown in FIG4 , FIG4 shows a schematic diagram of adding a CRC to a TB or CB. The physical layer of the transmitting end can add a CRC to the TB (denoted as TB-CRC), so that the receiving end can perform a CB-CRC check to obtain a correct TB. In addition, the physical layer of the transmitting end can also divide the TB with the CRC added into several CBs according to certain rules, and then add a CRC to each CB (denoted as CB-CRC), so that the receiving end can perform a CB-CRC check to obtain a correct CB.
[0170] The existing bit-level CRC check feedback method first appends a check code of R bits to the K-bit length of data to be sent, and then generates a new frame and sends it to the receiving end. After receiving the new frame, the receiving end verifies whether the received data is correct based on the received data and the check code. If it is wrong, feedback is fed back and retransmitted. The feedback error rate of the HARQ mechanism can reach about 1%. For some data services with ultra-high reliability and ultra-low latency (such as ultra-reliable low-latency communications (URLLC) scenarios), the feedback error rate of the HARQ mechanism cannot meet the requirements. If you want to reduce the HARQ feedback error rate, you need to add more feedback signaling. Since the transmission of HARQ feedback is very frequent, this will cause a lot of control signaling overhead. Frequent retransmissions will also lead to more data resource overhead, which will ultimately cause a large delay.
[0171] Furthermore, AI-based video codec systems require fault-tolerant feature streams. Even if received bits are erroneous, a generator can be configured to correct them, allowing for a high-quality video to be restored at the receiving end. Consequently, existing bit-level CRC checks fail to leverage the fault-tolerant nature of feature streams in feature stream codec systems. Multiple retransmissions are required to satisfy the bit-level CRC check, reducing communication efficiency and resulting in a poor user experience.
[0172] Figure 5 shows a schematic diagram of data flow transmission between some layers. As shown in Figure 5, the application layer can deliver Internet Protocol (IP) data packets to the lower layers one by one. The access layer includes the radio resource control (RRC) layer, the service data adaptation protocol (SDAP) layer, the packet data convergence protocol (PDCP) layer, the radio link control (RLC) layer, the media access control (MAC) layer, and the physical layer (PHY).
[0173] The upper layer transmits the protocol data unit (PDU) to the lower layer. After receiving the PDU from the upper layer, the lower layer considers it the service data unit (SDU) of its own layer. A header (denoted as H) is added to form the PDU of its own layer. After the header is added, it is transmitted to the next layer. Therefore, the PDU can be regarded as the header plus the SDU. Several RLC layer PDUs form a complete MAC PDU. The MAC PDU is carried on the TB, which can be further transmitted to the physical layer. The size of the MAC PDU is equal to the size of the TB.
[0174] In the existing NR protocol architecture, the data structure transmitted by each layer does not involve relevant information about the fault-tolerance characteristics of the feature stream. The relevant information of the feature stream data of the application layer (for example, the fault-tolerance information of the feature stream) cannot be passed to the physical layer. The physical layer cannot recognize the feature stream data, and therefore cannot use the fault-tolerance characteristics of the feature stream to improve communication efficiency.
[0175] To address the above issues, this application aims to address how to bring the fault-tolerance characteristics of feature streams from the application layer to the physical layer transmission, implementing a fault-tolerant data verification method, thereby reducing retransmissions and increasing transmission rates. It should be understood that the solution provided by this application is particularly suitable for low-latency, high-speed XR services.
[0176] The communication method provided by the present application will be described in detail below with reference to Figures 6 to 15. For ease of understanding and explanation, the following describes the method of the embodiment of the present application by taking the interaction between a first device (such as a terminal device or a network device) and a second device (such as a network device or a terminal device) as an example, but this does not constitute any limitation on the execution subject of the method of the embodiment of the present application. For example, the method performed by the terminal device may also be performed by a module (such as a circuit, a chip or a chip system, etc.) of the terminal, and may also be implemented by a logical node, a logical module or software that can realize all or part of the functions of the terminal device. The method performed by the network device may also be performed by a module (such as a circuit, a chip or a chip system, etc.) of the network device, and may also be implemented by a logical node, a logical module or software that can realize all or part of the functions of the network device.
[0177] It should be understood that the first device and the second device are different devices. For example, the first device may be a receiving device, and the second device may be a transmitting device. For another example, the first device may be network device 11 in Figure 1 , and the second device may be terminal device 12 in Figure 1 ; the first device may also be terminal device 12 in Figure 1 , and the second device may also be network device 11 in Figure 1 . This application does not limit this.
[0178] Figure 6 is a schematic flow chart of a communication method provided in an embodiment of the present application. The communication method 100 may include S110 to S140.
[0179] S110: The second device sends multiple data units to the first device. Correspondingly, the first device receives multiple data units from the second device.
[0180] The data unit may be a transport block TB, a code block CB or a code block group CBG.
[0181] The plurality of data units may carry a first threshold value, which may be the maximum number of erroneous data units, or the maximum ratio of the number of erroneous data units to the total number of data units.
[0182] In some embodiments, the packet header information corresponding to the plurality of data units may carry the first threshold value. In other words, the first threshold value may be indicated by the packet header information corresponding to the plurality of data units.
[0183] In one example, when the data unit is a TB, each TB may carry a header. For example, each TB may carry a header, and thus the header information of each TB may carry the first threshold. Alternatively, multiple TBs share a header, and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0184] In another example, when the data unit is a CBG, one CBG may carry one header, such as each CBG may carry one header, and thus the header information of each CBG may carry the first threshold; or, multiple CBGs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0185] In another example, when the data unit is a CB, one CB may carry one header, for example, each CB may carry one header, and thus the header information of each CB may carry the first threshold; alternatively, multiple CBs share one header (as opposed to one TB sharing one header), and thus the header information may carry the first threshold. For example, the header information carries a first identifier, and the first identifier indicates the first threshold.
[0186] Taking 2 bits as an example, Table 1 provides a feasible example of the first threshold (i.e., fault tolerance). As shown in Table 1, the packet header information can carry a first identifier, such as 01, indicating that the first threshold is 0.1, that is, the maximum ratio of the number of erroneous data units to the number of multiple data units is 0.1 (10%). It should be understood that Table 1 can be predefined in the protocol or pre-agreed between the first device and the second device, and this application does not limit this.
[0187] Table 1
[0188] In other embodiments, the first threshold value may be carried in a non-packet header position in the plurality of data units. Exemplarily, the plurality of data units (such as TBs) include a media access control layer control element (MAC control element, MAC-CE), and the first threshold value may be carried in the MAC-CE.
[0189] Specifically, after the physical PHY layer of the first device receives the multiple data units, it performs a CRC check and submits the data packet and the corresponding CRC check result to the MAC layer. The MAC layer can know the position of the MAC-CE in the TB and has the authority to parse the characteristic flow information of the MAC-CE (such as the first threshold); then the MAC layer of the first device determines that if all the CBs corresponding to the MAC-CE pass the CRC check, the MAC layer parses the information of the MAC-CE and obtains the first threshold.
[0190] It should be noted that the multiple data units received by the first device may correspond to a type of data unit (e.g., a first type of data unit), and the first type of data unit has a corresponding relationship with the first threshold. It should be understood that the first device can receive multiple types of data units, and the thresholds corresponding to different types of data units may be different. In other words, different feature streams correspond to different fault tolerance characteristics (or fault tolerance space).
[0191] Exemplarily, in addition to receiving the first type of data units, the first device may also receive the second type of data units. The first type of data units correspond to a first threshold, and the second type of data units correspond to a second threshold, and the first threshold is different from the second threshold. The first type of data units may be referred to as feature stream 1, and the second type of data units may be referred to as feature stream 2. Feature stream 1 and feature stream 2 may be different features extracted by a network encoder.
[0192] For example, if the importance of the first type of data unit is higher than that of the second type of data unit, the fault tolerance of the first type of data unit is lower than that of the second type of data unit. The first threshold value can be 10%, and the second threshold value can be 30%. That is to say, when the proportion of the number of erroneous data units in the first type of data unit to the total number of data units is greater than 10%, it is necessary to feedback the reception error of the first type of data unit or feedback the first type of data unit that needs to be retransmitted; when the proportion of the number of erroneous data units in the second type of data unit to the total number of data units is greater than 30%, it is necessary to feedback the reception error of the second type of data unit or feedback the second type of data unit that needs to be retransmitted.
[0193] If the second device sends multiple types of data units, it is also necessary to indicate the threshold corresponding to each type of data unit and the length occupied by each type of data unit. Furthermore, it is also necessary to indicate the mapping relationship between each type of data unit and the threshold. The mapping relationship can be predefined, or the mapping relationship can be notified by information, such as indicating the mapping relationship through third indication information. The third indication information can be an index, and different indexes can indicate the corresponding relationship between different data units and different thresholds.
[0194] Exemplarily, when the second device sends multiple types of data units to the first device, the second device may also send characteristic flow information to the first device, and the characteristic flow information may include the threshold corresponding to each type of data unit and the length occupied by each type of data unit. Among them, the threshold corresponding to each type of data unit (or referred to as the fault tolerance characteristics of each type of characteristic flow) and the length occupied by each type of data unit (or referred to as the length occupied by each type of characteristic flow) can be indicated in the same information or in different information. For example, the fault tolerance characteristics of each type of characteristic flow and the length occupied by each type of characteristic flow can be indicated in the packet header information, or can be indicated in the MAC-CE. For another example, the threshold corresponding to each type of data unit can be indicated by the first indication information below, and the length occupied by each type of characteristic flow can be indicated by the packet header information or the MAC-CE.
[0195] In some embodiments, as shown in Figures 7 to 9, feature stream information may be indicated by packet header information corresponding to multiple data units. In other words, the error tolerance (Tolerance) of each feature stream type and the length (Feature) occupied by each feature stream type may be indicated in the packet header H corresponding to the multiple data units.
[0196] Exemplarily, as shown in Figure 7, the data unit of the PHY layer of the second device (the data unit can be TB, CB or CBG) can include a header H, and the header H can include Feature and Tolerance. In one example, Feature can indicate the length (POS) occupied by each type of feature stream, and Tolerance can indicate the fault tolerance characteristics (TPOS) corresponding to each type of feature stream. In another example, Feature can indicate the number of feature stream categories (Num) included in the data unit and the length (POS) corresponding to each type of feature stream, and Tolerance can indicate the fault tolerance characteristics (TPOS) corresponding to each type of feature stream. In this example, Feature indicates how many types of feature streams are in TB / CB / CBG and the length (number of bits) occupied by each type of feature stream, and Tolerance indicates the fault tolerance characteristics corresponding to each type of feature stream in TB / CB / CBG. It should be understood that when Feature includes Num and POS, the number of bits corresponding to the last feature stream can be omitted.
[0197] In other embodiments, as shown in FIG10 , the feature flow information may be indicated by the MAC-CE. That is, the fault tolerance characteristics (Tolerance) of each type of feature flow and the length (Feature) occupied by each type of feature flow may be carried in the MAC-CE. In one example, Feature may indicate the length (POS) occupied by each type of feature flow, and Tolerance may indicate the fault tolerance characteristics (TPOS) corresponding to each type of feature flow. In another example, Feature may indicate the number of feature flow categories (Num) included in the data unit and the length (POS) corresponding to each type of feature flow, and Tolerance may indicate the fault tolerance characteristics (TPOS) corresponding to each type of feature flow.
[0198] In some further embodiments, as shown in Figures 11 to 13, the fault-tolerance characteristics of each type of feature stream in the feature stream information can be separately indicated by indication information, which can be, for example, the first indication information below; the length occupied by each type of feature stream in the feature stream information can be indicated by the packet header information, that is, the Feature can be indicated in the packet header H.
[0199] In some further embodiments, as shown in FIG14 , the fault-tolerance characteristics of each type of feature flow in the feature flow information can be separately indicated by indication information, which can be, for example, the first indication information below; the length occupied by each type of feature flow in the feature flow information can be indicated by MAC-CE, that is, Feature can be indicated in MAC-CE in TB.
[0200] The second device's PHY layer data is parsed and reassembled from the MAC layer data, which is in turn parsed and reassembled from the RLC layer data above it, and the RLC layer data is parsed and reassembled from the PDCP layer data above it. As data packets pass from the application layer to the PHY layer and then to the next layers, the packet header H must be parsed and repackaged for each possible segmentation, ensuring that the characteristic flow information in the header H is not lost.
[0201] It should be understood that the IP data packets at the application layer carry characteristic flow information, which can be obtained from the user's application layer feedback or preset by the application. It should be understood that the embodiments of the present application do not limit the location of the characteristic flow information. The characteristic flow information can be placed in the packet header, or it can be placed in the packet tail, or all the header information can be packaged as a whole, or placed in other agreed locations. In the embodiments of the present application, the characteristic flow information is mainly introduced in the packet header.
[0202] When the MAC PDU is delivered to the PHY layer, the PHY layer parses the header in the MAC PDU to obtain the length information of each type of feature flow and the fault tolerance characteristics of each type of feature flow. Based on the TB length and the number and size of CB / CBG, the PHY layer can determine the position mapping relationship between the feature flow information carried by the MAC layer header and the TB / CB / CBG. Therefore, the PHY layer can determine the mapping relationship with the MAC PDU based on the length of the TB / CB / CBG and the length information of each type of feature flow.
[0203] The following will describe the data reassembly process of transferring MAC layer data to the PHY layer with reference to FIG. 7 to FIG. 14 .
[0204] As shown in Figure 7, the characteristic flow information of the MAC layer is added to the header position of the PDU. Exemplarily, the characteristic flow information of the MAC layer is added to the header position of each PDU. The characteristic flow information includes the length of each type of characteristic flow and the fault tolerance characteristics of each type of characteristic flow; the PHY layer parses the corresponding header information and adds a header to the TB / CB / CBG. Exemplarily, the PHY layer can add a header to each TB / CB / CBG, and the header information of each TB / CB / CBG carries the characteristic flow information; then the PHY layer can add CRC check information to the header and TB / CB data as a whole, and then send it to the first device.
[0205] As shown in Figure 8, the feature flow information of the MAC layer can be packaged as a whole as the first transmitted PDU. The feature flow information includes the length of each type of feature flow and the fault tolerance characteristics of each type of feature flow; the PHY layer parses the corresponding header information and adds a header to the TB / CB / CBG. For example, the header information of each TB / CB / CBG carries the feature flow information; then the PHY layer can add CRC check information to the header and TB / CB data as a whole, and then send it to the first device. Compared with the method of adding a header at the front end of each PDU, the overall packaging method can save more header overhead and improve transmission efficiency. At the same time, the overall packaging method does not need to be parsed and repackaged multiple times according to different segmentation lengths during the downward submission process, saving processing overhead.
[0206] As shown in Figure 9, the MAC layer does not place the feature flow information in the packet header position, but adds a field in the MAC-CE to centrally indicate the feature flow information of the PDU set, which includes the length of each type of feature flow and the fault tolerance characteristics of each type of feature flow; the PHY layer parses the corresponding packet header information and adds a header to the TB / CB / CBG. Exemplarily, the PHY layer can add a header to each TB / CB / CBG, and the header information of each TB / CB / CBG carries the feature flow information; then the PHY layer can add CRC check information to the packet header and TB / CB data as a whole, and then send it to the first device.
[0207] As shown in Figure 10, the MAC layer does not place the feature flow information in the packet header, but instead adds a field to the MAC-CE to centrally indicate the feature flow information of the PDU set. This feature flow information includes the length of each type of feature flow and the fault tolerance characteristics of each type of feature flow. Unlike Figure 9, the PHY layer no longer parses or repackages to generate a packet header. The MAC-CE is located somewhere in the TB, but the PHY is not aware of the specific location. The PHY layer can then add CRC check information to the entire TB data and then send it to the first device. The first device can perform a CRC check and submit the data packet and the corresponding CRC check result to the MAC layer of the first device. The MAC layer of the first device determines that if all CRC checks of the CBs corresponding to the MAC-CE pass, the MAC layer of the first device parses the MAC-CE information, thereby obtaining the feature flow information from the MAC-CE.
[0208] As previously mentioned, the packet header information and MAC-CE may only carry the length (Feature) of each type of feature flow in the feature flow information. In Figure 11, corresponding to Figure 7, the MAC layer header H may indicate Feature but not Tolerance. For example, each MAC layer header H may indicate Feature but not Tolerance. For a detailed description of the data reassembly process, please refer to Figure 7. In Figure 12, corresponding to Figure 8, the MAC layer header H may indicate Feature but not Tolerance. For example, each MAC layer header H may indicate Feature but not Tolerance. For a detailed description of the data reassembly process, please refer to Figure 8. In Figure 13, corresponding to Figure 9, the MAC layer header H may indicate Feature but not Tolerance. For example, each MAC layer header H may indicate Feature but not Tolerance. For a detailed description of the data reassembly process, please refer to Figure 9. In Figure 14, corresponding to Figure 10, the MAC-CE may indicate Feature but not Tolerance. For a detailed description, please refer to Figure 10.
[0209] It should be noted that if the packet header H carries characteristic flow information, the packet header H is non-fault-tolerant data. During the parsing of the data packet, it is necessary to confirm that the packet header H is correct, otherwise correct parsing cannot be performed and the characteristic flow information in the packet header H needs to be obtained again.
[0210] S120: The first device determines to send first feedback information according to the number of erroneous data units received in error among the multiple data units and a first threshold.
[0211] The first feedback information indicates that the erroneous data unit is received incorrectly. Furthermore, in some examples, the first feedback information may also indicate retransmission of the erroneous data unit.
[0212] Here, "receiving an erroneous data unit with an error" can be understood as the first device detecting an erroneous data unit when verifying multiple received data units. For example, the first device can use a CRC check method for verification. That is, after receiving multiple data units, the first device can verify the multiple data units using a CRC check method, and after the verification passes, the multiple data units can be parsed for further processing.
[0213] In one example, when the data unit is a TB, a "received erroneous data unit" may refer to a TB with an erroneous TB-CRC check when the first device performs a cyclic redundancy check CRC check (ie, TB-CRC check) on the received TB.
[0214] In another example, when the data unit is a CB, a "received erroneous data unit" may refer to a CB with an erroneous CB-CRC check when the first device performs a CRC check (ie, a CB-CRC check) on the received CB.
[0215] In another example, when the data unit is a CBG, a "received erroneous data unit" may refer to a CBG corresponding to an error when the first device performs a CRC check on the CB in the received CBG and at least one CB in the CBG has a CB-CRC check error.
[0216] Optionally, after performing CRC check on the TB / CB / CBG received by the first device, ACK / NACK can be fed back to the second device according to the method shown in Figure 2 or Figure 3, but the second device will not retransmit data based on the ACK / NACK.
[0217] In some embodiments, if the ratio of the number of erroneous data units received with errors to the number of the plurality of data units is greater than a first threshold, it is determined to send the first feedback information. Alternatively, if the ratio of the number of erroneous data units received with errors to the number of the plurality of data units is less than or equal to the first threshold, it is determined not to send the first feedback information but to send the third feedback information instead.
[0218] In other embodiments, if the ratio of the number of erroneous data units received with errors to the number of the plurality of data units is greater than or equal to a first threshold, it is determined to send the first feedback information. Alternatively, if the ratio of the number of erroneous data units received with errors to the number of the plurality of data units is less than the first threshold, it is determined not to send the first feedback information but to send the third feedback information instead.
[0219] The first threshold may be a proportional value, for example, the first threshold may be 10%, 20%, 30%, etc.
[0220] In other embodiments, if the number of erroneous data units received with errors is greater than a first threshold, it is determined to send the first feedback information. Alternatively, if the number of erroneous data units received with errors is less than or equal to the first threshold, it is determined not to send the first feedback information but to send the third feedback information.
[0221] In other embodiments, if the number of erroneous data units received is greater than or equal to a first threshold, it is determined to send the first feedback information. Alternatively, if the number of erroneous data units received is less than the first threshold, it is determined not to send the first feedback information but to send the third feedback information.
[0222] The first threshold may be a numerical value, for example, the first threshold may be 100, 200, 300, etc.
[0223] In this step, the first device can determine whether to send first feedback information based on the number of erroneous data units and a first threshold. The first feedback information is sent only when certain conditions are met, such as the number of erroneous data units is greater than the first threshold, or the number of erroneous data units accounts for a proportion of the total number of data units that is greater than the first threshold. This allows the second device to retransmit the erroneous data unit or retransmit the multiple data units received by the first device in S110 based on the first feedback information. This helps reduce the number of retransmissions and improves transmission efficiency.
[0224] It should be understood that the first threshold can be understood as the above-mentioned fault tolerance feature, and the first feedback information can be FNACK, which indicates that the feature transmission failed. FNACK can instruct the second device to retransmit the TB / CB / CBG that feedbacks FNACK. The third feedback information can be FACK, which indicates that the feature transmission is successful. FACK can indicate that the feature stream has completed transmission, that is, multiple data units have been successfully transmitted.
[0225] Optionally, before executing S120, the communication method 100 may further include the following steps: the second device sends first indication information to the first device, and correspondingly, the first device receives the first indication information from the second device, wherein the first indication information is used to indicate the first threshold.
[0226] In some embodiments, if the first device is a terminal device, the first indication information may be carried in downlink control information (DCI) signaling, that is, the first indication information may be carried in DCI signaling from the network device.
[0227] In other embodiments, if the first device is a network device, the first indication information may be carried in uplink control information (UCI) signaling, that is, the first indication information may be carried in UCI signaling from the terminal device.
[0228] Exemplarily, a 1 to 4 bit field is added to the UCI or DCI to indicate the thresholds corresponding to different types of data units. Taking 2 bits as an example, Table 2 gives a feasible example of the first threshold. As shown in Table 2, the UCI or DCI can carry the first indication information, and the first indication information is, for example, 01, indicating that the first threshold is 0.1, that is, the maximum proportion of the number of erroneous data units to the number of multiple data units is 0.1 (10%). It should be understood that Table 2 can be predefined in the protocol or pre-agreed between the first device and the second device, and this application does not limit this.
[0229] Table 2
[0230] Optionally, before executing S120, the communication method 100 may further include the following steps: the second device sends second indication information to the first device, and correspondingly, the first device receives the second indication information from the second device.
[0231] The second indication information can be used to indicate the activation of a fault-tolerant transmission service. It should be understood that when the first device receives the second indication information, it is equivalent to activating the fault-tolerant mode, and can send the first feedback information based on the number of erroneous data units and the first threshold. When the first device does not receive the second indication information, it is equivalent to not activating the fault-tolerant mode. In this case, the first device determines that there is a data unit with a reception error, and it is necessary to feedback the data unit reception error to the other end, relative to the ACK / NACK process described in Figure 2 or Figure 3.
[0232] In one example, the second indication information may include the aforementioned packet header information. In another example, the second indication information may include the aforementioned first indication information. In other words, when the first device obtains the first threshold, i.e., configures the first threshold, it is considered that the fault-tolerant mode is enabled, i.e., the fault-tolerant transmission service is enabled.
[0233] In some embodiments, if the first device is a terminal device, the second indication information may be carried in a downlink control signal DCI signaling, that is, the second indication information may be carried in a DCI signaling from a network device.
[0234] In other embodiments, if the first device is a network device, the second indication information may be carried in an uplink control signal UCI signaling, that is, the second indication information may be carried in UCI signaling from the terminal device.
[0235] Exemplarily, a 1-bit field is added to the UCI or DCI. The 1-bit field can be 0 or 1, where 0 indicates that fault-tolerant service transmission is not enabled, and 1 indicates that fault-tolerant service transmission is enabled.
[0236] It should be noted that if the fault-tolerant transmission service is turned on, the second device will not provide feedback after receiving the ACK / NACK of TB / CB / CBG, and will determine whether to retransmit TB / CB / CBG after receiving the FACK / FNACK feedback related to the feature flow.
[0237] S130: The first device sends first feedback information to the second device. Correspondingly, the second device receives the first feedback information from the first device.
[0238] The first feedback information indicates that the erroneous data unit is received incorrectly. Furthermore, in some examples, the first feedback information may also indicate retransmission of the erroneous data unit.
[0239] S140: The second device determines an erroneous data unit that needs to be retransmitted according to the first feedback information.
[0240] In this step, after receiving the first feedback information (such as FNACK) from the first device, the second device can determine the erroneous data unit and thus retransmit the erroneous data unit.
[0241] Optionally, the second device may further receive third feedback information (such as FACK) from the first device. After receiving the third feedback information (such as FACK), the second device determines that the data transmission is successful and may continue to transmit the data to be sent.
[0242] In an embodiment of the present application, firstly, a PDU, TB / CB / CBG header design is added on the basis of the existing NR protocol stack, which can deliver the feature flow information of the application layer downward to the MAC layer, so that the data carrying the feature flow information can be sent from the second device to the first device; secondly, a field can be added to the UCI / DCI to indicate the start of fault-tolerant service transmission, enabling the transmission of fault-tolerant services; finally, compared with the retransmission feedback mechanism of HARQ, the present application provides a feedback scheme based on fault-tolerant characteristics, which realizes fault-tolerant transmission of feature flow data, reduces the number of retransmissions, and can more efficiently support the needs of high-speed and low-latency services.
[0243] It should be understood that in the solution provided in the present application, even if the CRC check is not satisfied, the error area can be restored by the generator of the receiving end (i.e., the first device) without the need to retransmit the data in the error area, thereby reducing the number of retransmissions and improving transmission efficiency.
[0244] Figure 15 is a schematic flow chart of another communication method provided by an embodiment of the present application. The communication method 200 may include S210 to S230.
[0245] S210: The second device sends multiple data units to the first device. Correspondingly, the first device receives multiple data units from the second device. The data units may be transport blocks TB, code blocks CB, or code block groups CBG.
[0246] The specific content of this step can be referred to S110 and will not be repeated here.
[0247] S220: The first device determines not to send first feedback information but to send second feedback information based on an erroneous data unit received in error among the multiple data units and a first threshold.
[0248] Among them, "received erroneous data unit" can be understood as a data unit that is checked incorrectly by the first device when checking multiple received data units. For example, when the data unit is a TB, "received erroneous data unit" can refer to a TB that has an error in the TB-CRC check when the first device performs a cyclic redundancy check CRC check (i.e., TB-CRC check) on the received TB. For another example, when the data unit is a CB, "received erroneous data unit" can refer to a CB that has an error in the CB-CRC check when the first device performs a CRC check (i.e., CB-CRC check) on the received CB. For another example, when the data unit is a CBG, "received erroneous data unit" can refer to a CBG corresponding to at least one CB-CRC check error in the CBG when the first device performs a CRC check on the CB in the received CBG.
[0249] In this step, the first device may determine not to send the first feedback information but to send the second feedback information indicating the erroneous data unit received with error based on the number of erroneous data units received with error in the multiple data units and a first threshold.
[0250] In some embodiments, when the ratio of the number of erroneous data units received in error to the number of the plurality of data units is less than or equal to a first threshold, the first feedback information is not sent, but the second feedback information is sent.
[0251] In some other embodiments, when the ratio of the number of erroneous data units received in error to the number of the plurality of data units is less than a first threshold, the first feedback information is not sent, but the second feedback information is sent.
[0252] In some other embodiments, when the number of erroneous data units received is less than or equal to a first threshold, the first feedback information is not sent, but the second feedback information is sent.
[0253] In some other embodiments, when the number of erroneous data units received in error is less than a first threshold, the first feedback information is not sent, but the second feedback information is sent.
[0254] Among them, the second feedback information can indicate which data units are received incorrectly by the second device, but the number of erroneous data units or the proportion of erroneous data units is within a certain range, and the first device can recover by itself without retransmitting data, thereby reducing the number of retransmissions and improving transmission efficiency.
[0255] It should be noted that, in some embodiments, the second feedback information and the third feedback information described in S120 may be sent separately. In other embodiments, the second feedback information may be included in the third feedback information. That is, when the first device sends back an FACK indicating successful feature stream data transmission, it may also indicate which data units were received incorrectly during the transmission process, and the first device can recover these erroneously received data units without retransmission.
[0256] S230: The first device sends second feedback information to the second device. Correspondingly, the second device receives the second feedback information from the first device, wherein the second feedback information indicates an erroneous data unit received in error.
[0257] Optionally, the communication method 200 may further include: the second device performing channel measurement such as channel estimation and channel prediction according to the second feedback information.
[0258] In an embodiment of the present application, firstly, a PDU, TB / CB / CBG header design is added on the basis of the existing NR protocol stack, which can pass the feature flow information of the application layer downward to the MAC layer, so that the data carrying the feature flow information can be sent from the second device to the first device; secondly, a field can be added to UCI / DCI to indicate the start of fault-tolerant service transmission, enabling the transmission of fault-tolerant services; finally, the first device can determine not to send the first feedback information but to send the second feedback information based on the erroneous data unit and the first threshold. The second feedback information can indicate which data units of the second device are received incorrectly, but the number of erroneous data units or the proportion of the number of erroneous data units is within a certain range. The first device can recover by itself without retransmitting data, thereby reducing the number of retransmissions and improving transmission efficiency. In addition, the second device can also perform channel estimation, channel prediction and other channel measurements based on the second feedback information.
[0259] The communication method provided in the embodiment of the present application is introduced above in combination with Figures 6 to 15. The communication device provided in the embodiment of the present application is introduced below in combination with Figures 16 and 17.
[0260] To implement the various functions of the methods provided herein, both the terminal device and the network device may include hardware structures and / or software modules, with the aforementioned functions implemented in the form of hardware structures, software modules, or a combination of hardware structures and software modules. Whether a particular function is implemented in the form of hardware structures, software modules, or a combination of hardware structures and software modules depends on the specific application and design constraints of the technical solution.
[0261] Figure 16 is a schematic block diagram of a communication device according to an embodiment of the present application. The communication device includes a processor 310 and a communication interface 320, which can be interconnected via a bus 330. The communication device can be the first device or the second device described above.
[0262] Optionally, the communication device may further include a memory 340. The memory 340 includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or portable read-only memory (CD-ROM), and is used for related instructions and data.
[0263] The processor 310 may be one or more central processing units (CPUs). In the case where the processor 310 is a CPU, the CPU may be a single-core CPU or a multi-core CPU.
[0264] When the communication device is a first device, exemplarily, the communication interface 320 is used to perform the following operations: receive multiple data units; the processor 310 is used to perform the following operations: control the communication interface 320 to send first feedback information based on the number of erroneous data units received in error among the multiple data units and a first threshold.
[0265] When the communication apparatus is a second device, illustratively, the communication interface 320 is configured to perform the following operations: sending multiple data units; and the processor 310 is configured to perform the following operations: determining an erroneous data unit that needs to be retransmitted according to the first feedback information.
[0266] The above contents are described as examples only. The communication device is the first device or the second device, which is responsible for executing the methods or steps related to the first device or the second device in the above method embodiments.
[0267] The above description is only an exemplary description, and for specific details, please refer to the contents shown in the above method embodiment.
[0268] It should be noted that the device embodiment shown in FIG16 can be used to implement the content described in FIG6. The specific execution steps and methods of the device shown in FIG16 can refer to the content described in the method embodiment corresponding to FIG6. The device embodiment shown in FIG16 can also be used to implement the content described in FIG15. The specific execution steps and methods of the device shown in FIG16 can refer to the content described in the method embodiment corresponding to FIG15.
[0269] Figure 17 is a schematic block diagram of another communication device according to an embodiment of the present application. The communication device may be a first device or a second device, or a chip or module in the first device or the second device, for implementing the method according to the above embodiment.
[0270] The communication device includes an interface unit 410 and a processing unit 420. The interface unit 410 may include a transmitting unit and a receiving unit. The transmitting unit is configured to execute a transmitting operation of the communication device, and the receiving unit is configured to execute a receiving operation of the communication device. For ease of description, the present embodiment combines the transmitting unit and the receiving unit into a single transceiver unit. This is described here as a unified description and will not be repeated later.
[0271] When the communication device is a first device, illustratively, the interface unit 410 may be configured to receive multiple data units, receive first indication information, receive second indication information, etc. The processing unit 420 is configured to execute steps involved in the first device, such as parsing data and determining the content of steps such as sending first feedback information. For example, the processing unit 420 is configured to control the interface unit 410 to send the first feedback information based on the number of error data units received in error among the multiple data units and a first threshold.
[0272] When the communication device is a second device, illustratively, the interface unit 410 may be configured to send multiple data units, send first indication information, send second indication information, etc. The processing unit 420 is configured to execute the steps of determining retransmission data, etc. involved in the second device.
[0273] The above contents are described as examples only. The communication device is the first device or the second device, which is responsible for executing the methods or steps related to the first device or the second device in the above method embodiments.
[0274] Optionally, the communication device may further include a storage unit 430, where the storage unit 430 is used to store a program or code for executing the aforementioned method.
[0275] It should be noted that the device embodiment shown in FIG17 can be used to implement the content described in FIG6 . The specific execution steps and methods of the device shown in FIG17 can refer to the content described in the method embodiment corresponding to FIG6 . The device embodiment shown in FIG17 can also be used to implement the content described in FIG15 . The specific execution steps and methods of the device shown in FIG17 can refer to the content described in the method embodiment corresponding to FIG15 .
[0276] It should be noted that the devices shown in Figures 16 and 17 may also be chips or chip systems, etc., without limitation. When the devices shown in Figures 16 and 17 are chips or chip systems, they can be used to implement the functions of terminal devices or network devices.
[0277] The present application also provides a chip, including a processor, for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes the methods in the above examples.
[0278] The present application also provides another chip, comprising: an input interface, an output interface, and a processor, wherein the input interface, the output interface, and the processor are connected via an internal connection path, and the processor is configured to execute code in a memory. When the code is executed, the processor is configured to execute the methods in the above examples. Optionally, the chip also includes a memory, which is configured to store computer programs or code.
[0279] The present application also provides a processor for coupling with a memory, and for executing the methods and functions involving a network device or a terminal device in any of the above embodiments.
[0280] The present application also provides a computer program product comprising instructions, and when the computer program product is run on a computer, the method of the aforementioned embodiment is implemented.
[0281] The present application also provides a computer program. When the computer program is executed in a computer, the method of the aforementioned embodiment is implemented.
[0282] The present application also provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a computer, the method described in the above embodiment is implemented.
[0283] Those skilled in the art will appreciate that the units and algorithm steps of each example 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 performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0284] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0285] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0286] The units described as separate components may or may not be physically separate, and 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 these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0287] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0288] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0289] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A communication method, characterized in that: include: receiving a plurality of data units; First feedback information is sent according to the number of erroneous data units received incorrectly among the multiple data units and a first threshold, where the first feedback information indicates that the erroneous data unit is received incorrectly.
2. The method according to claim 1, characterized in that The sending first feedback information according to the number of erroneous data units received with errors among the multiple data units and a first threshold includes: When the ratio of the number of the erroneous data units received with errors to the number of the multiple data units is greater than the first threshold, the first feedback information is sent.
3. The method according to claim 1, characterized in that The sending first feedback information according to the number of erroneous data units received with errors among the multiple data units and a first threshold includes: In a case where the number of erroneous data units received with errors is greater than the first threshold, the first feedback information is sent.
4. The method according to claim 2 or 3, characterized in that: The first threshold is indicated by packet header information corresponding to the multiple data units.
5. The method according to claim 2 or 3, characterized in that: The method further comprises: First indication information is received, where the first indication information is used to indicate the first threshold.
6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: receiving second indication information; The sending first feedback information according to the number of erroneous data units received with errors among the multiple data units and a first threshold includes: Based on the second indication information, it is determined that the first feedback information is sent according to the number of erroneous data units received in error among the multiple data units and the first threshold.
7. The method according to any one of claims 1 to 6, characterized in that The data unit is a transport block TB, a code block group CBG or a code block CB.
8. A communication device, characterized in that: include: An interface unit, configured to receive a plurality of data units; The processing unit is used to control the interface unit to send first feedback information according to the number of erroneous data units received incorrectly among the multiple data units and a first threshold, wherein the first feedback information indicates that the erroneous data unit is received incorrectly.
9. The device according to claim 8, characterized in that The processing unit is configured to control the interface unit to send first feedback information according to the number of error data units received in error among the multiple data units and a first threshold, including: The processing unit is configured to control the interface unit to send the first feedback information when a ratio of the number of erroneous data units received with errors to the number of the multiple data units is greater than the first threshold.
10. The device according to claim 8, characterized in that The processing unit is configured to control the interface unit to send first feedback information according to the number of error data units received in error among the multiple data units and a first threshold, including: The processing unit is configured to control the interface unit to send the first feedback information when the number of erroneous data units received with errors is greater than the first threshold.
11. The device according to claim 9 or 10, characterized in that The first threshold is indicated by packet header information corresponding to the multiple data units.
12. The device according to claim 9 or 10, characterized in that The interface unit is further used to receive first indication information, where the first indication information is used to indicate the first threshold.
13. The device according to any one of claims 8 to 12, characterized in that The interface unit is further used to receive second indication information; The processing unit is configured to control the interface unit to send first feedback information according to the number of error data units received in error among the multiple data units and a first threshold, including: The processing unit is used to determine, based on the second indication information, the number of erroneous data units received in error among the multiple data units and the first threshold value to control the interface unit to send the first feedback information.
14. The device according to any one of claims 8 to 13, characterized in that The data unit is a transport block TB, a code block group CBG or a code block CB.
15. A communication device, comprising a processor, wherein the processor is configured to cause the device to perform the method according to any one of claims 1 to 7 by executing a computer program or instruction, or by a logic circuit.
16. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program or instructions, and when the computer program or the instructions are executed, the method according to any one of claims 1 to 7 is executed.
17. A computer program product, characterized in that The invention comprises instructions, which, when being executed, enable the method according to any one of claims 1 to 7 to be performed.
Citation Information
Patent Citations
Fault-tolerant data transmission method and communication device
CN120074761A
Data transmission method, device and system
CN108702254A
Feedback information generation method of hybrid automatic repeat and related product
CN108809502A
HARQ Feedback Scheme for 5G New Radio
US20180167171A1
Data transmission method, transmitting end device and receiving end device
WO2019109239A1