28
Networks Lab, Rensselaer Polytechnic Insti 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)

LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels

  • Upload
    uri

  • View
    22

  • Download
    0

Embed Size (px)

DESCRIPTION

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). Overall Motivation. TCP response to errors and congestion is the same: - PowerPoint PPT Presentation

Citation preview

Page 1: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute1

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)

Page 2: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute2

Overall Motivation

TCP response to errors and congestion is the same: drop the window, and thus reduce load on the network In the worst case, timeout when particular sequence of packets get lost

(retransmits, entire window) TCP was designed for congestion, loss rate in the 1-2% max. range.

TCP suffers significant timeout penalties with erasure rates > 5%. Wireless channels becoming more pervasive

With mesh networks (infrastructure or community) it is likely that more than the last hop will be wireless.

Wireless links: individual links can experience loss that can be high (even 10-15%) in

transient situations, until power and link rate adjustments kick in interference can also result in high loss rates. E.g., ad-hoc networks, Mesh networks.

Page 3: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute3

Approach

Tools available to us: Method of getting congestion indication that is separate from packet

loss due to errors: Explicit Congestion Notification (ECN) Use error recovery methods beyond retransmission and timeouts to

overcome packet loss, so that TCP’s performance is retained. Use FEC on an end-end basis:

Dynamic knowledge of the loss information can be exploited by the end-system.

Track short term loss rates. Protect data by using FEC proactively and reactively.

FEC can work in a coordinated fashion with TCP’s window mechanisms to optimize the usage of FEC within a window (which is not available at the link level).

Page 4: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute4

GoalsWe pose the following questions..

Dynamic Range: Can we extend the dynamic range of TCP into high loss regimes? Can TCP perform close to the theoretical capacity achievable under

high loss rates? Congestion Response:

How should TCP respond to notifications due to congestion.. … but not respond to packet erasures that do not signal congestion?

Mix of Reliability Mechanisms: What mechanisms should be used to extend the operating point of TCP

into loss rates from 0% - 50 % packet loss rate? How can Forward Error Correction (FEC) help? How should the FEC be split between sending it proactively (insuring

the data in anticipation of loss) and reactively (sending FEC in response to a loss)?

Timeout Avoidance: Timeouts: Useful as a fall-back mechanism but wasteful otherwise

especially under high loss rates. How can we add mechanisms to minimize timeouts?

Page 5: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute5

SENDER

RECEIVER

Available Capacity

Loss Feedback Through Acknowledgements

Capacity Used

TCP uses Loss Feedback to Estimate Available Capacity

Capacity Used

Erasure Recovery/ Loss Estimation

Adaptive MSS/ Proactive and Reactive FEC

LT-TCP: Adaptive Mechanisms to Reinstate Performance

X X

X – Packet Erasure

Page 6: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute6

Building Blocks… ECN-Only: We infer congestion solely from ECN markings. Window is

cut in response to ECN signals: which means that hosts/routers have to be ECN-capable. Timeouts: The response to a timeout is the same as before.

Window Granulation and Adaptive MSS: We ensure that the window always has at least G segments at all times. Window size in bytes initially is the same as normal SACK TCP. Initial segment size is small to accommodate G segments. Packet size is continually so that we have at least G segments. Once we

have G segments, packet size increases with window size. Loss Estimation: The receiver continually tracks the loss rate and provides

a running estimate of perceived loss back to the TCP sender through ACKs. An adaptive EWMA approach to estimating loss is used.

Page 7: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute7

Building Blocks …

Proactive FEC: TCP sender sends data in blocks where the block contains K data segments and R FEC packets. The amount of FEC protection (K) is determined by the current loss estimate. Proactive FEC based upon estimate of per-window loss rate (Adaptive)

Reactive FEC: Upon receipt of 1 or 2 dupacks, Reactive FEC packets are sent based on the following criteria. Number of Proactive FEC packets already sent. Number of holes still left in the decoding block. Loss rate currently estimated. Reactive FEC to complement retransmissions

Page 8: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute8

Proactive and Reactive FEC in Action..

Page 9: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute9

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

Block Behavior: Per-Block Loss Estimator for P-FEC

Estimation is done at receiver and fed-back to the sender

Page 10: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute10

