  We propose a novel adaptive and causal random linear network coding (AC-RLNC)
algorithm with forward error correction (FEC) for a point-to-point
communication channel with delayed feedback. AC-RLNC is adaptive to the channel
condition, that the algorithm estimates, and is causal, as coding depends on
the particular erasure realizations, as reflected in the feedback
acknowledgments. Specifically, the proposed model can learn the erasure pattern
of the channel via feedback acknowledgments, and adaptively adjust its
retransmission rates using a priori and posteriori algorithms. By those
adjustments, AC-RLNC achieves the desired delay and throughput, and enables
transmission with zero error probability. We upper bound the throughput and the
mean and maximum in order delivery delay of AC-RLNC, and prove that for the
point to point communication channel in the non-asymptotic regime the proposed
code may achieve more than 90% of the channel capacity. To upper bound the
throughput we utilize the minimum Bhattacharyya distance for the AC-RLNC code.
We validate those results via simulations. We contrast the performance of
AC-RLNC with the one of selective repeat (SR)-ARQ, which is causal but not
adaptive, and is a posteriori. Via a study on experimentally obtained
commercial traces, we demonstrate that a protocol based on AC-RLNC can,
vis-`a-vis SR-ARQ, double the throughput gains, and triple the gain in terms of
mean in order delivery delay when the channel is bursty. Furthermore, the
difference between the maximum and mean in order delivery delay is much smaller
than that of SR-ARQ. Closing the delay gap along with boosting the throughput
is very promising for enabling ultra-reliable low-latency communications
(URLLC) applications.
