05.08.2014 Views

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.5. TCP Variants 65<br />

connection initially starts off in slow start, until in the 4 th RTT packet loss is<br />

detected <strong>and</strong> ssthresh is calculated as half of the number of packets in flight.<br />

As TCP Tahoe always restarts the connection in slow start, cwnd is set to<br />

1 packet <strong>and</strong> cwnd slow starts up to ssthresh. When cwnd ≥ ssthresh<br />

the TCP connection enters congestion avoidance until packet loss is again<br />

detected. The cycle continues until the 21 st RTT when a network timeout<br />

occurs whereby ssthresh is recalculated <strong>and</strong> cwnd is set to 1 packet.<br />

4.5.2 TCP Reno<br />

In 1990, Van Jacobson refined the congestion control algorithm. He noted<br />

that congestion control should do two things: prevent the pipe from going<br />

empty after a loss (as if it doesn’t go empty, the TCP flow does not have to<br />

spend time refilling it again) <strong>and</strong> correctly account for all data that is actually<br />

in the pipe (as congestion avoidance should be estimating <strong>and</strong> adapting to<br />

the rate).<br />

As a consequence of this chain of thought, TCP Reno [Jac88] introduces<br />

major improvements over Tahoe. It still maintains all of the features of TCP<br />

Tahoe (such as the improved RT O calculation <strong>and</strong> slow start after a timeout)<br />

but changes the way in which it reacts when a loss is detected upon duplicate<br />

acknowledgments.<br />

The concept is that should the network be heavily congested, the receipt<br />

of acks will stop (as the receiver will not receive any data packets to respond<br />

acknowledgments to). Therefore it is highly likely timeouts only occur when<br />

the network undergoes heavy congestion, <strong>and</strong> that the receipt of dupack<br />

signifies that the network is only moderately congested.<br />

Therefore, the implementation of slow start after a Fast Retransmit in

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!