L19. How is the optimal value of a retransmission timeout computed? Flashcards

1
Q

What is RTO?

A

A Retransmission Timeout (RTO) is a dynamically calculated time value that determines how long a sender waits for an acknowledgment of a transmitted packet before assuming the packet is lost and retransmitting it.

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

How is RTO calculated?

A

The algorithm most commonly used to calculate RTO is based on the round-trip time (RTT) measurements.

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

Why must RTO be calculated dynamically?

A

Computing RTO dynamically is essential to accommodate varying network conditions.

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

What is RTT?

A

Round-trip time (RTT) is the time it takes for a packet to travel from the sender to the receiver and back again

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

What is SRTT?

A

Smoothed Round-Trip Time (SRTT) is an average of the RTT measurements, providing a more stable estimate than individual RTT samples. It smooths out short-term variations and gives a better indication of typical network conditions.

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

What is RTTVAR?

A

RTT Variance (RTTVAR) measures the variability in RTT, accounting for how much the RTT fluctuates. High variance indicates unstable network conditions, necessitating a more conservative (longer) RTO.

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

What are the key steps of computing the RTO?

A
  1. The initial RTO is typically set to a default value, such as 1 second, because when a connection is first established, there are no RTT measurements available.
  2. Each time a packet is acknowledged, an RTT sample is measured.
  3. The SRTT is updated using an exponential moving average, which is less sensitive to abrupt changes. This is computed as:

SRTT = (1 - a) * SRTT + a * RTT
where a is typically set to 1/8.

  1. RTTVAR is also updated using an exponential moving average, calculated as:

RTTVAR = (1 - b) * RTTVAR + b * |RTT - SRTT|
where b is typically set to 1/4.

  1. Finally, the RTO is calculated using the updated SRTT and RTTVAR values:

RTO = SRTT + max(G, K * RTTVAR)

where G is the clock granularity (often a small value like 0.001 seconds) and K is typically set to 4.

This formula ensures that the RTO is sufficiently large to cover most variations in RTT.

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

What kind of value is optimal for RTO?

A

One that is sufficiently large to cover most variations in RTT.

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

How can the RTO dynamically adjust to network performance?

A

The algorithm calculating RTO continually updates SRTT and RTTVAR with each new RTT measurement. This allows the RTO to dynamically adjust based on current network performance.

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

What kind of RTO does a stable network have?

A

When the RTT is stable, SRTT and RTTVAR converge to smaller values, resulting in a smaller RTO. This minimizes delays due to unnecessary retransmissions.

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

What kind of RTO does an unstable network have?

A

In the presence of high variability in RTT in an unstable network, RTTVAR increases, leading to a longer RTO. This helps avoid premature retransmissions that could worsen congestion.

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