TCP in Wireless Ad-hoc Networks COSC 6590 12/28/2018 9:16 AM
Overview What is TCP? TCP Challenges in MANETs TCP Based Solutions Split-TCP ATCP Recap
Transport Layer In the OSI model, the transport layer is responsible for: Reliable end-to-end connection End-to-end delivery Flow control Congestion control In-order packet delivery
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
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
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. Random backoff timer done to avoid further congestion
TCP Congestion Window
Why does TCP perform badly in MANETs? Dynamic network topology Node mobility Network partition Multi-hop paths Variable path lengths per node Longer path = higher failure rate 1) Dynamic network topology means the nodes are mobile, and the structure of the network changes regularly. TCP must account for gaps in transmission where the routing protocol must update the paths before TCP can continue 2) The
Why does TCP struggle in MANETs? (2) Lost packets due to high BER (Bit Error Rate): BER in wired: 10-8 – 10-10 BER in wireless: 10-3 – 10-5
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
Solution Topology
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
Solutions for TCP
Split-TCP and ATCP
TCP Recap Works well in wired Fails in wireless due to frequent connection breaks: Mobile nodes being rerouted Packets lost due to lossy channel Multi-hop paths more prone to failure Present solutions tackle subset of problems Two solutions: Split-TCP and ATCP
Split-TCP Overview: Motivation for Split-TCP How does Split-TCP work? Advantages/Disadvantages Performance Evaluation: Throughput vs. TCP Channel Capture Effect Recap
Split-TCP in Solution Topology
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
Channel Capture Effect Definition: “The most data-intense connection dominates the multiple-access wireless channel” [1] Higher SNR Early Start 1)
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)
Split-TCP Segmentation
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
Split-TCP in a MANET (2) Steps: Node 1 initiates TCP session Nodes 4 and 13 are chosen as proxies on-demand Upon rx, 4 buffers packet If packet lost at 15, request made to 13 to retransmit 1 unaware of link failure at 15
Split-TCP in a MANET (3) Sender is unaware of transient link failure. Congestion window not reduced Packet retransmissions only incorporate part of link --> Bandwidth reduced 4 may act as proxy for 12 as well, channel capture eliminated.
Is Split-TCP successful? Pros: Increased throughput Increased fairness Restricted channel capture effect Cons: Modified end-to-end connection Proxy movement adversely affects protocol performance Congestion at individual nodes (if only proxy between partitions)
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%
Performance vs. TCP: Throughput Comparison
Performance vs. TCP: Channel Capture Effect Regular TCP Throughput Split-TCP Throughput
Split-TCP Recap 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
Issues Not Addressed Does not maintain end-to-end semantics Periodic ACK failure means major retransmission Packet loss due to high BER Out-of-order packets Proxy link failure affects performance
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 [5] Improving TCP Performance over Wireless Networks; Kenan Xu, Queen’s University 2003