networks lab, rensselaer polytechnic institute 1 lt-tcp: end-to-end framework to improve tcp...

25
Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo, Vijay Subramanian,Shiv Kalyanaraman (Rensselaer Polytechnic Institute) K.K. Ramakrishnan (AT&T) Status Reports Packets, FEC Repairs Timeout

Upload: richard-garrison

Post on 27-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

Networks Lab, Rensselaer Polytechnic Institute

1

LT-TCP: End-to-End Framework to Improve TCP Performance over Networks

with Lossy Channels

Omesh Tickoo, Vijay Subramanian,Shiv Kalyanaraman (Rensselaer Polytechnic Institute)

K.K. Ramakrishnan (AT&T)

Status

Reports

Packets,FEC

Repairs

Timeout

Networks Lab, Rensselaer Polytechnic Institute

2

Overview

TCP performance over wireless: loss vs. congestion, heavy erasures

Building Blocks: ECN congestion response Adaptive maximum segment size (MSS) Proactive and Reactive FEC

Performance Results: Contribution of each building block Comparisons to link-level support

Ongoing work

Networks Lab, Rensselaer Polytechnic Institute

3

TCP over wireless channels TCP doesn’t distinguish between erasure and

congestion loss Bigger problem: TCP suffers significant timeout penalties

with erasure rates > 5% Qn: Can we “robustify” TCP to handle larger packet

erasure rates: 30-50% ?

Wireless channels becoming more pervasive With mesh networks (infrastructure or community) it is

likely that more than the last hop will be wireless Cannot just use the cross-layer techniques like TCP

performance enhancing proxies (PEPs) to “fix” TCP’s performance

Networks Lab, Rensselaer Polytechnic Institute

4

SENDER

RECEIVER

Available Capacity

Loss Feedback Through Acknowledgements

Capacity Used

TCP uses Loss Feedback to Estimate Available Capacity

Capacity Used

Interpreting Transmission Losses as Congestion Leads to Capacity Under-Estimation

Capacity Used

Erasure Recovery/ Loss Estimation

Adaptive MSS/ Proactive and Reactive FEC

LT-TCP: Adaptive Mechanisms to Reinstate Performance

X X

X – Packet Erasure

Networks Lab, Rensselaer Polytechnic Institute

5

Transport/Link Layer: Standard Reliability Model

Packets • Sequence Numbers• CRC or Checksum• Proactive FEC

Status Reports • ACKs• NAKs, dupacks • SACKs• Bitmaps

• Rexmitted Packets• Reactive FEC

Repair pkts

Timeout

Networks Lab, Rensselaer Polytechnic Institute

6

Reed-Solomon FEC: RS(N,K)

Data = K

FEC (N-K)

Block Size (N)

RS(N,K) >= K of Nreceived

Lossy Network

Recover K data packets!

Networks Lab, Rensselaer Polytechnic Institute

7

Building Blocks: Goals

Congestion Response: How should TCP respond to congestion notifications, … but not respond to packet erasures that do not signal

congestion? Mix of Reliability Mechanisms:

What mix of TCP repair mechanisms should be used to achieve the TCP reliability objectives ?

What is the role of error correction (FEC) ? How should be split between proactive and reactive repair?

Timeouts: Timeouts: final fallback mechanism, but wasteful otherwise. How to structure the mix to reduce timeouts?

Networks Lab, Rensselaer Polytechnic Institute

8

Building Blocks: Design Congestion: respond only to ECN

Assumes ECN-enabled networks Window granulation: at least G

Smaller PER for a given BER More dupacks per burst loss event (SACK requires at least 3 dupacks) MSS is adaptive.

FEC per-window: Shortened RS-codes (see next slide) Proactive FEC based upon estimate of per-window loss rate (Adaptive) Reactive FEC to protect retransmissions FEC packets can correct any data packets: totally K out of N needs to

reach receiver Timeout avoidance turns out to be harder than distinguishing

erasure from congestion

Networks Lab, Rensselaer Polytechnic Institute

9

Shortened Reed Solomon FEC (per-Window)

Proactive FEC (F)

Data = dWindow (W)

Reactive FEC (R)

000000

Zeros (z)

Block Size (N)

K = d + z

d

z

RS(N,K)RS(N,K)

Networks Lab, Rensselaer Polytechnic Institute

10

5

4

3

2

1

4 3 2 1

Complete Window Lost!

Win

dow

