Data processing method and device and storage medium

By encoding and processing and XOR recovery of data packets in 5G mobile communications, the delay and resource consumption problems caused by the retransmission mechanism are solved, and efficient and reliable data transmission is achieved.

CN119109550APending Publication Date: 2024-12-10ZTE CORP
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202310674811.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-07
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

In 5G mobile communication, the retransmission mechanism leads to an increase in delay, affecting real-time services, and the PDCP repetition mechanism consumes more resources, making it difficult to ensure the reliability of data transmission and reduce resource overhead.

Method used

By processing m first data packets at the first transmission node, k second data packets are determined, and encoding them using the first generation matrix to generate n first coded data packets to avoid repeated transmission of data bands The delay and the lost packet is recovered by XOR operation at the second transmission node, reducing the decoding operation amount.

Benefits of technology

It realizes that while ensuring the reliability of data transmission, it reduces resource overhead, avoids the delay caused by retransmission, and improves the efficiency of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119109550A_ABST
    Figure CN119109550A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a data processing method and device and a storage medium, relates to the technical field of communication, and is used for ensuring the reliability of data transmission and reducing resource overhead. The method comprises the following steps: acquiring m first data packets, wherein m is a positive integer; k second data packets are determined according to the m first data packets, k is a positive integer, the value range of elements in the first generation matrix is [0, q-1], and q is a prime number or prime number power; the k second data packets are coded according to the first generation matrix, n first coded data packets are obtained, and n is a positive integer; and sending all the first coded data packets or part of the first coded data packets in the n first coded data packets to a second transmission node.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a data processing method, device and storage medium. Background Art

[0002] In the fifth-generation mobile communication technology (5G) mobile communication, in order to improve the reliability of data transmission, the automatic retransmission request (ARQ) is used in the radio link control (RLC) layer and the hybrid automatic repeat request (HARQ) is used in the medium access control (MAC) layer to improve data reliability. However, the retransmission mechanism will produce a large delay, affecting real-time services and resulting in low data transmission reliability. In addition, in carrier aggregation (CA) or dual connectivity (DC) mode, 5G mobile communications use packet data convergence protocol (PDCP) duplication to improve reliability through air interface transmission redundancy. However, the use of PDCP repetition consumes more computing resources. Therefore, how to ensure the reliability of data transmission and reduce resource overhead is a technical problem that needs to be solved urgently. Summary of the invention

[0003] The present application provides a data processing method, device and storage medium for ensuring the reliability of data transmission and reducing resource overhead.

[0004] In order to achieve the above purpose, this application adopts the following technical solutions:

[0005] In a first aspect, a data processing method is provided. The method is applied to a first transmission node. The method includes:

[0006] Get m first data packets, where m is a positive integer;

[0007] Determine k second data packets according to the m first data packets, where k is a positive integer;

[0008] Encoding the k second data packets according to the first generation matrix to obtain n first coded data packets, where n is a positive integer, wherein the value range of the elements in the first generation matrix is ​​[0, q-1], and q is a prime number or a prime power;

[0009] All or part of the n first coded data packets are sent to the second transmission node.

[0010] In a second aspect, a data processing method is provided, the method being applied to a second transmission node, the method comprising:

[0011] Obtain the number n of first coded data packets, the number k of second data packets, the index identifier of each first coded data packet, and k correctly received first coded data packets generated by the first transmission node; wherein k is a positive integer, and the k correctly received first coded data packets are a subset of n first coded data packets obtained by the first transmission node encoding the k second data packets according to the first generation matrix;

[0012] According to the number n of first coded data packets, the number k of second data packets and the index identifier of each first coded data packet, k correctly received first coded data packets are processed to obtain lost second data packets.

[0013] According to a third aspect, a communication device is provided, the device comprising:

[0014] An acquiring unit, used for acquiring m first data packets, where m is a positive integer;

[0015] A processing unit, configured to determine k second data packets according to the m first data packets, where k is a positive integer;

[0016] The processing unit is further used to encode the k second data packets according to the first generation matrix to obtain n first encoded data packets, where n is a positive integer, wherein the value range of the elements in the first generation matrix is ​​[0, q-1], and q is a prime number or a prime power;

[0017] A sending unit is used to send all or part of the n first coded data packets to the second transmission node.

[0018] In a fourth aspect, a communication device is provided, the device comprising:

[0019] An acquisition unit is used to acquire the number n of first coded data packets, the number k of second data packets, the index identifier of each first coded data packet, and k correctly received first coded data packets generated by the first transmission node; wherein k is a positive integer, and the k correctly received first coded data packets are a subset of n first coded data packets obtained by the first transmission node encoding k second data packets according to the first generation matrix;

[0020] The processing unit is used to process k correctly received first coded data packets according to the number n of first coded data packets, the number k of second data packets and the index identifier of each first coded data packet to obtain the lost second data packets.

[0021] In a fifth aspect, a communication device is provided, comprising: a processor and a memory; the memory stores instructions executable by the processor; when the processor is configured to execute the instructions, the communication device implements the method provided in any one of the first aspect or the second aspect above.

[0022] In a sixth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and when the computer instructions are executed on a computer, the computer executes the method provided in either the first aspect or the second aspect.

[0023] In a seventh aspect, a computer program product comprising computer instructions is provided. When the computer instructions are executed on a computer, the computer executes the method provided in any one of the first aspect or the second aspect.

[0024] In the embodiment of the present application, since the first coded data packet is processed by the first generation matrix, the second transmission node can complete decoding by receiving k first coded data packets, which can avoid the delay caused by repeated data transmission. Moreover, since the first coded data packet is processed by the first generation matrix, when a single first data packet is erroneous or lost, the second transmission node can restore the single first data packet that has an error or is lost only through an XOR operation based on the received first coded data packet, thereby reducing the decoding operation amount, thereby ensuring the reliability of data transmission and reducing resource overhead. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present invention and do not constitute a limitation on the technical solution of the present invention.

[0026] Figure 1 A schematic diagram of the structure of a communication system provided in an embodiment of the present application;

[0027] Figure 2 A flowchart of a data processing method provided in an embodiment of the present application;

[0028] Figure 3 A schematic diagram of the composition of a first generation matrix provided in an embodiment of the present application;

[0029] Figure 4 A schematic diagram of data packet encoding at the PDCP layer provided in an embodiment of the present application;

[0030] Figure 5 A schematic diagram of data packet encoding of the PDCP layer in a DC scenario provided by an embodiment of the present application;

[0031] Figure 6 A schematic diagram of data packet encoding at the PDCP layer in a CA scenario provided by an embodiment of the present application;

[0032] Figure 7 A schematic diagram of data packet encoding of an RLC layer provided in an embodiment of the present application;

[0033] Figure 8 A schematic diagram of data packet encoding at the MAC layer provided in an embodiment of the present application;

[0034] Fig. 9 A schematic diagram of data packet encoding at the physical layer provided in an embodiment of the present application;

[0035] Fig.10 A flowchart of another data processing method provided in an embodiment of the present application;

[0036] Fig.11 A schematic diagram of the composition of a communication device provided in an embodiment of the present application;

[0037] Fig.12 A schematic diagram of another communication device provided in an embodiment of the present application;

[0038] Fig.13 A schematic diagram of the structure of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0039] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

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

[0041] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0042] According to the 5G Technical Specification (TS) of the 3rd Generation Partnership Project (3GPP), the transmission time interval (TTI) is introduced in R15 to meet the requirements of 1 ms one-way delay and 10 -5 In order to meet the reliability requirements of the air interface, the Time Sensitive Networking (TSN) was introduced in R16 to meet the one-way delay of 0.5-1ms and 10 -6 In the future development of B5G (Beyond 5th Generation) / 6G (6th Generation) communication technology, there will be higher requirements for transmission delay and data transmission reliability. The requirement for 6G is no less than 10 -7 The reliability is not less than 10 -9 reliability.

[0043] In the related technology, HARQ is used to improve the reliability of data transmission, but retransmission will produce a large delay, affecting real-time services and resulting in low data transmission reliability. In addition, in CA or DC mode, PDCP repetition in 5G mobile communications improves reliability through air interface transmission redundancy. Two redundant links are supported in R15, and up to four redundant links are supported in R16. PDCP repetition is suitable for small packet high-reliability services. In theory, the reliability can be increased from 99% of a single link to 99.99%. However, PDCP repetition is to copy the same data into multiple copies and transmit them in different cells (Cell) or cell groups (Cell Group). PDCP repetition consumes more resources and is mainly used for smaller data packets. When the data packets are large, it will lead to excessive resource consumption. Therefore, how to ensure the reliability of data transmission and reduce resource overhead is a technical problem that needs to be solved urgently.

