350 likes | 512 Views
MAC-SCC : A M edium A ccess C ontrol Protocol with S eparate C ontrol C hannel for Multi-hop Wireless Networks. Yijun Li, Hongyi Wu, Nian-Feng Tzeng, Dmitri Perkins, and Magdy Bayoumi The Center for Advanced Computer Studies (CACS) University of Louisiana at Lafayette. Outline.
E N D
MAC-SCC: A Medium Access Control Protocolwith Separate Control Channel for Multi-hop Wireless Networks Yijun Li, Hongyi Wu, Nian-Feng Tzeng, Dmitri Perkins, and Magdy Bayoumi The Center for Advanced Computer Studies (CACS) University of Louisiana at Lafayette
Outline • Introduction • Motivation for this work • Proposed MAC-SCC • Experimental Results • Conclusions
Introduction • Infrastructure-based network • WLAN we are using • Based on Access Points (AP) • Ad-hoc network • Infrastructure is not possible or expensive • Military application, rescue, sensor network
Ad Hoc Network-(multi-hop) • Collection of self-configured nodes • Each node works as host and router Destination Source
Sliding Window Size = 4 bytes 0 1 2 3 [ 0 1 2 3 ] 4 5 6 7 8 9 4 5 0 1 [ 2 3 4 5 ] 6 7 8 9 2 3 4 5 0 1 [ 2 3 4 5 ] 6 7 8 9 Review of TCP/UDP TCP: ACK 2 Timeout Receiver Sender Sliding window = Min( receiver window, congestion window) Congestion Control • Slow start for congestion window size • Slow Start when timeouts. If timeout frequently happens, TCP throughput will be low. • Flow Control • Receiver buffer: not overloaded. • Advertises available buffer size in ACK UDP: • Whenever packet is ready, just send it • Potential congestion without any control • Unreliable without ACK.
Review of IP layer • TCP/UDP only consider sender and receiver. IP layer will take care of how to make it transparent in multi-hop network and instruct how packets can send/receive between sender and receiver. • Before a data packet from TCP/UDP can be sent from source to destination, a route from source node to destination should be discovered first. Two type of routing schemes Proactive routing scheme: • Periodically send hello messages to direct neighbors to maintain the topology information. • Two much control traffic. • Reactive routing scheme: • Whenever source node wants to send a data packet, it broadcasts route request packets to whole network until destination is founded • Destination node sends back a route reply packet. • The route information will be contained in the packet header. • Need a long delay to find a route.
MAC/PHY Layer • MAC layer will try to avoid the collision of access to the wireless media • PHY layer will transmit and receive bit-stream. From hardware view, base-band processing and frond-end transceiver • 802.11x MAC • 802.11: infrastructure-based and peer-to-peer (ad-hoc) • 802.11e:MAC Enhancements for QoS to improve QoS for better support of audio and video (such as MPEG-2) applications. • 802.11i: Medium Access Method (MAC) Security Enhancements: enhance security and authentication mechanisms. • 802.11x PHY • 802.11: 2Mbps (Proposed in 1997) • 802.11b: 1, 2, 5.5 and 11 Mbps, 100mts. range (product released in 1999, no product for 1 or 2 Mbps) • 802.11g: 54Mbps, 100mts. range (uses OFDM; product expected in 2003) • 802.11a: 6 to 54 Mbps, 50mts. range (uses OFDM) • 802.11n: MIMO, LDPC and OFDM in PHY to increase data-rate more than 100Mb
Main problems for MAC design • Hidden station: outside sender’s transmission range and in the receiver’s transmission range. It will disturb sender’s transmission if it transmits, due to it cannot detect the sender’s transmission. A B C D • Exposed Station: in the sender’s transmission range, but it misunderstand that it can’ttransmit a packet A B C D
CTS RTS RTS/CTS scheme for MAC in 802.11x Send RTS, Reply with CTS • Red machines receive RTS/CTS, get the period they should keep silent. This period is NAV.
DATA ACK RTS/CTS scheme for MAC in 802.11x Send Data, Reply with ACK After RTS/CTS reservation, red machines will keep silent until the current data transmission is finished. If red machines have packets to send during reservation, they have to back-off sometime after media is free to access
Questions? Is 802.11 MAC perfect? NO
Channel efficiency NAV Problem 1 in 802.11 MAC
Link failure & instability in TCP • Collision in node C • Several retries failed, report a link failure to IP layer, then have to find a new route Problem 2 in 802.11 MAC
Interfering Range of Node 5 Data RTS Data 2 3 4 5 6 Ack No Route CTS Interfering Range of Node 4 Unfairness in TCP • In two-hop session, only communication between 4 and 5 can affect one-hop session. • In one-hop TCP session, the available interval between packet transmission is larger than that of the two-hop TCP session, which gives the one-hop session more chances to transmit data. • Also, random back-off actually favors the last succeeding transmission. • As the results, one-hop session will occupy the entire wireless medium due to “its unauthorized priority” Problem 4 in 802.11 MAC
Our proposed MAC-SCC • The available bandwidth is partitioned into two channels: a data channel and a control channel, each associated with a network allocation vector (NAV). • The station transmits or receives on one channel only at any given time. • During the current data transmission, the next data frame can be pre-scheduled via the separate control channel, and thus reducing the frame collision probability and the bandwidth wasted during back-off. • Moreover, the use of the separate control channel helps to achieve fair medium access and solve the instability problem resulted from frequent link failures. • The optimal bandwidth partitioning between the two channels is analyzed via a statistical model
MAC-SCC protocol • CH A– Data channel, CH B – Control channel • S and D (enhanced RTS/CTS handshake) • If CH A, CH B are idle, send RTS on CH A. If CH B is idle only, send RTS on CH B. Otherwise, back-off. • When RTS/CTS handshake occurs in CH B, send SRTS/SCTS on CH A to reconfirm the reservation • D receives RTS/SRTS, replies with CTS/SCTS, respectively • After handshake, S sends DATA, D replies with ACK. • Other nodes • contains NAVa, NAVb for CH A, CH B respectively. • Update NAVa, NAVb • When NAVa = 0, convert NAVb into NAVa, release CH B
Example of MAC-SCC No back-off here DIFS Pre-schedule the next data transmission during the current data transmission
Simplify hardware design scheduling channel usage • Two NAVs for two channels • Listen to two channels, but only allow transmitting or receiving at one channel at the same time
Issues in MAC-SCC • How to partition two channels? • What is system throughput? • How about control packets overhead and link failure? • How MAC-SCC affect TCP/UDP performance? • Fairness in TCP • UDP system throughput • Two different ways to evaluate MAC-SCC • Stand-alone simulation in Parsec • Whole protocol stack simulation in Qualnet
Analytical Bandwidth partitioning Assume RTS arrival is Poisson distributed with rate Optimal D is 10
Simulation Setup • The traffic load (G) is defined to be the number of frames per frame time • The bigger G, the more packets to send
Stand-alone Simulations • PARSEC: A Parallel Simulation Environment for Complex systems • Parsec is an parallel programming language based on C. • We write PARSEC code to simulate and compare the MAC-SCC protocol and 802.11 • System throughput, link failure probability, and optimal bandwidth partitioning are studied
Bandwidth Partitioning • D = Bandwidth of data channel / Bandwidth of control channel • D >> 10, control channel bottleneck • D << 10, data channel bottleneck • Optimal D is 10 and verifies the analytic results
Throughput Comparison in Parsec MAC-SCC keep flat in high traffic load In high traffic load, MAC-SCC works much better than 802.11 Gain is up to 60%
Link failure probability Less failure in MAC-SCC MAC-SCC always has lower link failure probability due to scheduling packet
Comprehensive Simulations • Qualnet is a commercial simulator from www.scalable-network.com • It contain whole protocol stack • Deployed FTP sessions in application layer to study TCP fairness • Deployed VBR in application layer to study bandwidth partitioning under non-Poisson distributed traffic • Used UDP to study system throughput in high traffic load
Fairness in two TCP sessions Similar • String topology, session 1 is one hop, session 2 is 1, 2, 3, or 4 hops • MAC-SCC get the similar throughput with the ideal case • MAC-SCC total system throughput is a little bit lower, due to TCP congestion control no high traffic load
Fairness in Multiple TCP Sessions Node Topology • Study TCP fairness in more than 2 TCP sessions (3, 4, and 8 TCP sessions) • Regular positioning to remove the effect from node positions
Three TCP sessions 802.11 MAC-SCC give fairness to node 5 MAC-SCC X-axis is nodeID, Y-axis is system throughput Node 2, 3 are one hop session Node 5 is two hop seesion
Four TCP sessions 802.11 MAC-SCC Node 2, 6 are one hop session Node 3, 8 are two hop seesion
Eight TCP Sessions 802.11 MAC-SCC Node 2, 6, 11, 13 are one hop session Node 3,8,13,15 is two hop seesion
Bandwidth Partitioning in VBR traffic • We deployed VBR in application layers to study bandwidth partitioning in non-Poisson distribution with different traffic loads • D is between 8 and 12
System throughput in high traffic load • Scalar is used to control traffic load • UDP is used for constructing high traffic load
Conclusion • We have proposed a novel Medium Access Control protocol with a Separate Control Channel (MAC-SCC). • To reduce hardware complexity, the station transmits or receives on one channel only at any given time. • The performance of MAC-SCC is quantified via extensive simulations in both a stand-alone simulator developed by using PARSEC and a comprehensive network simulator called QualNet with whole protocol stack. • Our results show that MAC-SCC can effectively reduce the link failure probability, reduce control packet overhead and transmission power, achieve fair medium access when running multiple TCP sessions, and yield a throughput gain up to 60% under high traffic load, when compared with the basic RTS/CTS scheme.