Analog Network Coding Sachin Katti Shyamnath Gollakota and Dina Katabi Current W ireless Router C
Current W ireless Router C Traditional Routing requires 4 time slots Current W ireless Router C Traditional Routing requires 4 time slots
Last Year � Network Coding � COPE Router C XOR = Traditional Routing requires 4 time slots Last Year � Network Coding � COPE Router C Traditional Routing requires 4 time slots
� Last Year � Network Coding � COPE Router C = XOR = XOR Traditional Routing requires 4 time slots CO PE requires 3 time slots Can we do it in 2 time slots? Higher throughput Instead of router mixing packets… Exploit that the wireless channel naturally mixes signals Analog Network Coding (ANC)
Analog Network Coding Router C Analog Network Coding Router C Interference 1) Dina and J on transmit simultaneously
Analog Network Coding Router C 1) Dina and J on transmit simultaneously 2) Router amplifies and broadcasts interfered signal Analog Network Coding Router C 1) Dina and J on transmit simultaneously 2) Router amplifies and broadcasts interfered signal 3) Dina subtracts known signal from interfered signal
Analog Network Coding Router C 1) Dina and Robert transmit simultaneously Analog Network Coding requires 2 time slots 2) Router amplifies and broadcasts interfered signal � Higher throughput 3) Dina subtracts known signal from interfered signal It Is More Than Going From 3 To 2! Philosophical shift in dealing with interference Strategically exploit interference instead of avoiding it Promises new ways of dealing with hidden terminals
Hidden Terminal Scenario C C C C Src R1 R2 Dst Hidden Terminal Scenario C C C C Src R1 R2 Dst P1
Hidden Terminal Scenario C C C C Src R1 R2 Dst P2 P1 1) Src and R 2 transmit simultaneously Hidden Terminal Scenario C C C C Src R1 R2 Dst P1 P2 1) Src and R 2 transmit simultaneously 2) R 1 subtracts P 1, which he relayed earlier to recover P 2 that he wants
Hidden Terminal Scenario C C C C Src R1 R2 Dst P1 P2 R2 and Src are hidden terminals Today : Simultaneous transmission � Collision AN C : Simultaneous transmission � Success! Hidden Terminal Scenario C C C C Src R1 R2 Dst Other Benefits of ANC: First step toward addressing hidden terminals ANC extends network coding to new scenarios
How do we make it work? Practical Challenges C Interfered signal is not exactly the sum Channel distorts signals Two signals are never synchronized (t) but f 1 (s D (t)) + f2(s J It is not s D (t) + s J (t-T)) Prior work assumes full synchronization and ignores channel distortion Not Practical!
Key Idea: Exploit Asynchrony! Key Idea: Exploit Asynchrony! Signal No No Interference Interference Time Dina uses interference-free parts to estimate channel and timing Dina compensates for her interfering signal J on runs the same algorithm backwards! Exploit asynchrony to make it practical
Cross layer realization of our idea Protocol Router senses idle medium and broadcasts a trigger to Dina and J on Dina and J on jitter their start times randomly and transmit Router amplifies and forwards interfered signal Dina and J on receive and decode How do they decode?
� � Primer on Modulation N odes transmit vectors on channel Focus on MSK (Minimum Shift Keying) modulation D2 leads D 1 by 90 degrees D2 lags D 1 by 90 degrees Bit “ 1 ” Bit “0” D2 D1 D2 D1 Primer on Channel Effects Attenuation D2 D2 Channel D1 D1 D2 and D1 are attenuated by the same amount
Primer on Channel Effects Attenuation Rotation D2 D2 Channel D1 D1 Primer on Channel Effects Attenuation Rotation D2 D1 Channel D2 D1 To decode, receiver computes angle between received vectors Angle (D2, D 1) = 90 degrees � Bit “ 1 ” was transmitted Angle between vectors is preserved
So, How Does Dina Decode? Signal No No Interference Interference Time Dina’s Signal Jon’s Signal So, How Does Dina Decode? Signal No No Interference Interference Time Interference Small uninterfered part at the start Decodes uninterfered part via standard MSK demodulation O nce interference starts, Dina changes decoding algorithm
W hat did Dina send? D2 D1 W hat did Dina send? W hat did J on send? J1 D1 D2 J2
W hat is Interference � Vector addition X1 D1 J1 D2 J2 X2 W hat does Dina know? D2 X1 D1 J1 D2 D1 J2 X2
W hat does Dina know? D2 X1 D1 X2 No Amplitude of J on’s Interference Amplitude of her β Vectors � α Vectors � W hat does Dina know? D2 X1 D1 D1’ J1’ J1 D1 X2 Dina finds solutions for X 1 and X2
W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Two solutions for each interfered vector! W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Four possible angles!
W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Four possible angles! W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Four possible angles!
W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Four possible angles! W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Four possible angles!
W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Pick the correct angle � 90 degrees W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Pick the correct angle � +90 degrees
W hat does Dina know? D2 X1 D1 D1’ J1’ J1 J2’ D2 D1 J2 X2 D2’ Dina finds solutions for X 1 and X2 Dictates solution for J on’s vectors! W hat does Dina know? D2 X1 D1 J1 D2 D1 J2 X2 Dina finds angle between J 1 and J 2 and decodes
Decoding Algorithm – Decoding interference Signal Interference Time Decode rest of the interfered part using this algorithm Decode final uninterfered part from J on via standard MSK demodulation Performance
ANC Implementation Software – GN URadio codebase Hardware – USRP frontend 2.4-2.48 GHz frequency range SN R of 20-30 dB Canonical topologies in mesh networks Dina and J on Router C AN C throughput gain over current 4/2 = 2 AN C throughput gain over CO PE 3/2 = 1.5
Throughput gain for Dina-J on scenario 1 0.8 0.6 Gain over CDF Routing 0.4 0.2 0 1 1.2 1.4 1.6 1.8 2 Throughput gain Median Gain over Routing – 70% Throughput gain for Dina-J on scenario 1 0.8 0.6 Gain over Gain over CDF COPE Routing 0.4 0.2 0 1 1.2 1.4 1.6 1.8 2 Throughput gain Median Gain over Routing – 70% Median Gain over Routing – 70% Median Gain over COPE – 30%
X topology Router C Interference Capture! Capture! X topology Router C Interference Capture! Capture!
X topology Router C AN C throughput gain over current 4/2 = 2 ANC decodes interference using overheard signals AN C throughput gain over CO PE 3/2 = 1.5 Throughput gain – X topology 1 0.8 0.6 CDF Gain over Routing 0.4 0.2 0 1 1.2 1.4 1.6 1.8 2 Throughput gain Median Gain over Routing – 65%
Throughput gain – X topology 1 0.8 0.6 CDF Gain over Gain over Routing COPE 0.4 0.2 0 1 1.2 1.4 1.6 1.8 2 Throughput gain Median Gain over Routing – 65% Median Gain over Routing – 65% Median Gain over COPE – 28% Chain topology C C C C Src R1 R2 Dst AN C throughput gain over current 3/2 = 1.5
Throughput gain – Chain topology 1 0.8 0.6 CDF 0.4 0.2 0 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5 Throughput gain Median Gain over Routing – 37% Conclusion Shifts in the design of wireless networks to recognize wireless for what it is Embrace Broadcast Embrace Interference Implementation that yields large throughput gains
Recommend
More recommend