[0044] Based on this, the embodiment of the present application provides a data processing method, device and storage medium. After obtaining m first data packets, the first transmission node determines k second data packets according to the m first data packets, so that the k second data packets have the same size for encoding. After obtaining the k second data packets, the k second data packets are encoded according to the first generation matrix to obtain n first coded data packets, and then all or part of the first coded data packets in the n first coded data packets are sent to the second transmission node. Since the first coded data packet is processed by the first generation matrix, the second transmission node can complete decoding according to the received k first coded data packets, which can avoid the delay caused by repeated data transmission, and since the first coded data packet is processed by the first generation matrix, when a single first data packet is erroneous or lost, the second transmission node can only recover the single first data packet that is erroneous or lost through an XOR operation based on the received first coded data packet, which reduces the decoding operation amount, thereby ensuring the reliability of data transmission and reducing resource overhead.

[0045] The scheme of the embodiment of the present application is introduced below with reference to the accompanying drawings.

[0046] The technical solution provided in the embodiment of the present application can be applied to various mobile communication networks, for example, to 5G communication networks. However, it can be understood that in the future development of 6G communication technology, there will be higher requirements for data transmission rate, transmission delay and data transmission reliability. The technical solution in this embodiment can also be applied but not limited to 6G communication systems and even higher levels of communication systems.

[0047] Figure 1 FIG. 1 is a schematic diagram of a communication system provided in an embodiment of the present application. Figure 1 As shown, the communication system includes but is not limited to a first transmission node 110 and a second transmission node 120. The first transmission node 110 and the second transmission node 120 can transmit and receive wireless signals and perform related interactions.

[0048] In some embodiments, the relative position, quantity, etc. of the first transmission node 110 and the second transmission node 120 can be set accordingly in a specific application scenario. For example, the first transmission node 110 can radiate signals outward, and the second transmission node 120 can move along the trajectory formed by the first transmission node 110 when radiating signals outward. It can be understood that if there are multiple second transmission nodes 120 and different second transmission nodes 120 are set in the above manner, the wireless signal sent by the first transmission node 110 can be received at different spatial locations. It is worth noting that the spatial position here can be different geographical conditions.

[0049] In some embodiments, the first transmission node 110 or the second transmission node 120 may include, but is not limited to, one of the following devices: a base station (BS), an access point (AP), a node B, a gnode B (gnode B, generalized node B), a radio network controller (RNC), an evolved node B (eNB), a base station controller (BSC), a base transceiver station (BTS), a transceiver function (TF), a radio router, a radio transceiver, a basic service set (BSS), an extended service set (ESS) or a radio base station (RBS), and this embodiment does not specifically limit this.

[0050] In some embodiments, the first transmission node 110 or the second transmission node 120 may have other names, such as access terminal, user equipment (UE), user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, wireless communication device, user agent or user device. For example, the first transmission node 110 or the second transmission node 120 may be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a 5G network or a terminal device in a future 5G or higher network, etc., and this embodiment does not specifically limit this.

[0051] In some embodiments, the first transmission node 110 has at least the functions of acquiring a first data packet, processing the first data packet to obtain a second data packet, encoding the second data packet according to a first generation matrix to obtain a first encoded data packet, and sending the first encoded data packet to a second transmission node.

[0052] In some embodiments, the second transmission node 120 has at least the functions of receiving a first coded data packet sent by the first transmission node 110 and processing the first coded data packet, wherein the first coded data packet is obtained by the first transmission node encoding the second data packet according to the first generation matrix.

[0053] In one embodiment, the above functions of the first transmission node 110 or the second transmission node 120 can be applied to different application scenarios, which are not limited here.

[0054] It should be understood that Figure 1 is an exemplary structural diagram, Figure 1 The number of devices included in the communication system shown is not limited, for example, the number of first transmission nodes and second transmission nodes is not limited. Figure 1 In addition to the equipment shown, Figure 1 The communication system shown may also include other devices, which is not limited to this.

[0055] Next, if Figure 2 As shown, the embodiment of the present application provides a data processing method, which is applied to a first transmission node, and the first transmission node can be Figure 1 The first transmission node 110 shown in FIG. 1 comprises the following steps:

[0056] S101. Obtain m first data packets.

[0057] In some embodiments, when the first transmission node needs to perform data transmission, the first transmission node obtains m first data packets, where m is a positive integer.

[0058] In some embodiments, the first data packet may also have other names, such as a source data packet.

[0059] In some embodiments, the first transmission node may obtain m first data packets from the wireless interface protocol stack. Based on this, the m first data packets include at least one of the following:

[0060] Data packets of the PDCP layer in the radio interface protocol stack;

[0061] Data packets of the RLC layer in the radio interface protocol stack;

[0062] Data packets of the MAC layer in the wireless interface protocol stack;

[0063] Data packets at the physical layer in the radio interface protocol stack.

[0064] It should be understood that the first transmission node obtains m first data packets so as to subsequently perform encoding according to the first generation matrix to generate a first encoded data packet.

[0065] It should be noted that the first data packet can be selected and set according to the specific application scenario, which is not limited in the embodiment of the present application. Since the method of obtaining m first data packets is well known to those skilled in the art, obtaining m first data packets from the wireless interface protocol stack is only exemplary and will not be described in detail here.

[0066] S102. Determine k second data packets according to m first data packets.

[0067] Wherein, k is a positive integer.

[0068] It should be noted that in the following embodiments, b=[b0; b1; ...; b m-1 ] represents m first data packets, where b i is a row vector, the size of the i-th first data packet among the m first data packets is S i Byte. Use a = [a0; a1; ...; a k-1 ] represents k second data packets, among which the first data packet a i is a row vector, and the size of each second data packet is T bytes. The second data packet may also be called by other names, for example, a source sub-data packet.

[0069] As a possible example, determining k second data packets according to m first data packets may include at least one of the following implementations:

[0070] Implementation method 1: When the m first data packets have the same size, the m first data packets can be used as k second data packets, where m=k.

[0071] Implementation method 2: When the m first data packets do not have the same size, padding processing may be performed on the m first data packets to obtain k second data packets, where m=k.

[0072] As a possible implementation manner, the sizes of the first data packets other than the target first data packet among the m first data packets may be padded to the same size as the target first data packet, wherein the target first data packet is the largest data packet among the m first data packets.

[0073] Exemplarily, the size of the target data packet in the m first data packets is S max Bytes, the remaining m-1 first data packets can be filled so that the size of each first data packet in the remaining m-1 first data packets is S max In one example, for the i-th first data packet b among the remaining m-1 first data packets, i , for b i Filling S max -S i 0 bytes so that bi The size reaches S max Bytes. i Indicates b i The number of bytes contained in .

[0074] Implementation 3: In the case where the m first data packets do not have the same size, the m first data packets may be preprocessed to obtain k second data packets. The preprocessing includes at least one of the following: combining processing, filling processing, and segmentation processing. Exemplarily, preprocessing the m first data packets to obtain k second data packets may include the following steps:

[0075] A1. Combine and process m first data packets to obtain a third data packet.

[0076] The size of the third data packet is S bytes. S i It indicates the number of bytes contained in the ith data packet among the m first data packets, that is, the size of the ith data packet.

[0077] A2. Perform padding processing on the third data packet to obtain a fourth data packet.

[0078] For example, the third data packet may be filled with 0 bytes, and a fourth data packet is obtained. The fourth data packet includes Bytes. Where ceil() represents the smallest integer greater than or equal to the value in the brackets.

[0079] A3. Segment the fourth data packet to obtain k second data packets.

[0080] After obtaining the fourth data packet, the fourth data packet can be segmented to obtain k second data packets, each of which has a size of bytes.

[0081] It should be understood that the combining process, the filling process, and the segmenting process may have different orders and may include only one of the processes or a combination of multiple processes.

[0082] As an example, m first data packets are combined to obtain k second data packets, wherein each second data packet after the combination has the same size.

[0083] As another example, padding processing is performed on m data packets to obtain k second data packets, wherein each second data packet after padding processing has the same size.

[0084] As another example, m data packets are segmented to obtain k second data packets, wherein each second data packet after segmentation has the same size.

[0085] As another example, m data packets are combined and padded to obtain k second data packets, wherein each second data packet after the combination and padded process has the same size.

[0086] As another example, m data packets are combined and segmented to obtain k second data packets, wherein each second data packet after the combination and segmentation has the same size.

[0087] As another example, the m data packets are padded and segmented to obtain k second data packets, wherein each second data packet after the padded and segmented processing has the same size.

[0088] In some embodiments, the number k of second data packets is determined according to at least one of: the number m of first data packets, the size S of m first data packets, the size T of one second data packet, channel state information, capability information of user equipment, control signaling, the number of links, and the number of carriers;

[0089] The channel state information includes at least one of the following: channel quality indication information, rank indication information, and precoding matrix indication information; the capability information of the user equipment includes at least one of the following: an upper limit value of the number of antennas supported by the user equipment, an upper limit value of the data transmission rate supported by the user equipment, and an upper limit value of the modulation order supported by the user equipment. The user equipment is a second transmission node, and the capability information of the user equipment is also the capability information of the second transmission node.

[0090] As an example, when the number k of second data packets is determined according to the channel state information, at least one of the following implementations may be included:

