Communication method and device

By exchanging fault-tolerant transmission capabilities and data unit information between the sending and receiving ends, the retransmission process is optimized, solving the problem of insufficient fault tolerance in characteristic stream transmission and achieving more efficient data transmission and reduced latency.

CN121770675APending Publication Date: 2026-03-31HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411396612.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

In existing technologies, feature stream transmission based on AI encoding and decoding systems has limited fault tolerance when the communication channel quality is poor, resulting in increased retransmissions, low communication efficiency, and large latency.

Method used

The sending end instructs the receiving end on the fault-tolerant transmission capability and data unit information of N data streams. The receiving end then uses this information to determine whether retransmission is necessary and optimizes the retransmission process to reduce unnecessary retransmission overhead.

Benefits of technology

It improves the efficiency of feature stream transmission, reduces transmission latency, and enhances the overall performance of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121770675A_ABST
    Figure CN121770675A_ABST
Patent Text Reader

Abstract

The invention provides a communication method and device, relates to the technical field of communication, and is used for improving characteristic flow transmission efficiency and reducing transmission delay. The method comprises the steps that first information and second information are received, the first information is used for indicating fault-tolerant transmission capacity of N data streams, the second information is used for indicating that the N data streams correspond to data units, and N is a positive integer; a receiving data unit; and determining whether to retransmit part or all of the data units according to the first information and the second information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] With the continuous development of 5G technology, the data transmission capacity of communication services is increasing, and the requirements for transmission latency and efficiency are becoming more stringent, such as for high-definition video calls, intelligent robots, autonomous driving, or extended reality (XR) services.

[0003] Currently, feature stream transmission based on artificial intelligence (AI) encoding and decoding systems boasts high transmission efficiency. The key data features extracted using an AI source encoder are termed the feature stream. Specifically, the transmitting end processes the feature stream through channel coding and modulation before transmitting it to the receiving end via a wireless channel. Correspondingly, the receiving end demodulates and decodes the feature stream, then uses an AI source decoder to recover the source or directly executes relevant data processing tasks.

[0004] Feature stream transmission possesses certain fault tolerance characteristics, maintaining good decoding performance even when communication channel quality is poor or errors occur in the feature stream transmission portion. However, the fault tolerance capability of feature stream transmission is related to the characteristics of the information source and the encoding / decoding performance of the AI ​​information source, and its fault tolerance capability has an upper limit and may change. Therefore, currently, if a feature stream transmission error occurs or decoding fails, the sending end needs to retransmit multiple times until the receiving end decodes correctly, resulting in low communication efficiency and significant transmission delay. Summary of the Invention

[0005] This application provides a communication method and apparatus for improving the transmission efficiency of feature streams and reducing transmission latency.

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

[0007] In a first aspect, embodiments of this application provide a communication method that can be applied to a receiving end of data transmission, such as a network device or terminal, a communication module / processing module in the network device or terminal, circuits or chips responsible for communication functions in the network device or terminal (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip containing a modem core or a system-in-package (SIP) chip), and circuits or chips responsible for processing functions in the network device or terminal (such as a graphics processing unit (GPU), an artificial intelligence (AI) processor, or an application-specific integrated circuit (ASIC)). For example, the method is applied to a network device or terminal. The method includes: receiving first information and second information, where the first information indicates the fault-tolerant transmission capability of N data streams, and the second information indicates that the N data streams correspond to data units, where N is a positive integer; receiving data units; and determining whether to retransmit some or all of the data units based on the first information and the second information.

[0008] Using the above method, during data stream transmission, the sending end can indicate to the receiving end the fault-tolerant transmission capability corresponding to the data stream to be sent, as well as the data unit corresponding to the data stream. After receiving the data stream, the receiving end can determine whether retransmission is needed based on the indicated fault-tolerant transmission capability. By utilizing the fault-tolerant characteristics of data stream transmission, unnecessary retransmission overhead can be avoided, retransmission latency can be reduced, and transmission efficiency can be improved.

[0009] It should be noted that the data stream mentioned in this application can be replaced with feature stream, data feature stream, or feature information, etc., referring to the feature information corresponding to the source obtained by the sending end extracting key features of the source through data processing algorithms such as AI when transmitting source data such as images, voice, or video. This application does not limit the name of this data transmission method.

[0010] In one possible design, determining whether to retransmit some or all of the data units based on the first information and the second information includes: determining the data units to be retransmitted from the data units based on the first information and the second information.

[0011] In the above embodiments, the receiving end can obtain fault-tolerant transmission capability based on the first information sent, and determine the data unit receiving the data stream based on the second information, thereby determining which data units in the data unit need to be retransmitted, minimizing unnecessary retransmission overhead and improving transmission efficiency.

[0012] In one possible design, fault-tolerant transmission capability is indicated by a first threshold, which is the maximum value of the ratio of the number of data streams with transmission errors in the N data streams to N.

[0013] In the above embodiments, the sending end can indicate the fault-tolerant transmission capability by the maximum allowable transmission error ratio in the data stream, so that the receiving end can use the transmission error ratio indicated by the first threshold as the judgment threshold for whether to retransmit, which can reduce retransmission overhead and improve transmission efficiency.

[0014] In one possible design, determining whether to retransmit some or all of the data units based on the first information and the second information includes: if M of the N data streams are transmitted incorrectly, and M / N is less than or equal to the first threshold, determining not to retransmit the data units; M is a positive integer and M is less than or equal to N.

[0015] In the above implementation, the receiving end obtains the ratio of actual transmission errors, such as M / N, based on the number of data streams with actual transmission errors in N data streams. This ratio is then compared with the maximum allowable ratio of transmission errors indicated by the first information, i.e., the first threshold. If the ratio of actual transmission errors is lower than or equal to the first threshold, it is determined that the actual transmission situation meets the required fault-tolerant transmission capability, and retransmission is not required. This reduces retransmission overhead, transmission latency, and transmission efficiency.

[0016] In one possible design, determining whether to retransmit part or all of the data units based on the first information and the second information includes: if M of the N data streams are transmitted incorrectly, and M / N is greater than the first threshold, determining to retransmit the first data unit; wherein the first data unit corresponds to i of the M data streams, M and i are positive integers, i is less than or equal to M, and M is less than or equal to N.

[0017] In the above implementation, the receiving end obtains the ratio of actual transmission errors, such as M / N, based on the number of data streams with actual transmission errors in N data streams. This ratio is then compared with the maximum allowable ratio of transmission errors indicated by the first information, i.e., the first threshold. If the ratio of actual transmission errors is higher than the first threshold, it is determined that the actual transmission situation does not meet the required fault-tolerant transmission capability, and retransmission is required. If only some data units corresponding to the previously transmitted data streams with transmission errors need to be retransmitted, the retransmission overhead can be reduced to a certain extent, transmission latency can be reduced, and transmission efficiency can be improved in scenarios where retransmission is required.

[0018] In one possible design, fault-tolerant transmission capability is indicated by a first mode, which indicates the data stream among the N data streams that allows and / or does not allow the transmission of errors.

[0019] In the above embodiments, the sending end can indicate the fault-tolerant transmission capability by indicating which data streams among the N data streams are allowed to transmit errors and / or are not allowed to transmit errors. Thus, the receiving end can use the indication of the first mode as a criterion for whether to retransmit, thereby reducing retransmission overhead and improving transmission efficiency.

[0020] In one possible design, determining whether to retransmit some or all of the data units based on the first information and the second information includes: in the case of a transmission error in the first data stream indicated by the fault-tolerant transmission capability, determining to retransmit a second data unit, the second data unit corresponding to the first data stream.

[0021] In the above implementation, the receiving end determines whether a data stream with actual transmission errors occurs based on the first mode and the N data streams. If a data stream indicated by the first mode as not allowed to transmit errors is transmitted incorrectly, such as the first data stream, then retransmission is required. Conversely, if all data streams indicated by the first mode as not allowed to transmit errors are transmitted correctly, then retransmission is not required. In scenarios where retransmission is determined, only a portion of the data units corresponding to the previously transmitted erroneous data streams need to be retransmitted, which reduces retransmission overhead, transmission latency, and improves transmission efficiency.

[0022] In one possible design, the first information is also used to indicate the data recovery quality of the N data streams under the fault-tolerant transmission capability.

[0023] In the above embodiments, the first information can also indicate the data recovery quality corresponding to the fault-tolerant transmission capability, that is, the size of the data recovery quality that the receiving end can achieve by performing data recovery under the fault-tolerant transmission capability indicated by the first information. Thus, the receiving end can flexibly select the actual fault-tolerant transmission requirements according to the indicated data recovery quality. For example, it can select the fault-tolerant transmission capability that meets the business requirements according to the data recovery quality required by the business.

[0024] In one possible design, the second information includes a preset identifier, which is used to indicate the first or last data unit corresponding to the N data streams.

[0025] In the above embodiments, the transmitting end can indicate the first or last data unit corresponding to the N data streams to the receiving end through a preset identifier, so that the receiving end can determine the start or end position of receiving the N data streams according to the preset identifier. Optionally, the receiving end can distinguish different data stream groups according to the preset identifier and perform decoding and retransmission indication on a data stream group basis to improve communication efficiency.

[0026] In one possible design, the logical channel or group of logical channels used to transmit the N data streams has fault-tolerant transmission capability.

