Reliable Data Transport in Wireless Networks
Anna Brunstrom
Dept. of Computer Science
Karlstad University
April 11, 2007 Reliable Data Transport in Wireless Networks
2
Outline
• Introduction
• TCP Basics
• Challanges and Proposed Enhancements
• Personal Reflections
• SCTP
• Conclusions
April 11, 2007 Reliable Data Transport in Wireless Networks
3
Introduction
• Explosive growth of the Internet
• ”Thin waist” behind the success
• Design based on end-to-end principle
• TCP dominant transport protocol
Application
Transport - TCP/UDP
Network – IP
Data link
Physical
TCP Basics
April 11, 2007 Reliable Data Transport in Wireless Networks
5
Reliable Data Transfer in TCP
• Based on retransmission of lost packets• A timer is started when a packet is sent
– Dynamically calculated based on RTT• When the packet arrives at the receiver a
cumulative acknowledgment (ACK) is sent – End-to-end semantics
• If an ACK is not received in time, then the packet is retransmitted – Exponential backoff of timer
• Fast retransmit rule - three duplicate ACKs trigger retransmission
April 11, 2007 Reliable Data Transport in Wireless Networks
6
TCP Flow and Congestion Control
• Window based control
• Send rate limited by minimum of– Receiver’s advertised window– Congestion window
• Estimates bandwidth based on probing– Assumes that packet loss indicates
congestion
April 11, 2007 Reliable Data Transport in Wireless Networks
7
TCP Flow and Congestion Control
• Slow start– Cwnd grows exponentially– Ends when cwnd reaches slow-start threshold
• Congestion avoidance– Cwnd grows linearly
• Fast recovery– Works in conjunction with fast retransmit– Avoids slow start after single packet loss
April 11, 2007 Reliable Data Transport in Wireless Networks
8
Timeout Scenario
0
5
10
15
20
25
Time (round trips)
Co
ng
esti
on
win
do
w (
seg
men
ts)
ssthresh = 8ssthresh = 10
cwnd = 20
After timeout
April 11, 2007 Reliable Data Transport in Wireless Networks
9
0
2
4
6
8
10
Time (round trips)
Win
dow
size
(seg
men
ts)After fast recovery
Fast Retransmit Scenario
Rwnd
April 11, 2007 Reliable Data Transport in Wireless Networks
10
Many TCP Variants• TCP Tahoe
– Slow start, congestion avoidance, fast retransmit
• TCP Reno– Slow start, congestion avoidance, fast retransmit, fast recovery
• TCP New-Reno– Stay in fast recovery until all packet losses in window are
recovered– Can recover 1 packet loss per RTT without causing a timeout
• Selective Acknowledgements (SACK) – Provides information about out-of-order packets received by
receiver– Can recover multiple packet losses per RTT
The ”informationsuperhighway” ofwireline communications
The ”rocky road”of mobile radiocommunications
vs
Challanges and Proposed Enhancements
April 11, 2007 Reliable Data Transport in Wireless Networks
12
Challenges
• Fundamental differences between wired and wireless communication– Channel errors
• Due to interference, multipath fading etc.
– Mobility• Handoff may cause packet loss and delay• Route failures and disconnections in MANETs
– Channel contention (Ad hoc networks)• Hidden terminal and exposed terminal problems
April 11, 2007 Reliable Data Transport in Wireless Networks
13
TCP suffers because…
• Transmission problems at the phys/link layer and handoff/route failures due to mobility can lead to packet loss
• Packet loss invokes congestion control at the sender– Exponential backoff entered for multiple losses
• Spurious timeouts may occur when RTT fluctuates
• High sending rate can cause channel contention
April 11, 2007 Reliable Data Transport in Wireless Networks
14
Proposed Optimizations
• At the link layer• Split connection• Explicit notification/
cross layer• End to end
April 11, 2007 Reliable Data Transport in Wireless Networks
15
Link Layer Error Recovery
• Shields upper layers (e.g. TCP) from errors that can be recovered at lower layers– Errors recovered locally
• Reliable link layer beneficial to TCP – If it provides (almost) in-order delivery– If TCP’s retransmission timeout is large
enough to accommodate for variable delays due to link layer retransmissions
April 11, 2007 Reliable Data Transport in Wireless Networks
16
Impact of Link Layer ARQ
0.00
5.00 k
10.00 k
15.00 k
20.00 k
25.00 k
30.00 k
35.00 k
40.00 k
5 10 15 20 25 30
Th
rou
gh
pu
t (B
ps)
Maximum allowed number of link layer retransmissions
Transmission of 3 Mb bulk data
TCP-L, AM, PredErr, Levels for NMSE0.1
TCP-WW, AM, PredErr, Levels for NMSE0.1
TCP, AM, PredErr, Levels for NMSE0.1
15% packet loss →
April 11, 2007 Reliable Data Transport in Wireless Networks
18
Link layer: Examples• Snoop [Balakrishnan95]
– TCP-aware link layer– Detect packet losses on wireless link, BS performs
local retransmissions– Prevents fast retransmit by supressing dupACKs at
BS– Does not work with encrypted IP-payload (e.g. IPSec)
• TCP SACK-Aware Snoop [Vangala03]• Reliable link layer available in most modern
wireless networks
April 11, 2007 Reliable Data Transport in Wireless Networks
19
Split connection
• E2E TCP connection split into one connection on wired part of route and one over wireless part– Hides transmission errors from sender, local
recovery– Primary responsibility at base station– If specialized transport protocol used on
wireless, then wireless host also needs modification
– Breaks end-to-end semantics
April 11, 2007 Reliable Data Transport in Wireless Networks
20
Split connection: Examples • Indirect TCP (I-TCP) [Bakre97]
– Standard TCP connection over both hops– Mainly used for mobility (transfer state between BSs’)
• WAP– Own networking stack to gateway/proxy– WAP2.0 can use native TCP
• Split TCP [Kopparty02]– Split long TCP connections into localized segments to
deal with frequent route failures in MANETs
April 11, 2007 Reliable Data Transport in Wireless Networks
21
Explicit notification• A node determines whether packets are lost for
reasons other than congestion and informs sender– Sender can retransmit packet without invoking
congestion control • Motivated by Explicit Congestion Notification
(ECN) proposal • Proposed solutions differ in
– Who sends explicit notification– How they decide to send explicit notification– What sender does on receiving notification
April 11, 2007 Reliable Data Transport in Wireless Networks
22
Explicit notification: Examples
• Partial Acknowledgements [Biaz97]– Sender gets partial ack from base station, and normal
ack from receiver -> wireless losses can be differentiated
• Checksum Based Loss Notification [Garcia02]– Detect corrupt TCP checksum, notify sender via new
TCP option • Explicit Link Failure Notification [Holland02]
– Targets ad hoc networks– Piggyback notification onto DSR’s route failure
message to sender– TCP sender disables congestion control until route is
fixed
April 11, 2007 Reliable Data Transport in Wireless Networks
23
Checksum Based LN: Example
Bandwidth 1 Mbps, 10 ms delay
April 11, 2007 Reliable Data Transport in Wireless Networks
24
End to end optimizations
• Only end node(s) are modified• Receiver-based scheme
– Receiver infers cause of packet loss or other event
– Explicitly or implicitly informs the sender
• Sender-based scheme– Sender attempts to determine cause of
packet loss
April 11, 2007 Reliable Data Transport in Wireless Networks
25
End to end optimizations: Examples
• TCP Westwood/Westwood+ [Casetti02]– Use rate of packets to estimate available bandwidth instead of
probing
• JTCP [Wu04]– Uses loss predictor based on the interarrival jitter to distinguish
congestion and wireless losses
• Freeze-TCP [Goff00]– When handover is about to happen, send a packet with receiver
window set to zero to “freeze” transmissions
• Dynamic Delayed ACK [Altman03]– Reduce contention on the wireless channel by reducing the
number of ACKs, ACK generation frequency set dynamically
Personal Reflections
April 11, 2007 Reliable Data Transport in Wireless Networks
27
Balanced View of Problem
• TCP works quite well in many wireless networks
• A reliable link layer goes a long way– TCP fairly robust to delay variations– Consider the time scales
• Requires– Accurate models of wireless networks– Accurate models of TCP
• Compare with relevant version
April 11, 2007 Reliable Data Transport in Wireless Networks
28
Impact of Buffering
• Not well understood– Often neglected in studies– Still influences results
• Trend towards smaller buffers• Some examples of work on this
– AQM method for 3G networks, aim for single packet drop in TCP window [Sågfors03]
– Apply RED to UMTS RLC buffer, pace ACKs depending on buffer occupancy [Alcaraz06]
April 11, 2007 Reliable Data Transport in Wireless Networks
29
Example: Buffering in GPRS
April 11, 2007 Reliable Data Transport in Wireless Networks
30
Consider Short Flows
• Common assumption of bulk transfers
• Most TCP flows are short
• Loss recovery can be more important than congestion control
SCTP
April 11, 2007 Reliable Data Transport in Wireless Networks
32
Stream Control Transmission Protocol
• Standardized for carrying signaling traffic over IP
• Defined as a general purpose protocol
• Like TCP, SCTP – is connection-oriented (association)
– provides a reliable transport service
– uses window-based congestion control
• Unlike TCP, SCTP – is message oriented
– supports multiple concurrent data streams
– supports the concept of multihoming
– supports unordered messages
April 11, 2007 Reliable Data Transport in Wireless Networks
33
Multihoming• Multiple IP addresses at each endpoint for a single
association• Originally defined for link redundancy• Extensions: increased performance by load balancing
mobility management at transport layer
ISPHost B
Host A
Internet
ISPISP
ISP
Interface 1Interface 1
Interface 2Interface 2
April 11, 2007 Reliable Data Transport in Wireless Networks
34
AISLE (autonomic interface selection)
• When congestion detected: consider switching to secondary path
• Based on bandwidth and capacity estimates
• Time hysterisis to avoid ping-pong effects [Casetti06]
Conclusions
April 11, 2007 Reliable Data Transport in Wireless Networks
36
Conclusions• Wireless communication different from wireline
communications• A large number of TCP optimizations proposed
– Small subset illustrated– Based on some general principles– No single “right” solution– But after all, TCP works quite ok
• SCTP– Adds some new features– Multihoming
?
April 11, 2007 Reliable Data Transport in Wireless Networks
38
References• H. Balakrishnan, S. Seshan, and R. H. Katz, “Improving Reliable Transport and
Handoff Performance in Cellular Wireless Networks,” ACM Wireless Networks, vol. 1, no. 4, Nov. 1995, pp. 469–481.
• S. Vangala and M. Labrador, “The TCP SACK-Aware-Snoop Protocol for TCP over Wireless Networks,” IEEE VTC, Orlando, FL, vol. 4, Oct. 2003, pp. 2624–283.
• A. V. Bakre , B. R. Badrinath, Implementation and Performance Evaluation of Indirect TCP, IEEE Transactions on Computers, v.46 n.3, p.260-278, March 1997
• S. Kopparty, S.V. Krishnamurthy, M. Faloutsos, S.K. Tripathi, "Split-TCP for Mobile Ad Hoc Networks", Proceedings of IEEE GLOBECOM, Taipei 2002.
• S. Biaz, M. Mehta, S. West and N. Vaidya, "TCP over Wireless Networks Using Multiple Acknowledgments", Technical Report 97-001, Texas A&M University, Jan. 1997.
• J. Garcia and A. Brunstrom, “Checksum-based Loss Differentiation”, Proceedings 4th IEEE Conference on Mobile and Wireless Communications Networks (MWCN 2002), Stockholm, Sweden, September 2002.
• G. Holland and N. Vaidya, “Analysis of TCP Performance over Mobile Ad Hoc Networks,” ACM Wireless Networks, vol. 8, no. 2, Mar. 2002, pp. 275–88.
April 11, 2007 Reliable Data Transport in Wireless Networks
39
References• S. Mascolo, C. Casetti, M. Gerla, M. Y. Sanadidi and R. Wang, “TCP Westwood:
Bandwidth Estimation for Enhanced Transport over Wireless Links”, Proc. of the ACM Mobicom 2001, Rome, Italy, July 16-21 2001.
• E. H. K. Wu and M. Z. Chen, “JTCP: Jitter-Based TCP for Heterogeneous Wireless Networks,” IEEE JSAC, vol. 22, no. 4, May 2004, pp. 757–66
• T. Goff et al., “Freeze-TCP: A True End-to-End TCP Enhancement Mechanism for Mobile Environments,” IEEE INFOCOM, vol. 3, Apr. 2000, pp. 1537–45.
• E. Altman and T. Jimenez, “Novel Delayed ACK Techniques for Improving TCP Performance in Multihop Wireless Networks,” Proc. Pers. Wireless Commun., Venice, Italy, Sep. 2003, pp. 237–53.
• M. Sågfors, R. Ludwig, M. Meyer and J. Peisa, "Queue Management for TCP Traffic over 3G Links", IEEE WCNC 2003, New Orleans, USA, March 2003
• C. Casetti, C. F. Chiasserini, R. Fracchia, M. Meo, AISLE: Autonomic Interface SeLEction for Wireless Users, IEEE WoWMoM 2006, Niagara-Falls, Buffalo-NY, 26-29 June 2006