[0091] Implementation method 1: When the channel state information is channel quality indication information, the number k of the second data packets is determined according to the index value of the channel quality indication information. For example, when the channel quality indication index value is an integer from 1 to 5, the number k of the second data packets is a first preset value, when the channel quality index value is an integer from 6 to 10, the number k of the second data packets is a second preset value, and when the channel quality index value is an integer from 11 to 15, the number k of the second data packets is a third preset value. The first preset value, the second preset value, and the third preset value are all positive integers. In one example, the first preset value is equal to 5, the second preset value is equal to 10, and the third preset value is equal to 15.

[0092] Implementation method 2: When the channel state information is rank indication information, the number k of the second data packets is determined according to the value of the rank indication information. For example, when the value of the rank indication information is equal to 1 or 2, the number k of the second data packets is a fourth preset value, when the value of the rank indication information is equal to 3, the number k of the second data packets is a fifth preset value, and when the value of the rank indication information is equal to 4, the number k of the second data packets is a sixth preset value. The fourth preset value, the fifth preset value, and the sixth preset value are all positive integers. In one example, the fourth preset value is equal to 5, the fifth preset value is equal to 10, and the sixth preset value is equal to 15.

[0093] Implementation method 3: When the channel state information is precoding matrix indication information, the number k of the second data packets is determined according to the index value of the precoding matrix indication information. For example: for a single-layer transmission with four antenna ports with transform precoding, when the precoding matrix indication index value is an integer from 0 to 7, the number k of the second data packets is the seventh preset value, when the precoding matrix indication index value is an integer from 8 to 15, the number k of the second data packets is the eighth preset value, and when the precoding matrix indication index value is an integer from 16 to 27, the number k of the second data packets is the ninth preset value. Among them, the seventh preset value, the eighth preset value, and the ninth preset value are all positive integers. In one example, the seventh preset value is equal to 5, the eighth preset value is equal to 10, and the ninth preset value is equal to 15.

[0094] As another example, when the number k of second data packets is determined according to the capability information of the user equipment, at least one of the following implementations may be included:

[0095] Implementation method 1: When the capability information of the user equipment is the upper limit value of the number of antennas supported by the user equipment, and when the upper limit value of the number of antennas supported by the user equipment is greater than the first threshold w1, that is, when the maximum number of antennas supported by the user equipment is greater than the first threshold w1, the number k of the second data packets is the tenth preset value, otherwise the number of the second data packets is the eleventh preset value, where w1 is equal to one of the following: 4, 6, 8, 12, or 16. The tenth preset value and the eleventh preset value are positive integers. In an example, the tenth preset value is equal to 20, and the eleventh preset value is equal to 10.

[0096] Implementation method 2: When the capability information of the user equipment is the upper limit value of the data transmission rate supported by the user equipment, when the upper limit value of the data transmission rate supported by the user equipment is greater than the second threshold value w2, that is, when the maximum supported data transmission rate supported by the user equipment is greater than the second threshold value w2, the number of the second data packets is the twelfth preset value, otherwise the number of the second sub-data packets is the thirteenth preset value, where w2 is equal to one of the following: 500Mbps, 1Gbps, or 10Gbps. The twelfth preset value and the thirteenth preset value are positive integers. In one example, the twelfth preset value is equal to 5, and the thirteenth preset value is equal to 10.

[0097] Implementation method 3: When the capability information of the user equipment is the upper limit value of the modulation order supported by the user equipment, and the upper limit value of the modulation order supported by the user equipment is greater than the third threshold value w3, that is, the maximum modulation order supported by the user equipment is greater than the third threshold value w3, then the number of second data packets is the fourteenth preset value, otherwise the number of second data packets is the fifteenth preset value, where w3 is equal to one of the following: 4, 6, 8, or 10. The fourteenth preset value and the fifteenth preset value are positive integers. In one example, the fourteenth preset value is equal to 5, and the fifteenth preset value is equal to 10.

[0098] As another example, when the number k of second data packets is determined according to control signaling, the control signaling is used to indicate the number k of second data packets.

[0099] Exemplarily, the control signaling indicates that p bits are used to indicate the number of second data packets, where p is an integer greater than 0, and p bits indicate at most 2 p In one possible example, when p=1, there are two second data packet quantities to choose from, "0" indicates that the number of second data packets is the sixteenth preset value, and "1" indicates that the number of second data packets is the seventeenth preset value. The sixteenth preset value and the seventeenth preset value are positive integers. In one example, the sixteenth preset value is equal to 6, and the seventeenth preset value is equal to 12.

[0100] As another example, in the case where the number k of second data packets is determined according to the number of links, the number k of second data packets is determined according to the number of associations between an entity indicated by the number of links and another entity. Taking the case where the number of links is represented as the number of associations between a PDCP entity and an RLC entity as an example, in the case where a PDCP entity is associated with two RLC entities, the number of second data packets is the eighteenth preset value. In the case where a PDCP entity is associated with four RLC entities, the number of second data packets is the nineteenth preset value. The eighteenth preset value and the nineteenth preset value are positive integers. In one example, the eighteenth preset value is equal to 8, and the nineteenth preset value is equal to 16.

[0101] As another example, when the number k of the second data packets is determined according to the number of carriers, different numbers of carriers correspond to different numbers k of second data packets, and each carrier corresponds to an independent cell. For example, if the number of carriers is 2, the number of second data packets is the twentieth preset value. For another example, if the number of carriers is 4, the number of second data packets is the twenty-first preset value. The twentieth preset value and the twenty-first preset value are positive integers. In one example, the twentieth preset value is equal to 6, and the twenty-first preset value is equal to 12.

[0102] As another example, in the case of determining the number k of second data packets according to the number m of first data packets, different ranges of m correspond to different numbers k of second data packets. In a possible example, when the range of m is within the interval [m1, m2], the number of second data packets is the twenty-second preset value; when the range of m is within the interval (m2, m3], the number of second data packets is the twenty-third preset value, where m1, m2, and m3 are positive integers, and m1 < m2 < m3. The twenty-second preset value and the twenty-third preset value are positive integers. In one example, the twenty-second preset value is equal to 4, and the twenty-third preset value is equal to 8.

[0103] As another example, in the case of determining the number k of second data packets according to the size S of the first data packet, different ranges of S correspond to different numbers k of second data packets. In a possible example, when the range of S is within the interval [s1, s2], the number of second data packets is the twenty-fourth preset value; when the range of S is within the interval (s2, s3], the number of second data packets is the twenty-fifth preset value, where s1, s2, and s3 are positive integers, and s1 < s2 < s3. The twenty-fourth preset value and the twenty-fifth preset value are positive integers. In one example, the twenty-fourth preset value is equal to 4, and the twenty-fifth preset value is equal to 8.

[0104] As another example, in the case of determining the number k of second data packets according to the size T of one second data packet, different ranges of T correspond to different numbers k of second data packets. In a possible example, when the range of T is within the interval [t1, t2], the number of second data packets is the twenty-sixth preset value; when the range of S is within the interval (t2, t3], the number of second data packets is the twenty-seventh preset value, where t1, t2, and t3 are positive integers, and t1 < t2 < t3. The twenty-sixth preset value and the twenty-seventh preset value are positive integers. In one example, the twenty-sixth preset value is equal to 6, and the twenty-seventh preset value is equal to 12.

[0105] It should be understood that the sizes of the m first data packets may be different. When encoding is subsequently performed according to the first generation matrix, if the sizes of the m first data packets are different, it may cause the encoding to fail smoothly. Based on this, the embodiments of the present application propose to process the m first data packets to obtain k second data packets with the same size, so that subsequent encoding of the k second data packets with the same size according to the first generation matrix can be performed smoothly, thereby ensuring the reliability of data transmission.

[0106] S103. Encode the k second data packets according to the first generation matrix to obtain n first encoded data packets.

[0107] Wherein, n is a positive integer, the value range of the elements in the first generator matrix is ​​[0, q-1], and q is a prime number or a prime power.

[0108] In some embodiments, the first generation matrix may be preconfigured or determined according to the number k of second data packets and / or the number n of first coded data packets.

[0109] In some embodiments, the first generation matrix G includes a unit matrix I and a second generation matrix G2, the size of the unit matrix I is k×k, the size of the second generation matrix G2 is r×k, and n=r+k, r is a positive integer. Based on this, the n first coded data packets include k second data packets and r second coded data packets, and the r second coded data packets are data packets obtained by encoding the k second data packets according to the second generation matrix.

[0110] In some embodiments, the second encoded data packet may also have other names, for example, the second encoded data packet may also be called a verification data packet.

[0111] In some embodiments, the number r of second encoded data packets is determined based on at least one of: the number k of second data packets, channel state information, and control signaling; wherein the channel state information includes at least one of: channel quality indication information, rank indication information, and precoding matrix indication information.

[0112] As an example, when the number r of second coded data packets is determined according to the number k of second data packets, the number k of second data packets corresponds to a value of the number r of second coded data packets in each value interval. For example, when the number k of second data packets is in the value interval [k1, k2]

