AccuRate: Constellation Aware Rate Estimation in Wireless Networks

Slides:



Advertisements
Similar presentations
Towards Collision Detection in Wireless Networks Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, Srihari Nelakuditi.
Advertisements

Tang et al. Slide 1 Achieving Full Rate Network Coding with Constellation Compatible Modulation & Coding Suhua Tang Hiroyuki YOMO, Tetsuro UEDA, Ryu MIURA,
Successive Interference Cancellation: A Back of the Envelope Perspective Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, Srihari Nelakuditi.
Strider : Automatic Rate Adaptation & Collision Handling Aditya Gudipati & Sachin Katti Stanford University 1.
Successive Interference Cancellation: A Back of the Envelope Perspective Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, Srihari Nelakuditi I have.
Coded Modulation in Fading Channels Ryan Aures Matthew Holland ECE 492 Mobile Communications.
Wireless Networking & Mobile Computing CS 752/852 - Spring 2012 Tamer Nadeem Dept. of Computer Science Lec #7: MAC Multi-Rate.
Seyed Mohamad Alavi, Chi Zhou, Yu Cheng Department of Electrical and Computer Engineering Illinois Institute of Technology, Chicago, IL, USA ICC 2009.
Pro-VIZOR: Process Tunable Virtually Zero Margin Low Power Adaptive RF for Wireless Systems Presented by: Shreyas Sen June 11, Paper 27.3, DAC 08.
Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee.
Automatic Rate Adaptation Aditya Gudipati & Sachin Katti Stanford University 1.
Wireless Communication Technologies 1 Outline Introduction OFDM Basics Performance sensitivity for imperfect circuit Timing and.
A 4G System Proposal Based on Adaptive OFDM Mikael Sternad.
Developing a SDR Testbed Alex Dolan Mohammad Khan Ahmet Unsal Project Advisor Dr. Aditya Ramamoorthy.
Wireless Mobile Communication and Transmission Lab. Chapter 8 Application of Error Control Coding.
Modulation Rate Adaptation in Urban and Vehicular Environments: Cross Layer Implementation and Experimental Evaluation ACM MobiCom 2008 Joseph Camp and.
Sunghwa Son Introduction Time-varying wireless channel  Large-scale attenuation Due to changing distance  Small-scale fading Due to multipath.
Ubiquitous Computing Center A Rate-Adaptive MAC Protocol for Multi-hop Wireless Networks 황 태 호
PPR: Partial Packet Recovery for Wireless Networks Kyle Jamieson and Hari Balakrishnan MIT Computer Science and Artificial Intelligence Laboratory.
Cross-Layer Approach to Wireless Collisions Dina Katabi.
A Simple Transmit Diversity Technique for Wireless Communications -M
No Time to Countdown: Migrating Backoff to the Frequency Domain Souvik Sen, Romit Roy Choudhury, Srihari Nelakuditi - Twohsien
PPR: Partial Packet Recovery Brad Karp UCL Computer Science CS 4038 / GZ06 23 rd January, 2008.
Data Link Layer Architecture for Wireless Sensor Networks Charlie Zhong September 28, 2001.
PHY + MAC: The Whole is Greater than the Sum Romit Roy Choudhury Associate Professor 1.
Improving Loss Resilience with Multi-Radio Diversity in Wireless Networks Allen Miu, Hari Balakrishnan MIT Computer Science and Artificial Intelligence.
Wireless Communication
Wireless Communication
A G3-PLC Network Simulator with Enhanced Link Level Modeling
Principios de Comunicaciones EL4005
Proposal for Statistical Channel Error Model
Space Time Codes.
Consideration of PHY design for 1.08GHz channel
I. Previously on IET.
Now (switched network)
Space-Time and Space-Frequency Coded Orthogonal Frequency Division Multiplexing Transmitter Diversity Techniques King F. Lee.
Stateful Inter-Packet Signal Processing for Wireless Networking
Konstantinos Nikitopoulos
Rate 7/8 (1344,1176) LDPC code Date: Authors:
Coding and Interleaving
A Rate-Adaptive MAC Protocol for Multi-Hop Wireless Networks
January 2016 Project: IEEE P Working Group for Wireless Personal Area Networks (WPANs) Submission Title: pureLiFi r1 proposal for High Speed.
John Ketchum, Bjorn A. Bjerke, and Irina Medvedev Qualcomm, Inc.
Partial Proposal: 11n Physical Layer
HDR a solution using MIMO-OFDM
802.11ac Preamble Date: Authors: Month Year Month Year
Submission Title: FPP-SUN Bad Urban GFSK vs OFDM
CT-474: Satellite Communications
Consideration on PER Prediction for PHY Abstraction
May 2015 Bandwidth and Packet Type Detection Schemes for 40-50GHz Millimeter Wave Communication Systems Authors: Frank Hsu, et. al. (MediaTek)
Month Year doc.: IEEE yy/xxxxr0 January 2008
CSMA/CN: Carrier Sense Multiple Access with Collision Notification
19, Yangjae-daero 11gil, Seocho-gu, Seoul , Korea
Stateful Inter-Packet Signal Processing for Wireless Networking
Experimental Study of NOMA/SOMA in Wi-Fi
Wireless PHY (Modulation)
No Time to Countdown: Backing Off in Frequency Domain
<month year> <doc.: IEEE doc> January 2013
PHY Abstraction based on PER Prediction
Optimal Combining of STBC and Spatial Multiplexing for MIMO-OFDM
WUR FDMA Padding Content
19, Yangjae-daero 11gil, Seocho-gu, Seoul , Korea
STBC in Single Carrier(SC) for IEEE aj (45GHz)
Consideration on PER Prediction for PHY Abstraction
Duration in L-SIG Date: Authors: May 2010 Month Year
Legacy Coexistence – A Better Way?
High-Speed Broadband Wireless LAN Solution
19, Yangjae-daero 11gil, Seocho-gu, Seoul , Korea
PHY Performance Evaluation with 60 GHz WLAN Channel Models
802.11a - High Speed PHY in the 5 GHz band PHY overview
Presentation transcript:

