110 likes | 123 Views
Explore mechanisms for improving TCP over wireless links, addressing congestion response, transmission errors, and the impact of retransmissions. Discuss wireless-aware TCP solutions, split connections, and the Snoop Protocol for optimized performance.
E N D
Outline • A Comparison of Mechanisms for Improving TCP Performance over Wireless Links • This paper ties in with the WAP discussion, for wireless networks do we “fix” TCP or invent a whole new protocol? • Slides from Nitin Vaidya (@ TAMU) Ubiquitous Computing
TCP overview • Reliable ordered delivery • Implements congestion avoidance and control • Reliability achieved by means of retransmissions if necessary • End-to-end semantics • Acknowledgements sent to TCP sender confirm delivery of data received by TCP receiver • Ack for data sent only after data has reached receiver Ubiquitous Computing
Sometimes Congestion Response May be Appropriate in Response to Errors • On a CDMA channel, errors occur due to interference from other user, and due to noise • Interference due to other users is an indication of congestion. If such interference causes transmission errors, it is appropriate to reduce congestion window • If noise causes errors, it is not appropriate to reduce window • When a channel is in a bad state for a long duration, it might be better to let TCP backoff, so that it does not unnecessarily attempt retransmissions while the channel remains in the bad state Ubiquitous Computing
Burst Errors May Cause Timeouts • If wireless link remains unavailable for extended duration, a window worth of data may be lost • driving through a tunnel • passing a truck • Timeout results in slow start • Slow start reduces congestion window to 1 MSS, reducing throughput • Reduction in window in response to errors unnecessary Ubiquitous Computing
Impact of Transmission Errors • TCP cannot distinguish between packet losses due to congestion and transmission errors • Unnecessarily reduces congestion window • Throughput suffers Ubiquitous Computing
Wireless Aware TCP • Link-layer protocols: • Error correction (FEC) • Retransmission of lost packets (ARQ) Ubiquitous Computing
Link Level Retransmissions: Issues • Retransmissions can cause head-of-the-line blocking • Although link to receiver 1 may be in a bad state, the link to receiver 2 may be in a good state • Retransmissions to receiver 1 are lost, and also block a packet from being sent to receiver 2 Receiver 1 Receiver 2 Base station Ubiquitous Computing
Link Level Retransmissions - Issues • Retransmissions can cause congestion losses • Attempting to retransmit a packet at the front of the queue, effectively reduces the available bandwidth, potentially making the queue at base station longer • If the queue gets full, packets may be lost, indicating congestion to the sender • Is this desirable or not ? Receiver 1 Receiver 2 Base station Ubiquitous Computing
Wireless Aware TCP • Split connection protocols: • Split TCP connection between sender and base station and base station and receiver • Optimize each separately, though it was found that TCP works on both halves • Violation of end-to-end semantics : ack from base station before data was delivered • Significant state in base station – hand-off harder Ubiquitous Computing
Wireless Aware TCP (cont.) • Snoop Protocol • Introduce an agent at base station which intercepts retransmit requests and sends from local cache • Selective acknowledgement • Acknowledge packets lost more accurately Ubiquitous Computing
Discussion • Is TCP required in ubiquitous devices? • Definitely useful for “desktop” applications but not for “mobile applications” (multimedia players, video conferences, voice) Ubiquitous Computing