[0113] When r is the twenty-eighth preset value, k1 and k2 are two different positive integers, and the twenty-eighth preset value can have different values ​​in different k value intervals. In one example, k1=4, k2=8, and the twenty-eighth preset value is equal to 2.

[0114] As another example, determining the number r of second coded data packets according to the channel state information may adopt at least one of the following implementations:

[0115] Implementation method 1: When the channel state information is channel quality indication information, the number r of the second coded data packets is determined according to the index value of the channel quality indication information. For example, when the channel quality indication index value is an integer from 1 to 5, the number r of the second coded data packets is the 29th preset value, when the channel quality index value is an integer from 6 to 10, the number r of the second coded data packets is the 30th preset value, and when the channel quality index value is an integer from 11 to 15, the number r of the second coded data packets is the 31st preset value. Among them, the 29th preset value, the 30th preset value, and the 31st preset value are all positive integers. In one example, the 29th preset value is equal to 2, the 30th preset value is equal to 3, and the 31st preset value is equal to 4.

[0116] Implementation method 2: When the channel state information is rank indication information, the number r of the second coded data packets is determined according to the value of the rank indication information. For example, when the value of the rank indication information is equal to 1 or 2, the number r of the second coded data packets is the thirty-second preset value, when the value of the rank indication information is equal to 3, the number r of the second coded data packets is the thirty-third preset value, and when the value of the rank indication information is equal to 4, the number k of the second data packets is the thirty-fourth preset value. The thirty-second preset value, the thirty-third preset value, and the thirty-fourth preset value are all positive integers. In one example, the thirty-second preset value is equal to 2, the thirty-third preset value is equal to 3, and the thirty-fourth preset value is equal to 4.

[0117] Implementation method 3: When the channel state information is precoding matrix indication information, the number r of second coded data packets is determined according to the index value of the precoding matrix indication information. For example: for single-layer transmission with four antenna ports with transform precoding, when the precoding matrix indication index value is an integer from 0 to 7, the number r of second coded data packets is the thirty-fifth preset value, when the precoding matrix indication index value is an integer from 8 to 15, the number r of second coded data packets is the thirty-sixth preset value, and when the precoding matrix indication index value is an integer from 16 to 27, the number r of second coded data packets is the thirty-seventh preset value. Among them, the thirty-fifth preset value, the thirty-sixth preset value, and the thirty-seventh preset value are all positive integers. In one example, the thirty-fifth preset value is equal to 2, the thirty-sixth preset value is equal to 3, and the thirty-seventh preset value is equal to 4.

[0118] As another example, when the number r of second encoded data packets is determined according to control signaling, the control signaling is used to indicate the number r of second encoded data packets.

[0119] Exemplarily, the control signaling indicates that x bits are used to indicate the number r of the second coded data packets, where x is an integer greater than 0, and x bits indicate at most 2 xIn one possible example, when x=1, there are two numbers of second coded data packets to choose from, "0" indicates that the number of second coded data packets is the thirty-eighth preset value, and "1" indicates that the number of second coded data packets is the thirty-ninth preset value. The thirty-eighth preset value and the thirty-ninth preset value are positive integers. In one example, the thirty-eighth preset value is equal to 2, and the thirty-ninth preset value is equal to 4.

[0120] In some embodiments, Figure 3 FIG. 1 is a schematic diagram of a composition of a first generation matrix provided in an embodiment of the present application. Figure 3 , the first generation matrix 1200 is composed of the identity matrix 1201 and the second generation matrix 1202, g i,j is an element value under the Galois Field GF(q), and 0≤i≤r-1, 0≤j≤k-1, and the size q of the Galois Field is a prime number or a prime power. For example, q includes but is not limited to 2, 4, 8, 16, 32, 64, 128, 256, 512.

[0121] In some embodiments, for any k rows in the first generator matrix, any k rows are linearly independent under the Galois Field GF(q). In other words, a submatrix of size k×k formed by any k rows of the first generator matrix is ​​reversible under the Galois Field GF(q).

[0122] It should be understood that any k rows in the first generating matrix are linearly independent under the Galois field GF(q), that is, the submatrix formed by any k rows in the first generating matrix is ​​reversible, in order to ensure maximum distance separability (maximun distance separable, MDS), that is, to ensure that when any r first coded data packets among n first coded data packets fail, k second data packets can be successfully decoded, thereby ensuring the reliability of data transmission.

[0123] In some embodiments, there is a target row in the second generation matrix, and the values ​​of the elements in the target row are all 1. That is, there is a row in which the values ​​of the elements are all 1 in the second generation matrix.

[0124] In some embodiments, the verification data packet obtained by encoding k second data packets according to the target row may also be referred to as a third encoded data packet.

[0125] It should be understood that when a single second data packet is lost among n first encoded data packets, since there are rows in the second generation matrix whose element values ​​are all 1, the single lost second data packet can be quickly recovered through an XOR operation (which is faster than multiplication). Since the amount of calculation is lower than that of multiplication, resource overhead is reduced.

[0126] In some embodiments, for any r columns in a merged matrix consisting of the second generator matrix and the unit matrix of size r×r, any r columns are linearly independent under the Galois Field GF(q).

[0127] As an example, a unit matrix (size r×r) may be added to the right of the second generation matrix (size r×k) to form a merge matrix of size r×n (n=r+k), where n is the number of first coded data packets.

[0128] In some embodiments, the merge matrix may also be referred to as a check matrix.

[0129] It should be understood that the generator matrix and the check matrix can be understood as descriptions of the same encoding method from different perspectives, and the characteristics of the encoding method can be described by the generator matrix or the check matrix.

[0130] As a possible example, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following parameters: k, i, j; wherein i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1.

[0131] As another possible example, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following formula:

[0132] g i,j =(k+j) / (k+i+j);

[0133] Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, where i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1, / represents a division operation under the Galois field GF(q), and + represents a bitwise exclusive OR operation under the Galois field GF(q).

[0134] As an example, the second generation matrix G2 may be as shown in the following formula:

[0135]

[0136] Exemplarily, taking the Galois field size q=256, the source data block k=5, and the number of second coded data blocks r=2 as an example, the second generation matrix G2 can be shown as follows:

[0137]

[0138] In some embodiments, any two columns or two rows in the second generation matrix can be exchanged, that is, the second generation matrix can be obtained by exchanging any two columns or two rows in the second generation matrix.

[0139] As a possible example, according to formula gi,j =(k+j) / (k+i+j) The second generation matrix is ​​obtained by exchanging any two rows or columns of the matrix obtained. i,j Represents the value of the element with row number i and column number j in the matrix, i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1, / represents the division operation under the Galois field GF(q), and + represents the bitwise exclusive OR operation under the Galois field GF(q).

[0140] For example, the Galois field size q=256, the source data block k=5, the number of second coded data blocks r=2, and the exchange according to formula g i,j =(k+j) / (k+i+j) as an example. The second generation matrix G2 can be shown as follows:

[0141]

[0142] As another possible example, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following formula:

[0143] g i,j =((k+j)*(k+i)) / ((k+i+j)*k);

[0144] Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, / represents a division operation under the Galois field GF(q), + represents a bitwise exclusive OR operation under the Galois field, and * represents a multiplication operation under the Galois field GF(q).

[0145] As an example, the second generation matrix G2 may be as shown in the following formula:

[0146]

[0147] Exemplarily, taking the Galois field size q=256, the source data block k=5, and the number of second coded data blocks r=2 as an example, the second generation matrix G2 can be shown as follows:

[0148]

[0149] As a possible example, according to formula g i,j =((k+j)*(k+i)) / ((k+i+j)*k) The second generation matrix is ​​obtained by exchanging any two rows or columns of the matrix obtained. i,j Represents the value of the element with row number i and column number j in the matrix, i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1, / represents the division operation under the Galois field GF(q), and + represents the bitwise exclusive OR operation under the Galois field GF(q).

[0150] For example, the Galois field size q=256, the source data block k=5, the number of second coded data blocks r=2, and the exchange according to formula g i,j =((k+j)*(k+i)) / ((k+i+j)*k) as an example. The second generation matrix G2 can be shown as follows:

[0151]

[0152] In some embodiments, the k source data blocks are encoded according to the second generation matrix to obtain n first encoded data blocks, which are determined according to the following formula:

[0153] d = [a; G2*a];

[0154] Wherein, d represents n first coded data blocks, G2 represents the first generator matrix, * represents the matrix multiplication operation under the Galois field GF(q), a represents k source data blocks, a=[a0,a1,...,a k-1 ] T d=[d0,d1,...,d n-1 ] T =[a0, a1, ..., a k-1 ,h0,h1,...,h r-1 ] T ,h j represents the jth second coded data block among r second coded data blocks, j is a non-negative integer less than r, and T represents transposition.

[0155] In some embodiments, the n first encoded data packets are determined according to the following formula:

[0156] d = G*a;

