## 2 Methods
### Reliable Transmission Design Mechanism
#### 2.1.2 NACK Dynamic Adjustment Transmission Mechanism
The transmission time can be adjusted based on the degree of packet reordering on the link. The response message from the previous hop's transmission unit to the NACK can trigger the reception unit to release the corresponding retransmission confirmation task, ending the generation of NACK packets. #### 2.2.4 Discussion About the Number of Retransmissions

Furthermore, the flexibility to configure the number of NACK transmissions and retransmissions according to specific application scenarios is crucial to minimizing packet loss. In scenarios with a high link corruption rate, there is a possibility that both a retransmitted packet and its corresponding NACK may be lost. To increase the likelihood of successful retransmission, the sender does not transmit only one copy of a buffered packet but rather multiple (N) copies, along with multiple (M) copies of the NACK in response to a loss notification. Considering that the original packet has already been transmitted and lost, the total number of copies sent for the lost packet is N + 1. If the NACK is also lost, this leads to an effective loss rate of

\[ \begin{array}{c}actual\_loss\_rate^{(N+1)}+actual\_loss\_rate^{(M+1)}- actual\_loss\_rate^{(M+N+1)}=\\ actual\_loss\_rate^{(N+1)}[1+actual\_loss\_rate^{(M-N)}-actual\_loss\_rate^{M}] \end{array}  \tag{1}\]

Since the actual loss rate is less than 1, this formula is constrained by the smaller of M and N. Furthermore, both M and N are positive numbers. Our objective is not to completely eliminate corrupted packet losses but rather to reduce the effective loss rate to a target level specified by the operator. Therefore, we designate N as the smaller number. Ignoring higher-order small terms, we arrive at the following relation:

\[(actual\_loss\_rate)^{(N+1)}<(target\_loss\_rate) \tag{2}\]

For example, if a target loss rate of \(10^{-8}\) is desired by a network operator and the actual loss rate on a corrupting link is \(10^{-4}\), then retransmitting a single copy of the buffered packet (N = 1, M > 1) would suffice to achieve an effective loss rate of \(10^{-8}\). Now, solving Equation (2), we obtain the number of retransmitted copies (N) as follows:

\[N>\frac{log_{10}(target\_loss\_rate)}{log_{10}(actual\_loss\_rate)}-1 \tag{3}\]

Since N is an integer in practice, we assign N the next integer value by taking the _ceiling_ of the RHS term of Equation (3). Also, note that since the loss rates are typically very low, this strategy to retransmit multiple copies adds a very small overhead. ## 3 Results

### NACK Dynamic Adjustment Algorithm Simulation

The topology depicted in Figure 7 illustrates our simulation and experimental setup, where two nodes serve as the upstream and downstream entities, respectively. The two nodes are connected by a network impairment meter and configured with different parameters for out-of-order packets and packet loss damage. The network impairment meter is an abstract simulator that simulates out-of-order packets and packet loss in the network, and subsequent simulation parameters, such as packet loss rate and out-of-order degree, are configured by this impairment meter. This configuration forms the basis for our subsequent simulations and experiments, where we induced different degrees of reordering by manipulating the link parameters and setting specific packet loss rates using a network emulator. We built a simulation environment in Python and used this algorithm to estimate a reasonable NACK sending time. The actual measured link delay was on the order of tens of ms. Therefore, we set the link latency to 40 ms and the link rate to 8 Mbps. The bitmap used by the receiver to generate the NACK was set to 64 bits. The topology of this simulation, as shown in Figure 7, involved an environment where the network impairment was 1%, and different out-of-order rates were set. This ratio increased gradually, with a depth of 20 out-of-order packets.