XXXXTransmission Loss

Timout Cause #1: Burst Errors + Large MSS

Networks Lab, Rensselaer Polytechnic Institute

11

1

Win

dow

XXXXTransmission Loss

234567

7 6 5 4 3 2 1

1 2 7

ACK Stream (assuming selective ACK)

6 5 4Rexmins

3

Window Granulation Reduces the Risk of Losing the Complete Window

Networks Lab, Rensselaer Polytechnic Institute

12

1 XXTransmission Loss

6 5 4 3 2 1

Win

dow

2

3

4

5

6

1 ACK Stream2

DUPACK-1

Timeout because of insufficient dupacks

2

Timout Cause #2: Insufficient Dupacks => SACK not triggered

X

Networks Lab, Rensselaer Polytechnic Institute

13

1 XXTransmission Loss

P-FEC P-FEC 4 3 2 1

Win

dow

2

3

4

P-FEC

P-FEC

Receiver FEC Decoder

P-FEC P-FEC 2 1+ + +

4 3 2 1

Proactive FEC Reduces the Need for Dupacks

Recover data packets…

Networks Lab, Rensselaer Polytechnic Institute

14

3

Win

dow

Transmission Loss

XX

6 5 4 2 1

2

1

3

4

5

6

1 ACK Stream1

DUPACK-3

11

DUPACK-1 DUPACK-2

2Retransmission

X Transmission Loss

ReXMITS ESPECIALLY vulnerable!

Timeout Cause #3: Loss of Retransmissions

Networks Lab, Rensselaer Polytechnic Institute

15

1 XX Transmission Loss

6 5 4 3 2 1

Win

dow

2

3

4

5

6

1 ACK Stream6

DUPACK-3

54

DUPACK-1 DUPACK-2

R-FECR-FEC

Receiver FEC Decoder R-FEC R-FEC 4 1+ + +

4 3 2 1

Reactive FEC: Protects Rexmits

Networks Lab, Rensselaer Polytechnic Institute

16

Loss Estimate

FEC Computation

(n,k)Parameter Estimation

MSS Adaptation

Granulated Window Size

Window Size

ApplicationData

P-FEC

Data

Window

Putting it Together….

Networks Lab, Rensselaer Polytechnic Institute

17

Building Block Behavior: Adaptive MSS (Window Granulation)

Congestion window (in segments) kept above G = 10MSS increases when CWND grows, MSS shrinks when CWND shrinks to maintain G

Networks Lab, Rensselaer Polytechnic Institute

18

Packet Erasure Rate EWMA Estimator: E = *Elatest + (1-)*E

Estimate is fairly accurate within small erasure rate variations

Overestimate after spikes : = Elatest/ (Elatest+ E)

Trade off :Over-estimation leads to overhead.

Overestimate

Inefficiency Period

BBlock Behavior: Per-Window Loss Estimator for P-FEC

Networks Lab, Rensselaer Polytechnic Institute

19

Simulation Configuration

Lumped model: view multiple bottlenecks as 1 aggregate bottleneck

Networks Lab, Rensselaer Polytechnic Institute

20

Performance ResultsSACK

LT-TCP:

Networks Lab, Rensselaer Polytechnic Institute

21

Performance Results (Contd)

Networks Lab, Rensselaer Polytechnic Institute

22

Contribution of Components (10% PER case)

Source of gains: #1: Timeout reduction#2: Distinguishing erasures from congestion (w/ ECN)

Networks Lab, Rensselaer Polytechnic Institute

23

Comparison w/ Link Layer FEC, HARQ

LL FEC: adaptive FEC based upon average PERHARQ: 10% FEC; ARQ persistence = 3LT-TCP: end-to-end

Networks Lab, Rensselaer Polytechnic Institute

24

Summary

TCP performance over wireless: residual erasure rates > 5% (short- or long-term)

E2E H-ARQ: Granulation ensures better flow of ACKs especially in small window

regime. Adaptive FEC (proactive and reactive) can protect critical packets

appropriately Adaptive => No overhead when there is no loss

ECN to distinguish congestion from loss Future Work:

Handle higher erasure rates (30%+) better Optimal division of reliability functions between PHY,MAC, E2E

Networks Lab, Rensselaer Polytechnic Institute

25

Thanks!

Researchers:

Omesh Tickoo: [email protected] Subramanian: [email protected] Kalyanaraman: [email protected]. Ramakrishnan, [email protected]