[0157] Wherein, d represents n first coded data packets, G represents the first generator matrix, * represents the matrix multiplication operation under the Galois field GF(q), a represents k first data packets, and a=[a0, a1, ..., a k-1 ] T Since the first k rows of the first generation matrix are an identity matrix, the first k first coded data packets of the n first coded data packets have the same value as the k first data packets, d = [d0, d1, ..., d n-1 ] T =[a0, a1, ..., a k-1 ,h0,h1,...,h r-1 ] T . Where T represents transpose, [d k , d k+1 , ..., dn-1 ]=[h0,h1,...,h r-1 ],h j represents the jth second coded data packet among r second coded data packets, where j is a non-negative integer less than r.

[0158] Exemplarily, taking the Galois field size q=256, the number of second data packets k=5, the number of second coded data packets r=2, and each second data packet containing 2 bytes as an example, k second data packets can be expressed as follows:

[0159]

[0160] In some embodiments, in g i,j =(k+j) / (k+i+j), the n first coded data packets can be determined according to the following relationship:

[0161]

[0162] In some embodiments, in g i,j =((k+j)*(k+i)) / ((k+i+j)*k), the n first coded data packets can be determined according to the following relationship:

[0163]

[0164] In some embodiments, r second encoded data packets may be obtained according to the following formula.

[0165] h = G2*a;

[0166] Wherein, h represents r second coded data packets, G2 is the second generation matrix, and a is k second data packets. Then, k second data packets and r second coded data packets are combined to obtain n first coded data packets, d = [d0, d1, ..., d n-1 ] T =[a0, a1, ..., a k-1 ,h0,h1,...,h r-1 ] T , T represents transpose.

[0167] In some embodiments, the first transmission node encodes k second data packets to obtain n first encoded data packets. The second data packets may come from a data packet of one of the following sublayers in the wireless interface protocol stack: PDCP layer, RLC layer, MAC layer, physical layer.

[0168] As an example, in the case where the second data packet comes from the PDCP layer, the second data packet is obtained according to a service data unit (SDU) data packet of the PDCP layer.

[0169] For example, Figure 4 FIG. 1 is a schematic diagram of a data packet encoding of a PDCP layer provided in an embodiment of the present application. Figure 4 , the first transmission node 1308 encodes the second data packet 1302, the number of the second data packets 1302 is k, k is an integer greater than 0, Figure 4 Taking k as 4 as an example, the k second data packets 1302 are encoded by the first generation matrix to obtain n first encoded data packets 1304, where n is an integer greater than k. Figure 4 Taking n as 6 as an example, the PDCP header is added to the first coded data packet 1304 to obtain the PDCP PDU 1306, which is transmitted to the RLC layer via the RLC channel. Then, the second transmission node 1310 receives the first coded data packets 1, 3, 4, and 5, wherein the first coded data packet 5 is the third coded data packet, and the PDCP header is removed at the PDCP layer of the second transmission node 1310, and the second data packet can be decoded and restored by XOR; wherein the white frame line portion of 1302 represents the second data packet, the black portion on the left side of 1306 represents the data packet header, and the lower left slash portion of 1304 and 1306 represents the second coded data packet.

[0170] It should be noted that Figure 4 Encode means encoding, Add header means adding a packet header, and PHY means the physical layer physics.

[0171] The following uses different scenarios to illustrate how the second data packet is obtained based on the SDU data packet of the PDCP layer.

[0172] Scenario 1: Taking the second data packet in the DC scenario as an example, the acquisition of the second data packet based on the SDU data packet of the PDCP layer is described.

[0173] For example, Figure 5 FIG. 1 is a schematic diagram of data packet encoding at the PDCP layer in a DC scenario provided by an embodiment of the present application. Figure 5 , the first transmission node 1408 encodes the second data packet 1402, the number of the second data packets 1402 is k, k is an integer greater than 0, Figure 5 Taking k as 4 as an example, the k second data packets 1402 are encoded by the first generation matrix to obtain n first encoded data packets 1404, where n is an integer greater than k. Figure 5Taking n as 6 as an example, the PDCP PDU is obtained by adding a PDCP header to the first coded data packet 1404. In the DC scenario, the coded PDCP PDU is split according to the channel state information reference signal (CSI-RS), downlink control information (DCI) and other channel state information. Cells with good channel quality or idle cells carry more first coded data packets. Figure 5 After encoding the four second data packets 1402, six first coded data packets 1404 are obtained, and then a PDCP header is added to the first coded data packet 1404 to obtain six PDCP PDUs. The primary cell transmits three PDCP PDUs, and the secondary cell transmits three PDCP PDUs. The three PDCP PDUs transmitted by the primary cell are represented by 1406A, and the three PDCP PDUs transmitted by the secondary cell are represented by 1406B. The second transmission node receives the first coded data packets 1 and 2 transmitted via the primary cell, and receives the first coded data packets 4 and 5 transmitted via the secondary cell, wherein the first coded data packet 5 is the third coded data packet. The PDCP header is removed at the PDCP layer of the second transmission node, and the second data packet can be decoded and restored by an XOR operation.

[0174] Scenario 2: Taking the acquisition of the second data packet according to the SDU data packet of the PDCP layer in the CA scenario as an example for explanation.

[0175] For example, Figure 6 FIG. 1 is a schematic diagram of data packet encoding at the PDCP layer in a CA scenario provided by an embodiment of the present application. Figure 6 , the first transmission node 1508 encodes the second data packet 1502, the number of the second data packets 1502 is k, k is an integer greater than 0, Figure 6 Taking k as 4 as an example, the k second data packets 1502 are encoded by the first generation matrix to obtain n first encoded data packets 1504, where n is an integer greater than k. Figure 6 In the example, n is 6, and then the PDCP header is added to the first coded data packet 1504 to obtain the PDCP PDU. In the CA scenario, the coded PDCP PDU is split according to CSI-RS, DCI and other channel state information and sent through different carriers. Figure 6The four second data packets 1502 are encoded to obtain six first encoded data packets 1504, and then a PDCP header is added to the first encoded data packet 1504 to obtain six PDCP PDUs, three PDCP PDUs of the first carrier transmission 1506A, and three PDCP PDUs of the second carrier transmission 1506B; the second transmission node receives the first encoded data packets 1 and 2 transmitted via the first carrier, and receives the first encoded data packets 4 and 5 transmitted via the second carrier, wherein the first encoded data packet 5 is the third encoded data packet, and the PDCP header is removed at the PDCP layer of the second transmission node, and the second data packet can be decoded and restored by an XOR operation.

[0176] It should be noted that the first carrier and the second carrier are merely expressions of different carriers and have no order relationship.

[0177] As another example, in the case where the second data packet comes from the RLC layer, the second data packet is obtained according to the SDU data packet of the RLC layer.

[0178] For example, Figure 7 FIG. 1 is a schematic diagram of a data packet encoding of an RLC layer provided in an embodiment of the present application. Figure 7 , the first transmission node 1608 encodes the second data packet 1602, the number of the second data packets 1602 is k, k is an integer greater than 0, Figure 7 Taking k as 4 as an example, the k second data packets 1602 are encoded by the first generation matrix to obtain n first encoded data packets 1604, where n is an integer greater than k. Figure 7 Take n as 6 as an example, and then add the RLC header to the first coded data packet 1604 to obtain the RLC PDU 1606. Then, the second transmission node 1610 receives the first coded data packets 1, 3, 4, and 5, wherein the first coded data packet 5 is the third coded data packet, and removes the RLC header at the RLC layer of the second transmission node 1610, and decodes and restores the second data packet through an XOR operation; wherein the white frame line portion 1602 represents the second data packet, the left black portion in 1606 represents the data packet header, and the lower left oblique line portion in 1604 and 1606 represents the second coded data packet.

[0179] As another example, in the case where the second data packet comes from the MAC layer, the second data packet is obtained according to the SDU data packet of the MAC layer.

[0180] For example, Figure 8 FIG. 1 is a schematic diagram of a MAC layer data packet encoding provided by an embodiment of the present application. Figure 8 , the first transmission node 1708 encodes the second data packet 1702, the number of the second data packets 1702 is k, k is an integer greater than 0, Figure 8 Taking k as 4 as an example, the k second data packets 1702 are encoded by the first generation matrix to obtain n first encoded data packets 1704, where n is an integer greater than k. Figure 8 Take n as 6 as an example, and then add the MAC header to the first coded data packet 1704 to obtain the PDU 1706 of the PDCP. Then, the second transmission node 1710 receives the first coded data packets 1, 3, 4, and 5, among which the first coded data packet 5 is the third coded data packet. The MAC header is removed at the MAC layer of the second transmission node 1710, and the second data packet can be decoded and restored by an XOR operation; wherein the white frame line portion of 1702 represents the second data packet, the left black portion of 1706 represents the data packet header, and the left lower slash portion of 1704 and 1706 represents the second coded data packet.

[0181] As another example, in the case where the second data packets come from the physical layer, the second data packets are obtained according to the transmission blocks of the physical layer, and each second data packet corresponds to a code block.

