Unformatted text preview: uce the throughput of a TCP connection drastically.
TCP is now required to support an algorithm called slow start. It operates by observing that
the rate at which new packets should be injected into the network is the rate at which the
acknowledgments are returned by the other end.
Slow start adds another window to the sender's TCP: the congestion window, called cwnd.
When a new connection is established with a host on another network, the congestion
window is initialized to one segment (i.e., the segment size announced by the other end).
Each time an ACK is received, the congestion window is increased by one segment, (cwnd
is maintained in bytes, but slow start always increments it by the segment size.) The sender
can transmit up to the minimum of the congestion window and the advertised window. The
congestion window is flow control imposed by the sender, while the advertised window is
flow control imposed by the receiver.
The sender starts by transmitting one segment and waiting for its ACK. When that ACK is file:///D|/Documents%20and%20Settings/bigini/Docu...homenet2run/tcpip/tcp-ip-illustrated/tcp_bulk.htm (11 of 24) [12/09/2001 14.47.22] Chapter 20. TCP Bulk Data Flow received, the congestion window is incremented from one to two, and two segments can be
sent. When each of those two segments is acknowledged, the congestion window is
increased to four. This provides an exponential increase.
At some point the capacity of the internet can be reached, and an intermediate router will
start discarding packets. This tells the sender that its congestion window has gotten too
large. When we talk about TCP's timeout and retransmission algorithms in the next chapter,
we'll see how this is handled, and what happens to the congestion window. For now, let's
watch slow start in action.
Figure 20.8 shows data being sent from the host sun to the host
vangogh.cs.berkeley.edu. The data traverses a slow SLIP link, which should be the
bottleneck. (We have removed the connection est...
View Full Document
This test prep was uploaded on 04/04/2014 for the course ECE EL5373 taught by Professor Guoyang during the Spring '12 term at NYU Poly.
- Spring '12