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