Ruy de Oliveira December 05, 2001 University of Berne Institute of Computer Science and Applied Mathematics – IAM/RVS TCP Issues in Mobile IP Networks Ruy de Oliveira December 05, 2001
Topics addressed Brief review on TCP algorithm Challenges for TCP under mobile environment Main proposed approaches for cellular net. Requirements on mobile multi-hop networks Some proposals for multi-hop environment Conclusions and outlooks tedstt
TCP review TCP has been designed to work on wired networks Negligible medium loss (low BER) Under loss it starts probing the net at lower rate by shrinking its congestion window (CWND) Slow Start (timeout) exponential back off (RTO) Congestion Avoidance Fast retransmit and recover (3 dacks) Receiver window (RW) limits the maximum rate of the sender Upon receiving a RW set to zero, sender enters into “persist mode”
TCP under mobile environment In mobile networks, pck losses refer to: Congestion within wired network Non-negligible wireless losses (high BER) Disconnection (Handover, fading, etc) As TCP does not discriminate such losses, it can waste bandwidth by dropping its CWND when A pck loss occurs in the wireless link A fast handover takes place towards a cell with enough bandwidth Serial timeouts
Dealing with TCP in mobile IP The main techniques used to get over TCP behavior in mobile networks include: To split the e2e connection into two, namely wired and wireless connection To push the sender into “persist mode” during handover by either the Base Station (BS) (or another intermediate node) or Mobile Host (MH) (by predicting imminent disconnect.) To improve local wireless retransmission To speed up the TCP recovery after a handover
TCP approaches for cellular network I-TCP Snoop M-TCP Delayed duplicate acks (dacks) EBSN WTCP Freeze-TCP TCP-probing Fast retransmit
Indirect-TCP (I-TCP) It splits the e2e connection into two parts: The wireless connection can even use another transport protocol that suits wireless medium During handover pcks from FH are cached at old BS to be transferred to the new one It’s backward compatible with fixed network
Indirect TCP operation
I-TCP drawbacks Maintains no e2e TCP semantics BS acknowledges (ACK) pcks to the sender It requires cooperation of application layer to provide reliability The BS can run out of buffer High processing at BS Latency to transfer state information can be prohibitive
Snoop Protocol Changes are restricted to BS and optionally to MH as well E2e TCP semantics is preserved A (snoop) layer is added to the routing code at BS which keep track of pcks in both directions Pcks meant to MH are buffered at BS and, if needed, retransmitted in the wireless link It’s robust in dealing with multiple pck losses in a single transmission window
Snoop Protocol functioning
Snoop Protocol drawbacks Recovery from handover can be slow due to considerable state information to be handed over Under long disconnection, sender times out Encrypted traffic cannot be handled
M-TCP Protocol Also splits the connection into two Unlike I-TCP, it maintains e2e TCP semantics Under long disconnection pushes the sender into “persist mode” It avoids frequent transferring of state information during handover It’s appropriated for environment with high cells switching
M-TCP Protocol operation
M-TCP Protocol disadvantages When sender transmit occasionally only, it will time out as the SH-agent does not send last ACK Some retransmission overhead High processing at SH Considerable complexity Encryption is not possible Reliability issues
TCP approaches cellular network I-TCP Snoop M-TCP Delayed duplicate acks EBSN WTCP Freeze-TCP TCP-probing Fast retransmit
Approaches comparison Events/ feature I-TCP Snoop M-TCP Delayed dacks EBSN WTCP Freeze- TCP TCP- probing E2e semantics no yes Handle high BER yes* Long disconnec. may run out buffer Freq. disconnec handov. costly may be costly Req. interm node TCP mode Handle encryption power saving yes *
Mobile multi-hop (Ad hoc) networks Mobile multi-hop = mobile Ad hoc = Manet This wireless framework is “wired infrastructure” independent Each node is both end-user and router It’s appropriate for environment where wired network cannot be used or is not desired
TCP challenges in manet networks All those met in Cellular networks (1-hop) Environment under high route failures Frequent routing changes Partitions Multi-path routing needs to be considered Power saving awareness is extremely necessary CWND may not represents actual available BW (route dependent)
Manet scheme
Approaches for TCP within manets To lead the sender into “persist mode” or a similar one fix the RTO under route failure make use of feedback information rely on cooperation from network and link layers improve link protocol recovery strategy
Some proposals TCP-F ELFN-based approach Fixed RTO ATCP
TCP-F Based on feedback scheme Sender to distinguish route failure from net. cong. Sender enters snooze state when receives RFN It resumes transmission when receives a RRN Lack of RFN or RRN makes it performs like std TCP
ELFN-based approach Employs the concept of Explicit Link Failure Notification (ELFN) techniques Via ELFN sender is told about link and route failures ELFN carried by routing protocol itself (piggy-back) Upon receiving an ELFN TCP disables cong. control Instead it enters a “stand-by” mode timers frozen Starts probing the network Retransmission resumes at “full rate” Routing protocol (DSR) staled cache problem degrades performance significantly
Fixed RTO The exponential back off algorithm is disable so the sender retransmits at regular intervals A 2nd RTO happening, indicates route loss The scheme was evaluated for two on-demand (AODV, DSR) and one proactive (ADV) routing algorithms On-demand ones performed well Proactive didn’t experience improvement with this approach This approach is only feasible for wireless networks
ATCP Std TCP is not modified Interoperability Defines ad hoc layer to work between layers 3 and 4 ECN and ICMP “Dest. Unreach.” signaling are used ECN congestion ICMP router failure (partition or re-computation) ATCP spoofs TCP to obtain the following behavior: High error Simply retransmit pck from TCP buffer Route update delay Stop/resume with new CWND Transient partition idem Multi-path routing invoke CC ICMP messages might not reach the sender
ATCP Based on network feedback atcp puts sender into: Persist mode Congestion control mode Retransmit mode
ATCP State transition at sender
AD Hoc approaches Event/feature TCP-F ELFN-based Fixed RTO ATCP Pck loss due to high BER Not handled Retransmit without invoking CC Route changes or network partition RRN freezes sender state ELFN freezes sender state Upon 2nd timeout RTO is fixed ICMP message puts sender in PM Pack reordering Done by ATCP layer Congestion Via ECN TCP CC invoked quickly CWND Old CWND used Reset for each new route wired net. interoperation Req. routing algorithm aware Requires routing algorithm aware Not smoothly Requires ECN use on wired network Power saving
Conclusions and outlooks Any TCP improvements need consider interoperab. Power saving awareness is essential Cooperation among protocol layers seems to be unavoidable Further investigation on CWND on resuming BS tends to be part of encryption scheme Ad hoc networks (multi-hop) TCP performance is Highly dependent on routing pr. Geographical-based location protocol seems to be useful Link layer strategies to play a key role (high BER) Longer periods of disconnection is highly likely