[0027] Secondly, this method can be applied to the sending end of data transmission, such as a terminal or network device, like an access network device, a module (e.g., a circuit, chip, or chip system) within the access network device, or a logical node, logical module, or software that can implement all or part of the functions of the access network device. For example, taking the application of this method to a terminal or network device as an example, the method includes: sending first information and second information, where the first information indicates the fault-tolerant transmission capability of N data streams, and the second information indicates that the N data streams correspond to data units, where N is a positive integer; and sending the data units corresponding to the N data streams.

[0028] In one possible design, fault-tolerant transmission capability is indicated by a first threshold, which is the maximum value of the ratio of the number of data streams with transmission errors in the N data streams to N.

[0029] In one possible design, fault-tolerant transmission capability is indicated by a first mode, which indicates the data stream among the N data streams that allows and / or does not allow the transmission of errors.

[0030] In one possible design, the first information is also used to indicate the data recovery quality of the N data streams under the fault-tolerant transmission capability.

[0031] In one possible design, the second information includes a preset identifier, which is used to indicate the first or last data unit corresponding to the N data streams.

[0032] In one possible design, the logical channel or group of logical channels used to transmit the N data streams has fault-tolerant transmission capability.

[0033] Thirdly, this application provides a communication device that has the functions of the first aspect described above. For example, the communication device includes modules, units, or means that perform the operations involved in the first aspect. These modules, units, or means can be implemented by software, hardware, or a combination of software and hardware.

[0034] Fourthly, this application provides a communication device that has the functions of the second aspect above. For example, the communication device includes modules, units, or means that perform the operations involved in the second aspect above. These modules, units, or means can be implemented by software, hardware, or a combination of software and hardware.

[0035] Fifthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the first aspect. The one or more processors can execute the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the first aspect. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.

[0036] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.

[0037] In one possible design, the communication device may also include the memory.

[0038] The aforementioned communication device may be a terminal, or a communication / processing module in the terminal, or a chip in the terminal responsible for communication functions such as a modem chip (also known as a baseband chip) or a SoC or SIP chip containing a modem module, or a circuit or chip in the terminal responsible for processing functions (such as a GPU, AI processor, or ASIC).

[0039] Sixthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the second aspect above. The one or more processors are executable to carry out the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the second aspect above. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.

[0040] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.

[0041] In one possible design, the communication device may also include the memory.

[0042] The aforementioned communication device may be a terminal, or a communication / processing module in the terminal, or a chip in the terminal responsible for communication functions such as a modem chip (also known as a baseband chip) or a SoC or SIP chip containing a modem module, or a circuit or chip in the terminal responsible for processing functions (such as a GPU, AI processor, or ASIC).

[0043] In a seventh aspect, this application provides a communication system, which includes a data transmission receiver in any of the possible designs in the first aspect, and a data transmission transmitter in any of the possible designs in the second aspect.

[0044] Eighthly, this application provides a computer-readable storage medium storing computer-readable instructions that, when read and executed by a computer, cause the computer to perform any of the possible designs in the first to second aspects described above.

[0045] Ninthly, this application provides a computer program product that, when read and executed by a computer, causes the computer to perform any of the possible designs in the first to second aspects described above.

[0046] The technical effects of any of the possible implementations of aspects two through nine can be found in the technical effects of the different possible implementations of aspect one above, and will not be repeated here.

[0047] Understandably, provided that the solutions do not contradict each other, the solutions in the above aspects can be combined. Attached Figure Description

[0048] Figure 1 – Figure 3 This is a schematic diagram of the architecture of the communication system provided in the embodiments of this application;

[0049] Figure 4 A flowchart illustrating the communication method provided in an embodiment of this application;

[0050] Figure 5 – Figure 7 A schematic diagram of the feature stream transmission process provided in an embodiment of this application;

[0051] Figure 8 This is a schematic diagram illustrating layer-by-layer data packet processing as provided in an embodiment of this application;

[0052] Figure 9 A schematic diagram of the architecture of a communication device provided in an embodiment of this application;

[0053] Figure 10 This is a schematic diagram of the architecture of a terminal provided in an embodiment of this application. Detailed Implementation

[0054] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0055] First, the implementation scenarios of the embodiments of this application will be described with reference to the accompanying drawings.

[0056] The methods provided in this application can be applied to various communication systems, including but not limited to: non-terrestrial networks (NTN) communication systems, narrowband Internet of Things (NB-IoT) systems, long term evolution (LTE) systems, 5G mobile communication systems, and future mobile communication systems.

[0057] Figure 1 This is a schematic diagram illustrating one possible, non-limiting system. For example... Figure 1 As shown, the communication system 10 includes a radio access network (RAN) 100 and a core network (CN) 200. RAN 100 includes at least one RAN node (e.g., ...). Figure 1 110a and 110b (collectively referred to as 110) and at least one terminal (such as Figure 1 RAN 100, denoted as RAN 120a-120j, is collectively referred to as RAN 120. RAN 100 may also include other RAN nodes, such as wireless relay equipment and / or wireless backhaul equipment. Figure 1 (Not shown in the image). Terminal 120 is connected to RAN node 110 wirelessly. RAN node 110 is connected to core network 200 wirelessly or via wired connection. The core network equipment in core network 200 and RAN node 110 in RAN 100 can be different physical devices, or they can be the same physical device integrating core network logical functions and radio access network logical functions.

[0058] RAN 100 can be a cellular system related to the 3rd Generation Partnership Project (3GPP), such as 4G, 5G mobile communication systems, or future-oriented evolution systems. RAN 100 can also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. RAN 100 can also be a communication system that integrates two or more of the above systems.

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

[0060] In one possible scenario, a RAN node can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a base station in a future mobile communication system, or an access node in a WiFi system, etc. Figure 1 110a), micro base stations or indoor stations (such as Figure 1 The RAN node can be a relay node or donor node (as described in section 110b), or a wireless controller in a CRAN scenario. Optionally, the RAN node can also be a server, wearable device, vehicle, or in-vehicle equipment. For example, the access network equipment in vehicle-to-everything (V2X) technology can be a roadside unit (RSU). All or part of the functions of the RAN node in this application can also be implemented through software functions running on hardware, or through virtualization functions instantiated on a platform (e.g., a cloud platform). The RAN node can also be equipped with communication modules, circuits, or chips that perform corresponding communication functions. The RAN node can also be configured with program instructions for performing corresponding communication functions and corresponding program instructions. The RAN node in this application can also be a logical node, logical module, or software capable of implementing all or part of the RAN node functions.

[0061] In another possible scenario, multiple RAN nodes collaborate to assist the terminal in achieving wireless access, with different RAN nodes each implementing a portion of the base station's functions. For example, RAN nodes can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be set up separately or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio frequency equipment or radio frequency units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).

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

[0063] A terminal can be a device or module that accesses the aforementioned communication system and has corresponding communication functions. A terminal can also be called a terminal device, user equipment (UE), mobile station, mobile terminal, etc. Terminals can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminals can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, transportation vehicles with wireless communication capabilities, communication modules, etc. The embodiments of this application do not limit the device form of the terminal. A terminal typically contains a communication module, circuit, or chip that performs the corresponding communication function. The terminal can also be configured with program instructions for performing the corresponding communication function.

[0064] To support artificial intelligence (AI) technology in wireless networks, AI nodes may also be introduced into the network.

[0065] AI nodes can be deployed in one or more of the following locations within the communication system: access network nodes (RAN nodes), terminal devices, or core network devices. Alternatively, AI nodes can be deployed independently, for example, in a location other than any of the aforementioned devices, such as in the host or cloud server of an over-the-top (OTT) system. AI nodes can communicate with other devices in the communication system, which can be one or more of the following: network devices, terminal devices, or core network elements.

[0066] It is understood that this application does not limit the number of AI nodes. For example, when there are multiple AI nodes, these nodes can be divided based on function, such as different AI nodes being responsible for different functions.

[0067] It can also be understood that AI nodes can be independent devices, or they can be integrated into the same device to achieve different functions. Alternatively, they can be network elements in hardware devices, software functions running on dedicated hardware, or virtualization functions instantiated on a platform (e.g., a cloud platform). This application does not limit the specific form of the aforementioned AI nodes.

[0068] AI nodes can be AI network elements or AI modules.

[0069] Figure 2 This is a schematic diagram of a possible application framework in a communication system. For example... Figure 2 As shown, network elements in a communication system are connected via interfaces (e.g., NG, Xn) or air interfaces. These network element nodes, such as core network equipment, access network nodes (RAN nodes), terminals, or one or more devices in operations administration and maintenance (OAM), are equipped with one or more AI modules (for clarity, ...). Figure 2 (Only one is shown in the image). An access network node can be a single RAN node or can include multiple RAN nodes, such as a CU and a DU. The CU and / or DU can also be equipped with one or more AI modules. The CU can also be split into CU-CP and CU-UP, and one or more AI modules can be set in the CU-CP and / or CU-UP.

[0070] AI modules are used to implement corresponding AI functions. AI modules deployed in different network elements can be the same or different. The models of AI modules can achieve different functions depending on the parameter configurations. The models of AI modules can be configured based on one or more of the following parameters: structural parameters (e.g., at least one of the following: number of neural network layers, neural network width, inter-layer connections, neuron weights, neuron activation function, or biases in the activation function), input parameters (e.g., the type and / or dimension of the input parameters), or output parameters (e.g., the type and / or dimension of the output parameters). The biases in the activation function can also be referred to as the biases of the neural network.

[0071] In one example, the neural network mentioned above can be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), or a generative adversarial network (GAN).