[0182] For example, Fig. 9 , which is a schematic diagram of a code block encoding of a physical layer provided in an embodiment of the present application. The first transmission node 1808 encodes the second data packet 1802, the number of the second data packets 1802 is k, and k is an integer greater than 0. Fig. 9 Taking k as 4 as an example, the k second data packets 1802 are encoded by the first generation matrix to obtain n first encoded data packets 1804, where n is an integer greater than k. Fig. 9 In the example, n is 6. Then, the second transmission node 1810 receives the first coded data packets 1, 3, 4, and 5, and decodes and restores the second data packet through an XOR operation. Among them, the first coded data packet 5 is the third coded data packet,

[0183] S104. Send all or part of the n first coded data packets to the second transmission node.

[0184] In some embodiments, the first coded data packet has an index identifier I(u), and the index identifier I(u) of a first coded data packet is used to indicate the order in which the first transmission node generates the first coded data packet, and / or to indicate the position of the k second data packets in the n first coded data packets. Wherein, 0≤u≤n-1, I(,u) is a non-negative integer.

[0185] In the case where the index identifier I(u) of the first coded data packet is used to represent the order in which the first transmission node generates the first coded data packet, as an example, n first coded data packets d=[d0, d1, ..., d n-1] The corresponding index identifiers<I(0),I(1),...,I(n-1)> = <0, 1, ..., n-1>. As another example, n first coded data packets d = [d0, d1, ..., d n-1 ] The corresponding index identifiers<I(1),I(2),...,I(n)> =<1, 2, ..., n>.

[0186] In the case where the index identifier I(u) of the first coded data packet is used to indicate the positions of the k second data packets in the n first coded data packets, as an example, the index identifier<I(0),I(1),...,I(n-1)> = <0, 1, ..., n-1>, where<I(0),I(1),...,I(k-1)> = <0, 1, ..., k-1> represents the index identifiers of k second data packets. As another example, the index identifier<I(0),I(1),...,I(n-1)> = <1, 2, ..., n>, where<I(0),I(1),...,I(k-1)> =<1, 2, ..., k> represents the index identifiers of k second data packets.

[0187] In some embodiments, the index identifier of the first encoded data packet can be carried in the header information of the first encoded data packet, that is, the index identifier of the first encoded data packet transmitted by the first transmission node can be carried and sent through the header information. It should be understood that the index identifier of the first encoded data packet is carried in the header information, which can ensure that the second transmission node can stably and reliably receive the index identifier of the first encoded data packet, thereby ensuring the stability of data transmission.

[0188] In some embodiments, the first transmission node may send all or part of n first coded data packets to the second transmission node through M links, and the number of first coded data packets sent by the i-th link among the M links may be M. i is less than or equal to n, M is a positive integer, and i is a positive integer less than or equal to M. As an example, M is equal to 1, 2 or 4.

[0189] For example, when M is equal to 1, all or part of the n first coded data packets are transmitted to the second transmission node through one link.

[0190] For another example, when M is greater than 1, each link sends the same number of first coded data packets, and each link sends n / M first coded data packets.

[0191] In some embodiments, the first transmission node may also determine the number of first coded data packets transmitted by a link according to the channel quality of the link. For example, the channel quality of the link is positively correlated with the number of first coded data packets transmitted by the link, that is, the better the channel quality of the link, the more first data packets are transmitted.

[0192] Taking the channel quality of the link as the average packet loss rate of the link as an example, illustratively, taking M equal to 2 as an example, the average packet loss rate of the first link is P1, the average packet loss rate of the second link is P2, the number of first encoded data packets transmitted by the first link is M1=n*P2 / (P1+P2), and the number of first encoded data packets transmitted by the second link is M2=n*P1 / (P1+P2).

[0193] It should be understood that in step S104, the first transmission node transmits part of the first coded data packets or all of the n first coded data packets to the second transmission node, so that the second transmission node receives enough first coded data packets for processing. That is to say, since the first transmission node only sends the corresponding first coded data packets to the second transmission node, the second transmission node can effectively complete the decoding and avoid the delay caused by the retransmission of data packets. When the second transmission node only loses one second data packet and the third coded data packet is correctly received, the lost second data packet can be obtained by a simple XOR operation, thereby ensuring the reliability of data transmission and reducing resource overhead.

[0194] based on Figure 2 The embodiment shown at least brings the following beneficial effects: by converting m first data packets into k second data packets, the k second data packets have the same size, so that the k second data packets can be smoothly encoded according to the first generation matrix to obtain n first coded data packets, so as to ensure the reliability of data transmission. The n first coded data packets are obtained by encoding the k second data packets according to the first generation matrix. Since any k rows in the first generation matrix are linearly independent under the Galois field GF(q), it is ensured that when any r first coded data packets among the n first coded data packets fail, the k second data packets can be successfully decoded, so that the amount of coding operation can be reduced without reducing the storage reliability, that is, the resource overhead is reduced, and there is a target row in the second generation matrix, so that the failed first coded data packet can be restored by a simple XOR operation, which reduces the amount of operation, that is, reduces the resource overhead, thereby achieving the reliability of data transmission and reducing the resource overhead.

[0195] In some embodiments, Fig.10 As shown, the embodiment of the present application provides a data processing method, which is applied to a second transmission node, and the second transmission node can be the above Figure 1 The second transmission node 120 shown in the figure comprises the following steps:

[0196] S201. Obtain the number n of first coded data packets, the number k of second data packets, an index identifier of each first coded data packet, and k correctly received first coded data packets generated by a first transmission node.

[0197] Wherein, n and k are positive integers, and the k correctly received first coded data packets are a subset of the n first coded data packets.

[0198] S202: Process k correctly received first coded data packets according to the number n of first coded data packets, the number k of second data packets and the index identifier of each first coded data packet to obtain lost second data packets.

[0199] As a possible example, step S202 may include the following steps:

[0200] S1. Determine unreceived first coded data packets according to the number of first coded data packets, the index identifier of each first coded data packet, and k correctly received first coded data packets.

[0201] It should be understood that the number of first coded data packets is the number of first coded data packets sent by the first transmission node to the second transmission node. Based on the number of first coded data packets, the index identifier of each first coded data packet and the number k of second data packets, the index identifier of the unreceived first coded data packet can be determined, and then based on the k correctly received first coded data packets, the unreceived second data packet can be restored.

[0202] After determining the index identifier of the first encoded data packet that has not been received, at least one of the following steps S2 to S4 may be included:

[0203] S2. When the unreceived first coded data packets include one second data packet and the second transmission node receives the third coded data packet, perform XOR processing on the k-1 received second data packets and the third coded data packet to obtain the lost second data packet.

[0204] It can be seen from the above that the third coded data packet is a data packet obtained by encoding the second data packet according to the target row in the second generation matrix, and the values ​​of the elements in the target row are all 1.

[0205] S3. When only one second data packet is included in the unreceived first coded data packets, and the second transmission node receives other second coded data packets except the third coded data packet, the lost second data packet is determined according to Gaussian elimination or at least one of the following parameters: a second generating matrix, k-1 received second data packets, 1 received second coded data packet, and index identifiers of k received first coded data packets.

[0206] S4. When the unreceived first coded data packets include p second data packets and the second transmission node receives at least p second coded data packets, the lost second data packets are determined according to Gaussian elimination or at least one of the following parameters: a second generating matrix, kp received second data packets, at least p received second coded data packets, and index identifiers of k received first coded data packets.

[0207] Here, p is an integer greater than 1 and less than or equal to r.

[0208] It should be understood that when the number of unreceived first coded data packets exceeds r, data recovery cannot be completed, r=nk, r is a positive integer. When the number of unreceived first coded data packets is 0, data is not lost and data recovery is not required. When the unreceived first coded data packets include 0 second coded data packets, data is not lost and data recovery is not required.

[0209] It should be noted that S2, S3 and S4 are only descriptions for different situations, and there is no order relationship between S2, S3 and S4.

[0210] based on Fig.10 The illustrated embodiment brings at least the following beneficial effects: when the number of unreceived first coded data packets does not exceed r, the second transmission node obtains the unreceived second data packets based on the k correctly received first coded data packets, and since any k rows of the first generating matrix are linearly independent, it is only necessary to obtain any k first coded data packets and complete data recovery through a simple XOR operation without obtaining more than k first coded data packets, thereby ensuring the reliability and throughput of data transmission and reducing resource overhead.

[0211] The above mainly introduces the solution provided by the present application from the perspective of the interaction between each node. It is understandable that each node, such as the first transmission node or the second transmission node, includes a hardware structure and / or software module corresponding to the execution of each function in order to realize the above functions. It should be easily appreciated by those skilled in the art that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present invention can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.

[0212] Fig.11 FIG. 1 is a schematic diagram showing the composition of a communication device provided in an embodiment of the present application. Fig.11 As shown, the communication device 30 includes an acquisition unit 301 , a processing unit 302 and a sending unit 303 .

[0213] The communication device 30 may be the first transmission node or a chip in the first transmission node. When the communication device 30 is used to implement the function of the first transmission node in the above embodiment, each unit is specifically used to implement the following functions.

