audio streaming over bluetooth: an adaptive arq timeout approach

21
Audio Streaming over Bluetooth: Audio Streaming over Bluetooth: An Adaptive ARQ Timeout An Adaptive ARQ Timeout Approach Approach Ling-Jyh Chen, Rohit Kapoor, Kevin Lee, M. Y. Sanadidi, Mario Gerla Department of Computer Science, University of California at Los Angeles

Upload: nyssa-tillman

Post on 30-Dec-2015

22 views

Category:

Documents


0 download

DESCRIPTION

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach. Ling-Jyh Chen, Rohit Kapoor, Kevin Lee, M. Y. Sanadidi, Mario Gerla. Department of Computer Science, University of California at Los Angeles. Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach. Outline. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

Audio Streaming over Bluetooth: Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAn Adaptive ARQ Timeout Approach

Ling-Jyh Chen, Rohit Kapoor, Kevin Lee,

M. Y. Sanadidi, Mario Gerla Department of Computer Science, University of California at Los Angeles

Page 2: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Outline

Introduction Background and related work Proposed approach Implementation and experiment results Conclusion

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 3: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Introduction

Wireless PAN is becoming popular nowadays. Digital media, such as audio/video streaming, is

becoming more desired than before. The varying nature of the wireless link makes

audio streaming over wireless become a challenging problem.

A well-designed solution should minimize the packet loss rate and delay of perceived streaming data.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 4: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Bluetooth Overview

The “enabler” of Personal Area Network (PAN) Low power, low cost, and smaller chips

Mode FEC

Packet SymmetricThroughput

(kbps)

AsymmetricThroughput

(kbps)Size

(bytes)Length(slots)

DM1 yes 17 1 108.8 108.8 108.8

DM3 yes 121 3 258.1 387.2 54.4

DM5 yes 227 5 286.7 477.8 36.3

DH1 no 27 1 172.8 172.8 172.8

DH3 no 183 3 390.4 585.6 86.4

DH5 no 339 5 433.9 723.2 57.6

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 5: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Real-time StreamingReal-time Streamingadapt sending rate and stream qualityadapt sending rate and stream quality

Best-effort StreamingBest-effort Streamingadapt sending rateadapt sending rate

Streaming Overview

SCPSCP

RAPRAPTEARTEAR

TFRCTFRC

VTPVTP

HelixHelix

MicrosoftMicrosoft

All of the upper layer streaming protocols has no ideas about link layer behavior.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 6: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Link Layer Enhancements Three potential solutions [RFC 3366]:

1. Retransmission (e.g. ARQ)

2. Redundancy (e.g. FEC)

3. Interleaving

Challenges User-perceived streaming quality Random errors vs bursty errors

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 7: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Retransmission - ARQ

Stop-and-wait ARQ: retransmit a packet until either the acknowledgement of a successful reception is received or the retransmission timeout is exceeded.

HighHighLowLowRetransmission timeoutRetransmission timeout

Enlarge the delay, and degrade the streaming quality

Increase reliability

More packets will be dropped, and the streaming quality will become poor

Decrease delay

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 8: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Redundancy - FEC

ProsPros ConsCons

Robustness against random errors

Redundancy overhead

Bit 1 Bit 2 Bit 3 . . . Bit 14 Bit 15

Bit 16 Bit 17 Bit 18 . . . Bit 29 Bit 30

Bit 31 Bit 32 Bit 33 . . . Bit 44 Bit 45

. . . . . . . . . . . . . . . . . .

Bit n-14 Bit n-13 Bit n-12 . . . Bit n-1 Bit n

0 1 2 13 14

1

2

3

n/15

Bit sequence in packetAn Example:An Example: Bluetooth DM modeThe FEC coding scheme used in DM mode is a (15, 10) shortened Hamming code, in which each block of 10 information bits is encoded into a 15 bit codeword, and it is capable of correcting single bit error in each block.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 9: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Error Model

Good Bad Pbb

Pbg

Pgb

Pgg

gbbb

bbg PP

PP

1

1

gbbb

gbb PP

PP

1

Burst Error Model (aka Burst Error Model (aka Gilbert-Elliott model)Gilbert-Elliott model)