[0072] Deep Neural Networks (DNNs) are artificial neural network architectures with multiple layers of nonlinear transformation units stacked in a hierarchical structure to form deep computational models. Compared to shallow neural networks, deep neural networks have more hidden layers, allowing the network model to capture more complex data structures and higher-level abstract features.

[0073] A CNN is a deep neural network with a convolutional structure. A CNN contains a feature extractor consisting of convolutional layers and subsampling layers. This feature extractor can be viewed as a filter, and the convolution process can be seen as performing convolution between a trainable filter and an input image or a convolutional feature map.

[0074] RNN is a type of recursive neural network that takes sequence data as input, recursively moves along the direction of sequence evolution, and connects all nodes (recurrent units) in a chain-like manner.

[0075] GAN is a deep learning model. It consists of a generator and a discriminator, and is trained through adversarial learning. Its purpose is to estimate the potential distribution of data samples and generate new data samples.

[0076] An AI module can have one or more models. A model can infer an output, which includes one or more parameters. The learning, training, or inference processes of different models can be deployed on different nodes or devices, or they can be deployed on the same node or device.

[0077] Figure 3 This is a schematic diagram of a possible application framework in a communication system. For example... Figure 3 As shown, the communication system includes a RAN intelligent controller (RIC). For example, the RIC can be the aforementioned AI module, used to implement AI-related functions. RICs include near-real-time RICs (near-RT RICs) and non-real-time RICs (non-RT RICs). Non-real-time RICs primarily process non-real-time information, such as data that is not sensitive to latency, with latency in the order of seconds. Real-time RICs primarily process near-real-time information, such as data that is relatively sensitive to latency, with latency in the order of tens of milliseconds.

[0078] Near real-time (NRT) RICs are used for model training and inference. For example, they are used to train AI models and then use those models for inference. NRT RICs can obtain network-side and / or terminal-side information from RAN nodes (e.g., CUs, CU-CPs, CU-UPs, DUs, and / or RUs) and / or terminals. This information can be used as training data or inference data. NRT RICs can deliver inference results to RAN nodes and / or terminals. Inference results can be exchanged between CUs and DUs, and / or between DUs and RUs. For example, a NRT RIC delivers an inference result to a DU, which then forwards it to an RU.

[0079] Non-real-time RICs are also used for model training and inference. For example, they are used to train AI models and then use those models for inference. Non-real-time RICs can obtain network-side and / or terminal-side information from RAN nodes (e.g., CUs, CU-CPs, CU-UPs, DUs, and / or RUs) and / or terminals. This information can be used as training data or inference data, and the inference results can be delivered to RAN nodes and / or terminals. Inference results can be exchanged between CUs and DUs, and / or between DUs and RUs; for example, a non-real-time RIC delivers inference results to a DU, which then forwards them to an RU.

[0080] Near real-time RICs and non-real-time RICs can also be configured as separate network elements. Near real-time RICs and non-real-time RICs can also be part of other devices. For example, near real-time RICs can be set in RAN nodes (e.g., CU, DU), while non-real-time RICs can be set in OAM, cloud servers, core network devices, or other network devices.

[0081] It should be noted that, Figures 1 to 3 The functions of other network elements included can be found in the relevant descriptions in conventional technologies, and will not be repeated here. Figures 1 to 3 The network architecture shown is for illustrative purposes only and is not intended to limit the technical solutions of this application. Those skilled in the art should understand that other network elements or devices may be included in the specific implementation, and the number of access network devices, terminal devices, and / or core network devices may be determined according to specific needs.

[0082] Optional, Figures 1 to 3 Each network element shown can be a device, a functional module within a device, or a logical functional unit. It is understood that the aforementioned functions can be network components in hardware devices, such as communication chips in mobile phones, software functions running on dedicated hardware, or virtualization functions instantiated on a platform (e.g., a cloud platform).

[0083] Understandably, the above Figures 1 to 3 In a communication system, devices or network elements can communicate directly or through forwarding from other devices. This application does not specifically limit this.

[0084] Understandably, the above Figures 1 to 3 This is merely an illustrative diagram and does not constitute a limitation on the applicable scenarios of the technical solutions provided in this application. Those skilled in the art should understand that, in specific implementation processes, the communication system may include, for example, […]. Figures 1 to 3The number of devices or network elements shown may be fewer, or the communication system may include other devices or other network elements, and the number of devices or network elements in the communication system may be determined according to specific needs.

[0085] It should be noted that the message names between network elements or the names of parameters in the messages in the following embodiments of this application are just examples. Other names may be used in the specific implementation. This application does not limit them in this respect.

[0086] It is understood that some or all of the steps in the embodiments of this application are merely examples, and other steps or variations thereof may also be performed in the embodiments of this application. Furthermore, the steps may be performed in different orders as presented in the embodiments of this application, and it is not necessary to perform all the steps in the embodiments of this application.

[0087] In this application, "sending information" can be understood as one device sending information to another device, or it can also be understood as one logical module within a device sending information to another logical module. For example, "access network device sending information" can be understood as the access network device sending information to another device (such as a terminal), or it can be understood as logical module 1 in the access network device sending information to logical module 2 in the access network device.

[0088] In this application, "receiving information" can be understood as one device receiving information from another device, or it can also be understood as a logical module within a device receiving information from another logical module. For example, "access network device receiving information" can be understood as the access network device receiving information from another device (such as a terminal), or it can be understood as logical module 1 in the access network device receiving information from logical module 2 in the access network device.

[0089] In this application, phrases such as "sending information to... (e.g., a terminal)" or related illustrations in the accompanying drawings can be understood as indicating that the destination of the information is a terminal. This can include sending information directly or indirectly to a terminal. Similarly, phrases such as "receiving information from... (e.g., a terminal)," "receiving information from... (e.g., a terminal)," or "receiving information sent by (e.g., a terminal)," or related illustrations in the accompanying drawings, can be understood as indicating that the source of the information is a terminal. This can include receiving information directly or indirectly from a terminal. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be interpreted similarly and will not be elaborated further here.

[0090] This application can be applied to scenarios involving feature stream transmission.

[0091] Feature stream: When transmitting information source data such as images, voice or video, the sending end extracts the key features of the information source through data processing algorithms such as AI, and obtains the feature information corresponding to the information source.

[0092] For example, the sending end performs feature extraction based on an AI source encoder for specific source segments, such as audio clips or specific video frames. The extracted feature information is typically multiple floating-point numbers, which are divided into N groups, each group constituting a feature stream. N feature streams can be called a feature stream group, corresponding to a video frame or audio frame. Here, N is a positive integer.

[0093] Feature stream group: All feature streams obtained by source coding of a source coding unit (such as a video frame or a speech frame).

[0094] Optionally, the grouping method for multiple floating-point numbers in the feature information can be determined by the specific feature extraction scheme. For details, please refer to the relevant technical descriptions. This application does not limit this.

[0095] A feature stream group can include N feature streams, where each N feature stream is the feature information corresponding to a video frame or a speech frame.

[0096] Specifically, the transmitting end processes the feature stream through channel coding, modulation, and other methods before transmitting it to the receiving end via a wireless channel. Correspondingly, the receiving end demodulates and decodes the feature stream, then uses an AI source decoder to recover the source or directly performs related data processing tasks.

[0097] It should be noted that the feature stream described in this application may also be referred to as a data stream, a data feature stream, or feature information, etc., and a feature stream group may also be referred to as a data stream group, etc. This application does not limit the name of this data transmission method.

[0098] Currently, in feature stream transmission, if a transmission error or decoding failure occurs, the sending end needs to retransmit multiple times until the receiving end decodes correctly, resulting in low communication efficiency and significant transmission delay. This application provides a communication method and apparatus that utilizes the fault-tolerance capabilities of feature stream transmission. By exchanging the fault-tolerance capabilities of the current feature stream transmission between the sending and receiving ends, the receiving end can determine whether to retransmit the feature stream with transmission errors based on the fault-tolerance capabilities and determine the minimum transmission unit required for retransmission. This improves the efficiency of feature stream transmission and reduces transmission delay.

[0099] The communication method and apparatus provided in this application will be further described below with reference to the accompanying drawings. It is understood that this application uses network devices and terminals as examples of the execution subjects in the interactive illustration, but this application does not limit the execution subjects of the interactive illustration. For example, the method executed by the network device in this application can also be implemented by modules (e.g., circuits, chips, or chip systems) in the network device, or by logical nodes, logical modules, or software that can implement all or part of the functions of the network device; the method executed by the terminal in this application can also be implemented by the communication / processing module in the terminal or by circuits or chips (such as modem chips (also known as baseband chips), or SoC chips / SIP chips containing modem cores, or GPUs / AI processors / ASICs) in the terminal responsible for communication / processing functions.

[0100] like Figure 4 As shown, this application provides a communication method for interaction between a sender and a receiver in a feature stream transmission. For example, the sender can be a terminal or a network device, and correspondingly, the receiver can be a network device or a terminal. The communication method may include the following steps.

[0101] 401: The sending end sends first information and second information. The first information is used to indicate the fault-tolerant transmission capability of N data streams, and the second information is used to indicate the correspondence between the N data streams and data units. Correspondingly, the receiving end receives the first information and the second information.

