This report describes the protocol design of TCP with Forward Error
Correction (TCP-FEC). The performance of TCP can
be significantly
improved by generating and sending redundant segments in addition to
the normal TCP data segments. Data losses in the
network can be
recovered from the redundant or the original data packets. Additionally
by adding correcting codes to the TCP transmissions, both isolated and
bursty losses can be handled. The
advantage for the application is that
the long retransmission times can be avoided if the repair can be done
locally. The advantage for the network is two-fold, excessive
retransmissions do not further congest the network and wireless losses
can be repaired at the receiver. This technical report details TCP-FEC
from a design, migration and protocol perspective in the highly
heterogeneous wireless environments envisaged by the sixth framework
Ambient Networks project\footnote{This work was supported by the EU
Ambient Networks Project IST-2002-507134-AN}.