Mobile Communications
Chapter 9: Mobile Transport Layer
Motivation
TCP-mechanisms
Classical approaches
Indirect TCP
Snooping TCP
Mobile TCP
PEPs in general
Fast retransmit/recovery
Transmission freezing
Selective retransmission
Transaction oriented TCP
9.1
Additional optimizations
TCP for 2.5G/3G wireless
Transport Layer
E.g. HTTP (used by web services)
typically uses TCP
Reliable transport between client
and server required
Client
TCP SYN
TCP SYN/ACK
TCP
Steam oriented, not transaction
oriented
Network friendly: time-out
congestion
slow down transmission
Well known TCP guesses quite often
wrong in wireless and mobile networks
Packet loss due to transmission
errors
Packet loss due to change of
network
Result
Severe performance degradation
9.2
Server
Connection
setup
TCP ACK
HTTP request
HTTP response
Data
transmission
>15 s
no data
GPRS: 500ms!
Connection
release
Motivation I
Transport protocols typically designed for
Fixed end-systems
Fixed, wired networks
Research activities
Performance
Congestion control
Efficient retransmissions
TCP congestion control
packet loss in fixed networks typically due to (temporary) overload
situations
router have to discard packets as soon as the buffers are full
TCP recognizes congestion only indirect via missing
acknowledgements, retransmissions unwise, they would only
contribute to the congestion and make it even worse
slow-start algorithm as reaction
9.3
Motivation II
TCP slow-start algorithm
sender calculates a congestion window for a receiver
start with a congestion window size equal to one segment
exponential increase of the congestion window up to the congestion
threshold, then linear increase
missing acknowledgement causes the reduction of the congestion
threshold to one half of the current congestion window
congestion window starts again with one segment
TCP fast retransmit/fast recovery
TCP sends an acknowledgement only after receiving a packet
if a sender receives several acknowledgements for the same
packet, this is due to a gap in received packets at the receiver
however, the receiver got all packets up to the gap and is actually
receiving packets
therefore, packet loss is not due to congestion, continue with
current congestion window (do not use slow-start)
9.4
Influences of mobility on TCP-mechanisms
TCP assumes congestion if packets are dropped
typically wrong in wireless networks, here we often have packet
loss due to transmission errors
furthermore, mobility itself can cause packet loss, if e.g. a mobile
node roams from one access point (e.g. foreign agent in Mobile IP)
to another while there are still packets in transit to the wrong access
point and forwarding is not possible
The performance of an unchanged TCP degrades severely
however, TCP cannot be changed fundamentally due to the large
base of installation in the fixed network, TCP for mobility has to
remain compatible
the basic TCP mechanisms keep the whole Internet together
9.5
Early approach: Indirect TCP I
Indirect TCP or I-TCP segments the connection
no changes to the TCP protocol for hosts connected to the wired
Internet, millions of computers use (variants of) this protocol
optimized TCP protocol for mobile hosts
splitting of the TCP connection at, e.g., the foreign agent into 2 TCP
connections, no real end-to-end connection any longer
hosts in the fixed part of the net do not notice the characteristics of
the wireless part
mobile host
access point
(foreign agent)
wireless TCP
9.6
wired Internet
standard TCP
I-TCP socket and state migration
access point1
socket migration
and state transfer
access point2
mobile host
9.7
Internet
Indirect TCP II
Advantages
no changes in the fixed network necessary, no changes for the hosts
(TCP protocol) necessary, all current optimizations to TCP still work
transmission errors on the wireless link do not propagate into the fixed
network
simple to control, mobile TCP is used only for one hop between, e.g., a
foreign agent and mobile host
therefore, a very fast retransmission of packets is possible, the short
delay on the mobile hop is known
Disadvantages
loss of end-to-end semantics, an acknowledgement to a sender does
now not any longer mean that a receiver really got a packet, foreign
agents might crash
higher latency possible due to buffering of data within the foreign agent
and forwarding to a new foreign agent
9.8
Early approach: Snooping TCP I
Transparent extension of TCP within the foreign agent
buffering of packets sent to the mobile host
lost packets on the wireless link (both directions!) will be
retransmitted immediately by the mobile host or foreign agent,
respectively (so called local retransmission)
the foreign agent therefore snoops the packet flow and recognizes
acknowledgements in both directions, it also filters ACKs
changes of TCP only within the foreign agent
local retransmission
correspondent
host
foreign
agent
wired Internet
snooping of ACKs
mobile
host
buffering of data
end-to-end TCP connection
9.9
Snooping TCP II
Data transfer to the mobile host
FA buffers data until it receives ACK of the MH, FA detects packet
loss via duplicated ACKs or time-out
fast retransmission possible, transparent for the fixed network
Data transfer from the mobile host
FA detects packet loss on the wireless link via sequence numbers,
FA answers directly with a NACK to the MH
MH can now retransmit data with only a very short delay
Integration of the MAC layer
MAC layer often has similar mechanisms to those of TCP
thus, the MAC layer can already detect duplicated packets due to
retransmissions and discard them
Problems
snooping TCP does not isolate the wireless link as good as I-TCP
snooping might be useless depending on encryption schemes
9.10
Early approach: Mobile TCP
Special handling of lengthy and/or frequent disconnections
M-TCP splits as I-TCP does
unmodified TCP fixed network to supervisory host (SH)
optimized TCP SH to MH
Supervisory host
no caching, no retransmission
monitors all packets, if disconnection detected
set sender window size to 0
sender automatically goes into persistent mode
old or new SH reopen the window
Advantages
maintains semantics, supports disconnection, no buffer forwarding
Disadvantages
loss on wireless link propagated into fixed network
adapted TCP on wireless link
9.11
Fast retransmit/fast recovery
Change of foreign agent often results in packet loss
TCP reacts with slow-start although there is no congestion
Forced fast retransmit
as soon as the mobile host has registered with a new foreign agent,
the MH sends duplicated acknowledgements on purpose
this forces the fast retransmit mode at the communication partners
additionally, the TCP on the MH is forced to continue sending with
the actual window size and not to go into slow-start after registration
Advantage
simple changes result in significant higher performance
Disadvantage
further mix of IP and TCP, no transparent approach
9.12
Transmission/time-out freezing
Mobile hosts can be disconnected for a longer time
no packet exchange possible, e.g., in a tunnel, disconnection due to
overloaded cells or mux. with higher priority traffic
TCP disconnects after time-out completely
TCP freezing
MAC layer is often able to detect interruption in advance
MAC can inform TCP layer of upcoming loss of connection
TCP stops sending, but does now not assume a congested link
MAC layer signals again if reconnected
Advantage
scheme is independent of data
Disadvantage
TCP on mobile host has to be changed, mechanism depends on
MAC layer
9.13
Selective retransmission
TCP acknowledgements are often cumulative
ACK n acknowledges correct and in-sequence receipt of packets up
to n
if single packets are missing quite often a whole packet sequence
beginning at the gap has to be retransmitted (go-back-n), thus
wasting bandwidth
Selective retransmission as one solution
RFC2018 allows for acknowledgements of single packets, not only
acknowledgements of in-sequence packet streams without gaps
sender can now retransmit only the missing packets
Advantage
much higher efficiency
Disadvantage
more complex software in a receiver, more buffer needed at the
receiver
9.14
Transaction oriented TCP
TCP phases
connection setup, data transmission, connection release
using 3-way-handshake needs 3 packets for setup and release,
respectively
thus, even short messages need a minimum of 7 packets!
Transaction oriented TCP
RFC1644, T-TCP, describes a TCP version to avoid this overhead
connection setup, data transfer and connection release can be
combined
thus, only 2 or 3 packets are needed
Advantage
efficiency
Disadvantage
requires changed TCP
mobility not longer transparent
9.15
Comparison of different approaches for a mobile TCP
Approach
Mechanism
Advantages
Indirect TCP
splits TCP connection
into two connections
isolation of wireless
link, simple
Disadvantages
loss of TCP semantics,
higher latency at
handover
Snooping TCP
snoops data and
transparent for end-to- problematic with
acknowledgements, local end connection, MAC
encryption, bad isolation
retransmission
integration possible
of wireless link
M-TCP
splits TCP connection,
Maintains end-to-end
Bad isolation of wireless
chokes sender via
semantics, handles
link, processing
window size
long term and frequent overhead due to
disconnections
bandwidth management
Fast retransmit/ avoids slow-start after
simple and efficient
mixed layers, not
fast recovery
roaming
transparent
Transmission/
freezes TCP state at
independent of content changes in TCP
time-out freezing disconnect, resumes
or encryption, works for required, MAC
after reconnection
longer interrupts
dependant
Selective
retransmit only lost data very efficient
slightly more complex
retransmission
receiver software, more
buffer needed
Transaction
combine connection
Efficient for certain
changes in TCP
oriented TCP
setup/release and data
applications
required, not transparent
transmission
9.16
TCP Improvements I
Initial research work
Indirect TCP, Snoop TCP, M-TCP, T/TCP, SACK,
Transmission/time-out freezing,
TCP over 2.5/3G wireless networks
Fine tuning todays TCP
Learn to live with
BW
0.93 * MSS
RTT * p
max. TCP BandWidth
Max. Segment Size
Round Trip Time
loss probability
Data rates: 64 kbit/s up, 115-384 kbit/s down; asymmetry: 3-6, but also
up to 1000 (broadcast systems), periodic allocation/release of channels
High latency, high jitter, packet loss
Suggestions
Large (initial) sending windows, large maximum transfer unit, selective
acknowledgement, explicit congestion notification, time stamp, no
header compression
Already in use
i-mode running over FOMA
WAP 2.0 (TCP with wireless profile)
9.17
TCP Improvements II
Performance enhancing proxies (PEP, RFC 3135)
Transport layer
Additionally on the application layer
Local retransmissions and acknowledgements
Content filtering, compression, picture downscaling
E.g., Internet/WAP gateways
Web service gateways?
Mobile system
wireless
PEP
Big problem: breaks end-to-end semantics
Disables use of IP security
Choose between PEP and security!
Internet
More open issues
RFC 3150 (slow links)
RFC 3155 (links with errors)
Recommends header compression, no timestamp
States that explicit congestion notification cannot be used
In contrast to 2.5G/3G recommendations!
9.18
Comm. partner