[0102] Where N is a positive integer.

[0103] The first information is used to indicate the fault-tolerant transmission capability corresponding to the N data streams to be sent. The fault-tolerant transmission capability can indicate whether the data streams to be sent are allowed to transmit errors, and the upper limit threshold that the transmission errors can be allowed, that is, the worst case of the transmission errors that can be allowed.

[0104] In one implementation, the data stream can be carried on one or more data units for transmission, and the data unit can be a transport block (TB). That is, the sending end can carry the data stream on a TB basis and send it to the receiving end.

[0105] In one implementation, the transmitting end can transmit a TB in units of code blocks (CBs), meaning that a data unit can also be a CB. A TB can include multiple CBs.

[0106] Optionally, multiple CBs can be grouped into a code block group (CBG), meaning that a CBG can include multiple CBs. A TB can include one or more CBGs.

[0107] In other words, the second information can indicate that the N data streams correspond to one or more data units carrying the data streams. Specifically, the second information can be used to indicate information about the data units occupied by the N data streams.

[0108] For example, a data unit can be TB, with N data streams corresponding to 2 TB; a data unit can be CBG, with N data streams corresponding to 4 CBGs of 2 TB. As another example, a data unit can be CB, with N data streams corresponding to 8 CBs of 2 TB, where 2 CBs form one CBG, meaning these N data streams correspond to 4 CBGs.

[0109] In one implementation, the second information may include a preset identifier, which is used to indicate the first or last data unit corresponding to the N data streams. That is, when the receiving end receives the second information, it can distinguish the starting or last data unit corresponding to the N data streams based on the preset identifier, thereby determining the transmission position of the N data streams. For example, the preset identifier can be 00, 000, 111, etc., without limitation.

[0110] 402: The sending end sends data units corresponding to N data streams. Correspondingly, the receiving end receives the data units.

[0111] As mentioned above, multiple data streams can form a data stream group.

[0112] For example, in the embodiments of this application, a data stream group consisting of N data streams is used as an example for description.

[0113] Optionally, transmitting a group of data streams may require multiple TBs, as described by the sender for N data streams.

[0114] Correspondingly, the receiving end receives the data units corresponding to the N data streams, including decoding the data units corresponding to the N data streams, so as to obtain the actual transmission status of the data units, such as whether the transmission is correct or incorrect.

[0115] In one implementation, the correctness of TB or CB transmission can be obtained using Cyclic Redundancy Check (CRC). To perform CRC, the sender can append an R-bit CRC checksum to the K-bit data to be sent before sending it to the receiver. Upon receiving the data, the receiver can verify its correctness by comparing the received data with the CRC checksum.

[0116] Optionally, this application only uses CRC verification as an example, and other verification methods may also be included. This application does not limit the verification method for the correctness of data stream transmission.

[0117] 403: The receiving end determines whether to retransmit some or all of the data units based on the first information and the second information.

[0118] Specifically, the receiving end can determine the fault-tolerant transmission capability corresponding to the N data streams based on the first information, and determine all data units occupied by the N data streams based on the second information.

[0119] The receiving end can determine whether to retransmit some or all of the data units corresponding to the N data streams based on the actual transmission status of the data units in step 402, combined with the fault-tolerant transmission capability and all data units occupied by the N data streams.

[0120] In one implementation, if the fault-tolerant transmission capability indicates that the N data streams are allowed to have some transmission errors, then the actual transmission performance of the N data streams is better than the upper limit threshold. If the actual transmission performance is better than the worst-case transmission performance that can be allowed for transmission errors, then the receiving end can correctly decode the data streams.

[0121] Conversely, if the actual transmission of the N data streams is worse than the upper limit threshold, such as the worst-case scenario of the allowable transmission errors, the receiving end cannot correctly decode the data streams and the sending end needs to retransmit them.

[0122] Therefore, in the embodiments of this application described above, the sending end indicates the fault-tolerant transmission capability corresponding to the data stream to be sent to the receiving end, such as... Figure 5 Step 1 is shown. Then, the transmitting end encodes the fault-tolerant data stream and transmits it to the receiving end via wireless signal (Step 2). The receiving end can receive and decode the data stream. Based on the fault-tolerant transmission capability and the actual transmission situation, the receiving end determines whether retransmission is needed, such as... Figure 5 Step 3 is shown. This avoids unnecessary retransmission overhead and improves transmission efficiency.

[0123] In one implementation, if the receiving end determines, based on fault-tolerant transmission capabilities and actual transmission conditions, that some data units need to be retransmitted, the receiving end can send a retransmission instruction to the sending end. For example... Figure 5 In step 4 shown, the receiving end can send information about the data units to be retransmitted to the sending end, such as the number or location of the data units to be retransmitted, indicating which TB, CBG or CB need to be retransmitted.

[0124] For example, when the receiver is a base station and the transmitter is a UE, taking the retransmission granularity as CBG as an example, the base station can schedule the UE to retransmit these CBGs by configuring the hybrid automatic repeat request (HARQ) process index number and CBG transmission information (CBGTI) in the downlink control information (DCI), such as indicating the CBG information to be retransmitted through the CBGTI field.

[0125] It should be noted that this application can be applied to data stream transmission scenarios between terminals and network devices, between terminals, or between network devices. The specific implementation steps may differ in different transmission scenarios, and it may not be necessary to execute all the steps in the embodiments of this application.

[0126] In one implementation, fault-tolerant transmission capability can be indicated by a first threshold, which is the maximum value of the ratio of the number of data streams allowed to transmit errors out of N data streams to N. That is, if the maximum number of data streams allowed to transmit errors out of N data streams is n, then the first threshold can be n / N. For example, the first threshold can be 10%, which means that 1 data stream out of 10 data streams is allowed to transmit errors; or the first threshold can be 20%, which means that 1 data stream out of 5 data streams is allowed to transmit errors, or 2 data streams out of 10 data streams are allowed to transmit errors, etc.

[0127] Optionally, the first information may indicate a first threshold, or the first information may include the first threshold.

[0128] In one implementation, multiple possible values ​​for the first threshold and the corresponding indices can be pre-configured.

[0129] For example, as shown in Table 1 below, the configuration information for the first threshold is the data stream transmission error ratio, and the index corresponding to the first threshold is the MaxErrorRatio field (this application does not limit the specific name of this field). Subsequently, in step 401, the first information may carry the MaxErrorRatio field to indicate a data stream transmission error ratio as shown in Table 1 below.

[0130] Table 1. Configuration information for the first threshold

[0131] MaxErrorRatio 00 01 10 11 Data stream transmission error rate 10% 20% 30% 40%

[0132] For example, if the MaxErrorRatio field in the first information indicates 00, then the maximum data stream transmission error rate for the N data streams is 10%; if the MaxErrorRatio field in the first information indicates 10, then the maximum data stream transmission error rate for the N data streams is 30%.

[0133] Furthermore, in one embodiment, the receiving end can determine the data unit to be retransmitted in the data unit based on the first information and the second information.

[0134] In this implementation, the receiving end determines whether to retransmit some or all of the data units based on the first information and the second information. Specifically, this may include: the receiving end determining, based on the actual transmission status of the N data streams, that if M of the N data streams are transmitted incorrectly, and M / N is less than or equal to a first threshold, the receiving end determines not to retransmit the data units. Here, M is a positive integer and M is less than or equal to N.

[0135] For example, if N is 10 and M is 1, meaning that 1 out of 10 data streams is transmitted incorrectly, the actual transmission error rate is 10%. If the first threshold indicated by the first information is 10%, then the receiving end determines not to retransmit.

[0136] Conversely, in one implementation, the receiving end determines, based on the actual transmission status of the N data streams, that if M of the N data streams are transmitted incorrectly, and M / N is greater than a first threshold, to retransmit some or all of the data units.

[0137] It should be understood that, in the embodiments of this application, the receiving end may agree, based on a comparison of the actual transmission error ratio of the data stream with a first threshold, that if the ratio is less than the first threshold, retransmission is not required; and if the ratio is greater than or equal to the first threshold, retransmission is required. Alternatively, it may agree that if the ratio is less than or equal to the first threshold, retransmission is not required; and if the ratio is greater than the first threshold, retransmission is required. This application does not impose specific limitations on this.

[0138] Alternatively, the receiving end can, within the indicated fault-tolerant transmission capability, select a retransmission method with fewer retransmission data units while improving transmission performance, thereby reducing the overhead of data retransmission. Specifically, the receiving end can determine the data units corresponding to the data stream that were actually transmitted incorrectly and retransmit them.

[0139] In one implementation, the data unit granularity of the retransmitted data at the receiving end can be TB, CBG, or CB, etc., and is not limited thereto. Among them, the retransmission overhead with CBG as the retransmission granularity is lower than the retransmission overhead with TB as the retransmission granularity; correspondingly, the retransmission overhead with CB as the retransmission granularity is lower than the retransmission overhead with CBG as the retransmission granularity.

[0140] For example, consider the receiving end determining to retransmit the first data unit. The first data unit corresponds to the i data streams out of M data streams, where M and i are positive integers, i is less than or equal to M, and M is less than or equal to N.

[0141] In other words, the receiving end does not need to retransmit all the data units corresponding to the aforementioned M data streams with transmission errors. Instead, it can retransmit the data units corresponding to the i data streams out of the M data streams.

