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 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 Page 2 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 Page 3 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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) o MACA FAMA-NCS (NCS non-persistent carrier sensing) o Sensing carrier before sending RTS • If clear, sends RTS • Otherwise, waiting a random time, sensing carrier again o CTS is more larger than RTS Page 4 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 C Page 5 Spring 2012 A B CS 752/852 - Wireless Networking and Mobile Computing 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 Page 6 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 Page 7 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Finite State Machine of DBTMA Page 8 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 Page 9 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 Page 10 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Time Diagram of DBTMA BTt of A A B tmw RTS RTS DATA DATA BTr of B RTS C τ t mw Mandatory waiting time Page 11 2 maximum propagatio n delay between th e transmitt er and receiver 2 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 μs Page 12 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Impact of Busy Tone Detection Delay BTt of A A B tmw RTS RTS DATA DATA BTr of B C τ Busy Tone Detection Delay Page 13 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Performance Analysis (single broadcast domain case) • Assumptions: • A lot of nodes and all nodes are in the same broadcast DATA Packet Transmissi on time domain • No channel fading, capture effect • Packet collisions are the only reason for packet errors RTS transmiss ion time Maximum one way propagatio n delay τ Busy tone detection delay t d Mandatory waiting time t wm 2 All nodes collective ly generate a Poisson tr affic with mean rate Probabilit y of successful RTS transmiss ion Ps e ( t d ) A successful transmiss ion period t d 6 • Data processing time and transmit/receive turn around Average failed busy period Tf 0.5t d time are negligible Ps • Bandwidth consumption of busy tones is negligible compared with data channel Page 14 Spring 2012 Channel throughpu t Ps ( t d 6 ) (1 Ps )T f 1 / CS 752/852 - Wireless Networking and Mobile Computing Channel Throughput (ad-hoc network) Capacity = 1 Mbps Data packet = 4096 b RTS = 200 b Radio transmission range = 2 km Propagation delay = 6.7 μs Page 15 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 μs Page 16 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 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 μs Page 17 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Network Utilization of DBTMA in Multi-Hop Networks 50 nodes in 400 by 400 m^2 FAMA-NCS 2.4 RI-BTMA 4.8 Radio transmission range = 100 RTS size = 200 b MACA 2.2 Modified DBTMA 4.2 Packet size = 4096 b Capacity = 1 Mbps μs Propagation delay = 0.33 Packet arrival at each node is Poisson distributed DBTMA 5.7 Page 18 Spring 2012 Each node randomly selects a neighbor as the destination of each packet CS 752/852 - Wireless Networking and Mobile Computing 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 19 Page 19 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Towards Collision Detection in Wireless Networks* (Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, Srihari Nelakuditi) * Slides adapted from Souvik Sen Page 20 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Collision in Wireless Networks T1 R t0 T2 t1 Collision time ACK Timeout Retransmit Page 21 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 2 Collision in Wireless Networks T1 R t0 T2 t1 Collision time ACK Timeout Not Efficient! Retransmit T1 should have stopped right after collision Page 22 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 2 Collision in Wired Networks T1 R T2 Collision Ethernet BUS Transmitter aborts transmission on collision ✦ Transmitter senses the signal while transmitting ✦ If (sensed != transmitted), abort Collision Detection (CSMA/CD) Page 23 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 2 Is CSMA/CD Beneficial in Wireless? Dont Transmit! Collision Detected T2 T3 T1 R2 Page 24 R1 Spring 2012 Collision R3 CS 752/852 - Wireless Networking and Mobile Computing 2 Is CSMA/CD Beneficial in Wireless? Dont Transmit! Collision Abort Tx! Detected T2 T3 T1 R2 Page 25 R1 Spring 2012 Collision R3 CS 752/852 - Wireless Networking and Mobile Computing 2 Is CSMA/CD in Wireless Beneficial? Channel free now Collision Detected T2 T3 T1 R2 Page 26 R1 Spring 2012 R3 CS 752/852 - Wireless Networking and Mobile Computing 2 Is CSMA/CD in Wireless Beneficial? Lets Transmit! Collision Detected T2 T3 T1 R2 R1 R3 CSMA/CD frees the channel for other transmissions Page 27 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 2 Can we imitate CSMA/CD on Wireless? Page 28 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Practical Requirements? 1. Transmitter cannot detect collision • Receiver needs to detect it Collision! Rx Tx Page 29 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 2 Practical Requirements? 1. Transmitter cannot detect collision • Receiver needs to detect it 2. Receiver needs to convey • collision notification to the transmitter Collision! Rx Tx Page 30 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 3 Practical Requirements? 1. Transmitter cannot detect collision • Receiver needs to detect it 2. Receiver needs to convey • collision notification to the transmitter 3. Transmitter needs an additional antenna • To receive notification Collision! Rx Tx Page 31 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 3 Overview If Collision, Notify Tx If Notification, Abort Tx S=S1 Notify Collision (S2) PHY Tx Page 32 MAC PHY Data Transmission (S1) Spring 2012 CrossLayer CrossLayer MAC Rx CS 752/852 - Wireless Networking and Mobile Computing 3 Overview If Collision, Notify Tx If Notification, Abort Tx S=S1+S2 S=S1 Notify Collision (S2) PHY Tx Page 33 MAC PHY Data Transmission (S1) Spring 2012 CrossLayer CrossLayer MAC Rx CS 752/852 - Wireless Networking and Mobile Computing 3 Two Key Challenges 1. Find Notification on Listening Antenna 2. Detect Collision in real time If Collision, Notify Tx If Notification, Abort Tx S=S1+S2 Notify Collision (S2) PHY Tx Page 34 MAC PHY Data Transmission (S1) Spring 2012 CrossLayer CrossLayer MAC Rx CS 752/852 - Wireless Networking and Mobile Computing 3 1. Find Notification on Listening Antenna 2. Detect Collision in real time CSMA/CN key idea: Correlation Page 35 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Challenge 1: Detecting Notification • Hard to decode notification on same channel • Self-signal too strong MAC PHY • Let Tx and Rx share a unique signature • Tx correlates with shared signature • Detects collision notification, aborts Observe: No decoding, just correlate Page 36 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 3 Challenge 1: Detecting Notification Correlation Self Signal Notification Signature Page 37 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 3 Correlation Challenge 1: Detecting Notification Sample Number Whenever there is a notification, there is a jump in correlation Page 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 3 Collision Correlation, Notification, and Abort T2 T1 Data Data Sign(R1) R1 R Correlate (Sign(R1)) Page 39 Spring 2012 Sign(R2) R2 Collision CS 752/852 - Wireless Networking and Mobile Computing 3 Collision Correlation, Notification, and Abort Notification ! Stop Tx Corr (Sign(R1)) T1 T2 Sign(R1) Data Data Sign(R1) R1 R Correlate (Sign(R1)) Page 40 Spring 2012 Sign(R2) R2 Collision CS 752/852 - Wireless Networking and Mobile Computing 4 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 Page 41 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 MAC Notification Detection at Tx PHY Notification Signal << Self Signal How weak can the notification signal be? Page 42 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 How weak the notification signal be? }✔ 18 dB Signal power Self Signal Page 43 Spring 2012 Notification Signal CS 752/852 - Wireless Networking and Mobile Computing 4 How weak the notification signal be? } ✘ Signal power Self Signal Page 44 18 dB Spring 2012 Notification Signal CS 752/852 - Wireless Networking and Mobile Computing 4 MAC Interference Detection at Rx PHY • Interference detection accuracy of 93% • Receiver should detect interference quickly • Quicker detection Page 45 Spring 2012 Faster Tx abortion CS 752/852 - Wireless Networking and Mobile Computing 4 Interference Detection: Speed Bytes after interferer started CSMA/CN predicts collision within 7 bytes Page 46 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 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 Page 47 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 Testbed Throughput PPR continues to transmit under collision, worse than CSMA/CN Page 48 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 Traced Based Evaluation 50% Throughput in Kbps Upto 50% gain in per link throughput Page 49 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 4 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 Page 50 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing 5 Questions Page 51 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing