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
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]