Mobile Transport Protocols
Mobile Transport Protocols
Motivation I
Transport protocols typically designed for
Research activities
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
Mobile Communications: Mobile Transport Layer
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 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)
Mobile Communications: Mobile Transport Layer
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
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
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 The foreign agent acts as proxy and relays all data in both directions hosts in the fixed part of the net do not notice the characteristics of the wireless part
wireless TCP
standard TCP
access point1
Internet
access point2
mobile host
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
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 foreign agent wired Internet snooping of ACKs buffering of data correspondent host
mobile host
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
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
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
Mobile Communications: Mobile Transport Layer
Mobile TCP
Special handling of lengthy and/or frequent disconnections M-TCP splits as I-TCP does
Supervisory host
set sender window size to 0 sender automatically goes into persistent mode
old or new SH reopen the window maintains semantics, supports disconnection, no buffer forwarding
Advantages
Disadvantages
loss on wireless link propagated into fixed network adapted TCP on wireless link
Mobile Communications: Mobile Transport Layer
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
simple changes result in significant higher performance
Advantage
Disadvantage
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 not assume a congested link MAC layer signals again if reconnected
Advantage
Disadvantage
Selective retransmission
TCP acknowledgements are often cumulative
ACK n acknowledges correct and in-sequence receipt of packets up to n if single packet is missing, quite often a whole packet sequence beginning at the gap has to be retransmitted (go-back-n), thus wasting bandwidth
RFC2018 allows for acknowledgements of single packet, not only acknowledgements of in-sequence packet streams without gaps sender can now retransmit only the missing packets
Advantage
much higher efficiency more complex software in a receiver, more buffer needed at the receiver
Disadvantage
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!
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
Mechanism
splits TCP connection into two connections
Advantages
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