[0214] An acquiring unit 301 is configured to acquire m first data packets, where m is a positive integer;

[0215] The processing unit 302 is configured to determine k second data packets according to the m first data packets, where k is a positive integer;

[0216] The processing unit 302 is further configured to encode the k second data packets according to the first generation matrix to obtain n first encoded data packets, where n is a positive integer, wherein the value range of the elements in the first generation matrix is ​​[0, q-1], and q is a prime number or a prime power;

[0217] The sending unit 303 is configured to send all or part of the n first coded data packets to the second transmission node.

[0218] In some embodiments, the m first data packets include at least one of the following: data packets of the packet data convergence protocol PDCP layer in the wireless interface protocol stack; data packets of the radio link control RLC layer in the wireless interface protocol stack; data packets of the medium access control MAC layer in the wireless interface protocol stack; and data packets of the physical layer in the wireless interface protocol stack.

[0219] In some embodiments, the processing unit 302 is specifically used to: when the m first data packets have the same size, use the m first data packets as k second data packets, m=k; when the m first data packets do not have the same size, fill the size of the first data packets in the m first data packets except the target first data packet to the same size as the target first data packet, to obtain k second data packets, the target first data packet being the largest data packet among the m first data packets, m=k.

[0220] In some embodiments, the processing unit 302 is specifically used to: pre-process the m first data packets to obtain k second data packets, and the pre-processing includes at least one of the following: combination processing, filling processing, and segmentation processing.

[0221] In some embodiments, the number k of second data packets is determined based on at least one of: the number m of first data packets, the size S of m first data packets, the size T of a second data packet, channel state information, capability information of the user equipment, control signaling, the number of links, and the number of carriers; wherein the channel state information includes at least one of the following: channel quality indication information, rank indication information, and precoding matrix indication information; the capability information of the user equipment includes at least one of the following: the upper limit value of the number of antennas supported by the user equipment, the upper limit value of the data transmission rate supported by the user equipment, and the upper limit value of the modulation order supported by the user equipment.

[0222] In some embodiments, when the channel state information is channel quality indication information, the number k of second data packets is determined according to the index value of the channel quality indication information; when the channel state information is rank indication information, the number k of second data packets is determined according to the value of the rank indication information; when the channel state information is precoding matrix indication information, the number k of second data packets is determined according to the index value of the precoding matrix indication information.

[0223] In some embodiments, the first generation matrix is ​​determined according to one of the following: determined according to a preconfiguration; determined according to the number k of the second data packets and / or the number n of the first encoded data packets.

[0224] In some embodiments, the first generating matrix includes a unit matrix and a second generating matrix, the size of the unit matrix is ​​k×k, the size of the second generating matrix is ​​r×k, and n=r+k, r is a positive integer; the n first encoded data packets include k second data packets and r second encoded data packets, and the r second encoded data packets are data packets obtained by encoding the k second data packets according to the second generating matrix.

[0225] In some embodiments, the number r of second encoded data packets is determined based on at least one of: the number k of second data packets, channel state information, and control signaling; wherein the channel state information includes at least one of: channel quality indication information, rank indication information, and precoding matrix indication information.

[0226] In some embodiments, for any k rows in the first generator matrix, any k rows are linearly independent under the Galois Field GF(q); wherein q is a prime number or a prime power.

[0227] In some embodiments, for any r columns in the merged matrix consisting of the second generator matrix and the unit matrix of size r×r, any r columns are linearly independent under the Galois Field GF(q); wherein q is a prime number or a prime power.

[0228] In some embodiments, there is a target row in the second generation matrix, and the values ​​of the elements in the target row are all 1.

[0229] In some embodiments, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following parameters: k, i, j; wherein i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1.

[0230] In some embodiments, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following formula:

[0231] g i,j =(k+j) / (k+i+j);

[0232] Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1, / represents the division operation under the Galois field GF(q), and + represents the bitwise exclusive OR operation under the Galois field GF(q).

[0233] In some embodiments, the value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following formula:

[0234] g i,j =((k+j)*(k+i)) / ((k+i+j)*k);

[0235] Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, / represents a division operation under the Galois field GF(q), + represents a bitwise exclusive OR operation under the Galois field GF(q), * represents a multiplication operation under the Galois field GF(q), and q is a prime number or a prime power.

[0236] In some embodiments, any two rows or two columns in the second generator matrix may be swapped.

[0237] In some embodiments, the n first coded data blocks are determined according to the following formula:

[0238] d = G*a;

[0239] Wherein, d represents n first coded data blocks, G represents a first generator matrix, * represents a multiplication operation under the Galois field GF(q), a represents k second data packets, and q is a prime number or a prime power.

[0240] In some embodiments, the first encoded data packet has an index identifier, which is used to represent the order in which the first transmission node generates the first encoded data packets and / or to represent the positions of the k second data packets in the n first encoded data packets.

[0241] In some embodiments, the index identifier of the first encoded data packet is carried in the header information of the first encoded data packet.

[0242] Fig.12 FIG. 1 is a schematic diagram showing the composition of another communication device provided in an embodiment of the present application. Fig.12 As shown, the communication device 40 includes an acquisition unit 401 and a processing unit 402 .

[0243] The communication device 40 may be the second transmission node or a chip in the second transmission node. When the communication device 40 is used to implement the function of the second transmission node in the above embodiment, each unit is specifically used to implement the following functions.

[0244] An acquisition unit 401 is used to acquire the number n of first coded data packets, the number k of second data packets, an index identifier of each first coded data packet, and k correctly received first coded data packets generated by a first transmission node; wherein k is a positive integer, and the k correctly received first coded data packets are a subset of n first coded data packets obtained by the first transmission node encoding k second data packets according to a first generation matrix;

[0245] The processing unit 402 is configured to process k correctly received first coded data packets according to the number n of first coded data packets, the number k of second data packets and the index identifier of each first coded data packet to obtain lost second data packets.

[0246] In some embodiments, the processing unit 402 is specifically configured to: determine the index identifier of the unreceived first encoded data packet according to the number of first encoded data packets, the index identifier of each first encoded data packet and the number k of second data packets;

[0247] When the unreceived first coded data packets include one second data packet and the second transmission node receives the third coded data packet, an XOR process is performed on the k-1 received second data packets and the third coded data packet to obtain the lost second data packet; wherein the third coded data packet is a data packet obtained by encoding the second data packet according to the target row in the second generation matrix, and the values ​​of the elements in the target row are all 1;

[0248] When only one second data packet is included in the unreceived first coded data packets, and the second transmission node receives other second coded data packets except the third coded data packet, the lost second data packet is determined according to Gaussian elimination or at least one of the following parameters: a second generation matrix, k-1 received second data packets, one received second coded data packet, and index identifiers of k received first coded data packets;

[0249] When the unreceived first coded data packets include p second data packets, and the second transmission node receives at least p second coded data packets, the lost second data packets are determined based on Gaussian elimination or at least one of the following parameters: a second generation matrix, kp received second data packets, at least p received second coded data packets, and index identifiers of k received first coded data packets; wherein p is an integer greater than 1 and less than or equal to r.

[0250] It should be noted that Fig.11 and Fig.12 The units in the system may also be referred to as modules, for example, the sending unit may be referred to as a sending module. Fig.11 and Fig.12 In the illustrated embodiment, the names of the various units may not be the names shown in the figure. For example, the sending unit may also be called a communication unit, and the acquiring unit may also be called a communication unit.

[0251] Fig.11 and Fig.12If each unit in the embodiment is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (processor) to perform all or part of the steps of the methods of each embodiment of the present application. The storage medium for storing computer software products includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program codes.

[0252] When the communication device 30 or the communication device 40 implements the functions of the integrated modules in the form of hardware, the present application provides a schematic diagram of the structure of the communication device. Fig.13 As shown, the communication device 50 includes: a processor 502 , a communication interface 503 , and a bus 504 . Optionally, the communication device 50 may further include a memory 501 .

[0253] The processor 502 may be a processor that implements or executes various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of the present application. The processor 502 may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array, or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of the present application. The processor 502 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0254] The communication interface 503 is used to connect with other devices via a communication network, such as Ethernet, wireless access network, wireless local area network (WLAN), etc.

[0255] The memory 501 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program codes in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.

[0256] As a possible implementation, the memory 501 may exist independently of the processor 502, and the memory 501 may be connected to the processor 502 via a bus 504 for storing instructions or program codes. When the processor 502 calls and executes the instructions or program codes stored in the memory 501, the data processing method provided in the embodiment of the present application can be implemented.

[0257] In another possible implementation, the memory 501 may also be integrated with the processor 502 .

[0258] The bus 504 may be an extended industry standard architecture (EISA) bus, etc. The bus 504 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.12 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0259] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and conciseness of the description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the base station or terminal is divided into different functional modules to complete all or part of the functions described above.

