Increasing TCP's Initial Window (RFC2414)
Original Publication Date: 1998-Sep-01
Included in the Prior Art Database: 2000-Sep-13
Internet Society Requests For Comment (RFCs)
M. Allman: AUTHOR [+3]
This document specifies an increase in the permitted initial window for TCP from one segment to roughly 4K bytes. This document discusses the advantages and disadvantages of such a change, outlining experimental results that indicate the costs and benefits of such a change to TCP.
Network Working Group M. Allman
Request for Comments: 2414 NASA Lewis/Sterling Software
Category: Experimental S. Floyd
Increasing TCP's Initial Window
Status of this Memo
This memo defines an Experimental Protocol for the Internet
community. It does not specify an Internet standard of any kind.
Discussion and suggestions for improvement are requested.
Distribution of this memo is unlimited.
Copyright (C) The Internet Society (1998). All Rights Reserved.
This document specifies an increase in the permitted initial window
for TCP from one segment to roughly 4K bytes. This document
discusses the advantages and disadvantages of such a change,
outlining experimental results that indicate the costs and benefits
of such a change to TCP.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
1. TCP Modification
This document specifies an increase in the permitted upper bound for
TCP's initial window from one segment to between two and four
segments. In most cases, this change results in an upper bound on
the initial window of roughly 4K bytes (although given a large
segment size, the permitted initial window of two segments could be
significantly larger than 4K bytes). The upper bound for the initial
window is given more precisely in (1):
min (4*MSS, max (2*MSS, 4380 bytes)) (1)
Equivalently, the upper bound for the initial window size is based on
the maximum segment size (MSS), as follows:
If (MSS <= 1095 bytes)
then win <= 4 * MSS;
If (1095 bytes < MSS < 2190 bytes)
then win <= 4380;
If (2190 bytes <= MSS)
then win <= 2 * MSS;
This increased initial window is optional: that a TCP MAY start with
a larger initial window, not that it SHOULD.
This upper bound for the initial window size represents a change from
RFC 2001 [S97], which specifies that the congestion window be
initialized to one segment. If implementation experience proves
successful, then the intent is for this change to be incorporated
into a revision to RFC 2001.
This change applies to the initial window of the connection in the
first round trip time (RTT) of transmission following the TCP three-
way handshake. Neither the SYN/ACK nor its acknowledgment (ACK) in
the three-way handshake should increase the initial window size above
that outlined in equation (1). If ...