AccuRate: Constellation Aware Rate Estimation in Wireless Networks - PowerPoint PPT Presentation

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

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 Channel 6 Mbps Time Channel 24 Mbps Time

4. Current Wireless Rate Selection Frame Based SNR Based Remember Data History Data SNR ACK SampleRate, RRAA RBAR, CHARM ✦ 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. Ideally Tx wants optimal rate for next packet Function of optimal rate of the previous packet

7. 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 = 01111001 .... Data 01 11 00 10 Tx 4QAM Symbol

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

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

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

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

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

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

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

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

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

21. Different Modulations in 802.11 01 01 11 11 Dispersion = 01111001 .... Data 2 bits together Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol 0111 Dispersion = 01111001 .... Data Channel 4 bits together Tx 16QAM Symbol Rx 16QAM Symbol

22. Different Modulations in 802.11 01 01 11 11 Dispersion = 01111001 .... Data 2 bits together Channel 00 10 00 10 Tx 4QAM Symbol Rx 4QAM Symbol 011110 Dispersion = 01111001 .... 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 = 01111001 .... Data Tx 16QAM Symbol

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

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

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

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

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

30. In General ... Weak Channel 0 6 Mbps Moderate 01 Channel 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? 01 01 11 11 00 00 10 10 Channel Tx 4QAM Rx QPSK Tx 16QAM Rx16QAM

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

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

36. 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. BPSK Data 4QAM We call it Virtual Channel Replay 16QAM

46. Channel Replay Vector ✦ AccuRate records dispersion for every symbol in a packet ✦ Creates a vector: Channel Replay Vector (V) d 1 V = {d 1 , d 2 , ...., d n }

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

49. Receiver Channel Demodulator Channel CRC BPSK Demodulator Packet Replay Check

50. Receiver Channel Demodulator Channel CRC BPSK Demodulator Packet Replay Check

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

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

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

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

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

56. Optimal modulation Optimal rate

57. Optimal modulation Optimal rate Bit-rate is a function of both modulation and coding

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

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

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

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

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

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