AccuRate: Constellation Aware Rate Estimation in Wireless Networks Souvik Sen, Naveen Santhapuri, Romit Roy Choudhury, Srihari Nelakuditi

Bit-rate in Wireless Networks Wireless link throughput depends on transmission bit-rate 6 Mbps 24 Mbps Choosing the optimal bit-rate is an important problem

Bit-rate in Wireless Networks Optimal bit-rate selection is challenging because the wireless channel varies over: Space Time 6 Mbps Channel Time 24 Mbps Channel Time

Current Wireless Rate Selection Frame Based Remember History SampleRate, RRAA SNR Based Data RBAR, CHARM Data SNR ACK ✦ Recently PHY-based: ✦ SoftRate [SIGCOMM ʼ09] • Uses a BER heuristic to estimate bit rate BER accurately identifies when to increase/decrease rate However, may not be able to jump to optimal rate

Ideally Tx wants optimal rate for next packet

Function of optimal rate of the previous packet Ideally Tx wants optimal rate for next packet Function of optimal rate of the previous packet

Function of optimal rate of the previous packet Ideally Tx wants optimal rate for next packet Function of optimal rate of the previous packet

Ideally Tx wants optimal rate for next packet Function of optimal rate of the previous packet In other words, Given a transmission at rate R, what would have been the max rate R*, at which that transmission would have been successful

Ideally Tx wants optimal rate for next packet Function of optimal rate of the previous packet In other words, Given a transmission at rate R, what would have been the max rate R*, at which that transmission would have been successful We propose AccuRate

Background: Symbols, Modulation, Bit-rate

Physical Layer Symbols = 01111001 .... Data 11 01 00 10 Tx 4QAM Symbol

Physical Layer Symbols = 01111001 .... Data 2 bits together 11 01 00 10 Tx 4QAM Symbol

Physical Layer Symbols = 01111001 .... Data 2 bits together 11 01 00 10 Tx 4QAM Symbol

Symbols to Modulation = 01111001 .... Data 11 01 00 10 Tx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol 2 bits together Data 2 bits together 11 01 00 10 Tx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol Rx 4QAM Symbol Data 2 bits together 11 01 11 01 11 11 Channel 01 01 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol Rx 4QAM Symbol Data 2 bits together 11 01 11 01 Dispe rsion 11 11 Channel 01 01 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol Rx 4QAM Symbol Data 2 bits together 11 01 11 01 Dispe rsion 11 11 Channel 01 01 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol Rx 4QAM Symbol Data 2 bits together 11 01 11 01 Dispe rsion Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol

Symbols to Modulation = 01111001 .... Tx 4QAM Symbol Rx 4QAM Symbol Disper sion = 01111001 .... Data 2 bits together Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol

Different Modulations in 802.11 01 11 01 Dispe rsion = 01111001 .... Data 2 bits together Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol 011 Dispersion 1 = 01111001 .... Data Channel 4 bits together Tx 16QAM Symbol Rx 16QAM Symbol

Different Modulations in 802.11 01 11 01 Dispe rsion = 01111001 .... Data 2 bits together Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol 01111 Dispersion = 01111001 .... Data Channel 6 bits together Tx 64QAM Symbol Rx 64QAM Symbol

Why not always transmit many bits per symbol? e.g., 64QAM or 54Mbps

Weak Channel Induces Errors = 01111001 .... Data Tx 16QAM Symbol

Weak Channel Induces Errors = 01111001 .... Data Weak Channel Tx 16QAM Symbol

Weak Channel Induces Errors High Dispersion = 01111001 .... Data Weak Channel Tx 16QAM Symbol

Weak Channel Induces Errors High Dispersion = 01111001 .... Data Weak Channel Tx 16QAM Symbol Wrongly demodulated symbol

In General ... Weak Channel Moderate Channel 01 0111 Strong Channel

In General ... 01 0111 Weak Channel Moderate Channel Strong Channel 6 Mbps Moderate Channel 01 24 Mbps 0111 Strong Channel 36 Mbps

In General ... Smaller dispersion permits higher rate 01 0111 Weak Channel 6 Mbps Moderate Channel 01 24 Mbps 0111 Strong Channel 36 Mbps Smaller dispersion permits higher rate

AccuRate Design and Implementation

AccuRate Design and Implementation Hypothesis: Symbol dispersion is independent of modulation

Dispersion Independent of Modulation? 11 01 11 01 00 10 00 10 Channel Tx 4QAM Rx QPSK Tx 16QAM Rx16QAM

Dispersion Independent of Modulation? Testbed 1 0.8 0.6 Fraction of symbols 0.4 BPSK QPSK 16QAM 64QAM 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 0.2 Symbol dispersion magnitude

Dispersion Independent of Modulation? Testbed 1 0.8 0.6 Fraction of symbols 0.4 BPSK QPSK 16QAM 64QAM 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 0.2 Symbol dispersion magnitude McKinley et. al., 2004,“EVM calculation for broadband modulated signals”

Symbol dispersion is independent of modulation Hypothesis: Symbol dispersion is independent of modulation Selection of optimal modulation

Data

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

BPSK Data 4QAM 16QAM

We call it Virtual Channel Replay BPSK Data 4QAM 16QAM We call it Virtual Channel Replay

Channel Replay Vector V = {d1, d2, ...., dn} ✦ AccuRate records dispersion for every symbol in a packet ✦ Creates a vector: Channel Replay Vector (V) d1 V = {d1, d2, ...., dn}

✦ When packet succeeds ✦ When packet fails Channel Replay Vector ✦ AccuRate records dispersion for every symbol in a packet ✦ Creates a vector: Channel Replay Vector (V) d1 V = {d1, d2, ...., dn} ✦ When packet succeeds ✦ All dispersions are known ✦ When packet fails ✦ Approximates V from (known) preamble/postamble

Receiver Channel Demodulator Packet

Channel Replay CRC Check BPSK Demodulator Receiver Demodulator Packet

Channel Replay CRC Check BPSK Demodulator Receiver Demodulator Packet

Channel Replay CRC Check BPSK Demodulator Channel Replay CRC Check Receiver Channel Demodulator Channel Replay CRC Check Packet BPSK Demodulator Channel Replay CRC Check 4QAM Demodulator

Channel Replay CRC Check BPSK Demodulator Channel Replay CRC Check Receiver Channel Demodulator Channel Replay CRC Check Packet BPSK Demodulator Channel Replay CRC Check 4QAM Demodulator

Channel Replay CRC Check BPSK Demodulator Channel Replay CRC Check Receiver Channel Demodulator Channel Replay CRC Check Packet BPSK Demodulator Channel Replay CRC Check 4QAM Demodulator Channel Replay CRC Check 16QAM Demodulator

Channel Replay CRC Check BPSK Demodulator Channel Replay CRC Check Receiver Channel Demodulator Channel Replay CRC Check Packet BPSK Demodulator Channel Replay CRC Check 4QAM Demodulator Channel Replay CRC Check 16QAM Demodulator

Best Rate Channel Replay CRC Check BPSK Demodulator Channel Replay CRC Receiver Channel Demodulator Channel Replay CRC Check Packet BPSK Demodulator Best Rate Channel Replay CRC Check 4QAM Demodulator Channel Replay CRC Check 16QAM Demodulator

Bit-rate is a function of both modulation and coding

<modulation, coding> for a received packet? Can we find the optimal <modulation, coding> for a received packet?

CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Demodulator Receiver Channel Demodulator Decoder CRC Check Data Channel Replay BPSK 1/2 Demodulator Decoder CRC Check Channel Replay BPSK 3/4 Demodulator Decoder CRC Check Channel Replay QAM4 1/2 Demodulator Decoder CRC Check Channel Replay QAM4 3/4 Demodulator Decoder CRC Check Channel Replay QAM64 3/4 Demodulator Decoder

CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Demodulator Receiver Channel Demodulator Decoder CRC Data Channel Replay BPSK 1/2 Demodulator Decoder 6 Mbps Check CRC Check Channel Replay BPSK 3/4 Demodulator Decoder CRC Check Channel Replay QAM4 1/2 Demodulator Decoder CRC Check Channel Replay QAM4 3/4 Demodulator Decoder CRC Check Channel Replay QAM64 3/4 Demodulator Decoder

CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Demodulator Receiver Channel Demodulator Decoder CRC Data Channel Replay BPSK 1/2 Demodulator Decoder 6 Mbps Check CRC Channel Replay BPSK 3/4 Demodulator Decoder 9 Mbps Check CRC Check Channel Replay QAM4 1/2 Demodulator Decoder CRC Check Channel Replay QAM4 3/4 Demodulator Decoder CRC Check Channel Replay QAM64 3/4 Demodulator Decoder

CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Demodulator Receiver Channel Demodulator Decoder CRC Data Channel Replay BPSK 1/2 Demodulator Decoder 6 Mbps Check CRC Channel Replay BPSK 3/4 Demodulator Decoder 9 Mbps Check CRC Channel Replay QAM4 1/2 12 Mbps Demodulator Decoder Check CRC Check Channel Replay QAM4 3/4 Demodulator Decoder CRC Check Channel Replay QAM64 3/4 Demodulator Decoder

CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Demodulator Receiver Channel Demodulator Decoder CRC Data Channel Replay BPSK 1/2 Demodulator Decoder 6 Mbps Check CRC Channel Replay BPSK 3/4 Demodulator Decoder 9 Mbps Check CRC Channel Replay QAM4 1/2 12 Mbps Demodulator Decoder Check CRC 18 Mbps Channel Replay QAM4 3/4 Demodulator Decoder Check CRC 54 Mbps Channel Replay QAM64 3/4 Demodulator Decoder Check

Best Rate CRC Check CRC Check CRC Check CRC Check CRC Check BPSK 1/2 Receiver Channel Demodulator Decoder CRC Data Channel Replay BPSK 1/2 Demodulator Decoder 6 Mbps Check CRC Channel Replay BPSK 3/4 Demodulator Decoder 9 Mbps Check Best Rate CRC Channel Replay QAM4 1/2 12 Mbps Demodulator Decoder Check CRC 18 Mbps Channel Replay QAM4 3/4 Demodulator Decoder Check CRC 54 Mbps Channel Replay QAM64 3/4 Demodulator Decoder Check

Performance Evaluation ✦ Used 802.11 like Tx and Rx design on USRP/GnuRadio ✦ Modulation: BPSK, QPSK, 16QAM, 64QAM Coding: Convolution coding with puncturing with rate 1/2, 3/4 Compare with Softrate, SNR-based ✦ Testbed ✦ 10 traces at walking speed Trace based evaluation Channel Simulator ✦ Simulation ✦ Characterize AccuRateʼs performance under high mobility Raleigh fading channel simulator ported to GnuRadio

What is the True Optimal Rate? ✦ Testbed ✦ Using train of packets (Virtual Packet) Each Virtual Packet consists of data packets at all bit-rates Similar method as Softrate Virtual Packet 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 54Mbps

What is the True Optimal Rate? ✦ Testbed ✦ Using train of packets (Virtual Packet) Each Virtual Packet consists of data packets at all bit-rates Similar method as Softrate Virtual Packet 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 54Mbps

What is the True Optimal Rate? ✦ Testbed ✦ Using train of packets (Virtual Packet) Each Virtual Packet consists of data packets at all bit-rates Similar method as Softrate Virtual Packet 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 54Mbps Optimal Optimal-1 Optimal+1

