Redundancy adaptation scheme for network coding with TCP
To address the inability of the standard TCP protocol to distinguish between losses due to congestion and random packet losses on the noisy channel, this paper proposes an algorithm to dynamically adjust the redundancy factor R of the TPC/NC protocol proposed by Sundararajan et al. by adding some additional functionalities to the original network coding layer. We define a loss differentiation scheme to adjust R, based on the Vegas Loss Predictor and the collective feedback information of ACKs and duplicates ACKs, which are both indicators of the network condition. In that way the source adjusts R based on the network conditions, avoiding unnecessary TCP rate reduction linked to packet losses due to transmission impairments and preventing the network from entering in a congestion state. The TPC/NC implementation with our adaptive scheme is full-duplex, and can manage multiple TCP connections simultaneously. Simulation results over realistic network scenarios using OPNET Modeler show that our adaptive scheme in conjunction with the standard TCP/NC produces better TCP-throughputs than the standard TCP/NC, TCP-Reno, TPC New Reno, and TCP Reno with SACKS.