%% You should probably cite draft-ietf-tsvwg-tcp-eifel-alg instead of this I-D. @techreport{ludwig-tsvwg-tcp-eifel-alg-00, number = {draft-ludwig-tsvwg-tcp-eifel-alg-00}, type = {Internet-Draft}, institution = {Internet Engineering Task Force}, publisher = {Internet Engineering Task Force}, note = {Work in Progress}, url = {https://datatracker.ietf.org/doc/draft-ludwig-tsvwg-tcp-eifel-alg/00/}, author = {Ludwig Reiner}, title = {{The Eifel Algorithm for TCP}}, pagetotal = 12, year = 2000, month = nov, day = 20, abstract = {TCP's intertwined error and congestion control is not robust against spurious timeouts nor is it robust against packet re-orderings. A packet that is delayed in the network beyond the expiration of TCP's retransmission timer, is mistaken for a packet loss by a TCP sender. Also, a packet that is re-ordered in the network beyond TCP's duplicate acknowledgment threshold, is eventually mistaken for a packet loss by a TCP sender. Both situations lead to a spurious retransmit of the oldest outstanding segment, and an unnecessary reduction of the congestion window at the sender. Moreover, a spurious timeout forces the sender into a go-back-N retransmission mode leading to spurious retransmits of all outstanding segments.}, }