A Bidirectional Multi-channel MAC Protocol for Improving TCP Performance on Multihop Wireless Ad Hoc Networks Tianbo Kuang and Carey Williamson Department of Computer Science University of Calgary ACM MSWiM 2004 (Modeling, Analysis and Simulation of Wireless and Mobile Systems) Outline Introduction Bi-MCMAC Simulations Extensions Throughput Fairness Transfer delay Conclusions Introduction A well-known problem of multihop ad hoc wireless networks is the hidden node problem IEEE 802.11 MAC Protocol attempts to solve the problem by using RTS/CTS handshake But RTS collision and Exposed node problem are not completely solved. Introduction (cont.) For a transport-layer protocol working above RTS/CTS based protocol, the problems described above will affect the network performance Problem description Hidden node When data packets travel in the same direction transmission RTS collision 1 sender 2 3 4 interference 5 receiver hidden Problem description (cont.) Exposed node When data packets travel in opposite direction transmission 1 sender 2 RTS 3 interference no transmission 4 5 receiver Problem description (cont.) Capture effect Unfairness can occur between different TCP flows hidden transmission RTS collision 1 2 3 4 5 sender receiver interference sender receiver Related works C. Cordeiro, S. Das, and D. Agrawal. COPAS: Dynamic contention-balancing to enhance the performance of TCP over multi-hop wireless networks. In Proceedings of ICCCN’02, pages 382–387. Miami, FL, USA, October 2002. Goal Design a multi-channel MAC protocol to reduce TCP DATA-DATA collision Use bidirectional RTS/CTS channel reservations to reduce TCP DATA-ACK contention Bi-MCMAC Static multihop wireless ad hoc networks One control channel, K-1 data channels Single transceiver Extends the RTS/CTS handshake to do the bidirectional channel reservation CRN (Channel Reservation Notification) control frame Bi-MCMAC (cont.) Channel state is included in RTS/CTS frames CRN frame is sent after the sender receives CTS, containing the channel and reservation duration information Subsequent data frame sent by receiver is indicated as MAC-layer ACK Bi-MCMAC (cont.) Announce channel 7 and CRN NAV Channel: 1,5,7,11 Indicated as MAC-layer ACK Channel: 2,6,7,11 Choose 7 Extension Head-of-Line (HOL) blocking If the first packet in the buffer is not destined to the sender Per-neighbor queue Multi-channel Hidden Terminal Problem Receiver always selects the channel used for the last successful transmission Further work Heterogeneous channel rates If all the data channel are 54Mbps and the control channel is 1Mbps, then the control channel may become congested Simulations 100 nodes 300 seconds, 50 repetition Throughput Fairness Strict sense General sense Transfer delay Chain topology Grid topology Random topology Sparse (500*500) Dense (250*250) Environmental parameters Data packet size: Ld Control packet size: Lc Maximum number of channels should not exceed Ld/3Lc Ex: 1000/3*64 Throughput in chain topology Collisions in chain topology Throughput in grid topology Throughput in sparse random topology Throughput in dense random topology Fairness Strict sense Similar path and competition General sense Share the same channels regardless of their local contention Jain’s Fairness Index (FI) Strict sense fairness General sense fairness in grid topology General sense fairness in sparse random topology General sense fairness in dense random topology Web transfer time Web transfer time (cont.) Conclusions The Bi-MCMAC protocol is explicitly designed to improve TCP performance over a static multihop wireless ad hoc network Bi-MCMAC extends IEEE 802.11 RTS/CTS handshake to do bidirectional channel reservations Conclusions (cont.) Subsequent data frame resolves the TCP DATA-ACK problem Simulations show that Throughput improved Lower transfer delay Good fairness Its unfairness in the single-cell case is a minor disadvantage Thank you !