Can we estimate the optimal rate? Simulation Testbed 1 1 Simulation Testbed Fraction of Packets 0.8 Fraction of Packets 0.8 0.6 0.6 0.4 0.4 AccuRate correct-packets AccuRate using preamble AccuRate pre+postamble AccuRate correct-packets AccuRate using preamble AccuRate pre+postamble 0.2 0.2 -1 -1 Optimal 1 Optimal 1 (AccuRate Rate) minus (Optimal Rate) (AccuRate Rate) minus (Optimum Rate) For correctly received packets, 100% in Simulation, 95% in Testbed

AccuRate needs to detect Interference

Rate selection needs to be independent of interference AccuRate needs to detect Interference b Rate selection needs to be independent of interference

How to Detect Interference? ✦ Interference causes substantial symbol dispersion Interference

How to Detect Interference? ✦ Interference starts first: Preamble with high dispersion Data Interference ✦ Interference starts second: Postamble with high dispersion Data Interference

How to Detect Interference? ✦ Interference starts first: Preamble with high dispersion Data Interference ✦ Interference starts second: Postamble with high dispersion Data Interference Compare preamble with postamble dispersion

Interference Detection Accuracy Testbed Testbed 1.2 AccuRate Softrate Fraction of Lost Packets 1 0.8 0.6 0.4 0.2 BPSK 1/2 BPSK 3/4 QPSK 1/2 QPSK 3/4 QAM16 1/2 QAM16 3/4 Bit Rate

Interference Detection Accuracy Testbed Testbed 1.2 AccuRate Softrate Fraction of Lost Packets 1 0.8 0.6 0.4 0.2 BPSK 1/2 BPSK 3/4 QPSK 1/2 QPSK 3/4 QAM16 1/2 QAM16 3/4 Bit Rate Detection Accuracy is better at higher rates (95%)

Estimation Performance with Interference Testbed Testbed-AccuRate 1.2 Overselect Accurate Underselect Over select 1 Fraction of Lost Packets 0.8 0.6 Correct 0.4 0.2 Under select BPSK 1/2 BPSK 3/4 QPSK 1/2 QPSK 3/4 Bit Rate QAM16 1/2 QAM16 3/4

Estimation Performance with Interference Testbed Testbed-AccuRate 1.2 Overselect Accurate Underselect Over select 1 Fraction of Lost Packets 0.8 0.6 Correct 0.4 0.2 Under select BPSK 1/2 BPSK 3/4 QPSK 1/2 QPSK 3/4 Bit Rate QAM16 1/2 QAM16 3/4 91% accuracy in Optimal rate selection

AccuRate estimates the optimal rate for an already received packet What is the performance if the next transmission uses this rate?

Throughput at Walking Speeds Testbed AccuRate Softrate Testbed Normalized Throughput SNR based 1 0.8 0.6 0.4 0.2 0 1 2 3 4 5 6 7 8 9 10 11 Walking Trace Number

Throughput at Walking Speeds Testbed AccuRate Softrate Testbed Normalized Throughput SNR based 1 0.8 0.6 0.4 0.2 0 1 2 3 4 5 6 7 8 9 10 11 AccuRate achieves 87% of the optimal throughput Walking Trace Number

Throughput under Mobility Simulation 18 16 14 12 10 8 6 4 2 AccuRate Softrate Throughput (Mbps) SNR based 1ms .5ms .2ms Channel Coherence Time .1ms AccuRate performs well even under high mobility

✦ Rate estimation sub-optimal under packet failure Limitations ✦ Hardware Complexity ✦ AccuRate targets optimal rate estimation Does not consider implementation cost ✦ Rate estimation sub-optimal under packet failure ✦ Pre/Post amble based estimation achieves 93% accuracy Improvements possible with midamble ✦ Interfering packet may engulf or be engulfed by data ✦ AccuRate unable to detect such cases

✦ AccuRate uses symbol dispersion to estimate bit-rate Summary ✦ AccuRate uses symbol dispersion to estimate bit-rate ✦ Symbol dispersion is a measure of channel behavior ✦ AccuRate replays this channel on different bit-rates ✦ The max rate that “passes” this replay is declared optimal ✦ The optimal rate is prescribed for subsequent transmissions ✦ USRP testbed results show 87% of optimal throughput ✦ SoftRate capable of choosing very good bit-rates ✦ AccuRate pushes rate estimation towards optimality