560 likes | 656 Views
Wireless Collisions: From Avoidance, to Recovery, to Creation. Erran Li Aug. 2010. Talk Outline. Recovery: remap Collision “creation”: interference alignment. 2. Wireless networks with overlapping channels. Chaotically deployed WiFi networks Each user chooses its own channel
E N D
Wireless Collisions: From Avoidance, to Recovery, to Creation Erran Li Aug. 2010
Talk Outline Recovery: remap Collision “creation”: interference alignment 2
Wireless networks with overlapping channels • Chaotically deployed WiFi networks • Each user chooses its own channel • Planned WiFi networks • Due to shortage of orthogonal channels, partially overlapped channels are beneficial [Misra et al, SIGMETRICS’06] • WiFi networks built on digital white space, e.g. WhiteFi [Bahl et al. SIGCOMM’09]
802.11g overlapping channel collision problem Collision! APa on channel Ca Alice Bob Collision! APb on channel Cb Chuck
802.11g overlapping channel collision problem • Retransmission More Collision! APa on channel Ca Alice Bob More Collision! APb on channel Cb Chuck
802.11 background Using 802.11g as an example Each channel has 4 groups of subcarriers: C1 consists of G1, G2, G3, G4; C2 consists of G2, G3, G4, G5 C1 and C2 are overlapping adjacent channels; C1 and C3 are overlapping non-adjacent channels Bits are assigned to subcarriers E.g. bit sequences Ai is assigned to subcarrier Gi, i=1,2,3,4 Subcarrier Group G1 G2 G3 G4 A4 A2 A3 A1 6
Remap basic idea: structured permutation A1 A3 A2 A4 Mapping π2 A3 A1 A4 A2 Mapping π3 A2 A4 Mapping π4 A1 A3 Subcarrier Group G1 G2 G3 G4 Mapping π1 A4 A2 A3 A1 7
How permutation helps Non-matching collisions on adjacent channels C1 and C2 A1 A3 A2 A4 2nd transmission 3rd transmission A3 A1 A4 A2 4th transmission A2 A4 A1 A3 Subcarrier Group G1 G2 G3 G4 1st transmission A4 A2 A3 A1
How permutation helps (cont’d) Non-matching collisions on non-adjacent channels C1 and C3 A1 A3 A2 A4 2nd transmission Subcarrier Group G1 G2 G3 G4 1st transmission A4 A2 A3 A1 9
Remap basic idea: Matching-collision setting • Matching collisions on adjacent channels Collision! APa on channel Ca Bob Alice Collision! APb on channel Cb
Remap for matching collisions Matching collisions on adjacent channels C1 and C2 A3 A3 A1 A1 B3 B5 B3 Subcarrier Group G1 G2 G3 G4 G1 G2 G3 G4 A2 A4 G5 A4 A2 G5 B2 B4 B4 B2 B5 Subtract A1 Decode A1 Subtract A1 Re-encode A1 on G4 Subtract B3 Decode B3 Re-encode B3 on G3 Subtract B3 Subtract A3 Re-encode A3 on G2 Decode A3 Subtract A3 Subtract B5 Decode B5 Decoded bits: A1 B3 A3 B5
Remap for matching collisions: Decoding graph Decoding graph of collision at adjacent channels C1 and C2 2nd Collision 1st collision 2nd Collision 1st collision A1 A4 A1 A4 Re-encode B3 B3 B4 B4 Subtract A3 A2 A3 A2 B2 B5 12
Remap for matching collisions: a time-frequency view collisions at adjacent channels C1 and C2 : a time and frequency view 5 7 11 10 9 8 6 14 13 12 1 2 3 P′a 4 Pa Time Sn S1 S2 Sn S2 S1 A4 G1 A1 A3 A2 G2 Freq A2 G3 A3 A1 A4 G4 ∆2 B5 B2 G2 ∆1 B4 B3 B3 B4 B2 B5 G5 P′b Pb
Remap for matching collisions Theorem on a pair of matching collisions: Assume that Alice and Bob use different permutations for the two transmissions, Alice’s AP and Bob’s AP can each decode both packets despite collisions.
Remap Details Encode bit-to-subcarrier mapping Design 4 long PN sequence long training symbols Detecting collision Cross-correlate 4 long training symbol pairs Detecting matching collision Correlating subcarrier group Gi and its remapped subcarriers Detecting modulation Cannot decode PLCP header of Bob’s packet Solution: raw sample subtraction for the first pass 15
Remap Details (cont’d) Loss of orthogonality Carrier frequency offset Desired symbol and interfering symbol unalignment • Desired signal at subcarrier i: Interfering signal at subcarrier i+m: Aligned interference symbols on non-adjacent subcarriers have zero Interference energy.
Remap Details (cont’d) Loss of orthogonality Carrier frequency offset Desired symbol and interfering symbol unalignment • Desired signal at subcarrier i: • Interference energy: Interfering signal at subcarrier i+m: • The energy is 19dB lower if m=4; • 21dB lower if m=5
Remap Details (cont’d) 802.11 channel specifics: dealing with used subcarrier groups 18
Evaluation • Experimental setup for non-matching collisions: • Use MSRA Sora software-radio platform for 802.11g • Fix Alice at channel 3 • For adjacent-channel collision test, Bob (the interferer) is at channel 4; for non-adjacent channel collision test, Bob is at channel 5 19
Evaluation (cont’d) • Performance metric • Normalized throughput: actual number of decoded packets divided by the ideal number of decoded packets 20
Evaluation: collision detection • Collision detection under different SINR settings 21
Evaluation: collision matching • False positive: if matching wrong pairs • False negative: if fails to match a collision pair 22
Evaluation: non-adjacent channel • BER and throughput ratio under different SNR settings 23
Evaluation: Adjacent Channel • BER vs SNR difference between channel 3 and 4 24
Evaluation: adjacent channel (cont’d) • Throughput ratio vs SNR difference between channel 3 and 4 25
Remap: Future Work • Generalize Remap to other channel structures • Investigate techniques that deal with loss-of-orthogonality issue • Evaluate how well matching collision detection and decoding work • Extend Remap to dynamic spectrum access networks 26
Talk Outline Recovery: remap -> Collision “creation”: interference alignment 27
Talk Outline Wireless mesh network design General interference alignment and cancellation (GIAC) problem Design overview Problem formulation Computational complexity Algorithm GNU radio testbed implementation Related work Conclusion and future work 28
Limitation of Conventional Mesh Network Design Current mesh networks have limited capacity [dailywireless.org] Increased popularity of video streaming and large downloads will only worsen congestion Network-wide transport capacity does not scale [Gupta and Kumar 2001] O( ) where n is the number of users Traditional design limitations: Treats wireless transmission as a point-to-point link for unicast Treats interference from other transmissions as noise 29
A New Paradigm for Mesh Network Design Wireless networks propagate information rather than transporting packets Physical layer: interference cancellation, zero forcing, interference alignment Network coding Capacity scales better in this new paradigm for α in [2,3) and random placement [Ozgur, Leveque and Tse, IEEE Trans. Info. Theory’07] Optimal scaling requires cooperative transmission when node placements are “less regular” [Niesen, Gupta and Shah’08] 30
GIAC Design Overview Goal: increase concurrency through interference cancellation techniques Design constraints and guidelines Global cooperation not practical: cooperate locally No explicit exchange of data packets for cooperation: exploit naturally occurring opportunities Channel state information essential for any cooperative techniques: exchange only channel state information and necessary signaling messages 31
GIAC Problem Formulation Objective: find the max number of simultaneous transmissions Connectivity graph G=(V, E) Interference graph GI=(V, EI) A set of senders S V A set of receivers R V Receiver can be one or two hops away from sender pkti is destined to Ri Each node u has a packet pool Lu which records overheard packets Assume transmission rate is fixed at ρ Assume channel matrix H is known Y = HX+N; X: input, Y: output, N: noise Ri hij Sj A snapshot of a local neighborhood 32
GIAC Problem Formulation (cont’d) How to enable simultaneous transmissions? Receiver interference cancellation Sender pre-coding Goal: where is a diagonal matrix Thus, yi=λixi+Ni 33
GIAC Problem Formulation (cont’d) Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously S1 u1 R1 R2 S2 u2 t=0 34
GIAC Problem Formulation (cont’d) Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously S1 u1 R1 R2 S2 u2 t=1 35
GIAC Problem Formulation (cont’d) Example: u1 has required channel state information u1 can trigger S1 and S2 to transmit simultaneously S1 u1 R1 R2 S2 u2 t=2 36
Talk Outline Wireless mesh network design General interference alignment and cancellation (GIAC) problem Design overview Problem formulation Computational complexity Algorithm GNU radio testbed implementation Related work Conclusion and future work 37
GIAC Complexity: Sender Side Computational complexity matters because algorithm runs in fast path The interference control problem is NP-hard Consider a special case where the packet pool at each node is empty Reduction from max independent set for each e=(vi, vj), create a gadget with sender Si, Sj, and receiver Ri, Rj where Si, Sj has pkti, pktj Si Ri Sj Rj 38
GIAC Complexity: Receiver Side The problem is NP-hard Reduction from clique: given G=(V,E), for each e=(vi, vj), create a gadget with sender Si, Sj, and receiver Ri, Rj where Si, Sj has pkti, pktj and receiver Ri, Rj has pktj, pkti Assume H has full rank (no channel alignments) Si Ri Sj Rj 39
GIAC: Optimal Algorithm for a Special Case Assumptions No receiver-side cancellation Channel matrix H has full rank (ignore channel alignment cases) No power constraint Key intuition: for each transmitted packet pkti, need an independent packet pkti to cancel its interference at each receiver • Let PKT be the set of packets to be transmitted • For each pkti, Let ni be the number of senders • While |PKT|>min{ni | pkti PKT} • Let pkt be the one with minimal ni • PKT = PKT-{pkt} • done 40
GIAC: Optimal Algorithm for a Special Case (cont’d) Example pkt1,pkt2, pkt3: n1, n2, n3: 2 2 1 S4 S1 R1 n3<|{pkt1, pkt2 , pkt3}| {pkt1, pkt2} S2 |{pkt1 , pkt2}| = min{n1 , n2} R2 Stop! S3 R3 41
GIAC Algorithm for One-Hop Opportunities W • Feasibility problem: • Given a set of packets and power constraint at each sender, can they be transmitted at the same time at a given rate? • Yes, a feasible solution does not exist iff there exists W s.t. [ρ, …, ρ] R 42
GIAC Algorithm for One-Hop Opportunities (cont’d) • Convex programming to compute feasibility Notation: H: channel matrix m: number of senders k: number of receivers Ф: coding coefficient matrix P: max power Ni: noise at receiver Ri 43
GIAC Algorithm for One-Hop Opportunities (cont’d) Let PKT be the set of packets to be transmitted Create pseudo senders for any packet pkt a receiver has While NotFeasible(PKT, H, ρ) ni = maxNonIntR(PKT, H, i), i=1,2,…,|PKT| Let pkt be the one with minimal ni PKT = PKT-{pkt} done • Let PKT be the set of packets to be transmitted • For each pkti, Let ni be the number of senders • While |PKT|> min{ni | pkti PKT} • Let pkt be the one with minimal ni • PKT = PKT-{pkt} • done Generalize the special case's optimal algorithm 44
GIAC Algorithm for One-Hop Opportunities (cont’d) Computing max non-interfering receivers of pkti : maxNonIntR(PKT, H, i) Find the maximum matching Mi between senders with pkti and receivers in interference graph; Let Li be the set of receivers not interfered by pkti and not in the matching maxNonIntR(PKT, H, i) = | Mi | + | Li | 45
GIAC Algorithm for One-Hop Opportunities (cont’d) Example S1 R1 Max matching of pkt1 S2 R2 R1 |M1|=2 S1 S2 |L1|=1 Receivers not interfered by pkt1: {R3} R2 S3 n1 = |M1|+ |L1|=3 R3 Similarly, n2= |M2|+ |L2|=1+2=3; n3= |M3|+ |L3|=2+1=3 46
GIAC Algorithm for One-Hop Opportunities (cont’d) Example 2 S3 S1 R1 S2 R2 S4 S1 R1 Create pseudo senders S2 R2 47
GIAC Implementation in GNU Radio Time synchronization Only need to synchronize within cyclic prefix Sampling rate 500KHz Drift within 0.75 samples/sec Drift within 0.75 samples/sec 48
GIAC Implementation in GNU Radio: (cont’d) • Channel estimation and feedback • Need amplitude and phase offset • Stable phase offset estimate difficult in GNU radio • Current estimation error: 15~20Hz • Feedback delay: software processing delay, hardware--software latency
Related Work Practical interference cancellation techniques Networked MIMO [Samardzija et al, Bell Labs Project 2005~now] Physical/analog layer network coding [Zhang et al, MOBICOM’06, Katti et al, SIGCOMM’07] Interference alignment and cancellation [Gollakota, Perli, Katabi, SIGCOMM’09] 50