Computer Networks Congestion Avoidance Autumn 2000 John Kristoff

  • Slides: 12
Download presentation
Computer Networks Congestion Avoidance Autumn 2000 John Kristoff 1

Computer Networks Congestion Avoidance Autumn 2000 John Kristoff 1

Recall TCP Sliding Window Operation Autumn 2000 John Kristoff 2

Recall TCP Sliding Window Operation Autumn 2000 John Kristoff 2

Important Terms Ñ Maximum Segment Size (MSS) Ñ Window Ñ Retransmission Ñ Timer Ñ

Important Terms Ñ Maximum Segment Size (MSS) Ñ Window Ñ Retransmission Ñ Timer Ñ Delayed ACK Ñ Duplicate ACK Autumn 2000 John Kristoff 3

Congestion Window Ñ Sender based flow control Ñ Sender uses min(cwnd, advertised window) Ñ

Congestion Window Ñ Sender based flow control Ñ Sender uses min(cwnd, advertised window) Ñ Tranmission window Ñ Detect network condition and adjust Ñ Use timers, ACKs and network feedback Autumn 2000 John Kristoff 4

Retransmitting Segments Ñ TCP starts timer after sending a segment Ñ If ACK returns,

Retransmitting Segments Ñ TCP starts timer after sending a segment Ñ If ACK returns, reset timer Ñ If no ACK, retransmit and increase timer (2 x) after resetting Autumn 2000 John Kristoff 5

Round Trip Time (RTT) Ñ TCP measures RTT and uses RTT to calculate timer

Round Trip Time (RTT) Ñ TCP measures RTT and uses RTT to calculate timer values Ñ If ACKs returning quickly, timer values are kept low Ñ Retransmit quickly when throughput is high Ñ Allow time for ACK to return when throughput is low Autumn 2000 John Kristoff 6

Slow Start Ñ Initialize cwnd to 1 MSS Ñ Increase cwnd by 1 MSS

Slow Start Ñ Initialize cwnd to 1 MSS Ñ Increase cwnd by 1 MSS for every ACK Ñ Not very slow! Autumn 2000 John Kristoff 7

Congestion Avoidance Ñ When packet loss occurs, TCP must slow its flow of traffic

Congestion Avoidance Ñ When packet loss occurs, TCP must slow its flow of traffic Ñ When retranmission timer expires, save value of transmission window * ½ (ssthresh) Ñ If congestion occurred due to a timeout, set cwnd to 1 segment Ñ When data is ACK'd, increase cwnd via slow start up to ssthresh Ñ Thereafter increase cwnd by 1/cwnd for each ACK Autumn 2000 John Kristoff 8

Congestion Avoidance Illustrated Autumn 2000 John Kristoff 9

Congestion Avoidance Illustrated Autumn 2000 John Kristoff 9

Fast Retransmit Ñ If > 2 duplicate ACKs are received, a segment was probably

Fast Retransmit Ñ If > 2 duplicate ACKs are received, a segment was probably lost Ñ Sender assumes enough time has elapsed for out of order segments to have arrived and assembled Ñ Retransmit segment without waiting for a retransmission timer to expire Ñ Enter Fast Recovery Autumn 2000 John Kristoff 10

Fast Recovery Ñ Sender has to assume data is still flowing due to the

Fast Recovery Ñ Sender has to assume data is still flowing due to the reception of duplicate ACKs Ñ Loss was probably a rare or temporary event Ñ Do not go into slow start, just go into congestion avoidance mode Autumn 2000 John Kristoff 11

Other mechanisms Ñ Selective Acknowledgements (SACK) Ñ TCP Pacing Ñ Packeteer Ñ RED Ñ

Other mechanisms Ñ Selective Acknowledgements (SACK) Ñ TCP Pacing Ñ Packeteer Ñ RED Ñ ECN Ñ Network pricing Autumn 2000 John Kristoff 12