[0142] Optional, i can be greater than or equal to This represents the floor function, with a first threshold of R. In other words, using data streams as the retransmission unit, the minimum number of retransmitted data streams can be...

[0143] For example, if 10 data streams are transmitted, and the fault tolerance transmission capability indicated by the first information is 10%, meaning that only one data stream is allowed to be transmitted incorrectly, but the actual transmission situation detected by the receiving end is that two data streams are transmitted incorrectly, then the sending end only needs to retransmit the data unit corresponding to one of the two data streams that were transmitted incorrectly, which can improve the data recovery performance.

[0144] Alternatively, when the initial transmission error rate of the data stream is high, the sender can appropriately increase the number of retransmission feature streams to avoid multiple retransmissions due to retransmission errors.

[0145] For example, if 10 data streams are transmitted, and the fault tolerance transmission capability indicated by the first information is 10%, meaning that only one data stream is allowed to be transmitted incorrectly, but the actual transmission situation detected by the receiving end is that four data streams are transmitted incorrectly, then the sending end can retransmit the data units corresponding to two of the four data streams that were transmitted incorrectly, in order to avoid retransmitting the errors again.

[0146] For example, such as Figure 6 As shown, taking feature stream transmission as an example, the retransmitted data unit is CBG. A feature stream group has 4 feature streams, which occupy 2 TB. Among them, 1 TB includes 2 CBGs, and 1 CBG includes 2 CBs.

[0147] Specifically, the number of CBs occupied by these four feature flows are 1, 2, 3, and 2, respectively.

[0148] like Figure 6As shown, the first feature flow in the feature flow group occupies 1 CB, which is CB0 of CBG0 of TB1. The second feature flow in the feature flow group occupies 2 CBs, which are CB1 of CBG0 of TB1 and CB2 of CBG1. The third feature flow in the feature flow group occupies 3 CBs, which are CB3 of CBG1 of TB1 and CB0 and CB1 of CBG0 of TB2. The fourth feature flow in the feature flow group occupies 2 CBs, which are CB2 and CB3 of CBG1 of TB2.

[0149] In one example, such as Figure 6 As shown, if the first information indicates that the maximum data stream transmission error ratio of the above-mentioned feature stream group is 25%, and the receiver determines that there is only one feature stream transmission error, for example, the third feature stream transmission error (such as the CB0 transmission error of CBG0 of TB2), then no retransmission is required.

[0150] In another example, such as Figure 7 As shown, if the receiving end determines that there are two feature stream transmission errors, such as the second feature stream and the third feature stream transmission errors, then according to the maximum data stream transmission error ratio, the sending end only needs to retransmit the data unit corresponding to one of the feature streams that has been transmitted incorrectly. For example, it can retransmit the data unit corresponding to the second feature stream or the data unit corresponding to the third feature stream.

[0151] One possible retransmission method is to select the CBG that caused the transmission errors of each feature stream, and prioritize the CBG of the feature stream with fewer erroneous CBGs to reduce retransmission overhead.

[0152] In the above example, such as Figure 7 As shown, for the second feature stream, there is 1 CBG transmission error; for the third feature stream, there are 2 CBG transmission errors. The sender can choose the feature stream with fewer CBG transmission errors for retransmission, that is, retransmit the CBG with transmission errors corresponding to the second feature stream. In this example, the second feature stream has fewer CBG transmission errors, so the receiver can instruct the sender to retransmit CBG0 of TB1.

[0153] In one implementation, in an embodiment of this application, the second information sent by the sending end to the receiving end can be used to indicate that the N feature stream groups correspond to the occupied data units, thereby enabling the receiving end to determine that it will receive the data units corresponding to the N feature streams.

[0154] For example, the second information includes a preset identifier, which is used to indicate the first or last data unit corresponding to N data streams in a data stream group. The receiving end can distinguish different data stream groups based on the preset identifier and perform decoding and retransmission indication on a data stream group basis.

[0155] like Figure 8 As shown, in a terminal or network device, during the process of data packets being passed from upper layers to lower layers, such as the Service Data Adaptation Protocol (SDAP) layer, Packet Data Convergence Protocol (PDCP) layer, Radio Link Control (RLC) layer, and Medium Access Control (MAC) layer, the lower layer data packets are parsed and re-added layer by layer, and encapsulated into Service Data Units (SDUs).

[0156] For example, Figure 8 The data packets n, n+1, and m shown represent data packets received by an SDAP layer entity from the application layer. The entity adds an SDAP header, encapsulates the data packets into an SDAP SDU, and then transmits them to the PDCP layer.

[0157] In the embodiments of this application, a data stream identifier (ID) corresponding to the data packet can be added to the header of each layer of data packets. Furthermore, when data packet segmentation and reassembly are involved, the data stream ID is updated accordingly. By combining the data stream IDs in the headers of each data packet at the MAC layer, the correspondence between each data stream and each CB can be obtained.

[0158] At the physical layer, data from a data stream can be populated across multiple bounding cells (CBs). For example, a data stream can occupy a maximum of [number] CBs. Where K is the bit length of a CB. Optionally, if the last CB occupied by a data stream is not filled, NULL bits can be padded at the end of the CB.

[0159] For example, the length K of CB can be 8448 or 3840 bits.

[0160] For example, a preset identifier can be added to the header of the first or last CB corresponding to the N data streams in the data stream group. For example, the preset identifier can be 00. Then, the number and position of the CBs occupied by the N data streams can be determined according to the preset identifier 00.

[0161] In one possible implementation, the second information can be used to indicate the correspondence between the feature streams in the feature stream group and the data units occupied by those feature streams.

[0162] For example, if the four feature flows in the aforementioned feature flow group occupy 1, 2, 3, and 2 CBs respectively, then the second information can also indicate the number of data units corresponding to the feature flow, or indicate the correspondence between the feature flow in the feature flow group and the data units occupied by that feature flow.

[0163] For example, the second information includes a data stream ID, which indicates the data stream corresponding to the CB.

[0164] For example, the second information may include the identifiers corresponding to the data streams in the N data stream groups, and the number of identifiers of the data streams represents the number of CBs occupied by the data stream.

[0165] For example, taking the location of a CB occupied by a feature flow group as an example, the feature flow ID can be set to the binary representation of the sequence number of each feature flow in the feature flow group, and the feature flow ID of each CB of the last feature flow in the feature flow group can be set to all 0s.

[0166] For example, if a feature stream group includes 4 feature streams, then the ID corresponding to the first feature stream can be 01, the ID of the second feature stream can be 10, the ID of the third feature stream can be 11, and the ID of the fourth feature stream can be 00. Since these 4 feature streams occupy a total of 8 consecutive CBs, and the number of CBs occupied by these 4 feature streams are 1, 2, 3, and 2 respectively, then the second information can indicate: the feature stream IDs of the corresponding 8 consecutive CBs, i.e., [01, 10, 10, 11, 11, 11, 00, 00].

[0167] In another example, a feature stream group includes 3 feature streams. The ID of the first feature stream can be 01, the ID of the second feature stream can be 10, and the ID of the third feature stream can be 00 or 11. If these 3 feature streams occupy 6 consecutive CBs, and the number of CBs occupied by these 3 feature streams are 1, 2, and 3 respectively, then the second information can be indicated as: [01, 10, 10, 11, 11, 11], or indicated as [01, 10, 10, 00, 00, 00].

[0168] For example, if a feature stream group includes 7 feature streams, then at least three bits are needed to indicate the ID of a feature stream. For example, the feature stream ID can be 001, 010, 011, 100, etc. The feature stream ID of each CB of the last feature stream in the feature stream group can be set to 000 or 111.

[0169] In another implementation, the fault-tolerant transmission capability indicated by the first information may be specifically indicated by a first mode, wherein the first mode may indicate the data streams among N data streams that are allowed to transmit errors and / or the data streams that are not allowed to transmit errors.

[0170] In other words, fault-tolerant transmission capability can be indicated by specifying the worst transmission error mode that a data stream group can tolerate.

[0171] One possible implementation can be represented by a bit sequence, such as the WorstErrorPattern sequence (this application does not limit the specific name of the sequence). In this sequence, a bit set to 0 can indicate that the data stream with the corresponding sequence number in the data stream group is allowed to transmit errors, and a bit set to 1 can indicate that the data stream is not allowed to transmit errors.

[0172] Optionally, when determining the WorstErrorPattern sequence, the sender can consider the importance of different data streams in the data stream group, i.e., their importance for source recovery. For example, the bits corresponding to the more important data streams in the data stream group can be set to 1, and the bits corresponding to the less important data streams can be set to 0.

[0173] For example, if a feature stream group includes 10 feature streams, and the corresponding WorstErrorPattern consists of 10 bits, such as 1101011110, then it means that among the 10 feature streams in this feature stream group, feature streams with sequence numbers 3, 5, and 10 are allowed to have transmission errors, and these three feature streams do not need to be retransmitted. Conversely, feature streams with other sequence numbers are not allowed to have transmission errors, and any transmission error in any of them requires retransmission.

[0174] Based on the above implementation method, the receiving end performs step 403, that is, the receiving end determines whether to retransmit part or all of the data units based on the actual transmission status of the N data streams and based on the first information and the second information.

[0175] Specifically, among N data streams, if all data streams that are not allowed to be transmitted due to fault tolerance are transmitted correctly, then no retransmission is required; if any data stream that is not allowed to be transmitted due to fault tolerance has a transmission error, then some or all of the data units corresponding to the data stream with the transmission error need to be retransmitted.

