1.2LT code performance analysis for deep space applications
From the above analysis, it can be seen that LT code has a simple encoding and decoding method and small decoding overhead. When the number of data packets reaches more than 10°, only 5% redundant information is needed to ensure high decoding success. Rate. However, in deep space communication, the time is prolonged, the bit error rate is high, and the large code length will increase the encoding and decoding delay and require larger storage space. Therefore, short code and long LT code have more application prospects in deep space communications.But for short codes and long LT codes, at least 50% coding redundancy is required to achieve deep
The decoding failure rate required for air-to-air communication is 10~*. Increasing coding redundancy will consume additional transmission power, thus limiting its development in deep space communications.
The LT code’s method of randomly selecting data packets requires a larger degree to ensure the decoding success rate, which will increase the coding and decoding complexity. At the same time, the BP algorithm used in LT code decoding is actually a suboptimal algorithm. It stops decoding when there is no encoding packet with degree 1, wasting part of the encoding information, which is equivalent to a larger cache required for file transfer. and decoding delay, which is not suitable for deep space communication systems with limited power and storage space. Therefore, based on the deep space communication environment, this article will optimize the short code length LT code from both encoding and decoding aspects to obtain the OLT code, and then propose a data transmission strategy suitable for the deep space communication environment.
2 OLT code
2.1 Encoding process of OLT code
Assume that the number of data packets is k, set the first h degrees to 1, and assign the selection probability of degree 1 to other degrees. For simplicity, this article assigns the probability of degree 1 to degree 2, and then cyclically selects data packets for encoding. In the first round of encoding, setting the first k degrees to 1 is equivalent to directly copying h data packets to the encoding packet in sequence. In the second round of encoding, continue to select degrees according to the degree distribution function, and also select data packets in order. The encoding diagram is shown in Figure 2. Assume that there are 10 data packets, the number of encoding packets is 15, and the degrees are 1,1,1,1,1,ti,1,1,1,3,5,3,2, 2, then the first 10 coded packets are copied from 10 data packets respectively, the 11th coded packet is obtained by the XOR of data packets 1, 2, and 3, and the 12th coded packet is obtained from 4, 5, 6, 7, Data packet No. 8 is XORed, and so on for the rest.
The specific encoding process of OLT code is as follows:
1) Divide the source data into k data packets, each data packet has a size of L and is numbered from 1 to k in sequence;
2) Set the degree of the first é coding packets to 1, starting from the first data packet, select the data packets in sequence, and copy them to the corresponding coding packets;
3) According to the given degree distribution, determine the degree d;
4) Cyclically select d data packets for XOR operation to generate a coded packet;
5) Repeat 3)~4) to obtain a certain number of encoding packets. 2.2 Decoding process of OLT code
The GE algorithm is a universal decoding method for fountain codes and is suitable for various codewords. Assuming that the receiving end receives n coding packets, each coding packet represents a linear equation with h unknown inputs, then the entire decoding process can be seen as n equations jointly solving a system of k unknowns equations, as shown in Equation (4) Show:
×X=N
(4)
Among them: H is the generating matrix after deleting the channel, the size is nxk; vector.
The steps of GE algorithm are as follows:
1) Expand the H matrix into an augmented matrix H’ containing the received information vector N, H’ = [H/N].
2) Use matrix elementary row transformation to transform the H matrix in this augmented matrix H’
Replace it with the unit matrix I, then H’= [I/N’].
3) If the unit matrix I is full of rank, the decoding is successful and the decoding output is N’. If the unit matrix is not full of rank, it means that the received information is insufficient and the decoding fails. The receiving end continues to receive information and enters the next round of decoding. .
The GE algorithm can make full use of the correctly received encoding packets at the receiving end, and the decoding success rate is higher than the BP algorithm. Its computational complexity O(nk) increases rapidly with the increase in the number of data packets, so it is not suitable for the operation of medium and long codes.
To sum up, this paper proposes a joint decoding algorithm, which uses the BP algorithm and the GE algorithm together to combine the advantages of both to make full use of the coding information and improve the decoding success rate while reducing the computational complexity as much as possible.
The decoding algorithm flow is as follows:
1) After receiving a certain number of coding packets, the receiving end generates a coding matrix and uses the BP algorithm for decoding. If all source data is successfully decoded, go to 3); otherwise, go to 2).
2) Organize the undecoded code packets and obtain the coding matrix between the undecoded data packets and the corresponding code packets. Use the GE algorithm for decoding. If the decoding is successful, go to 3); otherwise, continue to receive the encoded packet.
3) Decoding is successful and this data transmission process ends. 3 Deep space data transmission strategy based on OLT code
This paper proposes a deep space data transmission strategy based on OLT code. The sender encodes the data file with OLT code to obtain the OLT code data packet. The format definition of the OLT code data packet is shown in Figure 3.
OLT code data packet consists of frame header and data field. In the frame header, when the OLT code is marked as О, it is the normal transmission mode; when the OLT code is marked as 1, it is the OLT code transmission mode. In the data field, when the transmission mode is OLT code transmission mode, the “offset” field will be changed to the “degree” field, indicating that the packet is encoded by several original data packets, followed by the data packets that make up the packet. Serial number, then encoding packet.
The deep space data transmission strategy based on OLT code is shown in Figure 4. The main steps are as follows:
1) The sending end sends a Metadata Protocol Data Unit (MPDU) to inform the receiving end of various transmission parameters such as the size of the file to be transmitted.
2) The sending end sets the maximum sending redundancy of the file, starts splitting the file and encoding the OLT code, and generates the encoding package. Encapsulate the encoded packet as data information into an OLT code data packet and send it to the receiving end, and then wait for feedback information from the receiving end.
3) After receiving the MPDU and a certain number of OLT code data packets, the receiving end uses a joint decoding algorithm to decode the encoded packets based on the frame header information. If the decoding fails, the failure information is fed back, and the encoding information continues to be received and decoded; if the decoding is successful, a Finished PDU is sent to notify the sending end of successful reception.
4) After the sending end receives the decoding failure information, it encodes according to the information and continues to send the OLT code packet and goes to 3); after receiving the Finished PDU, it stops encoding and sending, releases resources, and sends ACK confirmation to release the resources. transmission
4Performance Simulation and Analysis
This article builds a simulation platform based on Matlab, simulates and verifies the performance of the OLT code and deep space data transmission strategy, and compares the deep space data transmission strategy with CFDP.
4.1 Performance simulation analysis of OLT code
First, simulate the decoding success rate of LT code and OLT code under different packet loss rates when the coding redundancy is certain. The degree distribution function used in the simulation is the robust solitary wave distribution, the parameters are set to e=0. 1,8 = 0.005, the number of data packets is 1000, the coding redundancy is 30%, and the number of simulations is 1000. The simulation results are shown in Figure 5 shown. It can be seen from Figure 5 that under different packet loss rates, the decoding success rate of OLT code is higher than that of T code; as the packet loss rate increases, the decoding success probability of OIT code and LT code does not decrease. , but the decoding success rate of OLT codes decreases slowly. The joint decoding algorithm can effectively improve the decoding success rate under the same conditions.