Title: Bluetooth: Scheduling
1Bluetooth Scheduling
- Reference Enhancing performance of asynchronous
data traffic over the Bluetooth wireless ad-hoc
network Das, A. Ghose, A. Razdan, A. Saran,
H. Shorey, R. Proceedings, IEEE INFOCOM 2001,
pp. 591 -600 (BTSche-2.pdf)
2Introduction
- Contribution
- Propose two SAR policies with the aim of
increasing link utilization and decreasing
end-to-end delay of data packets - MAC scheduling algorithm are needed to achieve
fair sharing of bandwidth, high link utilization
and low queue occupancy - Demonstrate that Round-Robin scheduling is unable
to meet these requirements and proposed three new
scheduling algorithms - Investigate the performance improvement provided
by FEC and ARQ schemes - Compare the performance of different versions of
TCP over Bluetooth
3Bluetooth Protocol Stack
4Design Issues in BT
- 1. Segmentation and Reassembly schemes
- Supporting a maximum transmission unit (MTU) size
larger than the largest baseband packet - Note that the payload size (without FEC)
- 5 slot packet 339 bytes (67.8 bytes/slot)
- 3 slot packet 183 bytes (61 bytes/slot)
- 1 slot packet 27 bytes
- Define slot_limit as the maximum of slots
across which a baseband packet can be sent - May be less than 5 due to presence of SCO
connections or due to very high bit error rate in
the wireless channel - This parameter can be conveyed by the LMP to the
L2CAP through a signaling packet
5Design Issues in BT (cont)
- Two SAR schemes
- SAR-Best Fit (BF)
- SAR-Optimum Slot Utilization (OSU)
6Design Issues in BT (cont)
- Scheduling algorithms in BT
- Master-driven Round-Robin scheduling
- Achieve fair sharing of bandwidth and high link
utilization when each such connection has equal
data flow - However, each slave in the piconet has varying
data input rates - Consequently, numerous baseband slots are wasted
by polling sources with low input rate, thereby
decreasing link utilization, increasing queuing
delay and leading to unfair sharing bandwidth
7Design Issues in BT (cont)
- Two basic methods for scheduling
- 1. Queue Priority based on Flow Bit
- Assign priority to per-slave baseband queues at
the master (similar queues at the slave) based on
the pending data in the L2CAP buffers, and use
the flow bit field for this purpose - The flow bit is set when the number of packets in
the L2CAP buffer for a particular slave is larger
than a threshold buf_thresh - At the master, variable flow to quantify the
traffic rate on the wireless channel, which is
set when the flow bits for packets traveling in
either direction is turned on
8(No Transcript)
9Design Issues in BT (cont)
- 2. Queue Stickness
- To reduce mean queue occupancy, propose to
transmit a number of baseband packets
successively (quantified by a parameter
num_sticky) for each queue having the flow
parameter set - Three scheduling algorithms
- AFP, Sticky, StickyAFP
10Design Issues in BT (cont)
- 1. Adaptive Flow-based Polling (AFP)
- Define P0 the initial polling interval
- AFP uses an adaptive polling interval P, whose
value is changed based on the traffic rate - 1. If flow 1 and the HOL packet is a data
packet, transmit the data packet and set the
polling interval P to P0 (High rate for this
slave) - 2. If flow 0 and the HOL is a data packet,
transmit the data packet and keep the polling
interval unchanged - 3. If a polling packet is transmitted and a null
packet is received, double the current polling
interval P unless a threshold value Pthresh is
reached
11Design Issues in BT (cont)
- 2. Sticky
- 1. If flow 1, a maximum of num_sticky packets
are transmitted for that queue - 2. If flow 0, one packet is transmitted for
that queue, as in Round-Robin scheduling - 3. Sticky AFP
- Similar to AFP except that when flow 1 and the
HOL packet is a data packet, a maximum of
num_sticky packets are transmitted for that queue
12Design Issues in BT (cont)
- Error Handling
- For ARQ scheme, quantify timeout by a maximum
number of retransmissions tx_thresh - Using two state Markov channel model
- Study the effect of using FEC on the baseband
payload and of varying the parameter tx_thresh in
the ARQ scheme on the data throughput - Propose Channel State Dependent Packet (CSDP)
scheduling - Upon encountering a packet loss (NACK), CSDP
policies defer the retransmissions to that slave
till the next polling instant
13Design Issues in BT (cont)
- Number SCO connections
- The master sends SCO packets at regular
intervals, the so-called SCO intervals TSCO
(counted in slots) - In the presence of one SCO link, 1 and 3 slot ACL
packets can be supported - TCP variants
- TCP Tahoe, Reno, New Reno, Sack
14Simulation Model
15Simulation Model (cont)
- Performance Metrics
- Throughput, end-to-end delay, link utilization
- Fading Channel Model
rB 55.8 ms
rG 437.5 ms
1.263 x 10-3
6.879 x 10-5
16Simulation Results
- Performance evaluation SAR schemes
- Use Round-Robin scheduling at the MAC level
- Assume an error-free channel
- Compare SAR-BF vs. SAR-OSU
- Figures 5 7 for slave 1
17Simulation Results (cont)
For slave 1
18Simulation Results (cont)
For slave 1
19Simulation Results (cont)
20Simulation Results (cont)
- Observations
- 1. Higher throughput, higher overall link
utilization, and lower end-to-end delays can be
obtained by using SAR-OSU over SAR-BF - 2. The frequent fluctuations are due to the
bursty sources (simulated by intermittent CBR
traffic) - 3. Since two TCP connections are active between
10s 20s, fair sharing of bandwidth leads to a
drop in the individual throughput of TCP
connection to slave 1, while the overall link
utilization is seen to increase
21Simulation Results (cont)
- L2CAP Buffer size
- Use Round-Robin scheduling and assume an
error-free channel - Figures 8 9
- Observations
- 1. The average TCP throughput becomes almost
constant for a buffer size greater than four for
the persistent TCP connection - 2. Conclude that a buffer size of four to six
will optimally satisfy the memory requirements of
a generic BT device (set L2CAP buffer size 5 )
22Simulation Results (cont)
Long TCP slave 1 Short TCP slave 2
23Simulation Results (cont)
24Simulation Results (cont)
- Scheduling Algorithms
- Figure 10
- AFP and Sticky algorithms give significantly
improved performance compared to RR - The throughput of Sticky increases with increase
in the value of num_sticky and is approximately
the same as AFP for num_sticky16 - Figure 11
- The throughput of StickyAFP with num_sticky16 is
better than that of AFP and StickyAFP with
num_sticky4, but not very significant - Figure 12
- High link utilization is obtained for StickyAFP
(num_sticky16), Sticky (num_sticky16) and AFP,
as compared to Round-Robin
25Simulation Results (cont)
AFP, Sticky(16)
Sticky(4)
Sticky(2)
RR
For slave 1
26Simulation Results (cont)
StickyAFP (16)
AFP, StickyAFP(4)
For slave 1
27Simulation Results (cont)
StickyAFP(16)
AFP
Sticky(16)
RR
28Simulation Results (cont)
- Figure 13
- The Sticky algorithm is found to have the lowest
end-to-end delay while StickyAFP has the highest - 1. By increasing the polling interval, AFP
decreases the number of poll packets (for those
queues that have less data) which otherwise cause
underutilization of available bandwidth, and
hence increases link utilization - 2. Sticky reduces queue occupancy by transmitting
multiple packets consecutively from queues with a
high backlog, hence preventing queue overflow and
reducing end-to-end delay
29Simulation Results (cont)
- 3. StickyAFP causes a marked increase in the
end-to-end delay of intermittent CBR traffic
because flow is set infrequently for such bursty
sources - Additionally, each cycle has a larger duration
due to other slaves being served num_sticky times - Authors infer that AFP and Sticky(16) result in
the best overall performance
30Simulation Results (cont)
StickyAFP(16)
RR
AFP
Sticky(16)
31Simulation Results (cont)
- Effect of Error Correction Schemes
- For different values of tx_thresh (max. of
retransmissions of baseband packets) - AFP vs. CSDP-AFP (w/ and w/o FEC)
- Observations (Figures 14, 15, 16)
- Performance degradation in the presence of errors
- Additional reduction in link utilization and
increase in end-to-end delay due to the use of
FEC - When FEC is added, the performance is independent
of tx_thresh, and hence of the ARQ scheme
32Simulation Results (cont)
- ARQ leads to efficient error recovery and for
values of tx_thresh gt 4, the performance does not
vary significantly ? set tx_thresh 5 - Figure 16, CSDP versions of the proposed
scheduling algorithms do not give a significant
performance improvement and their relative
performance is the same as that in the error-free
channel condition - CSDP versions do not improve the performance in
the presence of a link level ARQ scheme
33Simulation Results (cont)
AFP (error-free channel)
CSDP-AFP, AFP
CSDP-AFP (with FEC)
34Simulation Results (cont)
CSDP-AFP (with FEC)
CSDP-AFP, AFP
AFP (error-free channel)
35Simulation Results (cont)
CSDP-StickyAFP(16)
CSDP-AFP, AFP
CSDP-Sticky(16)
36Simulation Results (cont)
- Varying voice connections
- Using AFP
- Figures 17 18
- Observations
- The throughput decreases and end-to-end delay
increases as the number of SCO connections
increase - Higher throughput and lower end-to-to-end delay
is obtained for slot_limit 3 than for
slot_limit 1
37Simulation Results (cont)
NSCO0, slot_limit5
TSCO6, NSCO1, slot_limit3
38Simulation Results (cont)
TSCO6, NSCO2, slot_limit1
TSCO4, NSCO1, slot_limit1
TSCO6, NSCO1, slot_limit1
TSCO6, NSCO1, slot_limit3
NSCO0, slot_limit5
39Simulation Results (cont)
- TCP variants (Fig. 19)
- The difference in throughput is insignificant
which clearly illustrates that the efficient link
layer ARQ scheme of BT eliminates the need for
modifications at the transport layer for error
recovery
40Simulation Results (cont)