RRTCP: A ReorderingRobust TCP with DSACK - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

RRTCP: A ReorderingRobust TCP with DSACK

Description:

Packet 1's reordering length is the difference between the greatest SACKed/ACKed ... Reordering length sample life time is 80s ... – PowerPoint PPT presentation

Number of Views:143
Avg rating:3.0/5.0
Slides: 23
Provided by: mingz7
Category:

less

Transcript and Presenter's Notes

Title: RRTCP: A ReorderingRobust TCP with DSACK


1
RR-TCP A Reordering-Robust TCP with DSACK
  • Ming Zhang (Princeton)
  • Brad Karp (Intel Research/Carnegie Mellon)
  • Sally Floyd (ICSI)
  • Larry Peterson (Princeton)

2
Motivation
  • TCP performs badly under packet reordering
  • In todays Internet, reordering is considered
    maladaptive
  • Route oscillation Paxson96
  • Router software errors Paxson97
  • Striping packets across multiple links
    Bennett99
  • Satellite links Ward95
  • The above are not the main reasons that TCP
    should be reordering-robust
  • Beneficial systems cannot be deployed because of
    reordering
  • Multi-path routing
  • Parallel packet forwarding path Chen01
  • Goal improve TCPs robustness on paths that
    reorder packets, without increasing
    aggressiveness under congestion.

3
Outline
  • Motivation
  • False fast retransmit and dupthresh
  • Measuring reordering length and DSACK-FA
  • Cost of false fast retransmit and timeout
  • Using costs to adapt dupthresh to maximize
    throughput
  • Experimental evaluation
  • Conclusion and future work

4
Problem False Fast Retransmit
  • TCP detects loss with duplicate ACKs (dupacks)
  • TCP enters fast retransmit when number of dupacks
    reaches some theshold dupthresh
  • dupthresh is 3 per Jacobson89
  • If a packets position is perturbed by more than
    3 packets, sender misinterprets reordering as
    loss and enters false fast retransmit
  • False fast retransmit causes congestion window
    (cwnd) to be halved unnecessarily
  • DSACK can help identify false fast retransmits by
    reporting duplicate data packets to sender

5
Increasing dupthresh has risks
  • Setting dupthresh greater than max reordering
    length can avoid false fast retransmit
  • Risks of increasing dupthresh include
  • Generate one-second-minimum timeouts, not enough
    ACKs return after real loss to trigger fast
    retransmit
  • Increased end-to-end delay for dropped packets,
    longer for enough dupacks to return
  • Delayed response to congestion, window reduction
    delayed until enough dupacks arrive
  • The scheme for adapting dupthresh must balance
    these opposing goals
  • Avoid both false fast retransmit (too small a
    dupthresh) and timeout (too large a dupthresh)

6
Measuring Reordering Length
  • When packet 1 is delayed, one dupack will be
    generated by receiver for each packet 2, 3, 4, 5
    that arrives before 1
  • Packet 1 will create a hole in SACK senders
    scoreboard
  • The returning cumulative ACK (C) or SACK (S) for
    packet 1 will close the hole in the scoreboard
  • Packet 1s reordering length is the difference
    between the greatest SACKed/ACKed packet number,
    5, and 1

7
Measuring Reordering Length Distribution
  • Sender stores timestamped samples of reordering
    length in a reordering histogram
  • Sample expires after a configurable interval
  • Histogram summarizes distribution of reordering
    for any persistent reordering process
  • Histogram stores up to n reordering events, each
    of which requires a timestamp (4 bytes) and a
    pointer (4 bytes)
  • The reordering length measurement scans the same
    number of scoreboard entries as standard SACK

8
DSACK-FA Avoiding False Fast Retransmit
  • To avoid false fast retransmit for X (FA ratio)
    of reorderings, set dupthresh to the X value in
    the reordering length cumulative distribution
  • Histogram maps FA ratio to dupthresh value
  • Fixed FA ratio DSACK-FA (false fast retransmit
    avoidance)
  • Can we adapt FA ratio dynamically?
  • Central idea choose FA ratio to optimize
    bandwidth of a connection

