This application is filed on the basis of Chinese patent application No. 202210550053.5 filed May 20, 2022, and claims priority to the Chinese patent application, the entire contents of which are incorporated herein by reference.
The present disclosure relates to the technical field of communication, and more particularly, to a data processing method, an electronic device, and a computer-readable storage medium.
According to the 5th Generation (5G) Technical Specification (TS) of the 3rd Generation Partnership Project (3GPP), there are two retransmission mechanisms in the L2 of New Radio (NR): Hybrid Automatic Repeat Request (HARQ) in the Media Access Control (MAC) layer and Automatic Repeat-reQuest (ARQ) in the Radio Link Control (RLC) layer. To improve the reliability of data transmission, the Packet Data Convergence Protocol (PDCP) layer in L2 employs PDCP repetition, which involves repeatedly sending data packets. Although PDCP repetition can enhance reliability in Ultra Reliable Low Latency Communication (URLLC) scenarios, it is constrained by physical resource overheads, and can only be applied to small data packets. Moreover, the repeated transmission of data packets results in excessive consumption of physical resources.
Embodiments of the present disclosure provide a data processing method, an electronic device, and a computer-readable storage medium, to improve the reliability and throughput of data transmission while reducing physical resource overheads.
In accordance with a first aspect of the present disclosure, an embodiment provides a data processing method, including:
In accordance with a second aspect of the present disclosure, an embodiment provides a data processing method, including:
In accordance with a third aspect of the present disclosure, an embodiment of the present disclosure provides an electronic device, including: at least one processor; and at least one memory, configured for storing at least one program, where the at least one program, when executed by the at least one processor, causes the at least one processor to implement the data processing method described above.
In accordance with a fourth aspect of the present disclosure, an embodiment provides a computer-readable storage medium, storing a processor-executable program which, when executed by a processor, causes the processor to implement the data processing method described above.
In the embodiments of the present disclosure, a transmitting end determines a first network coding mode for a source data packet according to a pre-configured first network coding parameter, performs network coding on the source data packet based on the determined first network coding mode to generate encoded data, and transmits the encoded data to a first receiving end, such that the first receiving end receives sufficient encoded data for processing. That is to say, the transmitting end only needs to send the corresponding encoded data to the first receiving end, and the first receiving end can effectively complete the decoding. Therefore, the delay caused by repeated sending of data packets can be avoided, and the reliability and throughput of data transmission can be improved while reducing physical resource overheads, thereby filling in the technical gap in related methods.
To make the objects, technical schemes, and advantages of the present disclosure clear, it is described in further detail with the accompanying drawings and examples. It should be understood that the specific embodiments described herein are provided merely for illustrative purposes and are not intended to limit the scope of the disclosure.
It is also noted that, although logical orders are presented in the flowcharts, the steps shown or described may, in some cases, be executed in an order different from that shown. The terms such as “first,” “second,” and similar terms in the description, claims, and accompanying drawings are used to distinguish between similar objects and do not necessarily indicate a specific sequence or precedence.
The present disclosure provides a data processing method, an electronic device, and a computer-readable storage medium. In the data processing method of an embodiment, a transmitting end determines a first network coding mode for a source data packet according to a pre-configured first network coding parameter, performs network coding on the source data packet based on the determined first network coding mode to generate encoded data, and transmits the encoded data to a first receiving end, such that the first receiving end receives sufficient encoded data for processing. That is to say, the transmitting end only needs to send the corresponding encoded data to the first receiving end, and the first receiving end can effectively complete the decoding. Therefore, the delay caused by repeated sending of data packets can be avoided, and the reliability and throughput of data transmission can be improved while reducing physical resource overheads, thereby filling in the technical gap in related methods.
The embodiments of the present disclosure will be further described in detail below with reference to the accompanying drawings.
In the example of
In an embodiment, the relative positions, numbers, etc., of the first receiving end 120 and the transmitting end 110 may be set according to specific application scenarios. For example, the transmitting end 110 can radiate a signal to the outside, and the first receiving end 120 may move along a trajectory formed by the transmitting end 110 when radiating the signal to the outside. It can be understood that if there are a plurality of first receiving ends 120 and different first receiving ends 120 are arranged in the above manner, the wireless signal sent by the transmitting end 110 can be received at different spatial positions. It should be noted that the spatial positions may be different geographical locations.
In an example of
In an embodiment, the number of second receiving ends 130 may be one or more, which is not limited and may be set by those having ordinary skills in the art according to requirements in actual application scenarios. In other words, the first receiving end 120 may interact with one second receiving end 130 individually or with a plurality of second receiving ends 130 respectively, which does not affect functional applications of the first receiving end 120.
In an implementation, the transmitting end 110, the first receiving end 120, or the second receiving end 130 may include, but not limited to, one of the following devices: a Base Station (BS), an Access Point (AP), a NodeB, a generalized Node B (g NodeB), a Radio Network Controller (RNC), an Evolved NodeB (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), which is not particularly limited in this embodiment.
In an implementation, the transmitting end 110, the first receiving end 120, or the second receiving end 130 may be referred to as an access terminal device, a User Equipment (UE), a subscriber unit, a subscriber station, a mobile station, a remote station, a remote terminal device, a mobile device, a user terminal device, a wireless communication device, a user agent, or a user device. For example, the transmitting end 110 may be a cellular phone, a cordless telephone, a Session Initiation Protocol (SIP) telephone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a handheld device with a wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a 5G network or future evolved networks, etc., which is not limited in this embodiment.
In an embodiment, the implementation environment for executing the data processing method may be applied to, but not limited to, the 5G TS of the 3GPP. However, it can be understood that the development of future 6th Generation (6G) communication technologies have higher requirements on the data transmission rate, transmission delay, and data transmission reliability, and different application industries also have more refined requirements on the communication reliability, delay, and rate. Component-based design of Radio Interface Protocol stacks may become an important research direction. Enterprises can choose components according to their own requirements under the framework allowed by the Radio Interface Protocol stack to build a communication network that meets the requirements of enterprises. Network coding can also be used as an option in 6G technology in the form of components to improve the reliability and throughput of data transmission. That is to say, the implementation environment for executing the data processing method in this embodiment may also be applied, but not limited to, 6G communication or future-generation communication networks.
The transmitting end 110 has at least functions of determining a first network coding mode for a source data packet according to a pre-configured first network coding parameter, encodes the source data packet according to the first network coding mode to obtain a first encoded data packet, and sending the first encoded data packet to the first receiving end 120.
The first receiving end 120 has at least functions of receiving the first encoded data packet sent by the transmitting end 110 and processing the first encoded data packet. The first encoded data packet is obtained by the transmitting end 110 by encoding the source data packet according to the first network coding mode for the source data packet, and the first network coding mode is determined by the transmitting end 110 according to the pre-configured first network coding parameter.
The second receiving end 130 has at least a function of receiving the first encoded data packet sent by the first receiving end 120 or receiving a third encoded data packet sent by the first receiving end 120. The third encoded data packet is obtained by the first receiving end 120 by decoding the first encoded data packet to obtain the source data packet and encoding the source data packet.
In an embodiment, the above functions of the transmitting end 110, the first receiving end 120, or the second receiving end 130 may be applied to different application scenarios, which is not limited herein.
It can be understood by those having ordinary skills in the art that the implementation environment may be applied to 5G and 6G communication network systems, future evolved mobile communication network systems, etc., which is not particularly limited in this embodiment.
Those having ordinary skills in the art may understand that the implementation environments shown in
Based on the above implementation environment, various embodiments of the data processing method of the present disclosure are proposed below.
At S110, when at least one source data packet is acquired, a first network coding mode for the at least one source data packet is determined according to a pre-configured first network coding parameter.
In an embodiment, the execution entity of the data processing method in this embodiment may be, but not limited to, the transmitting end 110 in the embodiment shown in
In this step, the transmitting end determines the first network coding mode for the source data packet according to the pre-configured first network coding parameter, so as to perform network coding on the source data packet based on the first network coding mode to generate encoded data in subsequent steps.
In an embodiment, the source data packet includes at least one of:
It can be understood that the source data packet may also be set according to specific application scenarios, which is not limited in this embodiment. Methods for acquiring the source data packet are well known to those having ordinary skills in the art, so the details will not be described herein. For example, the source data packet is acquired from a Radio Interface Protocol stack.
In an embodiment, when there is network coding in a plurality of Radio Interface Protocol stacks, the source data packets in any two of the Radio Interface Protocol stacks correspond to different first network coding modes. In other words, first network coding modes corresponding to source data packets in different Radio Interface Protocol stacks can be distinguished, so this characteristic can be used as a determination criterion to detect the source of a source data packet in the network space. For example, the Radio Interface Protocol stack to which the source data packet belongs can be further determined according to the source of the source data packet, which is not limited herein.
In an embodiment, the first network coding mode includes, but not limited to, at least one of:
It can be understood that the first network coding mode may also be set according to specific application scenarios, which is not limited herein. Specific application principle of the above network coding modes will be described respectively in the following embodiments and will not be described in detail here.
In an embodiment, the first network coding parameter includes, but not limited to, at least one of:
A specific configuration content of the first network coding parameter may be:
Based on the first network coding mode and the first network coding parameters, it may be determined that a specific first network coding mode may have a mapping relationship with one or more first network coding parameters. The mapping relationship includes, but not limited to, a mapping formula, a mapping table, a mapping chart, and other expressions indicating a correspondence relationship. The mapping relationship will be described in the following embodiments.
It can be understood that the first network coding parameter may also be set according to specific application scenarios, which is not limited herein. Specific application principle of the above first network coding parameter will be described in the following embodiments and will not be described in detail here.
In an embodiment of the present disclosure, steps prior to S110 are further described, and prior to S110, the method further include at least one of:
In this step, the pre-configured first network coding parameter may be sent through higher-layer signaling, or may be carried by the source data packet, for example, carried and sent by header information of the source data packet, so as to ensure that the pre-configured first network coding parameter can be obtained stably and reliably. The method for configuring the first network coding parameter may also be selected by those having ordinary skills in the art according to specific application scenarios, which is not limited herein.
At S120, the at least one source data packet is encoded according to the first network coding mode to obtain a first encoded data packet.
In this step, because the first network coding mode for the source data packet has been determined in S110, the source data packet may be encoded according to the first network coding mode to obtain a first encoded data packet, such that the obtained first encoded data packet can be sent to the first receiving end in subsequent steps, and the first receiving end can process the first encoded data packet.
Specific examples are given below to illustrate the operating principle and procedures of the foregoing embodiments.
For S120, k source data packets D=[D0; D1; . . . ; Dk-1] are input, where an ith source data packet is defined as Di=└di,0, di,1, . . . , di,T-1┘, i=0, 1, . . . , k−1, which has a size of T bytes.
The source data packets are encoded to output n first encoded data packets R=[R0; R1; . . . ; Rn-1], where a jth first encoded data packet is defined as Rj=└rj,0, rj,1, . . . , rj,T-1┘, j=0, 1, . . . , n−1, which has a size of T bytes, k being an integer greater than 0, and T being an integer greater than 0.
In an embodiment, the source data packet may be encoded according to the first network coding mode by a variety of methods, which may be selected by those having ordinary skills in the art according to specific scenarios. Specific implementations will be described below.
When the first network coding mode includes LT coding, the first network coding parameter includes at least one of:
In an implementation, when the first network coding parameter includes the first random seed, the first random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the second random seed, the second random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the first random seed and the second random seed, the first random seed and the second random seed are determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
As shown in
At S1200, a degree of one of the first encoded data packets is randomly generated according to a first degree distribution and the first random seed, where the first degree distribution is determined according to the first degree distribution indication.
At S1201, a target quantity of source data packets is selected from the source data packets based on the second random seed, where the target quantity is the generated degree of the first encoded data packet.
At S1202, encoding computation is performed on the target quantity of source data packets and encoding matrices corresponding to the target quantity of source data packets to obtain a first encoded data packet.
In this step, with the use of the first random seed, the second random seed, and the first degree distribution indication in combination for processing, encoding computation can be performed on the target quantity of source data packets and encoding matrices corresponding to the target quantity of source data packets to obtain the first encoded data packet, such that the first encoded data packet can be further sent out in subsequent steps.
It can be understood that the first random seed, the second random seed, and the first degree distribution indication are well known to those having ordinary skills in the art and therefore will not be described in detail herein. Specific application scenarios of the first random seed, the second random seed, and the first degree distribution indication will be described in the following examples.
As shown in
At step one, raw data is evenly divided into k source data packets, where an ith source data packet is defined as Di, i=0, 1, . . . , k−1, and k is a positive integer.
At step two, a degree d of a jth encoded data packet Rj is randomly generated according to a degree distribution and a first random seed, where j is a non-negative integer, d is a positive integer, and the degree distribution is determined according to the first degree distribution indication.
At step three, d integers n1, n2, . . . nd are randomly and evenly selected from 0 to k−1 according to a second random seed.
At step four, a jth encoded data packet Rj is obtained using an exclusive OR calculation formula according to d source data packets with indexes n1, n2, . . . nd:
The above steps two, three, and four are repeated to generate encoded data packets. Matrix multiplication may be used to express the encoding process of the steps two, three, and four as follows:
where G represents the encoding matrix, with a size of n rows and k columns, and n is the number of times an LT encoded data packet is repeatedly generated in the steps two, three, and four. In a jth row vector of the encoding matrix, elements corresponding to indexes n1, n2, . . . nd generated in the step three are equal to 1, and the remaining elements are equal to 0. As can be seen, in the LT coding example shown in
In an embodiment, because this embodiment and the following related embodiments are all described using the first encoded data packet, “encoded data packet” shall be construed as “first encoded data packet” shown in S120, i.e., the two have the same meanings, unless otherwise stated.
When the first network coding mode includes Raptor coding, the first network coding parameter includes at least one of:
In an implementation, when the first network coding parameter includes the third random seed, the third random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the fourth random seed, the fourth random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the third random seed and the fourth random seed, the third random seed and the fourth random seed are determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
As shown in
At S1203, the source data packets are pre-coded according to a second degree distribution and the third random seed to obtain intermediate encoded data packets, where the second degree distribution is determined according to the second degree distribution indication.
At S1204, the intermediate encoded data packet is encoded by LT coding according to a third degree distribution and the fourth random seed to obtain the first encoded data packet, where the third degree distribution is determined according to the third degree distribution indication.
In this step, with the use of the third random seed, the fourth random seed, the second degree distribution indication, and the third degree distribution indication in combination for processing, the intermediate encoded data packet can be encoded by LT coding to obtain the first encoded data packet, such that the first encoded data packet can be further sent out in subsequent steps.
As shown in
The Raptor coding process includes precoding and LT coding. k source data packets 302 are pre-coded according to a degree distribution and a third random seed. The precoding includes, but not limited to, Low Density Parity Check Code (LDPC) coding. k is an integer greater than 0. In an example, k=5. A precoding matrix 308 has a size of n0 rows and k columns. Through the precoding, n0 intermediate encoded data packets 304 are obtained, where n0 is an integer greater than k. In an example, n0=7. Then, the intermediate encoded data packets are encoded by LT coding according to a fourth random seed and a degree distribution. The degree distribution is determined according to a third degree distribution indication. n is an integer greater than n0. In an example, n=8. An LT encoding matrix 310 has a size of n rows and n0 columns. The pre-encoding matrix and the encoding matrix are composed of elements {0, 1}.
When the first network coding mode includes Raptor Q coding, the first network coding parameter includes at least one of:
In an implementation, when the first network coding parameter includes the fifth random seed, the fifth random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In an embodiment of the present disclosure, when the first network coding parameter includes the fifth random seed and the fourth degree distribution indication, S120 is further described, and S120 may include, but not limited to, a following step S1205.
At S1205, when intermediate symbols corresponding to the source data packets are determined, the intermediate symbols are encoded by LT coding according to a fourth degree distribution and the fifth random seed to obtain the first encoded data packet, where the fourth degree distribution is determined according to the fourth degree distribution indication.
In this step, the intermediate symbols corresponding to the source data packets are determined, and the intermediate symbols are encoded by LT coding based on the combination of the fifth random seed and the fourth degree distribution to obtain the first encoded data packet, such that the first encoded data packet can be sent out in subsequent steps.
As shown in
As shown in
As shown in
In an embodiment, Raptor Q coding supports a maximum of 56403 source data packets and a maximum encoded data packet size of 224 bytes, while Raptor coding supports a maximum of 8192 source data packets and a maximum encoded data packet size of 216 bytes.
In an embodiment of the present disclosure, when the first network coding mode includes RS coding, S120 is further described, and S120 may include, but not limited to, a following step S1206.
At S1206, when the encoding matrix is determined, matrix calculation is performed on the encoding matrix and the source data packets in a finite field to obtain the first encoded data packet.
In this step, the first encoded data packet can be obtained by performing matrix calculation on the encoding matrix and the source data packets in a finite field, such that the first encoded data packet can be sent out in subsequent steps.
RS coding is a finite field-based coding algorithm. In the case of the same finite field and receiving the same quantity of redundant encoded data packets, RS coding has higher performance and decoding complexity than Raptor Q coding.
first, an encoding matrix G is determined. The encoding matrix G includes an upper part 602A which is an identity matrix and a lower part 602B which is an m*k matrix, where m=n−k. A matrix operation is performed on the encoding matrix and the input source data packets D=[D0; D1; . . . ; Dk-1] 604 in a finite field to obtain encoded data packets R=[R0; R1; . . . ; Rn-1] 606.
In an embodiment, the lower part 602B may be a Vandermonde Matrix (VM) as shown below, where aij represents a jth power of an element ai in the finite field, and j is a non-negative integer.
In an embodiment, the lower part 602B may be a Cauchy Matrix (CM) as shown below, where ai and bi represent elements in the finite field.
When the first network coding mode includes RLNC, the first network coding parameter includes a sixth random seed.
In an implementation, when the first network coding parameter includes the sixth random seed, the sixth random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
As shown in
S120 may include, but not limited to, the following steps S1207 to S1208.
At S1207, elements are randomly selected from the finite field based on the sixth random seed to obtain an encoding matrix.
At S1208, matrix calculation is performed on the encoding matrix and the source data packets to obtain the first encoded data packet.
In this step, the first encoded data packet can be obtained by selecting the encoding matrix according to the sixth random seed and performing matrix calculation on the encoding matrix and the source data packets in a finite field, such that the first encoded data packet can be sent out in subsequent steps.
RLNC is a coding method that can be defined over a finite field. An encoding matrix is randomly selected in the finite field. According to the encoding matrix, input source data packets are linearly combined in the coding process. In an example, the finite field of RLNC is GF (2). In the case of receiving the same quantity of redundant encoded data packets, RLNC has lower performance than Raptor Q coding and RS coding, but has higher flexibility.
In an embodiment, an ith └gi-1,0, gi-1,1, . . . , gi-1,k-1┘ row of the encoding matrix G in
In an embodiment, the encoding matrix G in
When the first network coding mode includes FNC, the first network coding parameter includes at least one of:
In an implementation, when the first network coding parameter includes the seventh random seed, the seventh random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the eighth random seed, the eighth random seed is determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
In another implementation, when the first network coding parameter includes the seventh random seed and the eighth random seed, the seventh random seed and the eighth random seed are determined by at least one of index information of the first encoded data packet, quantity information of the source data packet, or quantity information of the first encoded data packet.
As shown in
At S1209, elements are randomly selected from the finite field based on a seventh random seed to obtain a first encoding matrix, and elements are randomly selected from the finite field based on an eighth random seed to obtain a second encoding matrix.
At S1210, the first encoded data packet is obtained according to the first encoding matrix and the second encoding matrix.
In this step, the corresponding encoding matrices are respectively selected according to the seventh random seed and the eighth random seed, and the first encoded data packet can be obtained according to the corresponding encoding matrices, such that the first encoded data packet can be sent out in subsequent steps.
FNC is an extension of RLNC, with its outer encoding being RLNC in a finite field and its inner encoding being RLNC in a binary field.
In an embodiment, a jth row └g′j-1,0, g′j-1,1, . . . , g′j-1,k-1┘ of the lower part 802A of the outer encoding matrix G1 in
In an embodiment, the lower part 802A of the outer encoding matrix G1 in
In an embodiment, an order of the finite field elements described in the above embodiments may be one of: 256, 65536, 16, 32, 64, 1024, or 4096.
When the first network coding parameter includes the coding mode indication information, the coding mode indication information includes at least one of:
In other words, the coding mode indication information may be configured as a multi-dimensional indication to achieve a satisfactory and reliable coding mode indication effect.
In this example, the coding mode indication information includes at least one of:
p is an integer greater than 0, and the p bits indicate a maximum of 2p coding modes. For example, as shown in Table 1 below, when p is equal to 2, four coding modes can be selected, where “00” represents RLNC, “01” represents RS coding, “10” represents Raptor Q coding, and “11” represents FNC. It can be understood that the network coding modes are not limited to RLNC, RS coding, Raptor Q coding, and FNC, and other network coding modes may also be used.
Table 1 shows an example table of network coding mode configuration when the coding mode indication information indicates to use a network coding mode and p=2.
In an embodiment, p bits are used to indicate whether to use a network coding mode and indicate which network coding mode is to be used. p is an integer greater than 0, and the p bits indicate a maximum of 2p−1 network coding modes. One of combinations of the p bits indicates that network coding is not used. For example, as shown in Table 2 below, when p is equal to 2, three coding modes can be selected, where “00” represents that network coding is not used, “01” represents RS coding, “10” represents Raptor Q coding, and “11” represents FNC. It can be understood that in this example, the network coding modes are not limited to RS coding, Raptor Q coding, and FNC, and other network coding modes may also be used.
Table 2 shows another example table of network coding mode configuration when the coding mode indication information indicates to use a network coding mode and p=2.
In an embodiment of the present disclosure, when the first network coding parameter includes the transmission direction of the source data packet, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the transmission direction of the source data packet is determined, and the corresponding matching network coding mode can be selected according to the determined transmission direction of the source data packet.
Uplink data transmission at least includes: a UE sending data to a base station or a UE sending data to a relay. Downlink data transmission at least includes: the base station sending data to the UE or the relay sending data to the UE.
In an embodiment, the network coding modes include Raptor Q coding and RS coding, and a network coding mode is determined according to the data transmission direction. For example, if the data transmission direction is uplink data transmission, the network coding mode is RS coding; if the data transmission direction is downlink data transmission, the network coding mode is Raptor Q coding.
In an embodiment, because the data volume of downlink data transmission is generally larger than that of uplink data transmission, and the maximum source data packet size supported by Raptor Q coding is generally larger than that of RS coding, Raptor Q coding is more suitable for downlink data transmission, and RS coding should be used for uplink data transmission.
In an embodiment, the network coding modes in this example are not limited to Raptor Q coding and RS coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the application scenario, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the specific application scenario is determined, and the corresponding matching network coding mode can be selected according to the determined specific application scenario.
The application scenarios include URLLC, eMBB, and mMTC. In an example, at least two of the application scenarios correspond to different network coding modes.
The network coding modes include FNC, Raptor Q coding, and RS coding, and a network coding mode is determined according to the application scenario.
In an embodiment, if the application scenario is URLLC, the network coding mode is RS coding, which has higher reliability.
In an embodiment, if the application scenario is eMBB, the network coding mode is Raptor Q coding, which supports more encoded data packets and can meet high data rate requirements.
In an embodiment, if the application scenario is mMTC, the network coding mode is FNC, which has a flexible coding mode and can satisfy the encoding of massive terminal device data.
In an embodiment, the network coding modes in this example are not limited to RS coding, Raptor Q coding, and FNC, but may include, but not limited to, at least three of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the network frequency range, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the specific network frequency range is determined, and the corresponding matching network coding mode can be selected according to the determined specific network frequency range.
In an embodiment, specific values of the first network frequency range and the second network frequency range are not limited. That is to say, the values of the first network frequency range and the second network frequency range may be set by those having ordinary skills in the art according to actual application scenarios, which is not limited herein.
The network frequency ranges include FR1 and FR2. A network coding mode corresponding to FR1 is different from that corresponding to FR2.
In an embodiment, the network coding mode corresponding to FR1 is RS coding, and the network coding mode corresponding to FR2 is Raptor Q coding.
In another embodiment, the network coding mode corresponding to FR1 is RS coding, and the network coding mode corresponding to FR2 is FNC.
In an example, a frequency range below 6 GHz is referred to as FR1, and a frequency range in the millimeter wave band is referred to as FR2. For example, a frequency range from 450 MHz to 6000 MHz is referred to as FR1, and a frequency range from 24250 MHz to 52600 MHz is referred to as FR2.
In an embodiment, the network coding modes in this example are not limited to RS coding, Raptor Q coding, and FNC, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the UE capability information, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the specific UE capability information is determined, and the corresponding matching network coding mode can be selected according to a threshold range within which the determined specific UE capability information falls.
In an embodiment, specific values of the first threshold, the second threshold, and the third threshold are not limited. That is to say, the values of the first threshold, the second threshold, and the third threshold may be set by those having ordinary skills in the art according to actual application scenarios, which is not limited herein.
In an example, if the maximum number of antennas supported by the UE is greater than w1, Raptor Q coding is used; otherwise, RS coding is used. w1 is equal to one of: 4, 6, 8, 12, or 16.
In an example, if the maximum modulation order supported by the UE is greater than w2, Raptor Q coding is used; otherwise, RS coding is used. w2 is equal to one of: 4, 6, 8, or 10.
In an example, if the maximum data rate supported by the UE is greater than w3, Raptor Q coding is used; otherwise, RS coding is used. w3 is equal to one of: 500 Mbps, 1 Gbps, or 10 Gbps.
In an embodiment, the network coding modes in this example are not limited to RS coding and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the network bandwidth, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the specific network bandwidth is determined, and the corresponding matching network coding mode can be selected according to the determined specific network bandwidth.
In an embodiment, specific values of the first network bandwidth, the second network bandwidth, the third network bandwidth, and the fourth network bandwidth are not limited. That is to say, the values of the first network bandwidth, the second network bandwidth, the third network bandwidth, and the fourth network bandwidth may be set by those having ordinary skills in the art according to actual application scenarios, which is not limited herein. For example, a relationship between the values of the bandwidths may be set.
On each unit carrier in the uplink or downlink direction, one UE can configure a maximum of four BWPs (denoted as BWP 0, BWP 1, BWP 2, and BWP 3), only one of which is active at a certain moment. The network coding modes include LT coding, Raptor Q coding, RS coding, and FNC, and a network coding mode is determined according to the BWP.
In an example, when the BWP is configured to be BWP 0, the network coding mode is LT coding; when the BWP is configured to be BWP 1, the network coding mode is Raptor Q coding; when the BWP is configured to be BWP 2, the network coding mode is RS coding; and when the BWP is configured to be BWP 3, the network coding mode is FNC.
In an embodiment, the network coding modes in this example are not limited to LT coding, Raptor Q coding, RS coding, and FNC, but may include, but not limited to, at least four of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the quantity information of the source data packet, S110 is further described, and
S110 may include, but not limited to, a following step S1101.
At S1101, when a first mapping relationship between at least two preset network coding modes and the quantity information of the source data packet is determined, the first network coding mode is selected from the preset network coding modes according to the quantity information of the source data packet and the first mapping relationship.
In an embodiment, the first mapping relationship is used to characterize a quantity of the source data packets supported by each of the preset network coding modes.
In this step, the first mapping relationship between the preset network coding modes and the quantity information of the source data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the quantity information of the source data packet and the first mapping relationship. In this way, the obtained first network coding mode can be well associated with the quantity information of the source data packet, providing high accuracy.
There are multiple value ranges for the quantity of source data packets. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges.
In an embodiment, the network coding mode is determined according to the value of the quantity k of source data packets, i.e., a mapping relationship g: k→Method exists between the network coding mode and k. When the network coding mode is RLNC, the quantity of source data packets supported by the network coding mode is defined as k1. When the network coding mode is FNC, the quantity of source data packets supported by the network coding mode is defined as k2. When the network coding mode is RS coding, the quantity of source data packets supported by the network coding mode is defined as k3. When the network coding mode is Raptor Q coding, the quantity of source data packets supported by the network coding mode is defined as k4.
In an example, k1 is less than k2. In an example, k2 is less than k3. In an example, k3 is less than k4. In an example, k1 is less than k2, and k2 is less than k3. In an example, k1 is less than k2, k2 is less than k3, and k3 is less than k4. In an example, a maximum value of k1 is equal to an integer from 12 to 20, a maximum value of k2 is equal to an integer from 56 to 72, and a maximum value of k3 is equal to an integer from 240 to 270.
As shown in
It can be understood that the multiple value ranges are not limited to the values described above, and may also be other values.
In an embodiment, the network coding modes in this example are not limited to RLNC, FNC, RS coding, and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the size information of the source data packet, S110 is further described, and S110 may include, but not limited to, a following step S1102.
At S1102, when a second mapping relationship between at least two preset network coding modes and the size information of the source data packet is determined, the first network coding mode is selected from the preset network coding modes according to the size information of the source data packet and the second mapping relationship.
In an embodiment, the second mapping relationship is used to characterize a size of the source data packet supported by each of the preset network coding modes.
In this step, the second mapping relationship between the preset network coding modes and the size information of the source data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the size information of the source data packet and the second mapping relationship. In this way, the obtained first network coding mode can be well associated with the size information of the source data packet, providing high accuracy.
There are multiple value ranges for the source data packet size. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the value of the source data packet size T, i.e., a mapping relationship g:T→Method exists between the network coding mode and T. When the network coding mode is FNC, the source data packet size supported by the network coding mode is defined as k5. When the network coding mode is RS coding, the source data packet size supported by the network coding mode is defined as k6. When the network coding mode is Raptor Q coding, the source data packet size supported by the network coding mode is defined as k7.
In an example, k5 is less than k6. In an example, k6 is less than k7. In an example, k5 is less than k6, and k6 is less than k7. In an example, a maximum value of k5 is equal to an integer from 12 to 20, and a maximum value of k6 is equal to an integer from 240 to 270.
In an example, the network coding modes include FNC, RS coding, and Raptor Q coding, the maximum value of k5 is equal to 16, and the maximum value of k6 is equal to 256. A value range of T corresponding to FNC is greater than 0 and less than or equal to 16. In this range, FNC has lower coding and decoding complexity. A value range of T corresponding to RS coding is greater than 16 and less than or equal to 256. In this range, RS coding has higher reliability. A value range of T corresponding to Raptor Q coding is greater than 256. In this range, Raptor Q coding supports a larger encoded data packet size. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to FNC, RS coding, and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the quantity information of the first encoded data packet, S110 is further described, and S110 may include, but not limited to, a following step S1103.
At S1103, when a third mapping relationship between at least two preset network coding modes and the quantity information of the first encoded data packet is determined, the first network coding mode is selected from the preset network coding modes according to the quantity information of the first encoded data packet and the third mapping relationship.
In an embodiment, the third mapping relationship is used to characterize a quantity of first encoded data packets supported by each of the preset network coding modes.
In this step, the third mapping relationship between the preset network coding modes and the quantity information of the first encoded data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the quantity information of the first encoded data packet and the third mapping relationship. In this way, the obtained first network coding mode can be well associated with the quantity information of the first encoded data packet, providing high accuracy.
There are multiple value ranges for the quantity of first encoded data packets. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the value of the quantity n of first encoded data packets, i.e., a mapping relationship g:n→Method exists between the network coding mode and n. When the network coding mode is RLNC, the quantity of first encoded data packets supported by the network coding mode is defined as k8. When the network coding mode is RS coding, the quantity of first encoded data packets supported by the network coding mode is defined as k9. When the network coding mode is Raptor Q coding, the quantity of first encoded data packets supported by the network coding mode is defined as k10.
In an example, k8 is less than k9. In an example, k9 is less than k10. In an example, k8 is less than k9, and k9 is less than k10. In an example, a maximum value of k8 is equal to an integer from 24 to 40, and a maximum value of k9 is equal to an integer from 240 to 270.
In an example, the network coding modes include RLNC, RS coding, and Raptor Q coding, the maximum value of k8 is equal to 32, and the maximum value of k9 is equal to 256. A value range of n corresponding to RLNC is greater than 0 and less than or equal to 32. In this range, RLNC has higher coding and decoding throughput. A value range of n corresponding to RS coding is greater than 32 and less than or equal to 256. In this range, RS coding has higher reliability. A value range of n corresponding to Raptor Q coding is greater than 256. In this range, Raptor Q coding supports more encoded data packets. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to RLNC, RS coding, and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the quantity information of the redundant data packet, S110 is further described, and S110 may include, but not limited to, a following step S1104.
At S1104, when a fourth mapping relationship between at least two preset network coding modes and the quantity information of the redundant data packet is determined, the first network coding mode is selected from the preset network coding modes according to the quantity information of the redundant data packet and the fourth mapping relationship, where the fourth mapping relationship is used to characterize a quantity of redundant data packets supported by each of the preset network coding modes.
In an embodiment, the fourth mapping relationship is used to characterize a quantity of redundant data packets supported by each of the preset network coding modes.
In this step, the fourth mapping relationship between the preset network coding modes and the quantity information of the redundant data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the quantity information of the redundant data packet and the fourth mapping relationship. In this way, the obtained first network coding mode can be well associated with the quantity information of the redundant data packet, providing high accuracy.
There are multiple value ranges for the quantity of redundant data packets. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the value of the quantity r of redundant data packets, i.e., a mapping relationship g:r→Method exists between the network coding mode and r. When the network coding mode is Raptor Q coding, the quantity of redundant data packets supported by the network coding mode is defined as k11. When the network coding mode is FNC, the quantity of redundant data packets supported by the network coding mode is defined as k12. In an example, k11 is less than k12. In an example, a maximum value of k11 is equal to an integer from 16 to 48.
In an example, the network coding modes include Raptor Q coding and FNC, and the maximum value of k11 is equal to 32. In the case of sending k source data packets with a reliability requirement not lower than Pr, Raptor Q coding can meet the reliability requirement by receiving fewer redundant data packets as compared with FNC. A value range of r corresponding to Raptor Q coding is greater than 0 and less than or equal to 32. A value range of r corresponding to FNC is greater than 32. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to Raptor Q coding and FNC, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the code rate, S110 is further described, and S110 may include, but not limited to, a following step S1105.
At S1105, when a fifth mapping relationship between at least two preset network coding modes and the code rate is determined, the first network coding mode is selected from the preset network coding modes according to the code rate and the fifth mapping relationship.
In an embodiment, the fifth mapping relationship is used to characterize the code rate supported by each of the preset network coding modes.
In this step, the fifth mapping relationship between the preset network coding modes and the code rate is determined, and the first network coding mode can be selected from the preset network coding modes according to the code rate and the fifth mapping relationship. In this way, the obtained first network coding mode can be well associated with the code rate, providing high accuracy.
The code rate R is a real number greater than 0 and less than 1. The code rate is an element in a code rate set CoderateSet. The code rate set CoderateSet includes A1 code rates Coderatei, where i is an integer from 0 to A1−1, and A1 is an integer greater than 0.
In an embodiment, the network coding mode is determined according to the value of the code rate, i.e., a mapping relationship g:R→Method exists between the network coding mode and the code rate R. When the network coding mode is RLNC, the code rate supported by the network coding mode is defined as k13. When the network coding mode is FNC, the code rate supported by the network coding mode is defined as k14. When the network coding mode is Raptor Q coding, the code rate supported by the network coding mode is defined as k15. When the network coding mode is RS coding, the code rate supported by the network coding mode is defined as k16. In an example, k13 is less than k14. In an example, k14 is less than k15. In an example, k15 is less than k16. In an example, k13 is less than k14, and k14 is less than k15. In an example, k13 is less than k14, k14 is less than k15, and k15 is less than k16. In an example, a maximum value of k13 is equal to a real number from 3/16 to 5/16, a maximum value of k14 is equal to a real number from 7/16 to 9/16, and a maximum value of k15 is equal to a real number from 11/16 to 13/16.
In an example, as shown in
In an embodiment, the network coding modes in this example are not limited to RLNC, FNC, Raptor Q coding, and RS coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the code rate and the quantity information of the source data packet, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the sixth mapping relationship between the preset network coding modes and the code rate or the seventh mapping relationship between the network coding modes, the code rate, and the quantity information of the source data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the corresponding mapping relationship. In this way, the obtained first network coding mode can be well associated with the code rate and the quantity information of the source data packet, providing high accuracy.
For the code rate and the quantity information of the source data packet, there are multiple two-dimensional value spaces. There is no intersection between any two of the value spaces. The network coding modes used by any two of the value spaces are different. The multiple value spaces include at least two value spaces. The code rate R is a real number greater than 0 and less than 1, and k is a positive integer.
In an embodiment, the network coding mode is determined according to the value of the quantity k of source data packets and the value of the code rate R, i.e., a mapping relationship g:(k,R)→Method exists between the network coding mode, k, and R.
In an example, as shown in
In an example, as shown in
In an embodiment, the network coding modes in this example are not limited to RLNC, FNC, Raptor Q coding, and RS coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the throughput, S110 is further described, and S110 may include, but not limited to, a following step S1106.
At S1106, when an eighth mapping relationship between at least two preset network coding modes and the throughput is determined, the first network coding mode is selected from the preset network coding modes according to the throughput and the eighth mapping relationship.
In an embodiment, the eighth mapping relationship is used to characterize the throughput supported by each of the preset network coding modes.
In this step, the eighth mapping relationship between the preset network coding modes and the throughput is determined, and the first network coding mode can be selected from the preset network coding modes according to the throughput and the eighth mapping relationship. In this way, the obtained first network coding mode can be well associated with the throughput, providing high accuracy.
There are multiple value ranges for the throughput. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the range within which the value of a throughput requirement TP falls, i.e., a mapping relationship g:TP→Method exists between the network coding mode and the throughput requirement. When the network coding mode is RS coding, the throughput requirement supported by the network coding mode is defined as k17. When the network coding mode is Raptor Q coding, the throughput requirement supported by the network coding mode is defined as k18. When the network coding mode is RLNC, the throughput requirement supported by the network coding mode is defined as k19. In an example, k17 is less than k18. In an example, k18 is less than k19. In an example, k17 is less than k18, and k18 is less than k19. In an example, a maximum value of k17 is equal to a real number from 500 Mbps to 2 Gbps, and a maximum value of k18 is equal to a real number from 5 Gbps to 20 Gbps.
In an example, the network coding modes include RS coding, Raptor Q coding, and RLNC, the maximum value of k17 is equal to 1 Gbps, and the maximum value of k18 is equal to 10 Gbps. A value range of TP corresponding to RS coding is greater than 0 and less than or equal to 1 Gbps. A value range of TP corresponding to Raptor Q coding is greater than 1 Gbps and less than or equal to 10 Gbps. RLNC has low encoding and decoding complexity, and can meet higher throughput requirements. A value range of TP corresponding to RLNC is greater than 10 Gbps. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to RS coding, Raptor Q coding, and RLNC, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the reliability requirement, S110 is further described, and S110 may include, but not limited to, a following step S1107.
At S1107, when a ninth mapping relationship between at least two preset network coding modes and the reliability requirement is determined, the first network coding mode is selected from the preset network coding modes according to the reliability requirement and the ninth mapping relationship.
In an embodiment, the ninth mapping relationship is used to characterize the reliability requirement supported by each of the preset network coding modes.
In this step, the ninth mapping relationship between the preset network coding modes and the reliability requirement is determined, and the first network coding mode can be selected from the preset network coding modes according to the reliability requirement and the ninth mapping relationship. In this way, the obtained first network coding mode can be well associated with the reliability requirement, providing high accuracy.
There are multiple value ranges for the reliability requirement. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the range within which the value of the reliability requirement falls, i.e., a mapping relationship g:Pr→Method exists between the network coding mode and the reliability requirement Pr. When the network coding mode is RLNC, the reliability requirement supported by the network coding mode is defined as k20. When the network coding mode is Raptor Q coding, the reliability requirement supported by the network coding mode is defined as k21. When the network coding mode is RS coding, the reliability requirement supported by the network coding mode is defined as k22. In an example, k20 is less than k21. In an example, k21 is less than k22. In an example, k20 is less than k21, and k21 is less than k22. In an example, a maximum value of k20 is equal to a real number from 0.9 to 0.995, and a maximum value of k21 is equal to a real number from 0.999 to 0.99995.
In an example, the network coding modes include RLNC, Raptor Q coding, and RS coding, the maximum value of k20 is equal to 0.99, and the maximum value of k21 is equal to 0.9999. In the case of receiving the same quantity of redundant encoded data packets, RS coding has the highest decoding success probability and RLNC has the lowest decoding success probability. In an example, a value range of Pr corresponding to RLNC is greater than 0 and less than or equal to 0.99, a value range of Pr corresponding to Raptor Q coding is greater than 0.99 and less than or equal to 0.9999, and a value range of Pr corresponding to RS coding is greater than 0.9999. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to RLNC, Raptor Q coding, and RS coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the erasure rate, S110 is further described, and S110 may include, but not limited to, a following step S1108.
At S1108, when a tenth mapping relationship between at least two preset network coding modes and the erasure rate is determined, the first network coding mode is selected from the preset network coding modes according to the erasure rate and the tenth mapping relationship.
In an embodiment, the tenth mapping relationship is used to characterize the erasure rate supported by each of the preset network coding modes.
In this step, the tenth mapping relationship between the preset network coding modes and the erasure rate is determined, and the first network coding mode can be selected from the preset network coding modes according to the erasure rate and the tenth mapping relationship. In this way, the obtained first network coding mode can be well associated with the erasure rate, providing high accuracy.
There are multiple value ranges for the erasure rate. There is no intersection between any two of the value ranges. The network coding modes used by any two of the value ranges are different. The multiple value ranges include at least two value ranges. In an embodiment, the network coding mode is determined according to the range within which the value of the erasure rate falls, i.e., a mapping relationship g:Pe→Method exists between the network coding mode and the erasure rate Pe. When the network coding mode is RS coding, the erasure rate supported by the network coding mode is defined as k23. When the network coding mode is FNC, the erasure rate supported by the network coding mode is defined as k24. When the network coding mode is Raptor coding, the erasure rate supported by the network coding mode is defined as k25. When the network coding mode is Raptor Q coding, the erasure rate supported by the network coding mode is defined as k26. In an example, k23 is less than k24. In an example, k24 is less than k25. In an example, k25 is less than k26. In an example, k23 is less than k24, and k24 is less than k25. In an example, k23 is less than k24, k24 is less than k25, and k25 is less than k26. In an example, a maximum value of k23 is equal to a real number from 0.005 to 0.02, a maximum value of k24 is equal to a real number from 0.05 to 0.2, and a maximum value of k25 is equal to a real number from 0.3 to 0.5.
In an example, as shown in
In an embodiment, the network coding modes in this example are not limited to RS coding, FNC, Raptor coding, and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the size information of the source data packet and the quantity information of the source data packet, S110 is further described, and S110 may include, but not limited to, a following step S1109.
At S1109, when an eleventh mapping relationship between at least two preset network coding modes, the size information of the source data packet, and the quantity information of the source data packet is determined, the first network coding mode is selected from the preset network coding modes according to the size information of the source data packet, the quantity information of the source data packet, and the eleventh mapping relationship.
In an embodiment, the eleventh mapping relationship is used to characterize a range of a size of the source data packet and a range of a quantity of source data packets that are supported by each of the preset network coding modes.
In this step, the eleventh mapping relationship between the preset network coding modes, the size information of the source data packet, and the quantity information of the source data packet is determined, and the first network coding mode can be selected from the preset network coding modes according to the size information of the source data packet, the quantity information of the source data packet, and the eleventh mapping relationship. In this way, the obtained first network coding mode can be well associated with the size information of the source data packet and the quantity information of the source data packet, providing high accuracy.
For the size information of the source data packet and the quantity information of the source data packet, there are multiple two-dimensional value spaces. There is no intersection between any two of the value spaces. The network coding modes used by any two of the value spaces are different. The multiple value spaces include at least two value spaces. In an embodiment, the network coding mode is determined according to the value of the quantity k of source data packets and the value of the source data packet size T, i.e., a mapping relationship g:(k,T)→Method exists between the network coding mode, k, and T.
In an example, as shown in
In an embodiment, the network coding modes in this example are not limited to FNC, RS coding, and Raptor Q coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
In an embodiment of the present disclosure, when the first network coding parameter includes the quantity information of the redundant data packet and the reliability requirement, S110 is further described, and S110 may include, but not limited to, a following step S1110.
At S1110, when a twelfth mapping relationship between at least two preset network coding modes, the quantity information of the redundant data packet, and the reliability requirement is determined, the first network coding mode is selected from the preset network coding modes according to the quantity information of the redundant data packet, the reliability requirement, and the twelfth mapping relationship.
In an embodiment, the twelfth mapping relationship is used to characterize a quantity of redundant data packets and the reliability requirement that are supported by each of the preset network coding modes.
In this step, the twelfth mapping relationship between the preset network coding modes, the quantity information of the redundant data packet, and the reliability requirement is determined, and the first network coding mode can be selected from the preset network coding modes according to the quantity information of the redundant data packet, the reliability requirement, and the twelfth mapping relationship. In this way, the obtained first network coding mode can be well associated with the quantity information of the redundant data packet and the reliability requirement, providing high accuracy.
For the quantity information of the redundant data packet and the reliability requirement, there are multiple two-dimensional value spaces. There is no intersection between any two of the value spaces. The network coding modes used by any two of the value spaces are different. The multiple value spaces include at least two value spaces. In an embodiment, the network coding mode is determined according to the value of the quantity r of redundant data packets and the value of the reliability Pr, i.e., a mapping relationship g:(r,Pr)→Method exists between the network coding mode, r, and Pr. In an example, as shown in
In an embodiment, the network coding modes in this example are not limited to RS coding, Raptor Q coding, and FNC, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
As shown in
At S1111, when a sixth mapping relationship between at least two network coding mode subsets and the code rate is determined, a target network coding mode subset is selected from the network coding mode subsets according to the code rate and the sixth mapping relationship, where the sixth mapping relationship is used to characterize a range of the code rate supported by each of the network coding mode subsets, and each of the network coding mode subsets includes a plurality of preset network coding modes.
At S1112, a preset network coding mode is selected from the target network coding mode subset as the first network coding mode according to the quantity information of the source data packet and the reliability requirement.
In this step, the target network coding mode subset can be selected according to the determined sixth mapping relationship between the preset network coding mode subsets and the code rate, and a preset network coding mode can be selected from the target network coding mode subset as the first network coding mode according to the quantity information of the source data packet and the reliability requirement. In this way, the obtained first network coding mode can be well associated with the code rate, the quantity information of the source data packet, and the reliability requirement, providing high accuracy.
A mapping relationship exists between network coding modes and combinations of R, k, and Pr. In an example, as shown in Table 3, when the code rate is greater than 0 and less than or equal to ½, it corresponds to network coding modes of FNC and RLNC, and when the code rate is greater than ½ and less than 1, it corresponds to network coding modes of RS coding and Raptor Q coding. Then, the network coding mode is determined according to the values of Pr and k. Through the setting of the ranges, the generation of redundant encoded data packets can be reduced while meeting the reliability requirement, thereby reducing the consumption of transmission resources. The multiple value ranges are not limited to the values described above, and may also be equal to other values.
In an embodiment, the network coding modes in this example are not limited to FNC, RLNC, RS coding, and Raptor coding, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
Table 3 Example table of mapping relationship between coding modes and combinations of the code rate R, the quantity k of source data packets, and the reliability Pr
In an embodiment of the present disclosure, when the first network coding parameter includes the channel state information, S110 is further described, and S110 may include, but not limited to, at least one of:
In this step, the specific channel state information is determined, and the corresponding matching network coding mode can be selected according to the determined specific channel state information.
In an embodiment, the network coding method is determined according to a channel quality indication. The corresponding network coding modes include RS coding, Raptor Q coding, and RLNC. A network coding mode to be used is determined by the channel quality indication. For example, when an index value of the channel quality indication is an integer of 1 to 5, the network coding mode is RS coding; when the index value of the channel quality indication is an integer of 6 to 10, the network coding mode is Raptor Q coding; and when the index value of the channel quality indication is an integer of 11 to 15, the network coding mode is RLNC. In this way, when the channel quality is unsatisfactory, RS coding with higher performance is used to improve reliability; while when the channel quality is satisfactory, RLNC with low encoding and decoding complexity is used to improve throughput.
In an embodiment, the network coding method is determined according to a rank indication. The corresponding network coding modes include RS coding, Raptor Q coding, and RLNC. A network coding mode to be used is determined by the rank indication. For example, when the rank indication is equal to 1 or 2, the network coding mode is RS coding; when the rank indication is equal to 3, the network coding mode is Raptor Q coding; and when the rank indication is equal to 4, the network coding mode is RLNC. In this way, when the value of the rank indication is small, RS coding with higher performance is used to improve reliability; while when the value of the rank indication is large, RLNC is used to improve throughput.
In an embodiment, the network coding method is determined according to a precoding matrix indication. The corresponding network coding modes include RS coding, Raptor Q coding, and RLNC. A network coding mode to be used is determined by the precoding matrix indication. For example, for a single-layer transmission using four antenna ports with transform precoding enabled, the network coding mode is RS coding when an index value of a Transmit Precoding Matrix Indication (TPMI) is an integer of 0 to 7, is Raptor Q coding when the index value of the TPMI is an integer of 8 to 15, and is RLNC when the index value of the TPMI is an integer of 16 to 27.
In an embodiment, the network coding modes in this example are not limited to RS coding, Raptor Q coding, and RLNC, but may include, but not limited to, at least two of: LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC.
Network coding is performed on the source data packets to generate first encoded data packets. The source data packets may be data packets of one of the following sublayers in a Radio Interface Protocol stack: a PDCP layer, an RLC layer, a MAC layer, or a physical layer, where a first transmission node serves as a transmitting end, and a second transmission node serves as a first receiving end.
In an embodiment, the network coding mode is at least a functional module of one of the following sublayers in a Radio Interface Protocol stack: a PDCP layer, an RLC layer, a MAC layer, or a physical layer. In addition, any two of the sublayers in the Radio Interface Protocol stack such as the PDCP layer, the RLC layer, the MAC layer, and the physical layer correspond to different network coding modes. For example, Raptor Q coding is used in the PDCP layer, RS coding is used in the MAC layer, and whether Raptor Q coding is performed in the PDCP layer is controlled through higher-layer signaling, and whether RS coding is performed in the MAC layer is controlled through higher-layer signaling.
In an embodiment, the source packets are SDU data packets of the PDCP layer. As a functional module in the PDCP layer, network coding is used to encode the SDU data packets.
As shown in
As shown in
As a functional module in a PDCP layer of a first transmission node, network coding is used to encode PDCP SDUs. The quantity of source data packets is defined as k, and k is an integer greater than 0. In an example, k=4. The network coding is used to encode the source data packets to obtain n encoded data packets, where n is an integer greater than k. In an example, n=6. Then, a PDCP header is added to the encoded data packets to obtain PDCP PDUs. In a DC scenario, each cell transmits the PDCP PDUs after PDCP repetition. For example, four PDCP SDUs are network-coded to obtain six encoded data packets, and a PDCP header is added to the encoded data packets to obtain six PDCP PDUs. In this case, after PDCP repetition, six PDCP PDUs are transmitted through a primary cell, and six PDCP PDUs identical to those transmitted through the primary cell are transmitted through a secondary cell.
As shown in
As a functional module in a PDCP layer of a first transmission node, network coding is used to encode PDCP SDUs. The quantity of source data packets is defined as k, and k is an integer greater than 0. In an example, k=4. The network coding is used to encode the source data packets to obtain n encoded data packets, where n is an integer greater than k. In an example, n=6. Then, a PDCP header is added to the encoded data packets to obtain PDCP PDUs. In a CA scenario, each carrier transmits PDCP PDU data after PDCP repetition. For example, four PDCP SDUs are network-coded to obtain six encoded data packets, and a PDCP header is added to the encoded data packets to obtain six PDCP PDUs. In this case, after PDCP repetition, six PDCP PDUs are transmitted through a first carrier, and six PDCP PDUs identical to those transmitted through the first carrier are transmitted through a second carrier.
In an embodiment, the source data packets are PDU data packets of the PDCP layer. As shown in
In an embodiment, the source packets are SDU data packets of the RLC layer. As a functional module in the RLC layer, network coding is used to encode the SDU data packets. Specific scenario one:
As shown in
As shown in
In an embodiment, the source data packets are PDU data packets of the RLC layer. As shown in
In an embodiment, the source data packets are SDU data packets of the MAC layer. As shown in
In an embodiment, the source data packets are PDU data of the MAC layer. As shown in
In an embodiment, indices of first encoded data packets in the first network coding parameter are characterized by: being non-negative integers incrementing from i, where i is an integer greater than or equal to 0, and encoding index numbers of n first encoded data packets obtained by encoding k source data packets are {i, i+1, . . . , i+k−1, i+k, i+k+1, . . . , i+n−1} in sequence.
In an embodiment, the size of the source data packet in the first network coding parameter is characterized by: being determined by a non-negative integer quantity of Data Units (DUs) and/or a part of one DU. As shown in
In an embodiment, the encoding matrix G in the first network coding parameter may be determined according to, for example, but not limited to, the network coding mode, the quantity k of source data packets, and the quantity n of first encoded data packets, and the header information of the source data packet does not include the encoding matrix. For example, the network coding mode is RS coding based on a Cauchy matrix, as shown in the following formula. The encoding matrix includes an upper part Ik which is an identity matrix of k*k and a lower part which is a Cauchy matrix of (n−k)*k. The encoding matrix can be determined at the first transmission node and the second transmission node according to the values of k and n.
In some embodiments, in control information of the first encoded data packets, the encoding matrix G is determined according to the network coding mode and a random seed, and the header information of the source data packet does not include the encoding matrix. For example, the network coding mode is RLNC, each row or column of the coding matrix is determined according to a random seed, and any two random seeds are not equal. The random seed is determined by at least one of the following parameters: an index of the encoded data packet, the quantity of source data packets, and the quantity of encoded data packets. The first transmission node and the second transmission node determine the encoding matrix by using the same random seed.
At S130, the first encoded data packet is sent to a first receiving end, such that the first receiving end processes the first encoded data packet.
In this step, a transmitting end determines a first network coding mode for a source data packet according to a pre-configured first network coding parameter, performs network coding on the source data packet based on the determined first network coding mode to generate encoded data, and transmits the encoded data to a first receiving end, such that the first receiving end receives sufficient encoded data for processing. That is to say, the transmitting end only needs to send the corresponding encoded data to the first receiving end, and the first receiving end can effectively complete the decoding. Therefore, the delay caused by repeated sending of data packets can be avoided, and the reliability and throughput of data transmission can be improved while reducing physical resource overheads, thereby filling in the technical gap in related methods.
In an embodiment, the processing of the first encoded data packet by the first receiving end includes, but not limited to, decoding, sending, encoding and other operations on the first encoded data packet. The manner in which the first receiving end processes the first encoded data packet will be described in detail in the following related embodiments and will not be detailed here.
At S210, a first encoded data packet sent by a transmitting end is received.
At S220, the first encoded data packet is processed.
The first encoded data packet is obtained by the transmitting end by encoding acquired at least one source data packet according to a first network coding mode for the source data packet. The first network coding mode is determined by the transmitting end according to a pre-configured first network coding parameter.
In an embodiment, the execution entity of the data processing method in this embodiment may be, but not limited to, the first receiving end 120 in the embodiment shown in
In this step, a first receiving end receives a first network coding mode determined for a source data packet by a transmitting end according to a pre-configured first network coding parameter, and processes the first encoded data packet based on the determined first network coding mode. That is to say, the transmitting end only needs to send the corresponding encoded data to the first receiving end, and the first receiving end can effectively complete the decoding. Therefore, the delay caused by repeated sending of data packets can be avoided, and the reliability and throughput of data transmission can be improved while reducing physical resource overheads, thereby filling in the technical gap in related methods.
In an embodiment, because the type of the source data packet, the type of the first network coding mode, the type of the first network coding parameter, and the like have been described in detail in the above embodiments, and the difference between the above embodiments and this embodiment lies only in the execution entity, i.e., the above embodiments are executed by the transmitting end and this embodiment is executed by the first receiving end, related implementation in this embodiment correspond to those in the above embodiments. To avoid redundancy, the type of the source data packet, the type of the first network coding mode, the type of the first network coding parameter, and the like will not be described in detail again.
In an embodiment, when there is network coding in a plurality of Radio Interface Protocol stacks, the source data packets in any two of the Radio Interface Protocol stacks correspond to different first network coding modes. In other words, first network coding modes corresponding to source data packets in different Radio Interface Protocol stacks can be distinguished, so this characteristic can be used as a determination criterion to detect the source of a source data packet in the network space. For example, the Radio Interface Protocol stack to which the source data packet belongs can be further determined according to the source of the source data packet, which is not limited herein.
As shown in
At S2201, a second network coding mode for the first encoded data packet is determined according to a pre-configured second network coding parameter.
At S2202, the first encoded data packet is processed according to the second network coding mode.
In this step, the second network coding mode for the first encoded data packet is determined according to the pre-configured second network coding parameter, and the received first encoded data packet can be processed according to the second network coding mode, such that the first encoded data packet can be further used for data processing. This helps improve the reliability and throughput of data transmission.
In an embodiment of the present disclosure, S2202 is further described, and S2202 may include, but not limited to, at least one of:
In this step, if the first encoded data packet is sent to the second receiving end according to the second network coding mode, forwarding of the first encoded data packet can be realized. That is to say, the first encoded data packet output from the transmitting end can be forwarded on a per-link basis as required, such that the first encoded data packet can be utilized. If the first encoded data packet is decoded according to the second network coding mode to obtain the source data packet, the decoding and restoration of the source data packet can be realized. If the first encoded data packet is encoded according to the second network coding mode to obtain the second encoded data packet and the second encoded data packet is sent to the second receiving end, second encoding can be realized. In this way, multiple times of encoding and forwarding of the encoded data are realized. If the first encoded data packet is decoded according to the second network coding mode to obtain the source data packet, the source data packet is encoded to obtain the third encoded data packet, and the third encoded data packet is sent to the second receiving end, the decoding and restoration of the source data packet can be realized, and second encoding can be performed based on the restored source data packet. This reflects the diversity of data encoding.
In an embodiment, the second network coding mode includes, but not limited to, at least one of:
In an embodiment, the second network coding parameter includes, but not limited to, at least one of:
In an embodiment, implementations of the second network coding mode are similar to those of the first network coding mode, and implementations of the second network coding parameter are similar to those of the first network coding parameter, so reference can be made to the related descriptions in the above embodiments and the details will not be repeated here.
In an embodiment of the present disclosure, the data processing method may further include, but not limited to, the following steps S2100 to S2300.
At S2100, when at least one source data packet is acquired, a first network coding mode for the at least one source data packet is determined from a network coding mode set according to a pre-configured first network coding parameter.
At S2200, the at least one source data packet is encoded according to the first network coding mode to obtain a first encoded data packet.
At S2300, the first encoded data packet is sent to a first receiving end, such that the first receiving end processes the first encoded data packet.
In an embodiment, the manner in which the at least one source data packet is encoded according to the first network coding mode to obtain the first encoded data packet in S2200 is the same as that in S220.
In an embodiment, S210, S220, and related steps have been described in detail in the above embodiments, and the difference between the above embodiments and this embodiment lies only in the network coding mode set in S2100, i.e., the network coding mode set in S2100 includes at least two of LT coding, Raptor coding, Raptor Q coding, RS coding, LNC, RLNC, and FNC. Therefore, related implementations in this embodiment correspond to those in the above embodiments. To avoid redundancy, specific implementations of S2100, S2200, and S2300 will not be described in detail again. In addition, as shown in
In addition, an embodiment of the present disclosure provides a computer-readable storage medium, storing computer-executable instructions which, when executed by a processor, causes the processor to implement the data processing method according to any of the above embodiments.
In addition, an embodiment of the present disclosure provides a computer program product, including a computer program or computer instructions stored in a computer-readable storage medium, where the computer program or the computer instructions, when read from the computer-readable storage medium and executed by a processor of a computer device, causes the computer device to implement the data processing method according to any of the above embodiments.
Those having ordinary skills in the art can understand that all or some of the steps in the methods disclosed above and the functional modules/units in the system and the apparatus can be implemented as software, firmware, hardware, and appropriate combinations thereof. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or transitory medium). As is known to those having ordinary skills in the art, the term “computer storage medium” includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information (such as computer-readable instructions, data structures, program modules, or other data). The computer storage medium includes, but not limited to, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a flash memory or other memory technology, a Compact Disc Read-Only Memory (CD-ROM), a Digital Versatile Disc (DVD) or other optical storage, a cassette, a magnetic tape, a magnetic disk storage or other magnetic storage device, or any other medium which can be used to store the desired information and can be accessed by a computer. In addition, as is known to those having ordinary skills in the art, the communication medium typically includes computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier or other transport mechanism, and can include any information delivery medium.
Number | Date | Country | Kind |
---|---|---|---|
202210550053.5 | May 2022 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2023/089309 | 4/19/2023 | WO |