[0260] The embodiment of the present application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be completed by computer instructions to instruct the relevant hardware, and the program can be stored in the above computer-readable storage medium. When the program is executed, it may include the processes of the above method embodiments. The computer-readable storage medium can be the memory or memory of any of the above embodiments. The above computer-readable storage medium can also be an external storage device of the above base station or terminal, such as a plug-in hard disk, a smart memory card (smart media card, SMC), a secure digital (secure digital, SD) card, a flash card (flash card), etc. equipped on the above base station or terminal. Further, the above computer-readable storage medium can also include both the internal storage unit of the above base station or terminal and an external storage device. The above computer-readable storage medium is used to store the above computer program and other programs and data required by the above base station or terminal. The above computer-readable storage medium can also be used to temporarily store data that has been output or is to be output.

[0261] An embodiment of the present application also provides a computer program product, which includes a computer program. When the computer program product is run on a computer, the computer is enabled to execute any one of the data processing methods provided in the above embodiments.

[0262] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other changes to the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple situations. A single processor or other unit can implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.

[0263] Although the present application has been described in conjunction with specific features and embodiments thereof, it is obvious that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are deemed to have covered any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

[0264] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A data processing method, It is characterized in that Applied to a first transmission node, the method includes: Get m first data packets, where m is a positive integer; Determine k second data packets according to the m first data packets, where k is a positive integer; Encode the k second data packets according to the first generation matrix to obtain n first encoded data packets, where n is a positive integer, wherein the value range of the elements in the first generation matrix is ​​[0, q-1], and q is a prime number or a prime power; All or part of the n first coded data packets are sent to the second transmission node.

2. The method according to claim 1, It is characterized in that The m first data packets include at least one of the following: Data packets of the Packet Data Convergence Protocol (PDCP) layer in the radio interface protocol stack; Data packets of the radio link control RLC layer in the radio interface protocol stack; Data packets of the media access control MAC layer in the wireless interface protocol stack; Data packets at the physical layer in the radio interface protocol stack.

3. The method according to claim 1, It is characterized in that The step of determining k second data packets according to the m first data packets comprises at least one of the following: When the m first data packets have the same size, the m first data packets are used as the k second data packets, m=k; When the m first data packets do not have the same size, the sizes of the first data packets except the target first data packet among the m first data packets are padded to the same size as the target first data packet to obtain the k second data packets, and the target first data packet is the largest data packet among the m first data packets, m=k.

4. The method according to claim 1, It is characterized in that The step of determining k second data packets according to the m first data packets comprises: The m first data packets are preprocessed to obtain the k second data packets; the preprocessing includes at least one of the following: combination processing, filling processing, and segmentation processing.

5. The method according to claim 1, It is characterized in that The number k of the second data packets is determined according to at least one of the following: The number m of the first data packets, the size S of the m first data packets, the size T of a second data packet, channel state information, capability information of the user equipment, control signaling, the number of links and the number of carriers; wherein the channel state information includes at least one of the following: channel quality indication information, rank indication information and precoding matrix indication information; the capability information of the user equipment includes at least one of the following: the upper limit value of the number of antennas supported by the user equipment, the upper limit value of the data transmission rate supported by the user equipment, and the upper limit value of the modulation order supported by the user equipment.

6. The method according to claim 5, It is characterized in that When the channel state information is the channel quality indication information, determining the number k of the second data packets according to the index value of the channel quality indication information; When the channel state information is the rank indication information, determining the number k of the second data packets according to the value of the rank indication information; When the channel state information is the precoding matrix indication information, the number k of the second data packets is determined according to the index value of the precoding matrix indication information.

7. The method according to claim 1, It is characterized in that The first generator matrix is ​​determined according to one of the following: Determined according to pre-configuration; The method is determined according to the number k of the second data packets and / or the number n of the first encoded data packets.

8. The method according to claim 1, It is characterized in that The first generator matrix includes a unit matrix and a second generator matrix, the unit matrix has a size of k×k, the second generator matrix has a size of r×k, and n=r+k, where r is a positive integer; The n first coded data packets include k second data packets and r second coded data packets, and the r second coded data packets are data packets obtained by encoding the k second data packets according to the second generation matrix.

9. The method according to claim 8, It is characterized in that The number r of the second encoded data packets is determined according to at least one of the following: The number k of the second data packets, channel state information, and control signaling; wherein the channel state information includes at least one of the following: channel quality indication information, rank indication information, and precoding matrix indication information.

10. The method according to claim 1, It is characterized in that For any k rows in the first generator matrix, the k rows are linearly independent under the Galois Field GF(q); wherein q is a prime number or a prime power.

11. The method according to claim 8, It is characterized in that For any r columns in the merged matrix consisting of the second generator matrix and the unit matrix of size r×r, the any r columns are linearly independent under the Galois Field GF(q); wherein q is a prime number or a prime power.

12. The method according to claim 8, It is characterized in that There is a target row in the second generation matrix, and the values ​​of the elements in the target row are all 1.

13. The method according to claim 8, It is characterized in that The value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following parameters: k, i, j; wherein i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1.

14. The method according to claim 13, It is characterized in that The value of the element with row number i and column number j in the second generator matrix is ​​determined according to the following formula: g i,i =(k+j) / (k+i+j); Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, where i and j are both non-negative integers, and 0≤i≤r-1, 0≤j≤k-1, / represents a division operation under the Galois field GF(q), and + represents a bitwise exclusive OR operation under the Galois field GF(q).

15. The method according to claim 13, It is characterized in that The value of the element with row number i and column number j in the second generation matrix is ​​determined according to the following formula: g i,i =((k+j)*(k+i)) / ((k+i+j)*k); Among them, g i,j represents the value of the element with row number i and column number j in the second generator matrix, / represents a division operation under the Galois field GF(q), + represents a bitwise exclusive OR operation under the Galois field GF(q), * represents a multiplication operation under the Galois field GF(q), and q is a prime number or a prime power.

16. The method according to claim 14 or 15, It is characterized in that Any two rows or two columns in the second generator matrix can be exchanged.

17. The method according to claim 1, It is characterized in that The n first coded data blocks are determined according to the following formula: d = G*a; Wherein, d represents the n first coded data blocks, G represents the first generator matrix, * represents the multiplication operation under the Galois field GF(q), a represents the k second data packets, and q is a prime number or a prime power.

18. The method according to claim 1, It is characterized in that The first coded data packet has an index identifier, and the index identifier is used to represent the order in which the first transmission node generates the first coded data packets, and / or to represent the positions of the k second data packets in the n first coded data packets.

19. The method according to claim 18, It is characterized in that The index identifier of the first encoded data packet is carried in the header information of the first encoded data packet.

20. A data processing method, It is characterized in that Applied to the second transmission node, the method includes: Obtain the number n of first coded data packets, the number k of second data packets, the index identifier of each of the first coded data packets, and k correctly received first coded data packets generated by the first transmission node; wherein n, and k are positive integers, and the k correctly received first coded data packets are a subset of n first coded data packets obtained by the first transmission node encoding k second data packets according to the first generation matrix; According to the number n of the first coded data packets, the number k of the second data packets and the index identifier of each of the first coded data packets, the k correctly received first coded data packets are processed to obtain the lost second data packets.

21. The method according to claim 20, It is characterized in that The first generator matrix includes a unit matrix and a second generator matrix, the unit matrix has a size of k×k, the second generator matrix has a size of r×k, and n=r+k, where r is a positive integer; The step of processing the k correctly received first coded data packets to obtain the lost second data packet comprises: Determine the index identifier of the first encoded data packet that has not been received according to the number of the first encoded data packets, the index identifier of each of the first encoded data packets, and the number k of the second data packets; When the unreceived first coded data packet includes one second data packet and the second transmission node receives a third coded data packet, an XOR process is performed on k-1 received second data packets and the third coded data packet to obtain the lost second data packet; wherein the third coded data packet is a data packet obtained by encoding the second data packet according to a target row in the second generation matrix, and the values ​​of the elements in the target row are all 1; When only one second data packet is included in the unreceived first coded data packets, and the second transmission node receives other second coded data packets except the third coded data packet, the lost second data packet is determined according to Gaussian elimination or at least one of the following parameters: the second generation matrix, the received k-1 second data packets, the received one second coded data packet, and the index identifiers of the k received first coded data packets; When the unreceived first coded data packets include p second data packets and the second transmission node receives at least p second coded data packets, the lost second data packet is determined according to the Gaussian elimination or at least one of the following parameters: the second generating matrix, the received kp second data packets, the received at least p second coded data packets and the index identifiers of the k received first coded data packets; wherein p is an integer greater than 1 and less than or equal to r.

22. A communication device, It is characterized in that include: Processor and memory; The memory stores instructions executable by the processor; When the processor is configured to execute the instructions, the communication device implements the method according to any one of claims 1 to 21.

23. A computer-readable storage medium, It is characterized in that The computer-readable storage medium comprises computer instructions, which, when executed on a computer, cause the computer to perform the method according to any one of claims 1 to 21.

Citation Information

Cited By

  • Data processing method, apparatus, and storage medium

    EP4718756A1

  • Data processing method, apparatus, and storage medium

    WO2024250723A1