ECE 256, Spring 2008 Multi-Channel MAC for Ad Hoc Networks: Handling Multi-Channel Hidden Terminals Using A Single Transceiver Jungmin So & Nitin Vaidya University of Illinois at Urbana-Champaign (Paper presented at ACM MobiHoc ‘04) Presenter: Rahul Ghosh, ECE Dept., Duke University
Acknowledgments ECE 256 / CS 215, Spring 2008 Slides courtesy: Jungmin So and Nitin Vaidya
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
Motivation ECE 256 / CS 215, Spring 2008 ‘Exploit multiple channels to improve network throughput’ … why ? More number of parallel communications possible Standard supports … b – 14 channels in PHY layer – 3 of them are used a – 12 channels – 8 in the lower part of the spectra and rest in higher 1 defer 1 2
Problem Statement ECE 256 / CS 215, Spring 2008 The ideal scenario – use k channels to improve throughput by a factor of k Reality is different… Nodes on listening to different channels can not talk to each other Listen one channel at a time – constraint with single transciever Goal: Exploit multiple channels using a single transciever Requires modification of coordination schemes among the nodes 1 2
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
Preliminaries ECE 256 / CS 215, Spring DCF (Distributed Coordinate Function) Designed for sharing a single channel between the hosts Virtual Carrier Sensing- Sender sends Ready-To-Send (RTS) Receiver sends Clear-To-Send (CTS) RTS and CTS reserves the area around sender and receiver for the duration of dialogue Nodes that overhear RTS and CTS defer transmissions by setting Network Allocation Vector (NAV)
DCF ECE 256 / CS 215, Spring 2008 ABCD A B C D Time
DCF ECE 256 / CS 215, Spring 2008 ABCD RTS A B C D Time
DCF ECE 256 / CS 215, Spring 2008 ABCD CTS A B C D RTS CTS SIFS NAV Time
DCF ECE 256 / CS 215, Spring 2008 A B C D ABCD RTS CTS DATA SIFS NAV Time DATA
DCF ECE 256 / CS 215, Spring 2008 A B C D ABCD RTS CTS DATA SIFS ACK NAV Time ACK
Preliminaries ECE 256 / CS 215, Spring PSM (Power Saving Mode) Doze mode – less energy consumption but no communication ATIM – Ad hoc Traffic Indication Message A B C Time Beacon ATIM Window Beacon Interval
Preliminaries ECE 256 / CS 215, Spring 2008 A B C Time Beacon ATIM ATIM Window Beacon Interval
Preliminaries ECE 256 / CS 215, Spring 2008 A B C Time Beacon ATIM ATIM-ACK ATIM Window Beacon Interval
Preliminaries ECE 256 / CS 215, Spring 2008 A B C Time Beacon ATIM ATIM-ACK ATIM-RES ATIM Window Beacon Interval
Preliminaries ECE 256 / CS 215, Spring 2008 A B C Time Beacon ATIM ATIM-ACK DATAATIM-RES Doze Mode ATIM Window Beacon Interval
Preliminaries ECE 256 / CS 215, Spring 2008 A B C Time Beacon ATIM ATIM-ACK DATA ACK ATIM-RES Doze Mode ATIM Window Beacon Interval
In essence … ECE 256 / CS 215, Spring 2008 All nodes wake up at the beginning of a beacon interval for a fixed duration of time (ATIM window) Exchange ATIM during ATIM window Nodes that receive ATIM message stay up during for the whole beacon interval Nodes that do not receive ATIM message may go into doze mode after ATIM window
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
Multi-channel Hidden Terminals ECE 256 / CS 215, Spring 2008
Multi-channel Hidden Terminals ECE 256 / CS 215, Spring 2008 Observations 1.Nodes may listen to different channels 2.Virtual Carrier Sensing becomes difficult 3.The problem was absent for single channel Possible approaches 1.Exploit synchronization technique available from IEEE PSM 2.Use multiple transcievers
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
Related Works ECE 256 / CS 215, Spring 2008 Nasipuri et. al proposed for a scheme with N transceivers per host Capable of listening all channels simultaneously Find an idle channel and transmit – sender’s policy Channel selection should be based on channel condition on receiver side Cost becomes higher
Related Works ECE 256 / CS 215, Spring 2008 Wu et. al talks about a scheme with 2 transceivers per host 1.RTS/CTS/RES packets sent on control channel 2.Sender includes PCL list in RTS, receiver picks one and tells in CTS 3.Sender transmits RES and sends data on agreed channel No synch is required Per packet channel switching can be expensive Control channel’s BW becomes an issue
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
MMAC ECE 256 / CS 215, Spring 2008 Assumptions -All channels have same BW and none of them are overlapping channels -Nodes have only one transceiver -Transceivers are capable of switching channels but they are half-duplex -Channel switching delay is approx 250 us, avoid per packet switching -Multi-hop synch is achieved by other means
MMAC ECE 256 / CS 215, Spring 2008 Steps – - Divide time into beacon intervals -At the beginning, nodes listen to a pre-defined channel for ATIM window duration -Channel negotiation starts using ATIM messages -Nodes switch to the agreed upon channel after the ATIM window duration
MMAC ECE 256 / CS 215, Spring 2008 Preferred Channel List (PCL) -For a node, PCL records usage of channels inside Tx range -HIGH preference – always selected -MID preference – others in the vicinity did not select the channel -LOW preference – others in the vicinity selected the channel
MMAC ECE 256 / CS 215, Spring 2008 Channel Negotiation -Sender transmits ATIM to the receiver and includes its PCL in the ATIM packet -Receiver selects a channel based on sender’s PCL and its own PCL -Receiver sends ATIM-ACK to sender including the selected channel -Sender sends ATIM-RES to notify its neighbors of the selected channel
MMAC ECE 256 / CS 215, Spring 2008 A B C D Time ATIM Window Beacon Interval Common ChannelSelected Channel Beacon
MMAC ECE 256 / CS 215, Spring 2008 A B C D ATIM ATIM- ACK(1) ATIM- RES(1) Time ATIM Window Common ChannelSelected Channel Beacon
MMAC ECE 256 / CS 215, Spring 2008 A B C D ATIM ATIM- ACK(1) ATIM- RES(1) ATIM- ACK(2) ATIM ATIM- RES(2) Time ATIM Window Common ChannelSelected Channel Beacon
MMAC ECE 256 / CS 215, Spring 2008 ATIM ATIM- ACK(1) ATIM- RES(1) ATIM- ACK(2) ATIM ATIM- RES(2) Time ATIM Window Beacon Interval Common ChannelSelected Channel Beacon RTS CTS RTS CTS DATA ACK DATA Channel 1 Channel 2
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
Parameters ECE 256 / CS 215, Spring 2008 Transmission rate: 2Mbps Transmission range: 250m Traffic type: Constant Bit Rate (CBR) Beacon interval: 100ms Packet size: 512 bytes ATIM window size: 20ms Default number of channels: 3 channels Compared protocols : IEEE single channel protocol DCA: Wu’s protocol MMAC: Proposed protocol
WLAN - Throughput ECE 256 / CS 215, Spring 2008
Multihop Network - Throughput ECE 256 / CS 215, Spring 2008
Analysis ECE 256 / CS 215, Spring For DCA: BW of control channel significantly affects the performance and it’s difficult to adapt control channel BW -For MMAC: 1.ATIM window size significantly affects performance 2.ATIM/ATIM-ACK/ATIM-RES exchanged once per flow per beacon interval – reduced overhead 3.ATIM window size can be adapted to traffic load
Topics ECE 256 / CS 215, Spring 2008 Introduction Motivation Problem Statement Preliminaries DCF structure PSM mode Issues in multi-channel environment Other works in multi-channel MAC Proposed MMAC Simulation results Discussions
ECE 256 / CS 215, Spring MMAC requires a single transceiver per host to work in multi-channel ad hoc networks -MMAC achieves throughput performance comparable to a protocol that requires multiple transceivers per host -Beaconing mechanism may fail to synchronize in a multi-hop network – probabilistic beaconing may help -Instead of counting source-destination pair for calculating channel usage, counting the number of pending packets may be a better idea -Starvation can occur with common source and multiple destinations
Two Questions ECE 256 / CS 215, Spring While criticizing Wu’s protocol – control channel ‘prevents the data channel from being fully utilized’ … why ? -Source and Destinations may not be in one hop distance and may not be communicated within a beacon interval