Adding Explicit Congestion Notification (ECN) Capability to TCP's SYN/ACK Packets

This draft specifies a modification to RFC 3168 to allow TCP SYN/ACK packets to be ECN-Capable. For TCP, RFC 3168 only specifies setting an ECN-Capable codepoint on data packets, and not on SYN and SYN/ACK packets. However, because of the high cost to the TCP transfer of having a SYN/ACK packet dropped, with the resulting retransmit timeout, this document specifies the use of ECN for the SYN/ACK packet itself, when sent in response to a SYN packet with the two ECN flags set in the TCP header, indicating a willingness to use ECN. Setting the initial TCP SYN/ACK packet as ECN-Capable can be of great benefit to the TCP connection, avoiding the severe penalty of a retransmit timeout for a connection that has not yet started placing a load on the network. The TCP responder (the sender of the SYN/ACK packet) must reply to a report of an ECN-marked SYN/ACK packet by resending a SYN/ACK packet that is not ECN-Capable. If the resent SYN/ACK packet is acknowledged, then the TCP responder reduces its initial congestion window from two, three, or four segments to one segment, thereby reducing the subsequent load from that connection on the network. If instead the SYN/ACK packet is dropped, or for some other reason the TCP responder does not receive an acknowledgement in the specified time, the TCP responder follows TCP standards for a dropped SYN/ACK packet (setting the retransmit timer). This document updates RFC 3168.

[1]  Scott O. Bradner,et al.  Key words for use in RFCs to Indicate Requirement Levels , 1997, RFC.

[2]  David L. Black,et al.  The Addition of Explicit Congestion Notification (ECN) to IP , 2001, RFC.

[3]  Bogdan M. Wilamowski,et al.  The Transmission Control Protocol , 2005, The Industrial Information Technology Handbook.

[4]  Kevin Jeffay,et al.  What TCP/IP protocol headers can tell us about the web , 2001, SIGMETRICS '01.

[5]  Wesley M. Eddy,et al.  TCP SYN Flooding Attacks and Common Mitigations , 2007, RFC.

[6]  QUTdN QeO,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[7]  Eddie Kohler,et al.  Tools for the Evaluation of Simulation and Testbed Scenarios , 2008 .

[8]  Sally Floyd,et al.  Increasing TCP's Initial Window , 1998, RFC.

[9]  Donald F. Towsley,et al.  On designing improved controllers for AQM routers supporting TCP flows , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[10]  Hari Balakrishnan,et al.  Network Working Group , 1991 .

[11]  Sally Floyd,et al.  Measuring the evolution of transport protocols in the internet , 2005, CCRV.

[12]  Vern Paxson,et al.  TCP Congestion Control , 1999, RFC.

[13]  Vern Paxson,et al.  Computing TCP's Retransmission Timer , 2000, RFC.

[14]  Steven H. Low,et al.  REM: active queue management , 2001, IEEE Netw..

[15]  Deborah Estrin,et al.  Recommendations on Queue Management and Congestion Avoidance in the Internet , 1998, RFC.

[16]  Aleksandar Kuzmanovic,et al.  The power of explicit congestion notification , 2005, SIGCOMM '05.

[17]  Sally Floyd,et al.  Inappropriate TCP Resets Considered Harmful , 2002, RFC.