• Wireless errors are usually bursty in occurrences.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 10: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Wireless Channel Model (cont.)

0 0.25 0.5 0.75 1Pgb 0.60.75

0.9Pbb

020406080

100

Burst Error Length

Retransmissions are still required when burst errors are present!!Retransmissions are still required when burst errors are present!!

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 11: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Related Work

S. Krishnamachari et al proposed to adaptively change the maximum number of MAC layer retransmissions and FEC encoding level in the application layer by using the estimated MAC layer link quality (SNR).

However, the link quality prediction may not be appropriate due to the dynamics of wireless networks.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 12: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Proposed Approach Adaptive ARQ Timeout in Bluetooth

Problem: The deployed stop and wait ARQ is harmful to real-time streaming audio over Bluetooth, especially in the error prone environment.

Aim: to reduce the audio packet delay and loss rate Ideas:

If we spent too much time on sending packet n, then we should decrease RTO on packet n+1

If we save some time on sending packet n, then we should increase RTO on packet n+1

If we drop at least two of the last 5 packets, then we should reset RTO

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 13: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

RTO Update Equation

Initialization

Update

Reset

9.0 ; 1.1 ; 25.0

%75)(80min

droppedpacket if ;

SRTTRTT if ;

SRTTRTT if ;

'

)1('

SizeUsedBufferizeMaxBufferSRTO

RTO

RTO

RTO

RTO

RTTSRTTSRTT

)2%,75)((80

SizeUsedBufferizeMaxBufferSMaxRTO

RTTSRTT

)2%,75)((80 SizeUsedBufferizeMaxBufferSMaxRTO

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 14: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

RTP Packet

BNEP

L2CAP

HCI

Baseband

Audio Server

BNEP

L2CAP

HCI

Baseband

Audio Client128kbps MP380 ms/RTP packet

RTP Packet BufferFlush Timeout Packets

RTP Packet RTTLink Quality

Average DelayRTP Packet Loss Rate

Implementation

BlueZBlueZ

BluetoothBluetoothDeviceDevice

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

DH5 packet

Page 15: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Measure Link Quality Get_Link_Quality function call (in BT spec.) Get_Link_Quality: This command returns the value of the

Link Quality. It returns a number between 0 and 255, with the higher value representing a better channel. Each Bluetooth module vendor will determine how to measure the link quality

For CSR Bluetooth ChipsetsIf BER (Bit Error Rate) = 0, LQ (Link Quality) = 255

If BER <= 40/40000, LQ = 255 – BER * 40000

If 40/40000<BER <= 4000/40000, LQ = 215 – ((BER / 32) * 40000)

If 4000/40000<BER <= 40000/40000, LQ=105– ((BER / 256)* 40000)

0

50

100

150

200

250

3000

0.01

0.02

0.02

0.03

0.04

0.05

0.06

0.06

0.07

0.08

0.09 0.1

Bit Error Rate

Lin

k Q

ual

ity

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 16: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Experiments

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 17: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

0

200

400

600

800

1000

1200

1400

400 450 500 550 600

Tim

e (

mse

c)

RTP seqno

RTT

RTO

drop

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 18: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

10

20

30

40

50

60

70

80

90

100

0 0.0005 0.001 0.0015 0.002 0.0025 0.003 0.0035 0.004 0.0045

Pa

cke

t R

ate

(%

)

Bit Error Rate

Adapt pkt

Fixed 160 pkt

Fixed 400 pkt

Fixed 1200 pkt

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 19: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

100

150

200

250

300

350

400

0 0.0005 0.001 0.0015 0.002 0.0025 0.003 0.0035 0.004 0.0045

Avg

. D

ela

y T

ime

(m

s)

Bit Error Rate

Adapt delay

Fixed 160 delay

Fixed 400 delay

Fixed 1200 delay

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 20: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Conclusion

Such cross-layer optimization can significantly improve application performance in PAN.

Our proposed approach is simple and applicable to other wireless technologies.

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach

Page 21: Audio Streaming over Bluetooth:  An Adaptive ARQ Timeout Approach

MNSA 20043/24/2004

Thank You!!Thank You!!

Audio Streaming over Bluetooth: An Adaptive ARQ Timeout ApproachAudio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach