510 likes | 655 Views
Wireless Networking & Mobile Computing CS 752/852 - Spring 2012. Lec #5: Advanced MAC Schemes Dual Busy Tone & Collision Notification. Tamer Nadeem Dept. of Computer Science.
E N D
Wireless Networking & Mobile ComputingCS 752/852 - Spring 2012 Lec #5: Advanced MAC SchemesDual Busy Tone & Collision Notification Tamer Nadeem • Dept. of Computer Science
Dual Busy Tone Multiple Access (DBTMA) : A Multiple Access Control Scheme for Ad Hoc Networks *(Z. Haas and J. Deng) • This paper completely solves hidden and exposed terminal problems * Slides adapted from Z. Haas
Key Idea & Goals & Main Results • Key idea: • Continuously protect data packet transmission • Use out-band channels to distribute information • Goals • Solve hidden & exposed terminal problems • Main Results • DBTMA: two out-of-band busy tones & RTS • Completely solve hidden & exposed terminal problems
Related Works • BTMA (Busy Tone Multiple Access, F. A. Tobagi & L. Kleinrock 1975): • Using two channels: data channel & control channel • A control center - basestation • When base station senses the transmission of a terminal, it broadcasts a busy tone signal to all terminals, keeping them (except the current transmitter) from accessing the channel • RI-BTMA (Receiver-Initiated Busy Tone Multiple Access, C. Wu & V. O. K. Li 1987) • Time is slotted (similar to slotted ALOHA & need time clock synchronization) • A packet preamble is sent to intended receiver by the transmitter • Receiver sets up an out-of-band busy tone and waits for the data • When sensing busy tone, transmitter sends the data packet • FAMA (Floor Acquisition Multiple Access, C. L. Fuller & J.J Garecia-Luna-Aceves 1995) • FAMA-NPC (NPC = on-persistent packet sensing) • MACA • FAMA-NCS (NCS non-persistent carrier sensing) • Sensing carrier before sending RTS • If clear, sends RTS • Otherwise, waiting a random time, sensing carrier again • CTS is more larger than RTS
RTS RTS DATA B DATA C A RTS DBTMA • Two narrow-bandwidth tones • BTt (Transmitter Busy Tone) • Set up by the node which has data to send • Stop when completing transmitting RTS • BTr (Receiver Busy Tone) • Set up by the node which receives RTS • Stop when completely receives the data packet • All nodes sensing any busy tone are not allowed to send RTS • Any node sensing no busy tone is allowed to transmit
Functionalities of Busy Tones • BTr (set up by receiver) • Notifying the RTS sender that RTS has been received and channel has been acquired • Announcing to its neighbor nodes that it is receiving data packet and they should refrain from accessing the channel • BTt (set up by sender) • Providing protection for the RTS packet
Seven DBTMA Operation States • IDLE • Node with on packets to send stays in IDLE state • CONTEND • Node has data to send but it is not allowed to send RTS, it stays in CONTEND state • S_RTS • Node sending RTS is in S_RTS state • S_DATA • Node sending data is in S_DATA state • WF_BTR • RTS packet sender waiting for the ACK from its intended receiver is in WF_BTR state • WF_DATA • Receiver waiting for DATA is in WF_DATA state • WAIT • Node send out RTS and senses BTr and waits a mandatory time, it is WAIT state
More Details for DBTMA • When A has data to send • Senses BTt and BTr • If both are clear • Turns on BTt • Sends out RTS and enters S_RTS state • Turns off BTt at the end of RTS transmission and gets out S_RTS state • Sets a timer for expected BTr and enters WF_BTR state • If BTr is sensed, enters WAIT state and waits for tmw, then enters S_DATA state and sends data packet • Otherwise, timer goes to zero, A goes to IDLE state • Enters IDLE state • Otherwise • Sets a random timer and goes to CONTENT state • If BTt or BTr is still sensed when timer goes to zero, A goes to IDLE state • Otherwise, A turns on BTt and enters S_RTS state and sends out RTS if no any busy tone signal is sensed
More Details for DBTMA • When B receives RTS, B turns on BTr and sets a timer for expected data packet and enters WF_DATA state • If B has not received data packet before timer goes to zero B turns off BTr and goes to IDLE state • Otherwise, B receives data packet and turns off its BTr when completely getting the data packet • When BTr sensed by any Other Node which is in S_RTS state, the node aborts it RTS and goes to IDLE state
BTt of A tmw A DATA RTS B RTS DATA BTr of B RTS Time Diagram of DBTMA C
Channel Throughputs of DBTMA(Single Broadcast Region) Capacity = 1 Mbps Data packet = 4096 b RTS = 200 b 20 nodes in 50 by 50 m^2 Radio transmission range = 35m Maximum propagation delay = 0.12
Impact of Busy Tone Detection Delay BTt of A tmw A DATA RTS B RTS DATA BTr of B C Busy Tone Detection Delay
Performance Analysis (single broadcast domain case) • Assumptions: • A lot of nodes and all nodes are in the same broadcast domain • No channel fading, capture effect • Packet collisions are the only reason for packet errors • Data processing time and transmit/receive turn around time are negligible • Bandwidth consumption of busy tones is negligible compared with data channel
Channel Throughput (ad-hoc network) Capacity = 1 Mbps Data packet = 4096 b RTS = 200 b Radio transmission range = 2 km Propagation delay = 6.7
Comparisons of Channel Throughput Capacity = 256 kbps Data packet = 4096 b RTS = 200 b Each node are 6 km from each other Propagation delay = 20
Comparison of Different Length of Control Packet Full connected network Every node randomly choose its destination for each generated data packet Capacity = 1 Mbps Data packet size =4096 b 20 nodes in 50 by 50 m^2 Radio transmission range = 35 m Propagation delay = 0.12
Network Utilization of DBTMA in Multi-Hop Networks 50 nodes in 400 by 400 m^2 Radio transmission range = 100 m RTS size = 200 b Packet size = 4096 b Capacity = 1 Mbps Propagation delay = 0.33 Packet arrival at each node is Poisson distributed Each node randomly selects a neighbor as the destination of each packet RI-BTMA 4.8 FAMA-NCS 2.4 Modified DBTMA 4.2 MACA 2.2 DBTMA 5.7
Summary • DBTMA does solve hidden & exposed terminal problems • DBTMA is based on the idea presented in RI-BTMA • Some idea • Using some kind of out-of-band control channel to propagate some info to achieve some performance targets
Towards Collision Detection in Wireless Networks*(SouvikSen, Naveen Santhapuri, RomitRoy Choudhury, SrihariNelakuditi) * Slides adapted from SouvikSen
ACK Timeout t0 Collision t1 Retransmit time Collision in Wireless Networks T1 R T2
ACK Timeout Collision Collision in Wireless Networks T1 R T2 t0 t1 time Not Efficient! Retransmit T1 should have stopped right after collision
T1 R T2 Collision Ethernet BUS Collision in Wired Networks • Transmitter aborts transmission on collision • Transmitter senses the signal while transmitting • If (sensed != transmitted), abort Collision Detection (CSMA/CD)
Dont Transmit! Collision Detected Collision Is CSMA/CD Beneficial in Wireless? T2 T3 T1 R2 R1 R3
Dont Transmit! Abort Tx! Collision Is CSMA/CD Beneficial in Wireless? Collision Detected T2 T3 T1 R2 R1 R3
Channel free now Is CSMA/CD in Wireless Beneficial? Collision Detected T2 T3 T1 R2 R1 R3
Lets Transmit! Is CSMA/CD in Wireless Beneficial? Collision Detected T2 T3 T1 R2 R1 R3 CSMA/CD frees the channel for other transmissions
Collision! Rx Tx Practical Requirements? • Transmitter cannot detect collision • Receiver needs to detect it
Collision! Rx Tx Practical Requirements? • Transmitter cannot detect collision • Receiver needs to detect it • Receiver needs to convey • collision notification to the transmitter
Collision! Rx Tx Practical Requirements? • Transmitter cannot detect collision • Receiver needs to detect it • Receiver needs to convey • collision notification to the transmitter • Transmitter needs an additional antenna • To receive notification
Notify Collision (S2) If Notification, Abort Tx PHY PHY MAC MAC If Collision, Notify Tx Data Transmission (S1) Overview S=S1 CrossLayer CrossLayer Tx Rx
Notify Collision (S2) If Notification, Abort Tx PHY PHY MAC MAC If Collision, Notify Tx Data Transmission (S1) Overview S=S1+S2 S=S1 CrossLayer CrossLayer Tx Rx
Notify Collision (S2) If Notification, Abort Tx PHY PHY MAC MAC If Collision, Notify Tx Data Transmission (S1) Two Key Challenges 1. Find Notification on Listening Antenna 2. Detect Collision in real time S=S1+S2 CrossLayer CrossLayer Tx Rx
1. Find Notification on Listening Antenna 2. Detect Collision in real time CSMA/CN key idea: Correlation
PHY MAC Challenge 1: Detecting Notification • Hard to decode notification on same channel • Self-signal too strong • Let Tx and Rx share a unique signature • Tx correlates with shared signature • Detects collision notification, aborts Observe: No decoding, just correlate
Challenge 1: Detecting Notification Correlation Self Signal Notification Signature
Challenge 1: Detecting Notification Correlation Sample Number Whenever there is a notification, there is a jump in correlation
Data Collision Data Sign(R1) Sign(R2) Collision Correlation, Notification, and Abort T2 T1 R2 R R1 Correlate (Sign(R1))
Sign(R1) Data Collision Notification! Stop Tx Data Sign(R1) Sign(R2) Collision Correlation, Notification, and Abort T2 Corr (Sign(R1)) T1 R2 R R1 Correlate (Sign(R1))
Performance Evaluation • 7 node USRP testbed • Zigbee CC2420 PHY • Max data rate: 250Kbps • Signature size: 5 bytes • Compare with 802.11-like and PPR • PPR detects interfered portion of received packet • Transmitter sends only the interfered portion
PHY MAC Notification Detection at Tx Notification Signal << Self Signal How weak can the notification signal be?
} 18 dB ✔ How weak the notification signal be? Signal power Self Signal Notification Signal
} 18 dB How weak the notification signal be? Signal power ✘ Self Signal Notification Signal
PHY MAC Interference Detection at Rx • Interference detection accuracy of 93% • Receiver should detect interference quickly • Quicker detection Faster Tx abortion
Interference Detection: Speed Bytes after interferer started CSMA/CN predicts collision within 7 bytes
Testbed Experimentation • One link doing CSMA/CN • CSMA/CN link has an exposed and hidden terminal • Whenever CSMA/CN link fails due to interference • CSMA/CN link stops • Exposed terminal transmits reducing channel wastage
Testbed Throughput PPR continues to transmit under collision, worse than CSMA/CN
Traced Based Evaluation 50% Throughput in Kbps Upto 50% gain in per link throughput
Summary • CSMA/CN imitates CSMA/CD in wireless • Rx uses correlation to detect interference • Tx uses correlation to detect notification • Others can utilize freed-up channel