[0176] For example, if the first data stream, which is not allowed to be transmitted due to fault-tolerant transmission capability, is transmitted incorrectly, then it is determined to retransmit the second data unit, which corresponds to the first data stream.

[0177] For example, the receiving end can obtain the corresponding actual transmission pattern based on the actual transmission situation, such as using the ActualErrorPattern sequence (this application does not limit the specific name of the sequence). In this sequence, a bit set to 0 can indicate that the actual transmission of the data stream with the corresponding sequence number in the data stream group is incorrect, and a bit set to 1 can indicate that the actual transmission of the data stream with the corresponding sequence number in the data stream group is correct.

[0178] Specifically, if the bit positions set to 1 in the ActualErrorPattern sequence include all the bit positions set to 1 in the WorstErrorPattern, then the N data streams are successfully transmitted and do not need to be retransmitted.

[0179] For example, if the bit positions set to 1 in the ActualErrorPattern sequence do not include all the bit positions set to 1 in the WorstErrorPattern, then those data streams that are 1 in the WorstErrorPattern but 0 in the ActualErrorPattern need to be partially or completely retransmitted.

[0180] As mentioned above Figure 6 Taking the transmission of four feature streams as an example, the WorstErrorPattern indicated by the first information is 1001. The receiving end receives four feature streams and determines that the third feature stream is transmitted incorrectly, while the other feature streams are transmitted correctly. Therefore, the ActualErrorPattern can be obtained as 1101, and no retransmission is required.

[0181] In another example, the WorstErrorPattern indicated by the first information is 1011. The receiving end receives four feature streams and determines that the third feature stream was transmitted incorrectly, while the other feature streams were transmitted correctly. Therefore, the ActualErrorPattern is 1101. Since the first information indicates that the third feature stream is not allowed to be transmitted incorrectly, and this feature stream was actually transmitted incorrectly, potentially affecting decoding performance, the receiving end determines that the CBG corresponding to the third feature stream needs to be retransmitted. Figure 7 As shown, the third feature stream occupies two CBGs, namely CBG1 of TB1 and CBG0 of TB2. Therefore, CBG1 of TB1 and CBG0 of TB2 need to be retransmitted.

[0182] Specifically, the first mode includes at least one of the following: whether data streams in the data stream group are allowed to transmit errors, the sequence number of the data streams in the data stream group that are allowed to transmit errors, the sequence number of the data streams in the data stream group that are not allowed to transmit errors, the update of the sequence number of the data streams in the data stream group that are allowed to transmit errors relative to the preset mode, or the update of the sequence number of the data streams in the data stream group that are not allowed to transmit errors relative to the preset mode.

[0183] In one implementation, the sending end and the receiving end can pre-configure a set of candidate fault tolerance modes, and then use first information to indicate the selection of a first mode from the set of candidate fault tolerance modes.

[0184] The above indication method can be applied when the fault tolerance mode of the data stream transmitted by the transmitting and receiving ends has a large dimension but few types. For example, if there are many data streams in a data stream group but few types of fault tolerance modes, a set of fault tolerance modes can be pre-configured, and then the first mode can be indicated by the first information.

[0185] In another implementation, the sending end and the receiving end can be pre-configured with preset modes, and the current fault tolerance mode can be updated relative to the preset mode through the first information. For example, a data stream can be updated from allowing error transmission to not allowing error transmission, or a data stream can be updated from not allowing error transmission to allowing error transmission.

[0186] The above indication method can be applied when the fault tolerance mode of the data stream transmitted by the transmitting and receiving ends changes little over time. The first information can indicate the update information of the current fault tolerance mode relative to the preset mode.

[0187] In one implementation, the first information can also be used to indicate the data recovery quality of the N data streams under fault-tolerant transmission capability. That is, the first information can indicate to the receiving end the data recovery status of the N data streams under the fault-tolerant transmission capability indicated by the first information. For example, different data can be used to represent good or poor data recovery status, which can be quantified by the parameter of data recovery quality. Thus, the receiving end can, according to actual business needs, strive to ensure that the data recovery quality meets business requirements.

[0188] In one implementation, multiple possible values ​​for data recovery quality, along with corresponding indexes, can be pre-configured.

[0189] For example, as shown in Table 2 below, the data recovery quality configuration information has an index corresponding to the Quality field (this application does not limit the specific name of this field). Subsequently, in step 401, the first information may carry this Quality field to indicate one of the data recovery qualities shown in Table 2 below.

[0190] Table 2. Configuration Information for Data Recovery Quality

[0191] Quality 000 001 010 011 100 101 110 111 Data recovery quality 60% 65% 70% 75% 80% 85% 90% 95%

[0192] For example, if the Quality field in the first information indicates 000, then the data recovery quality of the N data streams under fault-tolerant transmission capability is 6%; if the Quality field in the first information indicates 100, then the data recovery quality of the N data streams under fault-tolerant transmission capability is 80%.

[0193] In one implementation, the terminal can send multiple sets of fault-tolerant transmission capabilities and corresponding data recovery quality to the base station, so that the base station can flexibly select, for example, select the fault-tolerant transmission capability that meets the service requirements based on the data recovery quality required by the service.

[0194] For example, the terminal can indicate a first threshold and the corresponding data recovery quality to the base station through the first information, such as the [MaxErrorRatio field, Quality field], which are [00, 111] and [01, 101], respectively. Combined with Table 1 and Table 2, it indicates that when the feature stream transmission error ratio is 10%, the data recovery quality can reach 95%, and when the feature stream transmission error ratio is 20%, the data recovery quality can reach 85%.

[0195] Similarly, in an implementation where fault-tolerant transmission capability is indicated by a first mode, the first information can also be used to indicate the data recovery quality of the N data streams under the first mode. For example, the terminal can send multiple sets of fault-tolerant transmission modes and data recovery quality to the base station, including fields such as WorstErrorPattern and Quality.

[0196] In one implementation, the logical channel or logical channel group used to transmit the N data streams has fault-tolerant transmission capability, or the logical channel or logical channel group of the N data streams has enabled fault-tolerant transmission capability.

[0197] Optionally, when establishing a communication connection, the sending end may report to the receiving end whether it has fault-tolerant transmission capability, or whether it should open the logical channel or logical channel group (LCG) corresponding to the N data streams.

[0198] For example, in a scenario where the sender is a UE and the receiver is a base station, when the UE establishes a service connection with the base station, the UE can send a message to the base station indicating whether it has fault-tolerant transmission capability, or whether to enable or disable fault-tolerant transmission capability.

[0199] Optionally, a service with fault-tolerant transmission capabilities can occupy an LCG (e.g., exclusively occupy an LCG).

[0200] For example, in a scenario where the sender is a UE and the receiver is a base station, the base station can configure whether each LCG has fault-tolerant transmission capability based on the UE's fault-tolerant transmission capability and the current service's requirements for fault-tolerant transmission.

[0201] In one possible implementation, the UE can add an ErrorTolerantCapability field (this application does not limit the specific name of the field) to the radio resource control (RRC) signaling. This field includes 1 bit, where a bit of 0 indicates that the logical channel corresponding to the transmission of the N data streams does not have fault-tolerant transmission capability; and a bit of 1 indicates that it has fault-tolerant transmission capability.

[0202] In another possible implementation, the UE can add an ErrorTolerantTransmission field (this application does not limit the specific name of the field) to the RRC signaling, which includes i bits, where i can be the number of LCGs. That is, the ErrorTolerantTransmission field can be used to indicate whether one or more LCGs (e.g., each LCG) among the i LCGs have fault-tolerant transmission capability enabled.

[0203] For example, setting a bit to 0 in one of the i bits can indicate that the corresponding LCG does not have fault-tolerant transmission capability enabled; setting it to 1 can indicate that the LCG has fault-tolerant transmission capability enabled.

[0204] In one implementation, the first information may be sent periodically, such as once every TB of data transmitted.

[0205] Alternatively, the first information can be triggered, such as when the sending end first sends a data stream to the receiving end, the first information can be sent to the receiving end to indicate the fault-tolerant transmission capability, or when the fault-tolerant transmission capability of the sending end changes, the updated fault-tolerant transmission capability can be sent to the receiving end.

[0206] In one embodiment, in a scenario where the sending end is a terminal and the receiving end is a network device, the terminal sends first information to the network device. The first information can be carried in physical layer signaling such as uplink control information (UCI), or in higher layer signaling such as MAC control element (MAC CE) or RRC, or in a combination of the above signaling.

[0207] For example, the first information can be sent via UCI in the physical uplink control channel (PUCCH) or physical uplink share channel (PUSCH), or via MAC CE and buffer status report (BSR) carried on the PUSCH.

[0208] The above mainly describes the solution provided in this application from the perspective of interaction between various network nodes. Accordingly, this application also provides a communication device, which can be one of the communication devices or nodes in the above method embodiments, or a component such as a chip that can be used in the above communication devices or nodes.

[0209] It is understood that, in order to achieve the aforementioned functions, the communication device includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the unit and algorithm operations of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for specific applications, but such implementation should not be considered beyond the scope of this application.

[0210] It should be understood that the above description is merely an example illustrating the interactions between various network element nodes. In reality, the processing performed by the aforementioned communication devices or nodes is not limited to being performed by a single network element.

[0211] This application can divide the communication device into functional modules based on the above method examples. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into one module or unit. These modules or units can be implemented in hardware or as software functional modules. It is understood that the module or unit division in this application is illustrative and represents only one logical functional division; in actual implementation, other division methods may be used.

[0212] In addition, this application also provides a communication device. Figure 9 A possible exemplary block diagram of the communication device involved in an embodiment of this application is shown. For example... Figure 9 As shown, the communication device 900 may include modules or units for implementing the methods described above.

[0213] In one possible design, the communication device 900 includes a communication unit 901 and a processing unit 902. Optionally, the communication device 900 may also include a storage unit 903 for storing device program code and / or data.

[0214] The communication device 900 can be the receiving end device or apparatus described in the above embodiments. For example, the receiving end can be a network device or terminal, or a communication module / processing module in a network device or terminal, or a circuit or chip in a network device or terminal that is responsible for communication functions, etc.

[0215] For example, in one embodiment, the communication unit 901 is used to: receive first information and second information, wherein the first information is used to indicate the fault-tolerant transmission capability of N data streams, and the second information is used to indicate that the N data streams correspond to data units, where N is a positive integer.

[0216] The communication unit 901 is also used to receive the data unit.

[0217] The processing unit 902 is configured to: determine whether to retransmit part or all of the data units based on the first information and the second information.

[0218] In one possible design, the processing unit 902 is used to: determine the data units to be retransmitted in the data units based on the first information and the second information.

[0219] In one possible design, fault-tolerant transmission capability is indicated by a first threshold, which is the maximum value of the ratio of the number of data streams with transmission errors in the N data streams to N.

[0220] In one possible design, the processing unit 902 is configured to: if M of the N data streams are transmitted incorrectly, and M / N is less than or equal to the first threshold, determine that the data unit will not be retransmitted; M is a positive integer and M is less than or equal to N.

[0221] In one possible design, the processing unit 902 is used to: if M of the N data streams are transmitted incorrectly, and M / N is greater than the first threshold, determine to retransmit the first data unit; wherein the first data unit corresponds to i of the M data streams, M and i are positive integers, i is less than or equal to M, and M is less than or equal to N.

[0222] In one possible design, the processing unit 902 is configured to: determine, in the case of a transmission error in the first data stream (indicated by the fault-tolerant transmission capability) that is not allowed to transmit errors, to retransmit a second data unit, the second data unit corresponding to the first data stream.

[0223] In one possible design, fault-tolerant transmission capability is indicated by a first mode, which indicates the data stream among the N data streams that allows and / or does not allow the transmission of errors.

[0224] In one possible design, the first information is also used to indicate the data recovery quality of the N data streams under the fault-tolerant transmission capability.

[0225] In one possible design, the second information includes a preset identifier, which is used to indicate the first or last data unit corresponding to the N data streams.

[0226] In one possible design, the logical channel or group of logical channels used to transmit the N data streams has fault-tolerant transmission capability.

[0227] In addition, the communication device 900 can be the transmitting end device or device described in the above embodiments. For example, the receiving end can be a network device or terminal, or a communication module / processing module in a network device or terminal, or a circuit or chip in a network device or terminal that is responsible for communication functions, etc.

[0228] For example, in one embodiment, the communication unit 901 is used to: send first information and second information, wherein the first information is used to indicate the fault-tolerant transmission capability of N data streams, and the second information is used to indicate that the N data streams correspond to data units, where N is a positive integer.

[0229] Communication unit 901 is also used to: send data units corresponding to the N data streams.

[0230] In one possible design, fault-tolerant transmission capability is indicated by a first threshold, which is the maximum value of the ratio of the number of data streams with transmission errors in the N data streams to N.

[0231] In one possible design, fault-tolerant transmission capability is indicated by a first mode, which indicates the data stream among the N data streams that allows and / or does not allow the transmission of errors.

[0232] In one possible design, the first information is also used to indicate the data recovery quality of the N data streams under the fault-tolerant transmission capability.

[0233] In one possible design, the second information includes a preset identifier, which is used to indicate the first or last data unit corresponding to the N data streams.

[0234] In one possible design, the logical channel or group of logical channels used to transmit the N data streams has fault-tolerant transmission capability.

[0235] In one possible design, when the communication device 900 is a communication module in a terminal or network device, the function of the processing unit 902 can be implemented by one or more processors. Specifically, the processor may include a modem chip, or a system-on-a-chip (SoC) chip or a SIP chip containing a modem core. The function of the communication unit 901 can be implemented by transceiver circuitry.

[0236] In one possible design, when the communication device 900 is a circuit or chip responsible for communication functions in a terminal or network device, such as a modem chip or a system-on-a-chip (SoC) or SIP chip containing a modem core, the function of the processing unit 902 can be implemented by a circuit system in the aforementioned chip that includes one or more processors or processor cores. The function of the communication unit 901 can be implemented by an interface circuit or data transceiver circuit on the aforementioned chip.

[0237] In one possible design, when the communication device 900 is a processing module in a terminal or network device, the functionality of the processing unit 902 can be implemented by one or more processors. Specifically, the processor may include a GPU, or a system-on-a-chip (SoC) or SIP chip containing a GPU. Alternatively, the processor may include an AI processor, or a SoC or SIP chip containing an AI processor. Or, the processor may include an ASIC, or a SoC or SIP chip containing an ASIC. The functionality of the communication unit 901 can be implemented by transceiver circuitry.

[0238] In one possible design, when the communication device 900 is a circuit or chip responsible for processing functions in a terminal or network device, such as a GPU or a system-on-a-chip (SoC) or SIP chip containing a GPU, an AI processor or a SoC or SIP chip containing an AI processor, or an ASIC or a SoC or SIP chip containing an ASIC, the function of the processing unit 902 can be implemented by a circuit system in the aforementioned chip that includes one or more processors or processor cores. The function of the communication unit 901 can be implemented by interface circuits or data transceiver circuits on the aforementioned chip.

[0239] It is understood that the division of units in the above-described device is merely a logical functional division. One function can correspond to one functional unit, or two or more functions can be integrated into one functional unit. In actual implementation, all or some units can be integrated onto a single physical entity, or distributed across different physical entities. Furthermore, the aforementioned functional units can be implemented in hardware, software, or a combination of both. Whether a function is executed in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for specific applications, but such implementations should not be considered beyond the scope of this application.

[0240] In one example, the functional unit in any of the above devices may be one or more integrated circuits configured to implement the above methods, such as: one or more application-specific integrated circuits (ASICs), or one or more central processing units (CPUs), one or more microcontroller units (MCUs), one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms.

[0241] In one example, storage unit 903 may include random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory and / or registers, etc.

[0242] It is understood that one or more of the above modules or units can be implemented by software, hardware, or a combination of both. When any of the above modules or units are implemented by software, the software exists as computer program instructions and is stored in memory. The processor can be used to execute the program instructions and implement the above method flow. The processor can be built into a SoC (System-on-a-Chip) or ASIC, or it can be a separate semiconductor chip. In addition to the core that executes software instructions for computation or processing, the processor may further include necessary hardware accelerators, such as field-programmable gate arrays (FPGAs), programmable logic devices (PLDs), or logic circuits that implement dedicated logic operations.

[0243] When the above modules or units are implemented in hardware, the hardware can be any one or any combination of a CPU, microprocessor, digital signal processing (DSP) chip, microcontroller unit (MCU), artificial intelligence processor, ASIC, SoC, FPGA, PLD, application-specific digital circuit, hardware accelerator, or non-integrated discrete device, which can run the necessary software or perform the above method flow independently of software.

[0244] See Figure 10This is a schematic diagram of the structure of a terminal 1000 provided in an embodiment of this application. The terminal 1000 can correspond to the transmitting end or receiving end shown in the foregoing embodiments. For example, the transmitting end or receiving end can be a terminal used to implement the above embodiments. Figure 10 As shown, the terminal 1000 includes: one or more antennas 1010, a radio frequency processing system 1020, and a processor system 1030.

[0245] In the downlink or sidelink direction, the RF processing system 1020 receives RF signals through the antenna 1010 and sends the RF-processed signals to the processor system 1030 for further processing. In the uplink or sidelink direction, the processor system 1030 processes the information from the terminal 1000 side and sends it to the RF processing system 1020, which then processes the signal and transmits it through the antenna 1010.

[0246] In one example, the RF processing system 1020 serves as the communication interface for external communication of the terminal 1000, and may include an RF front end (RFFE) 1021 and an RF transceiver 1022. The RFFE 1021 is primarily used for one or more processing operations, such as shaping, passband selection, or gain adjustment, on the RF signals received by the antenna or those to be transmitted through the antenna. It may include one or more components such as RF switches, duplexers, filters, power amplifiers, antenna tuners, and low-noise amplifiers. The RFFE 1021 can be a circuit system composed of multiple discrete devices, or it can be integrated and packaged into one or more chips. The RF transceiver 1022 processes the RF signals received by the RFFE into baseband / IF signals for further processing by the processor system 1030, and processes the baseband / IF signals provided by the processor system 1030 into RF signals for transmission to the RFFE 1021. The baseband / IF signals transmitted between the RF transceiver 1022 and the processor system 1030 can be digital or analog signals. The radio frequency transceiver 1022 can be implemented by one or more chips, which are commonly referred to as radio frequency chips (RFICs).

