CS434/534: Topics in Networked (Networking) Systems Wireless Foundation: Wireless Mesh Networks Yang (Richard) Yang Computer Science Department Yale University 08A Watson Email: yry@cs.yale.edu http://zoo.cs.yale.edu/classes/cs434/
Outline Recap Wireless background Frequency domain Modulation and demodulation Wireless channels Wireless PHY design Wireless MAC design (one hop) wireless access problem and taxonomy wireless resource partitioning dimensions media access protocols From single-hop MAC to multi-hop mesh wireless mesh network capacity maximize mesh capacity
Admin. PS questions Project first check point Due Thursday after break 3
Recap: The Hidden Terminal Problem E D A A is sending to B, but C cannot detect the transmission Therefore C sends to B In summary, A is hidden from C B C 4
Recap: 80. RTS-CTS-data-ACK sender DIFS RTS data 0 usec receiver SIFS CTS SIFS SIFS ACK other stations NAV (RTS) NAV (CTS) defer access DIFS new contention data t 5
Recap: 80. CSMA/CA busy B = 5 wait B = 5 data B = 0 busy data B = 5 wait B = 0 cw = 3 B and B are backoff intervals at nodes and 6
Recap: PIFS point coordinator polled wireless stations NAV medium busy PIFS D SIFS SIFS U NAV contention free period D contention period t D: downstream poll, or data from point coordinator U: data from polled wireless station 7
Recap: Wireless Link Access Control Problem: single shared medium, hence if two transmissions overlap on all dimensions [time, space, frequency, and code], then it is a collision +CS+CD+EB Slotted ALOHA Zigzag decoding Ethernet +CA +ACK + RTS/CTS Hidden-terminal Collision detection/ prevention 8
Recap: ZigZag Decoding Exploits 80. s behavior Retransmissions àsame packets collide again Senders use random jitters à Collisions start with interference-free bits P a P a P b P b Interference-free Bits
ZigZag Algorithm while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 3 4 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 5 4 4 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 5 5 4 6 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 5 7 6 4 6 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision
How Does ZigZag Work? 3 5 7 7 4 6 8 while (exists a chunk that is interference-free in one collision and has interference in the other) { } decode and subtract from the other collision Delivered packets in timeslots As efficient as if the packets did not collide
Outline Admin. and recap Media access control Slotted Aloha Hidden terminal Example: 80. Hidden terminal with 80. revisited Overall idea Technical issues Collision detection 8
Collision Detection: How does the AP know it is a Collision and Where the Second Packet Starts? Time 9
Detecting Collisions and the Value of AP received signal Correlate Packets start with known preamble Time AP correlates known preamble with signal Correlation Time
Matching Collision P a P b P a P b Question to think offline: Given (P + P(D)) and (P, P (D )), how to determine that P = P and P = P
Outline Admin. and recap Media access control Slotted Aloha Hidden terminal Example: 80. Hidden terminal with 80. revisited Overall idea Technical issues Collision detection Subtracting chunks
How Does the AP Subtract the Signal? Channel s attenuation or phase may change between collisions Can t simply subtract a chunk across collisions Alice s signal in first collision Alice s signal in second collision
Subtracting a Chunk Decode chunk into bits Removes effects of channel during first collision Re-modulate bits to get channel-free signal Apply effect of channel during second collision Use correlation to estimate channel despite interference
What if AP Makes a Mistake?
What if AP Makes a Mistake? Bad News: Errors can propagate 3 Can we deal with these errors?
What if AP Makes a Mistake? Good News: Temporal Diversity A bit is unlikely to be affected by noise in both collisions Get two independent decodings
AP Decodes Backwards as well as Forwards 3 Errors propagate differently in the two decodings Which decoded value should the AP pick? For each bit, AP picks the decoding that has a higher PHY confidence
Outline Admin. and recap Media access control Slotted Aloha Hidden terminal Example: 80. Hidden terminal with 80. revisited Overall idea Technical issues Collision detection Subtracting chunks Deployment 9
Acknowledgement Use as much synchronous acknowledgement as possible for backward compatibility
Implementation USRP Hardware GNURadio software Carrier Freq:.4-.48GHz BPSK modulation
Testbed USRPs 80.a 0% HT, 0% partial HT, 80% perfectly sense each other
Throughput Comparison CDF of concurrent flow pairs 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0. 0. 0 Perfectly Sense Partial Hidden Hidden Terminals Terminals Throughput 80. 0 0.5.5
Throughput Comparison CDF of concurrent flow pairs 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0. 0. 0 Hidden Terminals get high throughput Throughput ZigZag 80. 0 0.5.5 ZigZag Exploits Capture Effect
Capture Effect Subtract Alice and combine Bob s packet across collisions to correct errors P a P b P a P b 3 packets in time slots à better than no collisions
Summary Basic lesson: Traditional thinking was on avoiding collisions Zigzag changed the way of thinking: decoding collisions Many extensions of the Zigzag idea: decoding collisions, instead of avoiding collisions See Remap in Backup Slides A good area for creative thinking 36
Infrastructure Mode Wireless 80. by default operates in infrastructure mode. AP: Access Point AP wired network AP AP Problems of infrastructure mode wireless networks? 37
Mesh Networks AP: Access Point AP wired network AP ad-hoc (mesh) mode AP Benefits fast and low-cost deployment no central point of failure no APs overhead for users who can reach each other Issues? 38
Outline Recap Wireless background Frequency domain Modulation and demodulation Wireless channels Wireless PHY design Wireless MAC design (one hop) From single-hop MAC to multi-hop mesh understanding: wireless mesh network capacity
Capacity of Mesh Networks The question we study: how much traffic can a mesh wireless network carry, assuming an oracle to avoid the potential overhead of distributed synchronization (MAC)? Why study capacity? learn the fundamental limits of mesh wireless networks separate the spatial reuse perspective and system design perspective gain insight for designing effective wireless protocols 40
Mesh Transmission Constraints Interference constraint transmission successful if there are no other transmitters within a distance (+D)r of the receiver (+D)r receiver r Radio interface constraint a single half-duplex transceiver at each node: either transmits or receives transmits to only one receiver receives from only one sender sender 4
Model Domain is a disk of unit area There are n nodes in the domain The transmission rate is W bits/sec 4
Capacity of Mesh Wireless Network Consider two types of networks arbitrary networks: place nodes optimally to derive overall upper bound random network: nodes are placed randomly 43
Outline Recap Wireless background Frequency domain Modulation and demodulation Wireless channels Wireless PHY design Wireless MAC design (one hop) From single-hop MAC to multi-hop mesh understanding: wireless mesh network capacity setting arbitrary networks: place nodes optimally to derive overall upper bound
Transmission Model: Bit-time Perspective Chop time into a total of WT bit-times in T seconds The transmission decision is made for each bit 3 3 4 4 5 5 bit time bit time bit time t bit time WT 45
Transmission Model: End-to-end Perspective Assume the network sends a total of lt end-to-end bits in T seconds Assume the b-th bit makes a total of h(b) hops from the sender to the receiver Let r bh denote the hop-length of the h-th hop of the b-th bit lt 46
Hop-Count Constraint Since there are a total of WT bit-times, and during each bit-time there are at most n/ simultaneous transmissions, we have lt å h( b) WTn b= 47
Area Constraint Consider two simultaneous transmissions at a bit-time (+D)r ½ Dr j r (+D)r m ½ Dr r k D jm + r >= D im >= (+D)r D jm + r >= D jk >= (+D)r Þ D jm >= (r+r ) D / i 48
Area Constraint For each transmission with distance r from sender to receiver, we draw a circle with radius ½ D r These circles do not overlap 49
Area Constraint: Global Picture 50
Area Constraint: Global Picture sum over all circles, since each circle has at least ¼ of its area in the unit disk, 5
Summary: Two Constraints Radio interface constraint a single half-duplex transceiver at each node Interference constraint transmission successful if there are no other transmitters within a distance (+D)r of the receiver (+D)r receiver r lt å h( b) WT n b= 6WT lt h( b) h ( rb ) b= h= pd åå sender 5
53 Capacity Bound å å = = ø ö ç è æ n i i n i i x n x Note: Let L be the average (direct-line) distance for all lt end-to-end bits. åå = = T b b h h h r b TL l l ) ( åå å åå = = = = = T b b h h h b T b T b b h h h b r b h r TL l l l l ) ( ) ( ) ( ) ( n WT WT WTn TL D = D p p l 8 6 n W L D p l 8 Discussion: what does the result mean? å = T b n WT b h l ) ( ) ( 6 ) ( D åå = = p l WT r T b b h h h b
Discussion L depends on traffic pattern (who needs to talk to whom) and positions of the end-to-end (application-level) senders and (application-level) receivers If end-to-end senders and receivers are spread out throughout the network, L is large per node capacity Otherwise, L will be small as network becomes denser µ n 54
Achieving Capacity: Example n/ senders and receivers: ll= 55
Results: Arbitrary Networks Protocol Model 56
Outline Recap Wireless background Frequency domain Modulation and demodulation Wireless channels Wireless PHY design Wireless MAC design (one hop) From single-hop MAC to multi-hop mesh understanding: wireless mesh network capacity setting arbitrary networks: place nodes optimally to derive overall upper bound random networks: uniform distribution of nodes and senders/receivers
Uniform Random Networks Uniform distribution of n nodes n origin-destination (OD) pairs Each node chooses same power level P, and thus equal radius r(n) Equal throughput l(n) bits/sec for all OD pairs 58
Random Networks: Required Bits Assume: average length of each OD pair is L Average number of hops: L r(n) Total required bit transmissions per second to support l(n) : nl( n) L r( n) 59
Random Networks: Offered Bits Required bit transmissions per second: nl( n) L r( n) What is the maximum number of transmissions (of bits) in one second? space used per transmission (interference limited): at least ¼ p [Dr(n)/] = pd r (n)/6 number of simultaneous transmissions at most (interference limited): total bits per second = pd r( n) /6 pd 6W pd r( n) 6 r( n) 60
Random Networks: Capacity Required offered Þ Þ L nl( n) r( n) 6W pd r( n) 6W l( n) L pd nr( n) 6
Connectivity Constraint Need routes between origin-destination pairs - places a lower bound on transmit range r(n) A D A D Not connected Connected To maintain connectivity with a high probability, requires r(n) on the order: logn n 6
Random Networks: Capacity Required offered Þ L nl( n) r( n) 6W pd r( n) 6W Þ l( n) L pd nr( n) log n r( n) µ n Þ l( n) L µ nlog n 63
Measurement Measured scaling law: throughput declines worse with n than theoretically predicted: /n.68 Remaining story line wireless mesh networks may have low scalability, and need techniques to increase capacity 64
Improving Wireless Mesh Capacity Multiple transceivers Radio interface constraint a single half-duplex transceiver at each node lt å Reduce L h( b) WT n b= rate*distance capacity: Approx. optimal l L Reduce interf. area Interference constraint transmission successful if there are no other transmitters within a distance (+D)r of the receiver 6WT lt h( b) h ( rb ) b= h= pd åå 8 W p D n Increase W 65