ICC 2009 June 14-18 in Dresden, Germany
Department of Information EngineeringUniversity of Padova, ITALY
Carrier–Sense ARQ: Squeezing Out Bluetooth
Performance while Preserving Standard Compliancy
Andrea Zanella
IEEE ICC 2009 June 14-18 in Dresden, Germany
Special Interest Group on NEtworking & Telecommunications
ICC 2009 June 14-18 in Dresden, Germany
Motivations Bluetooth was designed to be integrated in portable
battery driven electronic devices
Energy Saving is a key issue!Energy Saving is a key issue! Units periodically scan radio channel for valid packets Scanning takes just the time for a valid packet to be recognized Units that are not addressed by any valid packet are active for less
than 10% of the time
WPAN market is expanding and it aims at becoming the standard the facto for short range communications
High Throughput is very welcome!High Throughput is very welcome! Bluetooth v2.0 + EDR (Enhanced Data Rate) promise bit rates up to 3
Mbps and faster node connections
ICC 2009 June 14-18 in Dresden, Germany
Retransmissions
Automatic Retransmission Query (ARQ): Each data packet is transmitted and retransmitted until positive acknowledge
is returned by the destination Negative acknowledgement is implicitly assumed!
Errors on return packet determine transmission of duplicate packets (DUPCK) Slave filters out DUPCKs by checking their sequence number
DUPCKs waste energy & throughput!!! A. Zanella "A Mathematical Framework for the Performance Analysis of Bluetooth with
Enhanced Data Rate" , IEEE Transactions on Communications, August 2009 M. Valenti and M. Robert, “Custom coding, adaptive rate control, and distributed
detection for bluetooth,” VTC 2002
MASTER
SLAVE
A B B BB
G F H
NAK
ACK
H
B
A X B X DPCK DPCK
ICC 2009 June 14-18 in Dresden, Germany
Aims of the work Goal:
Improve performance by reducing the number of DUPCKs!!!
Method
Enhance the native ARQ scheme with Carrier Sense to avoid
useless retransmissions Carrier sensing is generally provided by last generation chipset
Carrier-Sense ARQ CS-ARQ
Key idea
Carrier-sense can be used to infer transmission outcome in case slave’s reply is not received! Idle channel: slave did not received master’s
pck and, hence, did not reply RTX is needed
Busy channel: slave sent back ACK or NAK that got lost RTX may generate DUPCK!!!
ICC 2009 June 14-18 in Dresden, Germany
Key idea (cont)
To avoid tx of DUPCKs, any time the slave’s feedback id doubtful (busy channel with no valid packet) enter a soliciting phase
In the soliciting phase Suspend the ARQ scheme Keep sending POLL packets until a valid frame
is returned by the slave Resume the ARQ scheme using the ACK info
carried by the slave’s frame
ICC 2009 June 14-18 in Dresden, Germany
CS-ARQ: state diagram
ICC 2009 June 14-18 in Dresden, Germany
Fetch a new packet
Fetch a new packet
Tx packet & wait for feedback
Tx packet & wait for feedback
Slave’s feedback
Slave’s feedbackNAK ACK
No valid pck rcvd
Carrier SenseCarrier SenseIDLE
Tx POLLTx POLL Slave’s feedback
Slave’s feedback
ACK
NAK
No valid pck rcvd
BUSY
ICC 2009 June 14-18 in Dresden, Germany
Mathematical model (I) Assumptions:
Single slave piconet Saturated links
Master and slave have always packets waiting for transmission
Unlimited retransmission attempts Packets are transmitted over and over again until positive acknowledgement
Static Segmentation & Reassembly policy Unique packet type per connection
Independent error events in successive transmissions Justified by FH
Model CS-ARQ behavior described by by means of a 2-State Markov Chain
Define appropriate reward functions Data, Energy, Time
Apply renewal reward theorem to get system performance Throughput, energy efficiency, energy balancing, …
ICC 2009 June 14-18 in Dresden, Germany
Mathematical Model (II) State A Standard ARQ phase
Master transmits packets that have never been
correctly received by the slave
State S Soliciting Phase Master transmits POLLs waiting for a valid
reply frame
AA SS
PAS
PSA
1-PAS 1-PSA
Reception Event Index
Slaves rx
Master rx
State transition probabilities depend on the reception events… Ds = Data successful
AC ok, HEAD ok, CRC ok Df = Data failure
AC ok, HEAD ok, CRC error Hf = HEAD failure
AC ok, HEAD error Af = AC failure
AC error
ICC 2009 June 14-18 in Dresden, Germany
Mathematical Model (III) State A Standard ARQ phase
Master transmits packets that have never been
correctly received by the slave
State S Soliciting Phase Master transmits POLLs waiting for a valid
reply frame
€
π A =PAS
PAS + PSA
The steady-state probabilities are, then,
€
πD =PSA
PAS + PSA
AA SS
PAS
PSA
1-PAS 1-PSA
ICC 2009 June 14-18 in Dresden, Germany
Reward Functions
∑∈
=EjE
xjj
xDD )()(
π
For each state j we define the following reward functions
Tj= Average amount of time spent in state j
Dj(x)= Average amount of data delivered by unit x{M,S}
Wj(x)= Average amount of energy consumed by unit x{M,S}
The average amount of reward earned in state j is given by
∑∈
=EjE
xjj
xWW )()(
π∑∈
=EjE
jjTT π
Performance indexes Energy Efficiency: Energy Efficiency:
Goodput: G( )( ) T
DD
T
DG
MS )()(
lim+
==∞→ τ
ττ
( )( ) )()(
)()(
limMS
MS
WW
DD
W
D
+
+==
∞→ τ
τξ
τ
ICC 2009 June 14-18 in Dresden, Germany
Performance Analysis
Results
Case study scenario
The model is general and can be applied to any other scenario
We here focus on a simple scenario as an example of the results that analysis enabled by the model
Case-study Rayleigh fading Same SNR at master & slave Downlink traffic only
ICC 2009 June 14-18 in Dresden, Germany
Goodput
ICC 2009 June 14-18 in Dresden, Germany
Std ARQ goodput
CS-ARQ yields from 20 kb/s to 100 kb/s goodput gain, provided that the correct packet format is selected
Single-slot packet formats do not bring any improvement
2EDR is preferbale for SNR<20 dB, 3EDR for SNR>20 dB
Energy efficiency
ICC 2009 June 14-18 in Dresden, Germany
Std ARQ energy efficiency
CS-ARQ yields from 5% up to 40% energy efficiency gain 2EDR is preferbale for SNR<20 dB, 3EDR for SNR>20 dB
ICC 2009 June 14-18 in Dresden, Germany
Conclusions
CS-ARQ yields some performance gain almost for free Only requires CS capability and very limited software
changes Furthermore, CS-ARQ is
Fully Standard compliant Complementary to other performance enhancement
schemes Stand-Alone (suffices to be implemented by the
master)