[0247] In one example, processor system 1030 may include one or more processors for processing signals and executing one or more communication protocols. Optionally, processor system 1030 may also include memory 1036. In one example, the one or more processors include at least one baseband processor 1031 (also known as a modem processor). Memory 1036 is used to store data and / or computer program instructions. Optionally, processor system 1030 may also include one or more application processors 1032 for implementing processing of the terminal 1000 operating system and application layer. Application processor 1032 may include, for example, a GPU, AI processor, or ASIC. Optionally, processor system 1030 may also include one or more of a voice subsystem 1033, a multimedia subsystem 1034, or an interface circuit 1035. The voice subsystem 1033 is used to process voice signals, the multimedia subsystem 1034 is used to handle multimedia-related operations, such as video encoding / decoding, image processing, etc., and the interface circuit 1035 is used to implement communication with other device components, such as a display 1040, an input device 1050, memory 1060, etc. The aforementioned components in the processor system 1030 can communicate with each other via a bus or communication interface circuit.

[0248] In one example, the processor system 1030 can be packaged as a single processor chip, such as a SoC chip or a SIP chip. In another example, the processor system 1030 can be a system composed of multiple chips, for example, the baseband processor 1031 can be packaged as a single chip, or packaged with part or all of the circuitry of the radio frequency processing system into a single chip.

[0249] In one example, memory 1036 can be on-chip memory, i.e., located on the processor system 1030 chip. In another example, memory 1060 can be off-chip memory, i.e. located outside the processor system 1030 chip.

[0250] In one example, the baseband processor 1031 may include one or more processor cores 10311 and interface circuitry 10314. The one or more processor cores 10311 are used to process signals and execute one or more communication protocols. Optionally, the baseband processor 1031 may also include a memory 10312 for storing at least a portion of the corresponding computer program instructions and / or data. In one example, the one or more processor cores 10311 implement the relevant operations (such as…) in the above method embodiments by executing the computer program instructions stored in the memory 10312. In this disclosure, memory 10312 is used to store corresponding computer program instructions and / or data. This can mean that memory 10312 stores all corresponding computer program instructions and / or data for execution by processor core 10311; or it can mean that memory 10312 stores a portion of corresponding computer program instructions and / or data, including the computer program instructions and / or data currently required to be executed by processor core 10311. Memory 10312 can store different portions of computer program instructions and / or data multiple times for execution by processor core 10311 to implement the relevant operations in the above method embodiments. Interface circuit 10314 serves as a communication interface for communication with other components, such as transmitting signals with radio frequency processing system 1020, communicating with other subsystems and related components of processor system 1030 via bus, such as transmitting data control signals with application processor 1032, and transmitting data or computer program instructions with memory 1036 or memory 1060. Optionally, in order to reduce the load on the processor core, a baseband signal processing circuit 10313 can be set to perform at least some baseband signal processing, including one or more of signal demodulation, modulation, encoding or decoding.

[0251] In one example, the communication device provided in this application may be a terminal 1000, a communication module including a processor system 1030 and a radio frequency system 1020, or a baseband processor 1031.

[0252] The processor, processor system, application processor, baseband processor, processor circuit, or processor core mentioned above can be collectively referred to as a processor. The processor may include one or more of the following: central processing unit (CPU), digital signal processor (DSP), microprocessor unit (MPU), microcontroller unit (MCU), graphics processing unit (GPU), field programmable gate array (FPGA), application-specific integrated circuit (ASIC), artificial intelligence processor (AI processor), or neural processing unit (NPU).

[0253] The aforementioned memory may include one or more of the following storage media: random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), phase-change memory (PCM), resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), cache, register, read-only memory (ROM), flash memory, erasable programmable read-only memory (EPROM), hard disk, etc. In one example, computer program instructions for executing the above embodiments may be stored in non-volatile memory, such as at least a portion of the aforementioned memory 1060 (e.g., one or more of ROM, flash memory, EPROM, or hard disk). When the terminal 1000 is running, the corresponding computer program instructions may be partially or wholly loaded onto a memory with a faster transfer speed than the processor, such as at least a portion of the memory 1036 and / or memory 10312 (e.g., one or more of RAM, SRAM, DRAM, PCM, RERAM, MRAM, FRAM, cache, or register), for the processor to execute in order to implement the steps in the above method embodiments.

[0254] In one example, the RF transceiver 1022 and the RF front-end 1021 can also be packaged in a single chip. In another example, the RF transceiver 1022, the RF front-end 1021, and the baseband processor 1031 can also be packaged in a single chip.

[0255] The terms "system" and "network" in this application embodiment are used interchangeably. "At least one" refers to one or more, and "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, "at least one of A, B, or C" includes A, B, C, AB, AC, BC, or ABC; "at least one of A, B, and C" can also be understood as including A, B, C, AB, AC, BC, or ABC. Furthermore, unless otherwise specified, the ordinal numbers such as "first" and "second" mentioned in this application embodiment are used to distinguish multiple objects and are not used to limit the order, sequence, priority, or importance of multiple objects.

[0256] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, etc.) containing computer-usable program code.

[0257] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0258] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0259] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0260] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

[0261] In one possible implementation, this application also provides a chip system, including: at least one processor and an interface, wherein the at least one processor is coupled to a memory via the interface, and when the at least one processor executes a computer program or instructions in the memory, the method in any of the above method embodiments is executed. In one possible implementation, the chip system further includes a memory. Optionally, the chip system may be composed of chips or may include chips and other discrete devices; this application does not specifically limit this.

[0262] Optionally, this application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the aforementioned computer-readable storage medium. When executed, the program can include the processes described in the above method embodiments. The computer-readable storage medium can be an internal storage unit of the communication device in any of the foregoing embodiments, such as the hard disk or memory of the communication device. The aforementioned computer-readable storage medium can also be an external storage device of the communication device, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the communication device. Further, the aforementioned computer-readable storage medium can include both internal storage units and external storage devices of the communication device. The aforementioned computer-readable storage medium is used to store the aforementioned computer program and other programs and data required by the communication device. The aforementioned computer-readable storage medium can also be used to temporarily store data that has been output or will be output.

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

[0264] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0265] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0266] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A communication method characterized by comprising: The method comprises: receiving first information and second information, the first information being used for indicating a fault-tolerant transmission capability of N data streams, the second information being used for indicating that the N data streams correspond to data units, N being a positive integer; receiving the data units; determining, according to the first information and the second information, whether to retransmit part or all of the data units.

2. The method of claim 1, wherein, The determining, according to the first information and the second information, whether to retransmit part or all of the data units comprises: determining, according to the first information and the second information, data units to be retransmitted in the data units.

3. The method according to claim 1 or 2, characterized in that, The fault-tolerant transmission capability is indicated by a first threshold value, the first threshold value being a maximum value of a ratio of a number of data streams with transmission errors in the N data streams to N.

4. The method of claim 3, wherein, The determining, according to the first information and the second information, whether to retransmit part or all of the data units comprises: in a case where M / N is less than or equal to the first threshold value, determining not to retransmit the data units, when M data streams in the N data streams have transmission errors, M being a positive integer and M being less than or equal to N.

5. The method of claim 3, wherein, The determining, according to the first information and the second information, whether to retransmit part or all of the data units comprises: in a case where M / N is greater than the first threshold value, determining to retransmit first data units, when M data streams in the N data streams have transmission errors, the first data units corresponding to i data streams in the M data streams, M and i being positive integers, i being less than or equal to M, and M being less than or equal to N.

6. The method of claim 1 or 2, wherein, The determining, according to the first information and the second information, whether to retransmit part or all of the data units comprises: in a case where a first data stream with no transmission error indicated by the fault-tolerant transmission capability in the N data streams has transmission error, determining to retransmit second data units, the second data units corresponding to the first data stream.

7. A communication method characterized by comprising: The method comprises: sending first information and second information, the first information being used for indicating a fault-tolerant transmission capability of N data streams, the second information being used for indicating that the N data streams correspond to data units, N being a positive integer; sending data units corresponding to the N data streams.

8. The method of claim 7, wherein, The fault-tolerant transmission capability is indicated by a first threshold value, the first threshold value being a maximum value of a ratio of a number of data streams with transmission errors in the N data streams to N.

9. The method according to claim 6 or 7, characterized in that, The fault-tolerant transmission capability is indicated by a first mode, the first mode indicating data streams with transmission error allowed and / or data streams with no transmission error allowed in the N data streams.

10. The method according to any one of claims 1 to 9, characterized in that, The first information is further used for indicating data recovery quality of the N data streams under the fault-tolerant transmission capability.

11. The method according to any one of claims 1 to 10, characterized in that, The second information comprises a preset identifier, the preset identifier being used for indicating a first or last data unit corresponding to the N data streams.

12. The method according to any one of claims 1 to 11, characterized in that, A logical channel or a logical channel group used for transmitting the N data streams has the fault-tolerant transmission capability.

13. A communications device, characterized by The computer program or instructions, when executed, cause the method of any one of claims 1-12 to be performed.

14. A communications device, characterized by The computer program or instructions, when executed, cause the method of any one of claims 7-12 to be performed.

15. A computer readable storage medium having stored thereon a computer program or instructions, characterized in that, The computer program or instructions, when executed, cause the method of any one of claims 1-12 to be performed.

16. A computer program product comprising computer program code in said computer program product, characterised in that, The computer program code can further cause the computer to perform the method of any one of claims 1-12 when the computer program code is run on the computer.