9
Outline
  • Motivation
  • False fast retransmit and dupthresh
  • Measuring reordering length and DSACK-FA
  • Cost of false fast retransmit and timeout
  • Using costs to adapt dupthresh to maximize
    throughput
  • Experimental evaluation
  • Conclusion and future work

10
Cost False Fast Retransmit
  • False fast retransmit has opportunity cost in
    needlessly missed packet transmissions
  • cwnd is reduced by half until sender learns
    retransmit is false
  • To recover from false fast retransmit when DSACK
    returns, sender restores previous window value
    Floyd99, Ludwig00
  • How many packets could we have transmitted but
    didn't?
  • The cost depends on the duration D of wrongly
    reduced window
  • For fixed cwnd W and

11
Cost Timeout
  • After a real loss, timeouts have two main costs
    beyond fast retransmit cost
  • The idle period after sender cannot send any new
    packets, but before retransmission timer expires
  • Slow start, during which cwnd grows from one to
    half the previous cwnd
  • Extend limited transmit to send kcwnd additional
    dupack clocked packets
  • For fixed cwnd W, C(timeout) C(idle) C(ss)
    where,

12
DACK-TA Adapting FA ratio to maximize throughput
  • Limited transmit can also introduce an
    opportunity cost, C(limited transmit), in idle
    time.
  • Let S be the fundamental step by which we adapt
    FA ratio (0.01 in this work)
  • Upon every false fast retransmit, increase FA
    ratio by S
  • Upon every timeout, decrease FA ratio by
  • Upon every limited-transmit-induced idle period,
    decrease FA ratio by
  • Algorithm name DSACK-TA (timeout avoidance)

13
Experimental Evaluation
  • Use NS-2 network simulator
  • Extended to delay or drop packets according to
    various distributions
  • One long-lived TCP flow lasting 1000s
  • Initial FA ratio is 90ile sampled
  • Limited transmit bound is 1cwnd
  • Reordering length sample life time is 80s
  • Compare 4 TCP variants SACK, DSACK-R, DSACK-FA
    and DSACK-TA

14
False Fast Retransmit Avoidance
  • Link delay 50ms, delay time 0, 50ms, normal
    distribution

15
False Fast Retransmit Ratio
16
Timeout Avoidance Timeout Ratio
  • Link delay 100ms, delay time 0, 400ms, uniform
    distribution
  • Loss rate 0.6 and delay rate 1.4

17
Timeout Avoidance Fast Retransmit Ratio
18
Timeout Avoidance - Throughput
19
Loss and Reordering
  • link delay 50ms, 5 delayed pkt, mean delay 25ms,
    normal

20
Related Work
  • Ludwig00 Use TCP timestamp option to identify
    and recover from false fast retransmit, but no
    dupthresh adaptation
  • Blanton01 Increase dupthresh to avoid false
    fast retransmit, but no explicit timeout avoidance

21
Conclusion
  • RR-TCP improves TCPs robustness under reordering
  • Use reordering histogram to adapt dupthresh to
    avoid false fast retransmit
  • Balance false fast retransmit, timeout and
    limited transmit according to their relative
    costs
  • Not more aggressive than SACK under congestion,
    only more slowly responsive Bansal01
  • Demonstrate the relative importance of loss and
    reordering to throughput, reordering matters most
    under low loss rate
  • Future work
  • Receiver-side RR-TCP, store reordering state and
    dupthresh at clients
  • Share reordering state among short-lived flows
  • Study RR-TCP together with multi-path routing
  • URL http//www.icir.org/bkarp/RR-TCP

22
Multi-path routing
  • Link delay 50 ms, 50 packets delayed
Write a Comment
User Comments (0)
About PowerShow.com