Presentation is loading. Please wait.

Presentation is loading. Please wait.

AccuRate: Constellation Aware Rate Estimation in Wireless Networks

Similar presentations


Presentation on theme: "AccuRate: Constellation Aware Rate Estimation in Wireless Networks"— Presentation transcript:

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

2 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

3 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

4 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

5 Ideally Tx wants optimal rate for next packet

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

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

8 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

9 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

10 Background: Symbols, Modulation, Bit-rate

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

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

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

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

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

16 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

17 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

18 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

19 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

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

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

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

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

24 Weak Channel Induces Errors
= Data Tx 16QAM Symbol

25 Weak Channel Induces Errors
= Data Weak Channel Tx 16QAM Symbol

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

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

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

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

30 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

31 AccuRate Design and Implementation

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

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

34 Dispersion Independent of Modulation?
Testbed 1 0.8 0.6 Fraction of symbols 0.4 BPSK QPSK 16QAM 64QAM 0.2 Symbol dispersion magnitude

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

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

37 Data

38 BPSK Data 4QAM 16QAM

39 BPSK Data 4QAM 16QAM

40 BPSK Data 4QAM 16QAM

41 BPSK Data 4QAM 16QAM

42 BPSK Data 4QAM 16QAM

43 BPSK Data 4QAM 16QAM

44 BPSK Data 4QAM 16QAM

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

46 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}

47 ✦ 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

48 Receiver Channel Demodulator Packet

49 Channel Replay CRC Check BPSK Demodulator Receiver Demodulator Packet

50 Channel Replay CRC Check BPSK Demodulator Receiver Demodulator Packet

51 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

52 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

53 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

54 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

55 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

56 Bit-rate is a function of both modulation and coding

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

58 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

59 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

60 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

61 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

62 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

63 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

64 Performance Evaluation
✦ Used 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

65 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

66 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

67 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

68 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

69 AccuRate needs to detect Interference

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

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

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

73 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

74 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

75 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%)

76 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

77 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

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

79 Throughput at Walking Speeds
Testbed AccuRate Softrate Testbed Normalized Throughput SNR based 1 0.8 0.6 0.4 0.2 Walking Trace Number

80 Throughput at Walking Speeds
Testbed AccuRate Softrate Testbed Normalized Throughput SNR based 1 0.8 0.6 0.4 0.2 AccuRate achieves 87% of the optimal throughput Walking Trace Number

81 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

82 ✦ 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

83 ✦ 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


Download ppt "AccuRate: Constellation Aware Rate Estimation in Wireless Networks"

Similar presentations


Ads by Google