Network Coding Meets TCP: Theory and Implementation
Sundararajan, J. K. S.
; Shah, D. S.
; Médard, M. M.
; Mitzenmacher, M. Mitzenmacher
;
Barros, J.
Proceedings of the IEEE Vol. 99, Nº 3, pp. - - -, March, 2011.
ISSN (print): 0018-9219
ISSN (online): 1558-2256
Scimago Journal Ranking: 1,89 (in 2011)
Digital Object Identifier: 10.1109/JPROC.2010.2093850
Abstract
We propose a mechanism that incorporates network
coding into TCP with only minor changes to the protocol
stack, thereby allowing incremental deployment. In our scheme,
the source transmits random linear combinations of packets
currently in the congestion window. At the heart of our scheme
is a new interpretation of ACKs – the sink acknowledges every
degree of freedom (i.e., a linear combination that reveals one
unit of new information) even if it does not reveal an original
packet immediately. Such ACKs enable a TCP-like slidingwindow approach to network coding. Our scheme has the nice
property that packet losses are essentially masked from the
congestion control algorithm. Our algorithm therefore reacts
to packet drops in a smooth manner, resulting in a novel and
effective approach for congestion control over networks involving
lossy links such as wireless links. Our experiments show that our
algorithm achieves higher throughput compared to TCP in the
presence of lossy wireless links. We also establish the soundness
and fairness properties of our algorithm.