TCP in Mobile Ad-hoc Networks ─ Split TCP CSE 6590 4/8/2015 2:10 AM 1 Overview What is TCP? TCP challenges in MANETs TCP-based solutions Split-TCP ATCP 2 TCP: A Brief Review TCP: Transmission Control Protocol Specified in 1974 (TCP Tahoe) Data stream TCP packets Reliable end-to-end connection In-order packet delivery Flow and congestion control 3 How does TCP work? Establishes an end-to-end connection: Acknowledgement based packet delivery Assigns a congestion window Cw: Initial value of Cw = 1 (packet) If trx successful, congestion window doubled. Continues until Cmax is reached After Cw ≥ Cmax, Cw = Cw + 1 If timeout before ACK, TCP assumes congestion 4 How does TCP work? (2) TCP response to congestion is drastic: A random backoff timer disables all transmissions for duration of timer Cw is set to 1 Cmax is set to Cmax / 2 Congestion window can become quite small for successive packet losses. Throughput falls dramatically as a result. 5 TCP Congestion Window 6 Why does TCP perform badly in MANETs? 1. Dynamic network topology Node mobility Network partition 2. Multi-hop paths Variable path lengths Longer path = higher failure rate 7 Why does TCP struggle in MANETs? (2) 3. Lost packets due to high BER (Bit Error Rate): BER in wired: 10-8 – 10-10 BER in wireless: 10-3 – 10-5 8 Solutions for TCP in MANETs Various solutions present Most solutions generally tackle a subset of the problem Often, fixing one part of TCP breaks another part Competing interests exist in the standards laid out by OSI 9 Solution Topology 10 Why focus on TCP-based solutions? We want to choose solutions which maintain close connection to TCP Upper layers in the OSI model affected by choice of transport layer protocol Modifications may affect interactions with the Internet Alternative methods only useful for isolated networks 11 Solutions for TCP 12 Split-TCP and ATCP 13 TCP Summary Works well in wired Fails in wireless networks due to frequent connection breaks: Mobile nodes move Packets lost due to lossy channels Multi-hop paths more prone to failure Present solutions tackle subset of problems Two solutions: Split-TCP and ATCP 14 Split-TCP Overview Motivation for Split-TCP How does Split-TCP work? Advantages/Disadvantages Performance Evaluation: Throughput vs. TCP Channel Capture Effect Summary 15 Split-TCP in Solution Topology 16 Motivation for Split-TCP Issues addressed by Split-TCP: Throughput degradation with increasing path length Channel capture effect (802.11) Mobility issues with regular TCP 17 Channel Capture Effect Definition: “The most data-intense connection dominates the multiple-access wireless channel” [1] Higher SNR Early start Example: 2 simultaneous heavy-load TCP flows located close to each other. 18 How does Split-TCP work? Connection between sender and receiver broken into segments A proxy controls each segment Regular TCP is used within segments Global end-to-end connection with periodic ACKs (for multiple packets) 19 Split-TCP Segmentation 20 Split-TCP in a MANET: Proxy Functionality Proxies: Intercept and buffer TCP packets Transmit packet, wait for LACK Send local ACK (LACK) to previous proxy Packets cleared upon reception of LACK Increase fairness by maintaining equal connection length 21 Split-TCP in a MANET (2) Steps: Node 1 initiates TCP session Nodes 4 and 13 are chosen as proxies ondemand Upon trx, 4 buffers packets If a packet lost at 15, request made to 13 to retransmit 1 unaware of link failure at 15 22 Split-TCP in a MANET (3) Sender is unaware of transient link failure. Congestion window not reduced. Packet retransmissions only incorporate part of a path bandwidth usage is reduced. Channel capture effect is alleviated (see next slide). 23 Channel capture alleviated 24 Is Split-TCP successful? Pros: Increased throughput Increased fairness Restricted channel capture effect Cons: Modified end-to-end connection Proxy movement/failure adversely affects protocol performance Congestion at proxy nodes if another fails 25 Performance Evaluation Test bench Specifics: ns-2 Simulator 50 mobile nodes initially equidistant 1 km2 Area Nodes maintain constant velocity: Arbitrary direction Random changes at periodic intervals Optimal segment length: 3 ≤ n ≤ 5 nodes Measured improvement: Throughput increases by 5% to 30% 26 Performance vs. TCP: Throughput Comparison 27 Performance vs. TCP: Channel Capture Effect Regular TCP Throughput Split-TCP Throughput 28 Split-TCP: Summary Break link into segments with proxies Use proxies to buffer packets at segments Employ TCP locally in segments Reduce bandwidth consumption and channel capture effect 29 Issues Not Addressed Does not maintain end-to-end semantics Periodic ACK failures means major retransmissions Packet loss due to high BER Out-of-order packets Proxy link failure affects performance 30 References [1] Split-TCP for Mobile Ad Hoc Networks; Kopparty et al. [2] ATCP: TCP for Mobile Ad Hoc Networks; Jian Liu, Suresh Singh, IEEE Journal, 2001. [3] A Feedback-Based Scheme for Improving TCP Performance in Ad Hoc Wireless Networks; Kartik Chandran et al. [4] Ad Hoc Wireless Networks: Architectures and Protocols; C. Siva Ram Murthy and B. S. Manoj; section 9.5.7. [5] Improving TCP Performance over Wireless Networks; Kenan Xu, Queen’s University 2003. 31