CA-RTO: A Contention-Adaptive Retransmission Timeout

WB-RTO: A Window-Based
Retransmission Timeout
Ioannis Psaras
Demokritos University of Thrace, Xanthi, Greece
Outline of the presentation




Contributions of this work
The current Retransmission Timeout Algorithm
Recent Related Work on the subject
The proposed algorithm: WB-RTO
 The
algorithm
 Expected Behavior


Evaluation Plan
Experimental Results
COMputer NETworks Group (COMNET)
2
Contributions of this work

Our perspective:


Our observations:




When contention increases, the timeout becomes the scheduler for
the link.
TCP-RTO should not be solely based on RTT estimations.
Congestion events cause retransmission synchronization.
Wireless burst errors should not be interpreted as congestion events.
Our solutions:



Approximation of the current level of network contention
Estimation of the contribution of each flow to congestion
Allowance for asynchronous retransmissions when timeout happens.
COMputer NETworks Group (COMNET)
3
The current Retransmission Timeout Algorithm

Upon each ACK arrival, the sender:
 Calculates the
 Updates
RTT Variation:
the expected RTT prior to calculating the timeout:
 Calculates the
Retransmission Timeout value:
COMputer NETworks Group (COMNET)
4
Recent Related Work on the subject

Eifel RTO Algorithm
 Uses

the timestamp option to detect a spurious timeout.
Forward RTO Algorithm
 Uses
the first 3 ACKs after the timeout to decide if the
timeout was spurious or not.

Peak-Hopper RTO Algorithm
 Uses
2 timers: one is aggressive and one is conservative.
Each time it decides which one to follow.

CA-RTO: A Contention-Adaptive RTO
 Integrates a
contention-adaptive parameter and introduces
retransmission randomness.
COMputer NETworks Group (COMNET)
5
Window-Based RTO (1/4): Proportional Timeout


Estimation of the contribution of the flow to
congestion:
c = f(cwnd , max cwnd )
Compare the current cwnd_ with the max_cwnd_:
 If
cwnd_ < max_cwnd_ / 2,

 If
max_cwnd_ / 2 < cwnd_ < (3/4)* max_cwnd_,

 If
c = 1: minimal charge
c = 1,5: medium charge
(3/4)* max_cwnd_ < cwnd_ < max_cwnd_,

c = 2: major charge
COMputer NETworks Group (COMNET)
6
Window-Based RTO (2/4): Contention Estimation
Flow classification according to its cwnd_ history
(awnd_):
ai = g(awnd , Thresholdi)
where Thresholds 1 to 4 represent different levels of
network contention:

 Threshold
1 corresponds to very high contention,
 Threshold 4 corresponds to low contention.
1. awnd_ < 5: a1 = 10
2. 5 < awnd_ < 10: a2 = 5
3. 10 < awnd_ < 30: a3 = 3
4. 30 < awnd_ < 50: a4 = 2
COMputer NETworks Group (COMNET)
7
Window-Based RTO (3/4): Timeout Adjustment

Calculation of the Window-Based RTO:
WB − RTO = random(rtt, c × ai)
or
WB − RTO = random(rtt, f(cwnd , max cwnd ) × g(awnd , Thresholdi))
1.
2.
3.
4.
rtt, avoids timeout expiration prior to the estimated RTT measurement
Parameter c captures the contribution of the flow to congestion
Parameter a approximates the current level of flow contention
Randomization guarantees asynchronous retransmission attempts
COMputer NETworks Group (COMNET)
8
Window-Based RTO (4/4): Expected Behavior
High penalties result in high
timeout values.
 As awnd_ increases timeout
settles to smaller values.
but
 Large windows do not
always mean large timeout
values.

WB-RTO vs awnd_
COMputer NETworks Group (COMNET)
9
Performance Evaluation Plan

WB-RTO is implemented in TCP-Reno
Topologies used:

Evaluation Scenarios





Simple Wired Scenario
Interaction with Active Queue Management (i.e. RED)
Satellite Environment
Traffic Diversity (Mice with Elephants)
COMputer NETworks Group (COMNET)
10
An Important Note…
WB-RTO does not improve the Goodput performance of TCP
significantly,
but
 here we focus on the Retransmission Timeout Algorithm of
TCP
hence
 we pay more attention on the combination of the
retransmission effort and the Goodput performance,
rather than on the Goodput performance alone.

COMputer NETworks Group (COMNET)
11
Simple Wired Scenario (1)







Topology: Dumbbell
Queuing Policy: DropTail
DBP = Buffer Size = 10 pkts
5 participating flows
1500 sec total simulation time
Flows ideal rate = 2 pkts/wnd
We trace: Seqno progress, RTT,
RTO
TCP-RTO
WB-RTO
COMputer NETworks Group (COMNET)
12
Simple Wired Scenario (2)

For the TCP-RTO
performance, we observe:




RTT stabilization
Similar timeout values
50% more retransmitted pkts
Less Goodput
RTT (in secs)
RTO (in secs)
COMputer NETworks Group (COMNET)
13
Interaction with AQM (i.e. RED) (1)






Topology: Dumbbell
Queuing Policy: RED
DBP = Buffer Size = 40 pkts
min_thresh = 4 pkts
max_thresh = 12 pkts
1500 sec total simulation time
Number of Timeouts
Goodput (in B/s)
Retransmitted Packets
COMputer NETworks Group (COMNET)
14
Interaction with AQM (i.e. RED) (2)

We observe:





Similar Goodput
Significant difference in
Retransmission Effort (50%)
WB-RTO results in 66% less
timeout expirations
TCP-RTO causes inefficient
queue utilization
The average queue length
always overcomes the
max_thresh, when using TCPRTO
TCP-RTO
WB-RTO
COMputer NETworks Group (COMNET)
15
Satellite Scenario (1)











Topology: Cross-Traffic
Bottleneck Queuing Policy: RED
The rest of the buffers use DT
bw_bottleneck = 20Mbps
bw_delay = 300ms
Buffer Size = 200 pkts
min_thresh = 20 pkts
max_thresh = 60 pkts
150 sec total simulation time
PER = 0,0001
3 blackouts on the backbone link
No blackout
After 3 blackouts
COMputer NETworks Group (COMNET)
16
Satellite Scenario (2)

We observe that:

TCP-RTO interprets the
second timeout as a
congestion signal
 WB-RTO does not extend the
timeout, due to low contention
and hence exploits bandwidth
faster
 TCP-RTO still waits for the
extended timeout to occur,
while
 WB-RTO resumes
transmission immediately
TCP-RTO
WB-RTO
COMputer NETworks Group (COMNET)
17
Traffic Diversity (Mice and Elephants) (1)





Topology: Dumbbell
Bottleneck Queuing Policy: RED
bw_bottleneck = 10Mbps
bw_delay = 30ms
Buffer Size = 40 pkts
Goodput (KB/s)
Goodput per flow (KB/s)
Retransmitted Packets
COMputer NETworks Group (COMNET)
18
Traffic Diversity (Mice and Elephants) (2)

We observe:

Simultaneous timeout events
for TCP-RTO





All flows timeout during the
Slow-Start
Flows 7-9 timeout
simultaneously 10 times
during the experiment
Short flows: 83 vs 50 timeouts
Long flows: 43 vs 12 timeouts
TCP-RTO
We conclude that:


most of the timeouts are
spurious
WB-RTO achieves an
important goal: it reduces the
number of timeouts
COMputer NETworks Group (COMNET)
WB-RTO
19
Conclusions




RTT measurements cannot always reflect the level of network
contention
TCP-RTO should not be solely based on RTT samples
A contention-aware RTO proves to be more efficient, since it
is aware of current network conditions.
A randomization factor in the RTO schedules retransmissions
in a fairer manner.
COMputer NETworks Group (COMNET)
20
WB-RTO: A Window-Based Retransmission Timeout
Thank you!! 
Presented by Ioannis Psaras
e-mail: [email protected]
URL: utopia.duth.gr/~ipsaras
COMputer NETworks Group (COMNET)
21