RFC 3390:Increasing TCP's Initial Window
RFC-Ref

segment


Click on the red underlined text to get to the source

... an increase in the permitted upper bound for TCP's initial window from one or two segment(s) to between two and four segments. In most cases, this change results in an upper bound on the initial window of ...
... TCP's initial window from one or two segment(s) 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 ...
... 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 may be significantly larger than 4K ...
... roughly 4K bytes (although given a large segment size, the permitted initial window of two segments may be significantly larger than 4K bytes). ...
... MSS, 4380 bytes)) (1) Note: Sending a 1500 byte packet indicates a maximum segment size (MSS) of 1460 bytes (assuming no IP ...
... MSS to 4380 bytes allows the sender to transmit three segments initially in the common case when using 1500 byte packets. ...
... RFC2581], which specified that the congestion window be initialized to one or two segments. This change applies to the initial window of the connection ...
... sender after a correctly transmitted SYN MUST be one segment consisting of MSS bytes. ...
... restart window should never increase the size of cwnd). These changes do NOT change the loss window, which must remain 1 segment of MSS bytes (to ...


... the congestion window `cwnd' SHOULD be reduced to prevent large bursts of smaller segments. Specifically, `cwnd' SHOULD be reduced by the ratio of the old segment size to the new segment ...
... bursts of smaller segments. Specifically, `cwnd' SHOULD be reduced by the ratio of the old segment size to the new segment size. ...
... segments. Specifically, `cwnd' SHOULD be reduced by the ratio of the old segment size to the new segment size. When larger initial windows are implemented along with Path MTU Discovery ...
... (DF) bit in all segments in the initial window, or to set the "Don't Fragment" (DF) bit ...
... Don't Fragment" (DF) bit in one of the segments. It is an open question as to which of these two alternatives is best; we would hope that implementation experiences will shed light on this question. In the ...
... implementation experiences will shed light on this question. In the first case of setting the DF bit in all segments, if the initial packets are too large, then all of the initial packets will be dropped in the network ...
... network. In the second case of setting the DF bit in only one segment, if the initial packets are too large, then all but one of the initial packets will be fragmented in the network. When ...
... network. When the second case is followed, setting the DF bit in the last segment in the initial window provides the least chance for needless retransmissions ...
... in the initial window provides the least chance for needless retransmissions when the initial segment size is found to be too large, because it minimizes the chances of duplicate ACKs triggering ...


... 1. When the initial window is one segment, a receiver employing delayed ACKs ...
... generating an ACK. With an initial window of at least two segments, the receiver will generate an ACK after the second data ...
... receiver will generate an ACK after the second data segment arrives. This eliminates the wait on the timeout (often up to 200 msec, and possibly up to 500 msec [RFC1122]). ...
... transmitting only a small amount of data, a larger initial window reduces the transmission time (assuming at most moderate segment drop rates). For many email (SMTP [Pos82 ...


... TCP connection can sometimes be better off starting with an initial window of one segment. There are scenarios where a TCP connection slow-starting from an initial window of one segment ...
... segment. There are scenarios where a TCP connection slow-starting from an initial window of one segment might not have segments dropped, while a TCP connection ...
... starting from an initial window of one segment might not have segments dropped, while a TCP connection starting with an ...
... TCP connection starting with an initial window of four segments might experience unnecessary retransmits due to the inability of the router to handle small ...
... congestion-avoidance phase of the window increase algorithm. These premature segment drops are unlikely to occur in uncongested networks with sufficient buffering ...
... performance with the larger initial window even if the burstiness of the initial window results in premature segment drops. This will be true if (1) the TCP connection recovers from the segment drop without a retransmit ...
... in premature segment drops. This will be true if (1) the TCP connection recovers from the segment drop without a retransmit timeout, and (2) the TCP connection is ultimately limited to a small ...


... separate potential dangers for the network. The first danger would be a scenario where a large number of segments on congested links ...
... links were duplicate segments that had already been received at the receiver. The second danger would be a scenario where a large number ...
... receiver. The second danger would be a scenario where a large number of segments on congested links were segments that would be dropped ...
... of segments on congested links were segments that would be dropped later in the network before reaching their final destination ...
... these three issues below. Duplicate segments: As described in the previous section, the larger initial window ...
... As described in the previous section, the larger initial window could occasionally result in a segment dropped from the initial window, when that segment might not have been dropped if the ...
... could occasionally result in a segment dropped from the initial window, when that segment might not have been dropped if the sender had slow-started from an initial window of one segment ...
... segment might not have been dropped if the sender had slow-started from an initial window of one segment. However, Appendix A shows that even in this case, the larger initial window would not result in the transmission of a large ...
... However, Appendix A shows that even in this case, the larger initial window would not result in the transmission of a large number of duplicate segments. Segments ...
... segments. Segments dropped later in the network: ...
... How much would the larger initial window for TCP increase the number of segments on congested links that would be dropped before reaching their final destination ...
... connections with multiple congested links, where some segments might use scarce bandwidth on the first congested link ...
... TCP connections will have only one congested link along the path. Segments dropped from these connections do not "waste" scarce bandwidth ...
... network paths will have multiple congested links, and segments dropped from the initial window could use scarce bandwidth along the earlier congested links ...
... the drop rate is independent of the initial window used by TCP segments, the problem of congested links carrying segments that ...
... segments, the problem of congested links carrying segments that will be dropped before reaching their destination will be similar ...
... for TCP connections that start by sending four segments or one segment. ...
... start by sending four segments or one segment. An increased packet drop rate: ...
... For a network with a high segment drop rate, increasing the TCP initial window could increase the segment ...
... segment drop rate, increasing the TCP initial window could increase the segment drop rate even further. This is in part because routers with Drop Tail queue management ...
... larger TCP initial window should not significantly increase the segment drop rate. Simulation-based explorations of these issues are discussed in Section 7.2. ...


... RTO in place until TCP takes a sample from a data segment and the corresponding ACK. While this method ...


... Internet today, because such traffic is already fairly bursty. Bursts of two and three segments are already typical of TCP [Flo97 ...
... Flo97]; a delayed ACK (covering two previously unacknowledged segments) received during congestion avoidance causes the congestion window to slide and two segments ...
... segments) received during congestion avoidance causes the congestion window to slide and two segments to be sent. The same delayed ACK received during slow start ...
... ACK received during slow start causes the window to slide by two segments and then be incremented by one segment, resulting in a three-segment ...
... window to slide by two segments and then be incremented by one segment, resulting in a three-segment burst. While not necessarily typical, bursts of four and five segments ...
... segments and then be incremented by one segment, resulting in a three-segment burst. While not necessarily typical, bursts of four and five segments for TCP ...
... segment, resulting in a three-segment burst. While not necessarily typical, bursts of four and five segments for TCP are not rare. Assuming delayed ACKs ...
... ACK causes the subsequent ACK to cover four previously unacknowledged segments. During congestion avoidance this leads to a four-segment burst, and during slow start ...
... to cover four previously unacknowledged segments. During congestion avoidance this leads to a four-segment burst, and during slow start a five-segment ...
... segment burst, and during slow start a five-segment burst is generated. There are also changes in progress that reduce the performance ...


... channels [All97b]. In this study, an initial window of four segments (512 byte MSS) resulted in throughput ...
... All97a, AHO98], a four-segment initial window decreased the transfer time of a 16KB file by roughly 10%, with no accompanying increase in the drop rate. A simulation study [RFC2416 ...
... to 100 Internet hosts, four-segment initial windows resulted in a small increase in the drop rate of 0.04 segments/transfer. While the ...
... hosts, four-segment initial windows resulted in a small increase in the drop rate of 0.04 segments/transfer. While the drop rate increased slightly, the transfer time was reduced by roughly 25% for transfers using the four-segment ...
... segments/transfer. While the drop rate increased slightly, the transfer time was reduced by roughly 25% for transfers using the four-segment (512 byte MSS) initial window when compared to an initial window of one segment ...
... segment (512 byte MSS) initial window when compared to an initial window of one segment. A simulation study in [RFC2415 ...
... of one scenario, the larger initial window resulted in an increase in the drop rate of less than 1% above the loss rate experienced when using a one-segment initial window; in this scenario, the drop rate increased from 3.5% with one-segment initial windows, to 4.5% with ...
... using a one-segment initial window; in this scenario, the drop rate increased from 3.5% with one-segment initial windows, to 4.5% with four-segment initial windows. The overall conclusions were that ...
... increased from 3.5% with one-segment initial windows, to 4.5% with four-segment initial windows. The overall conclusions were that increasing the TCP initial window to three packets (or 4380 bytes) ...
... networks where all TCP connections use an initial window of four segments is shown to be 1-2% greater than in a network where all connections ...
... network where all connections use an initial window of one segment. This relationship held in scenarios where the loss rates with one-segment initial ...
... connections use an initial window of one segment. This relationship held in scenarios where the loss rates with one-segment initial windows ranged from 1% to 11%. In addition, in networks where ...
... networks where connections used an initial window of four segments, TCP connections spent more time waiting for the retransmit timer ...
... retransmit timer (RTO) to expire to resend a segment than was spent using an initial window of one segment. The time spent waiting for the RTO ...
... resend a segment than was spent using an initial window of one segment. The time spent waiting for the RTO timer to expire ...
... connection's share of the bottleneck bandwidth is close to one segment, using a larger initial window can cause a perceptible increase in both loss rates and retransmit timeouts. ...


... Appendix A - Duplicate Segments ...
... [Flo94] [RFC2481(-> 3168prop)]), all TCPs use segment drops as indications from the network about the limits of available bandwidth ...
... that the change to a larger initial window should not result in the sender retransmitting a large number of duplicate segments that have already arrived at the receiver. ...
... receiver. If one segment is dropped from the initial window, there are three different ways for TCP to recover: (1) Slow-starting ...
... TCP to recover: (1) Slow-starting from a window of one segment, as is done after a retransmit timeout, or after Fast Retransmit in Tahoe TCP; (2) Fast Recovery ...
... SACK option [MMFR96]. In all three cases, if a single segment is dropped from the initial window, no duplicate segments (i.e., segments ...
... cases, if a single segment is dropped from the initial window, no duplicate segments (i.e., segments that have already been received at the receiver ...
... segment is dropped from the initial window, no duplicate segments (i.e., segments that have already been received at the receiver) are transmitted. Note that for a TCP ...
... receiver) are transmitted. Note that for a TCP sending four 512-byte segments in the initial window, a single segment drop will not require a retransmit timeout, but can be recovered by using the ...
... TCP sending four 512-byte segments in the initial window, a single segment drop will not require a retransmit timeout, but can be recovered by using the Fast Retransmit algorithm ...
... Fast Retransmit algorithm (unless the retransmit timer expires prematurely). In addition, a single segment dropped from an initial window of three segments might be repaired using the fast retransmit algorithm ...
... prematurely). In addition, a single segment dropped from an initial window of three segments might be repaired using the fast retransmit algorithm, depending on which segment is dropped and whether or not ...
... window of three segments might be repaired using the fast retransmit algorithm, depending on which segment is dropped and whether or not delayed ACKs are used. For example, dropping the first segment ...
... segment is dropped and whether or not delayed ACKs are used. For example, dropping the first segment of a three segment initial window will always require waiting for a ...
... ACKs are used. For example, dropping the first segment of a three segment initial window will always require waiting for a timeout, in the absence of Limited Transmit [RFC3042]. However, ...
... timeout, in the absence of Limited Transmit [RFC3042]. However, dropping the third segment will always allow recovery via the fast retransmit algorithm, as long as no ACKs are lost. ...
... Next we consider scenarios where the initial window contains two to four segments, and at least two of those segments are dropped. If all segments ...
... Next we consider scenarios where the initial window contains two to four segments, and at least two of those segments are dropped. If all segments in the initial window are dropped, then clearly no ...
... segments, and at least two of those segments are dropped. If all segments in the initial window are dropped, then clearly no duplicate segments are retransmitted, as the receiver ...
... all segments in the initial window are dropped, then clearly no duplicate segments are retransmitted, as the receiver has not yet received any segments ...
... segments are retransmitted, as the receiver has not yet received any segments. (It is still a possibility that these dropped segments used scarce bandwidth ...
... received any segments. (It is still a possibility that these dropped segments used scarce bandwidth on the way to their drop point; this issue was discussed in Section 5.) ...
... issue was discussed in Section 5.) When two segments are dropped from an initial window of three segments, the sender ...
... When two segments are dropped from an initial window of three segments, the sender will only send a duplicate segment if the first ...
... segments, the sender will only send a duplicate segment if the first two of the three segments were dropped, and the sender ...
... sender will only send a duplicate segment if the first two of the three segments were dropped, and the sender does not receive a packet with the SACK ...
... receive a packet with the SACK option acknowledging the third segment. When two segments ...
... segment. When two segments are dropped from an initial window of four segments, an examination of the six possible scenarios (which we ...
... When two segments are dropped from an initial window of four segments, an examination of the six possible scenarios (which we don't go through here) shows that, depending on the position of the ...
... SACK the sender might send one duplicate segment. There are no scenarios in which the sender sends two duplicate segments ...
... segment. There are no scenarios in which the sender sends two duplicate segments. When three segments ...
... segments. When three segments are dropped from an initial window of four segments, then, in the absence of SACK ...
... When three segments are dropped from an initial window of four segments, then, in the absence of SACK, it is possible that one duplicate segment ...
... segments, then, in the absence of SACK, it is possible that one duplicate segment will be sent, depending on the position of the dropped segments. ...
... duplicate segment will be sent, depending on the position of the dropped segments. The summary is that in the absence of SACK ...
... The summary is that in the absence of SACK, there are some scenarios with multiple segment drops from the initial window where one duplicate segment will be transmitted. There are no scenarios in ...
... with multiple segment drops from the initial window where one duplicate segment will be transmitted. There are no scenarios in which more than one duplicate segment will be transmitted. Our ...
... duplicate segment will be transmitted. There are no scenarios in which more than one duplicate segment will be transmitted. Our conclusion is than the number of duplicate segments transmitted as a ...
... which more than one duplicate segment will be transmitted. Our conclusion is than the number of duplicate segments transmitted as a result of a larger initial window should be small. ...



Google
Web
RFC-Ref