The Impact of Multihop Wireless Channel on TCP Throughput and Loss Zhenghua Fu, Petros Zerfos, Haiyun Luo, Songwu Lu, Lixia Zhang, Mario Gerla (UCLA), INFOCOM 2003, San Francisco, Mar. 2003. Presented by Scott McLaren Overview Introduction Background Throughput in Multihop Wireless Networks Loss Behavior Improving Performance Conclusions Introduction Improve channel utilization by spatial channel reuse A TCP window size W* exists at which throughput is maximized by achieving best spatial reuse Increasing the window size past W* will reduce throughput Standard TCP typically grows its average window much larger than W* Techniques to improve efficiency Link-RED Tune the wireless link’s drop probability Adaptive link-layer pacing scheme Increase the spatial reuse of the channel Allow TCP to operate in the contention avoidance region 802.11 RTS/CTS messages Nodes hearing this handshake defer transmission until current transmission is finished Data is dropped if no CTS is received after 7 RTS retries Data is also dropped if 4 transmissions are sent without an receiving an ACK Hidden Terminals A hidden terminal is a node in the receiver’s neighborhood, that can’t detect sender and may disrupt transmissions Nodes are 200m apart Transmission range is 250m Carrier sensing and interference range is 550m D is a hidden terminal of A B Cannot hear CTS ( > 250m ) Cannot hear data from A, A is outside of D’s carrier sensing range D can transmit to E Causes collision at B, since D is within 550m interference range for B Contention loss at B Chain Topology Best throughput when window size is h/4 Assuming ideal MAC protocol and equal packet sizes Max concurrent senders is h/4, where max spatial reuse is achieved TCP window size < h/4 under utilization TCP window size > h/4 reduced throughput Cross Topology 2 TCP flows Best window W* = 2, measured window = 12 20% throughput reduction Grid Topology 4, 8, and 12 TCP flows ½ of flows in each direction Measured TCP windows are larger than max achievable throughput Results TCP Loss Behavior Using 8-hop chain, all 165 TCP drops out of 12349 transmissions were due to link drops TCP Loss Behavior Corollaries m – number of backlogged nodes B* – the max number of nodes that can transmit their DATA packets concurrently without collision C* – denotes the max number of nodes that can initiate RTS messages Corollary 4.1 Corollary 4.2 m > B* Pl increases as m increases Corollary 4.3 m < B* Pl ≈ 0 m > C* Pl remains constant Throughput reduction due to Wavg >> W*, Pl > 0, Link contention > 0 reducing spatial reuse Improving TCP Performance Distributed Link RED (LRED) Adaptive Pacing LRED Easy way is to improve performance by reducing buffer size, but problems with bursty traffic LRED exploits dropping in 802.11 MAC RED provides a linearly increasing drop curve as queue exceeds a min size LRED provides a linearly increasing drop curve as link drop probability exceeds a min size LRED Link layer maintains average number of retries Next packet is dropped/marked with probability based on average number If average number of retries is small, packets are not dropped/marked When retries increase, the dropped/marked probability is calculated Adaptive Pacing Improve spatial channel reuse by balancing traffic among nodes Exposed receiver problem Let a node backoff an additional packet transmission time when necessary Adaptive Pacing Enabled from LRED If average retries < min_th then calculate backoff time as usual If pacing, backoff time increases by a time equal to the transmission time of the previous packet Performance Chain Topology In all cases LRED & Pacing increased TCP throughput by up to 30% TCP stabilizes at a window size close to the optimal value The longer the chain, the better the improvement, due to pacing optimizing spatial channel reuse Chain Topology Performance Cross Topology Increased throughput and improves fairness (Jain’s) for both flows TCP NewReno has large unfairness, due to 802.11 capture characteristic (collision of 2 packets, one weaker than the other. The stronger packet is received) Performance Grid Topology Also increases throughput and fairness Conclusions Only when buffer is small do buffer overflow drops dominate As buffer increases, link-layer drops dominate LRED and Adaptive Pacing can be used to fine-tune dropping behaviors and Improve TCP throughput. Questions