Transport Layer Part 3 Flashcards

1
Q

Principles of Congestion Control

Congestion

A
  • Too many sources sending too much data too fast for network to handle.
  • Causes long delays (queuing)
  • Causes packet loss (buffer overflow)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Principles of Congestion Control

Approaches to Congestion Control

A
  1. End-end congestion control
  2. Network-assisted congestion control
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Principles of Congestion Control

End-end Congestion Control

A
  • No explicit feedback from network
  • Congestion inferred from observed loss, delay
  • Approach taken by TCP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Principles of Congestion Control

Network-assisted Congestion Control

A
  • Routers provide direct feedback to sending/receiving hosts about flows passing through congested router
  • May indicate congestion level or explicitly set sending rate
  • ECN protocol
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Principles of Congestion Control

ECN Protocol

A
  • Network-assisted Congestion Control
  • 2 bits in IP header marked by network router to indicate congestion
  • Congestion indication carried to destination
  • Destination sets ECN bit on ACK seg to notify sender on congestion
  • Involves both IP (IP header bit) and TCP (TCP header)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

TCP Congestion Control

cwnd

A
  • Congestion window
  • Sender in-flight packets cannot exceed this number
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

TCP Congestion Control

rwnd

A
  • Receiver window
  • Sender in-flight packets cannot exceed this number
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

TCP Congestion Control

cwnd & rwnd

A
LastByteSent - LastByteAcked <= min{cwnd, rwnd}

Amount of unACKed data at sender cannot exceed minimum of cwnd and rwnd.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

TCP Congestion Control

TCP Congestion Phases

A
  1. Slow Start Phase
  2. Congestion Avoidance Phase
  3. Congestion Detection Phase
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

TCP Congestion Control

Threshold

A

Point where congestion began in the past.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

TCP Congestion Control

Slow Start Phase

A

Exponential increment: After every RTT the congestion window size increments exponentially

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

TCP Congestion Control

Congestion Avoidance Phase

A

Additive Increment: Starts after threshold val is reached. After each RTT, cwnd is incremented by 1.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

TCP Congestion Control

Congestion Detection Phase

A

Multiplicative Decrement: If congestion occurs, cwnd is cut in half. Only way for sender to guess that congestion occured is if it needs to retransmits a segment.

Retransmission can occur if timer times out or when 3 duplicate ACKs are received.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

TCP Congestion Control

AIMD

A
  • Additive Increase, Multipicative Decrease
  • Senders can increase sending rate until packet loss occurs, then decrease sending rate on loss event
  • “Sawtooth” behavior, probing for bandwidth
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

TCP Congestion Control

Congestion Detection Phase Case 1

A

TCP Tahoe: Retransmission due to timeout.
* ssthresh is reduced to half of current window size
* set cwnd = 1
* start with Slow Start Phase again

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

TCP Congestion Control

Congestion Detection Phase Case 2

A

TCP Reno: Retransmission due to 3 ACKs
* ssthresh reduced to half of current window size
* set cwnd = ssthresh
* start with Congestion Avoidance Phase