Download presentation
Presentation is loading. Please wait.
Published byJessie Glenn Modified over 8 years ago
1
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)
2
Networks Lab, Rensselaer Polytechnic Institute 2 Overall Motivation q TCP response to errors and congestion is the same: q drop the window, and thus reduce load on the network q In the worst case, timeout when particular sequence of packets get lost (retransmits, entire window) q TCP was designed for congestion, loss rate in the 1-2% max. range. q TCP suffers significant timeout penalties with erasure rates > 5%. q Wireless channels becoming more pervasive q With mesh networks (infrastructure or community) it is likely that more than the last hop will be wireless. q Wireless links: q individual links can experience loss that can be high (even 10-15%) in transient situations, until power and link rate adjustments kick in q interference can also result in high loss rates. q E.g., ad-hoc networks, Mesh networks.
3
Networks Lab, Rensselaer Polytechnic Institute 3 Approach q Tools available to us: q Method of getting congestion indication that is separate from packet loss due to errors: Explicit Congestion Notification (ECN) q Use error recovery methods beyond retransmission and timeouts to overcome packet loss, so that TCP’s performance is retained. q Use FEC on an end-end basis: q Dynamic knowledge of the loss information can be exploited by the end-system. q Track short term loss rates. q Protect data by using FEC proactively and reactively. q 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).
4
Networks Lab, Rensselaer Polytechnic Institute 4 Goals We pose the following questions.. q Dynamic Range: q Can we extend the dynamic range of TCP into high loss regimes? q Can TCP perform close to the theoretical capacity achievable under high loss rates? q Congestion Response: q How should TCP respond to notifications due to congestion.. q … but not respond to packet erasures that do not signal congestion? q Mix of Reliability Mechanisms: q What mechanisms should be used to extend the operating point of TCP into loss rates from 0% - 50 % packet loss rate? q How can Forward Error Correction (FEC) help? q 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)? q Timeout Avoidance: q Timeouts: Useful as a fall-back mechanism but wasteful otherwise especially under high loss rates. q How can we add mechanisms to minimize timeouts?
5
Networks Lab, Rensselaer Polytechnic Institute 5 SENDERSENDER RECEIVERRECEIVER 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 XX X – Packet Erasure
6
Networks Lab, Rensselaer Polytechnic Institute 6 Building Blocks… q ECN-Only: We infer congestion solely from ECN markings. Window is cut in response to q ECN signals: which means that hosts/routers have to be ECN-capable. q Timeouts: The response to a timeout is the same as before. q Window Granulation and Adaptive MSS: We ensure that the window always has at least G segments at all times. q Window size in bytes initially is the same as normal SACK TCP. q Initial segment size is small to accommodate G segments. q Packet size is continually so that we have at least G segments. Once we have G segments, packet size increases with window size. q 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.
7
Networks Lab, Rensselaer Polytechnic Institute 7 Building Blocks … q 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. q Proactive FEC based upon estimate of per-window loss rate (Adaptive) q Reactive FEC: Upon receipt of 1 or 2 dupacks, Reactive FEC packets are sent based on the following criteria. q Number of Proactive FEC packets already sent. q Number of holes still left in the decoding block. q Loss rate currently estimated. q Reactive FEC to complement retransmissions
8
Networks Lab, Rensselaer Polytechnic Institute 8 Proactive and Reactive FEC in Action..
9
Networks Lab, Rensselaer Polytechnic Institute 9 Packet Erasure Rate EWMA Estimator: E = *E latest + (1- )*E Estimate is fairly accurate within small erasure rate variations Overestimate after spikes : = E latest / (E latest + 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
10
Networks Lab, Rensselaer Polytechnic Institute 10 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
11
Networks Lab, Rensselaer Polytechnic Institute 11 Reed-Solomon FEC: RS(N,K) Data = K FEC (N-K) Block Size (N) RS(N,K) >= K of N received Lossy Network Recover K data packets! Recovery possible if we receive at least K packets out of N
12
Networks Lab, Rensselaer Polytechnic Institute 12 5 4 3 2 1 4321 Complete Window Lost! Window XXXX Transmission Loss Timout Cause #1: Burst Errors + Large MSS
13
Networks Lab, Rensselaer Polytechnic Institute 13 1 Window XXXX Transmission Loss 2 3 4 5 6 7 7654321 238 ACK Stream 654 Rexmins 3 Window Granulation Reduces the Risk of Losing the Complete Window
14
Networks Lab, Rensselaer Polytechnic Institute 14 1 XX Transmission Loss 654321 Window 2 3 4 5 6 2 ACK Stream 3 DUPACK-1 Timeout because of insufficient dupacks 3 Timout Cause #2: Insufficient Dupacks => SACK not triggered X
15
Networks Lab, Rensselaer Polytechnic Institute 15 1 XX Transmission Loss P-FEC 4321 Window 2 3 4 P-FEC Receiver FEC Decoder P-FEC 21 +++ 4321 Proactive FEC Recover data packets…
16
Networks Lab, Rensselaer Polytechnic Institute 16 3 Window Transmission Loss XX 65421 2 1 3 4 5 6 2 ACK Stream 2 DUPACK 3 22 DUPACK 1 DUPACK 2 2 Retransmission X Transmission Loss ReXMITS ESPECIALLY vulnerable! Timeout Cause #3: Loss of Retransmissions
17
Networks Lab, Rensselaer Polytechnic Institute 17 1 XX Transmission Loss 654321 Window 2 3 4 5 6 2 ACK Stream 6 DUPACK 3 54 DUPACK 1 DUPACK 2 R-FEC Receiver FEC Decoder R-FEC 41 +++ 4321 Reactive FEC: Complements Rexmits Selective Acknowledgements
18
Networks Lab, Rensselaer Polytechnic Institute 18 Loss Estimate FEC Computation (n,k) Loss Estimation MSS Adaptation Granulated Window Size Window Size Application Data P-FEC Data Window Putting it Together….
19
Networks Lab, Rensselaer Polytechnic Institute 19 Simulation Configuration
20
Networks Lab, Rensselaer Polytechnic Institute 20 Performance Results SACK (Multiple Sources) LT-TCP (Multiple Sources)
21
Networks Lab, Rensselaer Polytechnic Institute 21 Contribution of Components (20% PER case (Single Source) LT-TCP is able to reduce timeouts drastically keep the queue non-empty maximizing throughput and capacity utilization. minimize use of FEC to level needed
22
Networks Lab, Rensselaer Polytechnic Institute 22 Comparison w/ Link Layer FEC, HARQ LL FEC: FEC based upon average PER HARQ: 10% FEC; ARQ persistence = 3 LT-TCP: end-to-end
23
Networks Lab, Rensselaer Polytechnic Institute 23 Summary q TCP performance over wireless with residual erasure rates 0- 50% (short- or long-term). q E2E FEC: q Granulation ensures better flow of ACKs especially in small window regime. q Adaptive FEC (proactive and reactive) can protect critical packets appropriately q Adaptive => No overhead when there is no loss. q ECN used to distinguish congestion from loss. q Near-optimal performance for wide range: from low to high loss rates. q Future Work: q Optimal division of reliability functions between PHY,MAC, E2E q Study of interaction between LT-TCP and link-layer schemes.
24
Networks Lab, Rensselaer Polytechnic Institute 24 Thanks! Researchers: Omesh Tickoo: tickoo@rpi.edutickoo@rpi.edu Vijay Subramanian: subrav@rpi.edusubrav@rpi.edu Shiv Kalyanaraman: shivkuma@rpi.edushivkuma@rpi.edu K.K. Ramakrishnan, kkrama@research.att.com kkrama@research.att.com
25
Networks Lab, Rensselaer Polytechnic Institute 25 Building Block Behavior: Adaptive MSS (Window Granulation) q Adaptive MSS behavior. q Congestion window (in segments) kept above G = 10 q MSS increases when CWND grows, q MSS shrinks when CWND shrinks to maintain G
26
Networks Lab, Rensselaer Polytechnic Institute 26 Shortened Reed Solomon FEC (per-Window) Proactive FEC (F) Data = D Window (W) Reactive FEC (R) 0 0 0 0 0 0 Zeros (Z) Block Size (N) K = d + z d z RS(N,K)
27
Networks Lab, Rensselaer Polytechnic Institute 27 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 %
28
Networks Lab, Rensselaer Polytechnic Institute 28 Changes w.r.t. submitted paper q FEC is now done on a block-by-block basis. q Proactive protection is determined solely by the loss estimate. (no arbitrary constants) q Reactive FEC packets may be wasted if they belong to the wrong block. q Conditions under which Reactive FEC packets are sent are restricted (discussed earlier). q Window granulation is done using the following rule q “Send as big a packet as possible while maintaining granularity” q Throughput and goodput are measured at the receiver for better accuracy. q On partial dupacks, we make sure that retransmission are not duplicated. We send new TCP data instead. q Loss tracking is now done whenever we receive an ACK. q Loss estimation at receiver has changed to accommodate block-by-block decoding.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.