Loss Tracking at Sender

Sender can quickly and accurately track the loss rate based on feedback from the receiver.

0 50 100 150 200 250 300 350 400

0% 0% 20% 20% 30% 0% 20% 10%

(Time)

Packet Error Rate

Page 11: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute11

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!

Recovery possible if we receive at least K packets out of N

Page 12: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute12

5

4

3

2

1

4 3 2 1

Complete Window Lost!

Win

dow

XXXXTransmission Loss

Timout Cause #1: Burst Errors + Large MSS

Page 13: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute13

1

Win

dow

XXXXTransmission Loss

234567

7 6 5 4 3 2 1

2 3 8

ACK Stream

6 5 4Rexmins

3

Window Granulation Reduces the Risk of Losing the Complete Window

Page 14: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute14

1 XXTransmission Loss

6 5 4 3 2 1

Win

dow

2

3

4

5

6

2 ACK Stream3

DUPACK-1

Timeout because of insufficient dupacks

3

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

X

Page 15: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute15

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

Recover data packets…

Page 16: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute16

3

Win

dow

Transmission Loss

XX

6 5 4 2 1

2

1

3

4

5

6

2 ACK Stream2

DUPACK3

22

DUPACK1 DUPACK2

2Retransmission

X Transmission Loss

ReXMITS ESPECIALLY vulnerable!

Timeout Cause #3: Loss of Retransmissions

Page 17: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute17

1 XX

Transmission Loss

6 5 4 3 2 1

Win

dow

2

3

4

5

6

2 ACK Stream6

DUPACK3

54

DUPACK1 DUPACK2

R-FECR-FEC

Receiver FEC DecoderR-FEC R-FEC 4 1+ + +

4 3 2 1

Reactive FEC: Complements Rexmits

Selective Acknowledgements

Page 18: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute18

Loss Estimate

FEC Computation

(n,k)Loss Estimation

MSS Adaptation

Granulated Window Size

Window Size

ApplicationData

P-FEC

Data

Window

Putting it Together….

Page 19: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute19

Simulation Configuration

Page 20: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute20

Performance ResultsSACK (Multiple Sources)

LT-TCP (Multiple Sources)

Page 21: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute21

Contribution of Components (20% PER case (Single Source)

LT-TCP is able toreduce timeouts drasticallykeep the queue non-empty maximizing throughput and capacity utilization.minimize use of FEC to level needed

Page 22: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute22

Comparison w/ Link Layer FEC, HARQ

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

Page 23: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute23

Summary

TCP performance over wireless with residual erasure rates 0-50% (short- or long-term).

E2E FEC: 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 used to distinguish congestion from loss. Near-optimal performance for wide range: from low to high

loss rates. Future Work:

Optimal division of reliability functions between PHY,MAC, E2E Study of interaction between LT-TCP and link-layer schemes.

Page 24: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute24

Thanks!

Researchers:

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

Page 25: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute25

Building Block Behavior: Adaptive MSS (Window Granulation)

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

Page 26: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute26

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)

Page 27: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute27

Performance Results..

LT-TCP (Single Source)

At 50 % error rate, timeouts increase drastically because.. Few Proactive FEC packets received.Proactive FEC cannot counter variation in error patterns.Reactive FEC is insufficient in this case to avoid timeouts.This effect can be mitigated by increasing FEC protection.

Drop in Performance from 40 to 50 %

Page 28: LT-TCP: End-to-End Framework to  Improve TCP Performance over Networks with Lossy Channels

Networks Lab, Rensselaer Polytechnic Institute28

Changes w.r.t. submitted paper

FEC is now done on a block-by-block basis. Proactive protection is determined solely by the loss estimate. (no arbitrary

constants) Reactive FEC packets may be wasted if they belong to the wrong block.

Conditions under which Reactive FEC packets are sent are restricted (discussed earlier).

Window granulation is done using the following rule “Send as big a packet as possible while maintaining granularity”

Throughput and goodput are measured at the receiver for better accuracy. On partial dupacks, we make sure that retransmission are not duplicated.

We send new TCP data instead. Loss tracking is now done whenever we receive an ACK. Loss estimation at receiver has changed to accommodate block-by-block

decoding.