FTCP, Csnoop - Two Novel Strategies for TCP over Wired and Wireless Network
The throughput of a TCP connection is decided by the size of the congestion window. And cwnd increases when an acknowledgement arrives. It leads to that TCP has a bias against connections with long round-trip-time. For enhancing the fairness of TCP, we proposed a new scheme FTCP (Fair TCP). Unlike TCP, in FTCP congestion avoidance state, it compares its RTT with the standard RTT to adjust the increase amount of cwnd when an ACK arrives TCP sender. Therefore FTCP can keep the throughput increase rate of connections with different RTTs be the same. When FTCP enters timeout state, it sets appropriate slow start threshold by calculating the difference value of cwnd / 2 and the cwnd while standard connection achieves ssthresh. So that FTCP can eliminate the difference of throughput between connections with different RTT while leaving the slow start state. FTCP significantly improves the unfair bandwidth distribution between connections with different RTT.
TCP connections over wireless links perform badly because of the unnecessary congestion control, inefficiency to burst packet loss, and long delay to slow down the cwnd recovery time. In proposed schemes, Snoop takes BS as a pivot point to cache the unacknowledged TCP packets. When errors occur in wireless link, Snoop retransmits the packets locally from BS instead of retransmitting these packets from sender. And Snoop shields off the duplicate ACKs caused by wireless errors to avoid sender triggering unnecessary congestion control. But Snoop adopts same retransmission style as TCP. It only retransmits one packet per continuous duplicate ACKs. Snoop recovers error packets more quickly and tolerates higher BER than TCP. But Snoop doesn¡¦t really solve the degraded performance problem of multiple errors of TCP. When the channel is the in a very bad quality, Snoop still performs badly. We proposed a new scheme, Csnoop (continuous snoop), extended from Snoop. When bursty errors happen in the wireless links, Csnoop retransmits one lost packets from the BS in first RTT and counts the number of ACKs that arrives BS to calculate the number of lost packets. And Csnoop retransmits these lost packets continuously. When local timeout happens, Csnoop infers that all packets were dropped and retransmits all packets cached in the buffer. Simulations show that Csnoop achieves better throughput compared to Snoop and TCP, especially for bad quality wireless links. Furthermore, Csnoop needs less buffer size to cache the unacknowledged packets at the base station than Snoop.
Advisor:Lung-Jen Wang; Wen-Shyong Hsieh; Buh-Yun Sher
School:National Sun Yat-Sen University
School Location:China - Taiwan
Source Type:Master's Thesis
Keywords:tcp fairness congestion control network csnoop snoop wireless networks ftcp
Date of Publication:07/03/2002