Audio Streaming over Bluetooth: An Adaptive ARQ Timeout

Download Report

Transcript Audio Streaming over Bluetooth: An Adaptive ARQ Timeout

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
Introduction
 Background and related work
 Proposed approach
 Implementation and experiment results
 Conclusion

3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
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.
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Bluetooth Overview


The “enabler” of Personal Area Network (PAN)
Low power, low cost, and smaller chips
Packet
3/24/2004
Mode
FEC
Size
(bytes)
Length
(slots)
Symmetric
Throughput
(kbps)
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
MNSA 2004
Asymmetric
Throughput
(kbps)
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Streaming Overview
Best-effort Streaming
Real-time Streaming
adapt sending rate
adapt sending rate and stream quality
SCP
VTP
RAP
TEAR
Helix
Microsoft
TFRC
All of the upper layer streaming protocols
has no ideas about link layer behavior.
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Link Layer Enhancements

Three potential solutions [RFC 3366]:
Retransmission (e.g. ARQ)
2. Redundancy (e.g. FEC)
3. Interleaving
1.

Challenges

User-perceived streaming quality
 Random errors vs bursty errors
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
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.
Decrease delay
Low
Increase reliability
Retransmission timeout
More packets will be dropped, and the
streaming quality will become poor
3/24/2004
MNSA 2004
High
Enlarge the delay, and degrade
the streaming quality
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Redundancy - FEC
Pros
Robustness against
random errors
Cons
Redundancy overhead
An Example:
Bluetooth DM mode
Bit sequence in packet
0
The 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.
3/24/2004
1
2
13
14
1
Bit 1
Bit 2
Bit 3
...
Bit 14
Bit 15
2
Bit 16
Bit 17
Bit 18
...
Bit 29
Bit 30
3
Bit 31
Bit 32
Bit 33
...
Bit 44
Bit 45
Bit n-1
Bit n
..................
n/15
MNSA 2004
Bit n-14
Bit n-13
Bit n-12
...
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Error Model
• Wireless errors are usually bursty in occurrences.
Burst Error Model (aka Gilbert-Elliott model)
1  Pbb
Pg 
1  Pbb  Pgb
Pbg
Pgg
Good
Bad
Pb 
Pgb
3/24/2004
Pbb
MNSA 2004
Pgb
1  Pbb  Pgb
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Wireless Channel Model (cont.)
Burst Error Length
100
80
60
40
20
0
0
0.25 0.5
Pgb
0.75
0.9
0.75 Pbb
1 0.6
Retransmissions are still required when burst
errors are present!!
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
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.
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
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:



3/24/2004
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
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
RTO Update Equation

Initialization

Update
SRTT  RTT
RTO  80 Max((MaxBufferSize  UsedBufferSize)  75%,2)
SRTT'  (1   )  SRTT    RTT
  RTO ; if RT T  SRT T

RTO'     RTO; if RT T  SRT T
 RTO; if packetdropped

min  RTO  80 ( MaxBufferSize  UsedBufferSize)  75%
  0.25 ;   1.1 ;   0.9

Reset
RTO  80 Max((MaxBufferSize  UsedBufferSize)  75%,2)
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Implementation
Audio Client
RTP Packet
Average Delay
RTP Packet Loss Rate
BlueZ
BNEP
BNEP
L2CAP
L2CAP
HCI
HCI
RTP Packet Buffer
Flush Timeout Packets
Bluetooth
Device
Baseband
Baseband
RTP Packet RTT
DH5 packet
Link Quality
3/24/2004
Audio Server
128kbps MP3
80 ms/RTP packet
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Measure Link Quality

Get_Link_Quality
function call (in BT spec.)
300
Get_Link_Quality: This command returns the value of the
Link Quality.
It returns a number between 0 and 255,
250
with the higher value representing a better channel.
200
Each Bluetooth
module vendor will determine how to
measure the link quality
150

100
For CSR
Bluetooth Chipsets
Link Quality

Bit Error Rate
3/24/2004
MNSA 2004
0.1
0.09
0.08
0.07
0.06
0.06
0.05
0.04
0.03
0.02
0.02
0.01
0
50 Error Rate) = 0, LQ (Link Quality) = 255
If BER (Bit
If BER <= 40/40000, LQ = 255 – BER * 40000
0
If 40/40000<BER <= 4000/40000, LQ = 215 – ((BER / 32) * 40000)
If 4000/40000<BER <= 40000/40000, LQ=105– ((BER / 256)* 40000)
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Experiments
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
1400
RTT
RTO
drop
1200
1000
800
600
400
200
0
400
3/24/2004
450
500
RTP seqno
MNSA 2004
550
600
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
100
90
80
70
60
50
40
30
Adapt pkt
Fixed 160 pkt
20
Fixed 400 pkt
Fixed 1200 pkt
10
0
0.0005
0.001
0.0015
0.002
0.0025
Bit Error Rate
3/24/2004
MNSA 2004
0.003
0.0035
0.004
0.0045
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
400
Adapt delay
Fixed 160 delay
Fixed 400 delay
350
Fixed 1200 delay
300
250
200
150
100
0
0.0005
0.001
0.0015
0.002
0.0025
Bit Error Rate
3/24/2004
MNSA 2004
0.003
0.0035
0.004
0.0045
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Conclusion

Such cross-layer optimization can
significantly improve application
performance in PAN.

Our proposed approach is simple and
applicable to other wireless technologies.
3/24/2004
MNSA 2004
Audio Streaming over Bluetooth: An Adaptive ARQ Timeout Approach
Thank You!!
3/24/2004
MNSA 2004