170 likes | 267 Views
Improving TCP over Wireless by Selectively Protecting Packet Transmissions. Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica Politecnico di Torino, Italy. Presentation outline. Introduction to the problem Solutions proposed in the literature Our approach
E N D
Improving TCP over Wireless by Selectively Protecting Packet Transmissions Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica Politecnico di Torino, Italy
Presentation outline • Introduction to the problem • Solutions proposed in the literature • Our approach • Simulation results • Conclusions…
Introduction: TCP over Wireless • Fundamental problem • TCP assumes all losses due to congestion • Wireless breaks this assumption: losses due to channel errors, handoffs • … and TCP unnecessarily reduces window, resulting in low throughput and high latency • Improving TCP over wireless is a must !
Proposed schemes to improve the performance of TCP over wireless Wireless TCP (W-TCP) TCP HACK Adaptive Forward Error Correction (AFEC) Airmail Mobile TCP (M-TCP) CSDP Indirect-TCP Explicit Loss Notification (ELN) TCP-SACK FEC/ARQ protocols Wireless Explicit Congestion Notification (WECN) TCP Westwood Snoop protocol Delayed DUPACK’S Explicit Bad State Notification (EBSN) SMART protocol
Classification of Schemes • End-to-End protocols • loss recovery handled by sender • make the sender realize some losses are due to bit-error, not congestion • Link-layer solutions • hide link-related losses from sender • since the problem is local, solve it locally (local retransmissions) • TCP sender may not be fully shielded • Split-connection approaches • Split each TCP connection into two separate TCP connections at the base station • isolate wired network from wireless network
Link-layer Solutions Wired Internet Wireless link Fixed host Mobile host BS Standard TCP connection TCP TCP LL LL • Main techniques: • Forward Error Correction (FEC) • Automatic Repeat Request (ARQ)
Link-layer Solutions • QoS / Energy trade-off : • Applying FEC coding to all of the packets allows high data transfer reliability but increases bandwidth and energy consumption (reduced battery life) • When channel conditions are good, ARQ alone obtains better performance using fewer resources ! • Hybrid FEC/ARQ solutions
Our approach • A Link-Layer TCP-aware scheme • Combination of FEC and ARQ: • FECis applied only to TCP packets of “critical” importance to QoS • Convenient trade-off between energy saving and performance • End-to-End semantics is maintained
Key Observations • “Critical” TCP packets: packets whose loss would force the sender to wait for a timeout (and reduce the window to one) • Timeouts severely affect the completion time of TCP connections • Since the radio channel is not congested, timeouts due to channel errors are useless and should be completely avoided !
“Critical” TCP packets • The first 3 segments of a flow: • The transmission window is too small to allow the Fast Retransmit mechanism • The initial RTO is usually very large • The last 3 segments of a flows: • There are not enough duplicate ACKs to trigger the Fast Retransmit • Retrasmitted segments (by the TCP sender) : • If they get lost again, a timeout occurs and RTO is backed-off
Simulation scenario Wired Internet • LL layer implemented into ns-2 simulator according to 3GPP specifications • Each TCP segment is divided into 3 LL data units (not protected) or 6 LL data units (protected using rate ½ FEC coding) • channel error model: 2-states Markov chain accounting for fading process (see Zorzi, Rao) 384 Kbps TCP NewReno sender Segment size = 1000 bytes TCP receiver BS 30 ms delay 10 Mbps
Qos performance –10 packets flows 2.0 no fec selective total 1.5 Average completion time [s] 1.0 0.5 0.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Fading margin, F [dB] Bad radio channel Good radio channel
Energy consumption –10 packets flows 10.0 no fec selective 9.0 total 8.0 7.0 6.0 Av. # data units sent per segment 5.0 4.0 3.0 2.0 1.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Fading margin, F [dB] Bad radio channel Good radio channel
Conclusions… • Link-Layer approach to improve TCP over wireless: the best thing to do is a mixture of FEC/ARQ • The optimal combination of FEC/ARQ is difficult, because it depends on the channel conditions and on the desired Energy/QoS trade-off • We suggest a mechanism based on selective protection of “critical” packets, which is particularly effective for short-lived TCP flows (vast majority of Internet flows)
Qos performance –50 packets flows 7.0 no fec selective 6.0 total 5.0 4.0 Average completion time [s] 3.0 2.0 1.0 0.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Fading margin, F [dB] Bad radio channel Good radio channel
Energy consumption –50 packets flows 10.0 no fec selective 9.0 total 8.0 7.0 6.0 Av. # data units sent per segment 5.0 4.0 3.0 2.0 1.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Fading margin, F [dB] Bad radio channel Good radio channel