Title: Order Matters: Interference-Aware Transmission
1- Order Matters Interference-Aware Transmission
- Reordering in Wireless Networks
2Wireless Networks Interference Limited
- Packet decoded successfully
- When interference substantially lower
- Else, collision
Collision
IEEE 802.11
3Phy Layer Capture
- Concurrent transmissions may not necessarily
cause collision - Possible to decode the frame with higher SINR
- As long as receiver not locked onto
interference - Known as PHY layer capture
What is locking onto a signal?
4Implications of Capture
- When stronger signal is of interest, AND
- Arrives within PLCP window
- Concurrency feasible
PLCP
5Implications of Capture
- When stronger signal is of interest, AND
- Arrives within PLCP window
- Concurrency feasible
- However, PLCP duration small
- Probability of precise timing also small
20 us
millisecond
6Capture and MIM
- Message in Message (MIM)
- Strong frame arrives after preamble of
interfering frame - Receiver locked onto interference by then, and
decoding - However, continues searching for another preamble
- Strong message can be extracted while in another
message
7Caveats
- Recognizing arrival of new preamble
- requires new preamble to be have higher SINR
- Only then correlation shows a high value
8SINR Requirements Lucent NIC
10 dB
10 dB
4 dB
4 dB
SINR for MIM a function of relative arrival order
and timing
9Order Matters
- Some signal-arrival orders will permit
concurrency - Productive
- But the reverse order may cause collision
- Unproductive
- Example
10MIM Aware Scheduling
10 dB
5 dB
AP1 must start first, followed by staggered
transmission from AP2 -- concurrency feasible
11MIM Aware Scheduling
10 dB
5 dB
AP1 must start first, followed by staggered
transmission from AP2 -- concurrency feasible
In general, weaker transmission must start
first, stronger receiver suppresses it, and
extracts own signal
12MIM Aware Scheduling
10 dB
5 dB
AP1 must start first, followed by staggered
transmission from AP2 -- concurrency feasible
In general, weaker transmission must start
first, stronger receiver suppresses it, and
extracts own signal
Observe that 802.11 does not enforce this order,
hence will fail to exploit MIM capabilities
13- Problem Definition
- Design an MIM-aware scheduling algorithm that
- reorders transmissions to augment concurrency
- What is the bound on improvement?
- How to cope with time-vaying channel?
- How to sustain fairness and starvation?
14Solution Space
- Shuffle
- A centralized MIM-aware scheduling protocol for
Enterprise wireless LANs (EWLAN)
Controller
AP2
AP1
AP3
15Solution Space
- Shuffle
- A centralized MIM-aware scheduling protocol for
Enterprise wireless LANs (EWLAN) - Why EWLAN?
- Becoming popular in single-admin environments
- Offices, warehouses, libraries
- Understand MIM for centralized systems, then goto
distributed - Need to walk before running
Controller
AP2
AP1
AP3
16Shuffle 3 Main Components
- Measuring Interference Relation Rehearsal
- Characterize interference map to identify MIM
opportunity - Cope with time-varying channel conditions
- Packet Scheduler
- Use rehearsal outcome to schedule transmissions
- Scheduling Reordering and staggering
- Protect from unfairness and starvation
- Schedule Coordinator
- Execute MIM-aware schedule
- Cope with failures, retransmissions, and
centralized bottleneck
17Main Assumptions
- Dominant download traffic
- Upload handled through periodic upload windows
- Processing time and latencies
- Powerful controller, thin APs
- Wired backbone fast, but can become bottleneck
- Additive Interference
- Total interference sum of individual
interferences
18Feasibility First
- What is the maximum improvement with Shuffle
- in finite network scenarios?
- Determine the optimal link selection, and their
relative - order of initiation, to achieve this bound
- Observe that graph coloring inapplicable
19Analysis
- Optimal MIM-aware link scheduling is NP-Hard
- Proof
- Reduction from Independent Set selection
- MIM scheduling is special case
- Set SL (Signal Last SINR) ?
- Relative order requires the optimal choice of
links first. - Hence, NP-Hard
20Integer Linear Program
- Use ILP to upper bound improvement
- For a large number of finite-sized topologies
21CPLEX Results
- MIM comparison with non MIM
- Substantial improvement feasible, worth
researching
22Protocol Design
- Measuring Interference Relations
- Rehearsal
23Rehearsal
- Central controller needs link conflict
information - Graph coloring notion of conflict not applicable
- Conflicts also change with time-varying channel
- Basic idea
- Controller orchestrates a rehearsal of
transmissions - Clients and APs record RSSI values as instructed
times - Recorded RSSI correlated at controller
- Inteference graph generated
24Rehearsal
- At network initialization
- APs and clients informed about time of
transmissions - Each AP transmits sequence of probes at base rate
- Clients transmit probes, piggybacks recorded RSSI
values - At the end, APs forward gathered values to
controller - Controller derives interference map
- using additive interference assumption
25Interference Map
- Pairwise interferences mapped
- Controller populates table
Sniffer
Interferer
. . .
. . .
26Rehearsal
- Opportunistic rehearsal
- Continuous rehearsal expensive
- Utilize regular transmissions to piggyback
overheard RSSI - Coping with Fading
- Convergence may take long with opportunistic
- Handling loss will require immediate conflict
information - Perform self-corrective rehearsal using data
packets - Schedule packets conservatively to also serve the
rehearsal purpose
27Rehearsal
Interference from i to j
j
i
MIM Scheduler (Optimal NP-Hard)
28MIM-Aware Scheduler
- Scheduler operation
- Choose non-conflicting packets from queue
- Determine their relative starting order stagger
durations - Dispatch batch to AP
- Scheduler goal
- Maximize batch size
- Protect from starvation
- Ensure high fairness
29Greedy Heuristics
- Basic greedy
- Fix a queue lookahead size for scheduling (say L)
- Controller takes in-order packets from FIFO queue
- Packet j scheduled if no conflict with pkts
already scheduled - Conflict is a function of SL and SF thresholds
- If conflict, packet j postponed for next batch
- No starvation, Good Fairness
- Every batch, a packet progresses in queue
- Head of the batch always transmitted
O(n2 )
30Greedy Heuristics
- Randomized Greedy
- Perform basic greedy on randomized subsets of
queue - Probability of choosing packets biased
- Earlier in the queue have higher probability
- Choose largest batch among all solutions
- Least-Conflict Greedy
- Compute packet score of pair-wise conflicts
- Score higher if pkt must start earlier, lower
else - Sort packets based on score
- Perform basic greedy on this sorted order
- Incorporate aging for fairness/starvation
O(n2 logn)
O(n2)
31Optimal Vs Greedy (variants)
32Rehearsal
MIM Scheduler (Optimal NP-Hard)
lt Batch of packets, Schedule gt
Schedule Coordinator (ReTx, Prefetch, Predict)
33Schedule Coordinator
- Packets dispatched to APs
- Time synchronized between APs and contollers
- Pipeline Controller to AP, and AP to Client
transmissions - APs transmit at specified time
34Schedule Coordinator
- ACK Transmission
- Controller embed ACK schedule in Data Packet
header - Clients follow schedule (MIM-aware)
- AP forwards ACKs to controller (ACKs may have
RSSI) - When no ACK, AP forwards NACK
- Lost packets scheduled with highest priority
35Batch Selection
Queue
C1
C4
C3
C1
C2
C1
Batch
36Controller sends packets to APs
Queue
C1
C1
C2
Batch
C1
C3
C4
37APs/Clients Stagger transmissions
Data Staggering Order AP2-AP3-AP1
ACK Staggering Order C4-C3-C1
ACK
ACK
ACK
38Coping with Fading Loss
- Time varying channel
- Interference graph changes
- Subsequent MIM scheduling can cause further
failures - Immediate corrective rehearsal
- Controller identifies links suspected of fading
- Schedules a packet batch only for these APs
- This is a partial rehearsal
- Packets are transmitted in serial order
- APs and clients unaware, send Data and ACKs
- Controller updates interference map from ACK RSSIs
39Pipelining Batches
- Batch - ACK - Batch inefficient
- APs remain idle between batches (not negligible)
- Controller sends 2 batches to AP
- AP sends batch 1 and receives ACKs
- Batch 2 started, ACKs forwarded to controller in
parallel - Controller processes ACKs and next batch in
parallel - Controller schedules batch 3, sends to APs
- AP finishes batch 2
- Repeat
40Testbed Evaluation
41Linux Laptops Soekris WiFi Device Driver
- Validating that order really matters
42Evaluation
43Ordering
- Not all ordering is same -- hence, random not
enough
44Future Work
- MIM aware routing
- Choose paths such that MIM is maximally activated
- Distributed Shuffle
- We presented for EWLAN
- What about residential WLANs, organic emergence?
- Can postambles be useful?
- As opposed to Preamble (Hari Balkrishnan, NSDI 08)
45Conclusion
- Necessary to pay attention to PHY layer
capabilities - Interference cancellation (its first steps) one
example - MIM is ability to extract frame of interest
- Even under ongoing interference
- Provided some (relative order, SINR) conditions
hold - Facilitating these conditions can enable MIM
- Rich performance gains feasible
- MIM-aware link layer scheduling necessary
46Conclusion
- Shuffle - MIM scheduling for EWLANs
- EWLANs proliferating, also foundation for
distributed case - NP-Hard problem
- Bounds characterized through linear programming
- Greedy scheduling heuristics perform well
- Performance close to optimal
- Evaluation on Linux testbed Soekris boxes
- Consistent improvement, even under fading and
losses
47Questions?
48- Interference Cancellation in Wireless LANs
49Successive Interference Cancellation (SIC)
- State of the art allows only one reception
- The stronger one
- SIC enables a receiver to receive both signals
- Stronger signal decoded and subtracted
- Residual signal decoded from the residue
50SIC based WLANs
- Existing schemes require SINR gt ?
- Game of out-shouting each other
- SIC offers payoff if transmitter
- Either out-shouts or whispers
- Fundamental changes for protocol design
51MIM SIC
- Ongoing work on GNU radios
- SIC MIM implementation can enable protocols
52Diving a Little More
- Modulation 101
- How do you transmit a bit sequence?
- Need to convert bits onto analog domain convert
back - Basic Idea
- Change the properties of a signal (amplitude,
frequency, phase) to reflect the bit that you are
trying to convey - Example Shout loud for 1, whisper for 0
- Shouting loud is a symbol for 1 whispering is
a symbol for 0
53Modulation 101
- But humans can modulate their voice better
- So why not shout/whisper at different levels?
- Each level a symbol -- each symbol carries
multiple bits
11
10
01
00
54Modulation 101
- But humans can modulate their voice better
- So why not shout/whisper at different levels?
- Each level a symbol -- each symbol carries
multiple bits
11
10
01
00
So if recevier samples at the right time (during
peak or trough) then it can get a value. Since
it knows the ranges for each symbol, it knows
what symbol was received hence, what bit
sequence.
55With Actual Signals
- More opportunity
- Modulate a Sin(.) and a Cos(.) signal with
different bits - This is like 2D space
- Called constellation diagram
- Send the sum of both as
- a single symbol
- Receiver gets sum, and can
- extract both using a
- coherent demodulator
56Quadrature Amplitude Modulation (QAM)
5716 QAM reception
- Receiver gets a dot
- Computes nearest neighbor as the transmitted
symbol - Hence, the bits are
- now decoded
5816 QAM reception
- Receiver gets a dot
- Computes nearest neighbor as the transmitted
symbol - Hence, the bits are
- now decoded
Do you see why higher Data rate increases
the Probability of error? Because, separation
between Symbols become smaller
59Easier Said Than Done
- Lots of issues
- Rx is assumed to know the phase of transmitted
signal - So that Rx can sample at the right time
- But difficult because signals getting reflected
- Also, Rxs frequency needs to be exactly same as
Tx - Recall PLCP
- It helps in straightening these out
60So Then How do You Do SIC?
- Basic Idea
- Let received combined signal be S
- Stronger received signal be S1, weaker received
signal be S2 - Synchronize with the stronger signal
- By detecting PLCP
- Demodulate by treating the weaker as interference
- Get the bits out
- Now, model the stronger signal based on the bits
(S1) - To see how it would look without the interference
(S1 ! S1) - Now subtract i.e., S2 S - S1
- Demodulate S2 to get the bits out
How
61Modeling a Symbol from Bits
00
10
01
11
62Modeling a Symbol from Bits
00
10
S
01
11
63Modeling a Symbol from Bits
00
10
S1
S
01
11
64Modeling a Symbol from Bits
00
10
S1
S
-S1
01
11
65Modeling a Symbol from Bits
00
10
S1
S
-S1
01
11
S2 S (-S1) Thus weaker signal is bit 11
66All Modeling, Subtracting in Software
- USRP (Universal Software Radio Peripheral)
- Connected to laptop for doing processing
- This paper demonstrated offline SIC
- All signals received, and procesing done after
that
67ZigZag Decoding Combating Hidden Terminals in
Wireless Networks
- Shyamnath Gollakota and Dina Katabi
- MIT CSAIL
- SIGCOMM 2009
68Hidden Terminal Problem
Alice
Bob
AP
X
- Leads to low utilization of bandwidth and
unfairness in channel access - RTS/CTS induced too much overhead
- Collided packets may still be decodable!
69Basic idea of ZigZag Decoding
- Chunk 1 from user A from 1st copy of collided
packet can be decoded successfully - Subtract from 2nd copy to decoded the Chunk 1 of
user B - Subtract from 1st copy of collided packet to
decode Chunk 2 from user A - Subtract from 2nd copy of collided packet to
decode Chunk 2 from user B
70Wait! What about Shannon Capacity?
- Requires retransmissions if collision occurs
- No overhead if no collision
R1
TDMA
R2
71Other alternatives
- CDMA
- Incompatible with WLAN
- Low efficiency in high SNR
- Successive interference cancellation (SIC)
- Chunk packet
- Decode the strong signal first, subtract from the
sum and then decode the weak signal - No need for retransmissions
- Both transmitters need to transmit at a lower rate
72Patterns that ZigZag Applicable
- Both backward and forward decoding can be used
73Technical Barriers
- How do I know packets collide
- Matching collision happened? (P1, P2) and (P1,
P2) - Frequency offset between transmitter and receiver
- Sampling offset
- Inter-symbol interference
- What if errors occur in chunks
- Acknowledgement?
subtraction is non-trivial
74Evaluation
- 14-node GNURadio testbed
- USRP with RFX2400 radio (2.4 GHz)
- BPSK
- Bit rate 500kbs
- 32-bit preamble
- 1500-byte payload, 32-bit CRC
- Deficiency in GNURadio
- Cannot coordinate transmission and reception very
closely - CSMA, ACK
Software
Transmitter
Receiver
75Micro-benchmark
76Alice Bob
- Bobs location is fixed, Alice moves closer to
the base-station
77Impact of SNR on BER
- Alice Bob at fixed and equal location
- Vary transmission power level
78Testbed Results
- Pick two senders randomly
- 10 hidden terminals, 10 partial, 80 perfect
79Three hidden terminals
80Conclusion
- ZigZag improves fairness throughput
- Further research
- Combination of analog network coding
81Questions?
82Preliminary on communication
- BPSK 0 -gt -1 1 -gt 1
- http//en.wikipedia.org/wiki/QPSK
83Collision Detection
- Preamble
- Pseudo random number
- Correlation with moving window
- thresholding
84Matching collision
- Given (P1 P2(?)) and (P1, P2(?)), how to
determine that P1 P and P2 P2 - Determine offset first
- Correlation of P2(?) and P2(?)
85Decode matching collision
- Decode iteratively
- Re-encoding
- Computing channel parameters
- Channel gain estimated from
- Frequency offset and sampling error 1) coarse
estimation from previously successful reception
2) iterative estimation - Inter-symbol interference take the inverse of
linear filter (for removal of ISI)
86Decode matching collision (contd)
- Re-encoding
- Account for sampling error
87What about errors?
- Will errors in decoding have a cascading effect?
- Error propagation dies out exponentially
- Error correction capability of modulation
- Forward and backward decoding
88Acknowledgement
- Use as much synchronous acknowledgement as
possible for backward compatibility
89Duke EWLAN Topology
- Client, AP placement traces used to feed Qualnet
- Fading models from Qualnet
- Only 4 topologies shown in graph
90Increasing AP Density
- Shuffle throughput higher in denser conditions
- Greater scope to squeeze in transmissions in
space
91Latency Improves
- Latency increases due to higher concurrency
- As well as from TDMA scheduling
92Under Channel Fading
- Corrective rehearsal effective to cope with
fading - We observed loss fraction of 12 under Ricean.
93Ongoing Work
- Integrating upload traffic
- Proposing upload windows
- Can be opportunistically used for download (ZMAC)
- Can be used to accommodate client joins,
departure - Interference from external networks affect
schedule - Need to treat border APs separately
- Interference cancellation may decode both signals
- More powerful than MIM, hence, new MAC necessary
- We are investigating possibilities through GNU
radio
94Todays Menu
Spotlight
Micro-Blog
Mingle
Shuffle
95Micro-BlogA Virtual Information Telescope
using Mobile Phones and Social Participation
96Mobile Phones Powerful Sensors
- Next Generation Mobile Phones
- Variety of embedded sensors
- - Cameras, mic., accelerometer, health monitor,
RFID reader - 3 Billion active phones
- 2009 - phone sales will surpass computers
- Convergent device accepted technologically,
socially
97Vision
- Envision each mobile phone as a virtual lens
Imagine an Information Telescope over 3 billion
lenses
Enabling you to zoom in and perceive any part of
the world through the eyes and ears of these
phones
And even querying them in real time, with
automatic, social, or participatory replies
98Micro-Blog
99Prototype From Japan
100Prototype From Sydney
101Post-Its in the Air
- Information superimposed on virtual space
- Google maps, Microsoft SensorMap, etc.
- Feasible to superimpose on physical space
- As if sticky notes floating in the air
- Downloadable into mobile phones
- Prototype for Duke campus
102Micro-Blog mobisys2008
- Project Website
- http//microblog.ee.duke.edu
- Project live at
- http//152.3.193.194/microblog/dev7/microblog.php
103- So, where exactly is the research here ???!!
104Many Challenges
- Energy-Aware Localization mobisys08_poster
- GPS offers 7 hours battery, but hi accuracy
- Alternates tradeoff accuracy for energy
105Many Challenges
- Location Privacy
- Users do not want to reveal location
- Partial location important for contextual info.
- Incentives
- No reason for user to participate
- Designing incentive schemes
- Too much information entering the system
- Information distillation critical
- many many more
106- Thanks a lot
- for your time and patience
- SyNRG Homepage http//synrg.ee.duke.edu
107Analogy
- Imagine a graphic equalizer
- How do you know what setting will play the song
best? - If each song had a known tune preceding it
- You could set the graphic equalizer based on the
tune - Then listen to the song well
- Analogous to locking on to the song
108Similarly
Back
- Payload in data frame preceded with PLCP
- PLCP like pilot signal
- Receiver uses for synchronization/correction with
Tx - During synchronization, Rx susceptible to
distraction - Once synchronized, following bits can be well
decoded - However, if strong interference, then collision
109 110(No Transcript)
111The Menu
Spotlight
Micro-Blog
Mingle
Shuffle
112Integer Programming
Optimal link schedule w, w/o MIM shows potential
gain with MIM-awareness
113Vision
Design a (software) information telescope to zoom
into a any part of the world, and view it
through virtual lenses located there
Query the lenses in real time
Incentivize participatory sensing Enable
automatic sensing
114Our Research
What are the visions (top down)
Ubiquitous Services
Incentives
Application
Privacy
Security
Eavesdropping
Loss Discrimination
Transport
Mobility
Network
Energy Savings
MAC / Link
Spatial Reuse
Interference Mgmt.
PHY
Channel fluctuations
What can be enabled (bottom up)
115Shuffle 3 Main Components
- Measuring interference relationship - Rehearsal
- Controller orchestrates rehearsal
- Each node measures interference map from all
others - Result is a network-wide interference map
- Scheduler determines links and order of
transmission - From the interference map
- Scheduling NP-Hard --gt approximation algorithms
- Packets scheduled in batches
- Schedule manager executes schedule
- Copes with failures, fading, mobility
- Performs pre-fetching, speculation, prediction
116Wireless Multihop Networks
- Collection of wireless hosts
- Relay packets on behalf of each other
- Together form an arbitrary topology
- May be connected to wired infrastructure
- 2 reasons to prefer multihop
- Capacity and Power constraint
B
D
A
C
117MIM Scheduling
- 0/1 Solution to ILP satisfies
- Hence, IP solution is the time-ordered schedule
1182 Key Architectures
- Single hop networks
- Multi-hop networks
119Wireless Single Hop Networks
- Cellular Networks
- Distributed WLANs
- Centralized Enterprise WLANs
120Wireless Multihop Networks
- Collection of wireless hosts
- Relay packets on behalf of each other
- Together form an arbitrary topology
- May be connected to wired infrastructure
- 2 reasons to prefer multihop
- Capacity and Power constraint
121The Context
- The edge of the internet becoming wireless
- 167,000 hotspots by 2008 end GartnerSurvey06
- 75 million user base
- Mesh network extensions to rural regions
- Many Motivations to get unplugged
- Unrestricted mobility
- Significantly lower deployment/maintenance cost
- Ease of use
122Proliferating Applications and Technologies
Mobile Blogging
Smart Clothes
RFID Tracking
Location Services
Social Communities
Information Mapping
Gaming
Mobile Networks
Sensor Networks
Mesh Networks
Hybrid Networks
Personal Area Networks
Ad Hoc Networks
123The Key Intuition
- Ability to Decode Ability to Cancel
- In other words,
- knowing the structure of interference, helps in
coping with it - In other words,
- Stronger, decipherable interference better than
weak, undecipherable ones
124Theory Vs Practice
- Theoretically, cancellation feasible
- In practice, perfect cancellation difficult
- Suppression beneficial
- Along with some help from higher SINR
requirements - Suppression Higher SINR Concurrency