BY ALEX GARCIA Scheduling in Bluetooth Networks
Introduction Bluetooth Used to interconnect mobile devices into a Personal area ad hoc network (PAN). Short-range radio technology operating in an industrial-scientific- medical (ISM) band at 2.45 GHz Piconet Two or more nodes sharing the same channel where 1 unit acts as a master and the other units up to seven act as slaves Scatternet Established by linking several piconets together to yield a global wireless ad hoc network. Bridge Delivers interpiconet messages between two neighboring piconets
Piconet Scheduling Schemes Pure Round Robin (PRR) A fixed cyclic order is defined, and a single chance to transmit is given to each master-slave queue pair. Exhaustive Round Robin (ERR) A fixed order is defined like PRR, but the master does not switch to the next pair until the master and slave queues are empty Exhaustive Pseudocyclic Master queue length (EPM) A dynamic cyclic order is defined at the beginning of each cycle according to a decreasing master-to-slave queue length order.
Piconet Scheduling Schemes Limited Round Robin (LRR) Similar to ERR except that the maximum number of transmission per cycle allows to get a limit on the cycle length and to avoid the unbounded cycle length. Limited and Weighted Round Robin (LWRR) Each slave is assigned a weight. Each time a slave is polled without data exchange between master and slave, the weight of the slave is reduced by 1. Otherwise it is increased by 1 up to the maximum priority
Results for Scheduling Schemes Pure round robin shows the worst performance when the traffic is low and but a lower delay at higher traffic Exhaustive round robin is the exact opposite when it comes to traffic load Both LRR and LWRR can perform well in both conditions A better scheme Fair Exhaustive Polling (FEP) which surpassed
Fair Exhaustive Polling Main idea is to poll slaves that probably have nothing to send as seldom as possible There is an active state and an inactive state Initially all slaves are placed in the active state During a polling, if the slave has no information to send and the master has no information to send to that slave, it is placed in the inactive state Whenever the master has something to send, the slave is placed back into the active state If a slave’s maximum polling interval timer has expired, then the slave is moved back into the active state FEP acts as an exhaustive scheduler at low loads and as a round robin scheduler at high loads
Causes of Reduction in Efficiency in Polling-based Communication Slaves that have no data to transmit may be unnecessarily polled, while other slaves with data to transmit may have to wait to be polled At the time of an expected poll, one of the nodes of a master-slave node pair may not be present in the piconet The slave that is being polled is not listening or the master that is expected to poll is not polling
Soft Coordination Scheme Nodes decide their presence based on local information Cannot guarantee conflict-free participation of bridging nodes, however, they have a significantly reduced complexity Pseudorandom Coordinated Scatternet Scheduling (PCSS) algorithm Coordination is achieved by implicit rules in the communication without the need of exchanging explicit control information
Pseudorandom Coordinated Scatternet Scheduling (PCSS) Algorithm Consists of two key components Checkpoints mechanism A designed Bluetooth frame Master node actively checks its slave by sending a packet to the slave at corresponding checkpoint and waiting for a response from the slave The slave nodes passively checks its master by listening to the master at the checkpoint and sending a response packet Nodes remain active on each checkpoint until there is user data in the master-to-slave or slave-to-master directions or until it has to leave for a next checkpoint on one of its other links
Pseudorandom Coordinated Scatternet Scheduling (PCSS) Algorithm Dynamic Adjustment The positions of checkpoints are assigned on given link following a pseudorandom sequence that is generated based on the Bluetooth clock of the master and the MAC address of the slave This guarantees the same sequence will by generated by both nodes in a master-slave pair, while sequences belonging to different node pairs will be different This makes sure that different links of a node will collide only occasionally
Ideal Coordinated Scatternet Scheduler (ICSS) Used to evaluate the PCSS scheme Node has the following extra information about its neighbors A node is aware of the already prescheduled transmission of its neighbors A node is aware of the content of the transmission buffers of its neighbors After each package exchange on a given link the two nodes schedule the next package exchange, provided there is user data to be transmitted With the traffic dependent meeting point intensity adjustments, the throuput of PCSS quite closely match the results of the ideal ICSS algorithm
Uncoordinated Greedy Scatternet Scheduler (UGSS) Another scheme used to evaluate against PCSS Bluetooth nodes do not attempt to coordinate their meeting points; instead each node visits its neighbors in a random order Nodes switch continuously among their Bluetooth links in a greedy manner The greedy nature of the algorithm results in high power consumption of Bluetooth PCSS achieves higher throughput than the uncoordinated UGSS algorithm
Hard Coordinated Central Scheduling Scheme
Perfect Scheduling Problem for Scatternet
Perfect Scheduling Algorithm for Bipartite Scatternet
Example
Results Since the algorithm is reservation-based, they are suitable for multimedia and real-time traffic to obtain the guaranteed bandwidths along the communication routes Once the algorithm generates a feasible schedule from the set of link load requests, the assigned bandwidths are exclusively used for the requesting applications With bipartite scatternets that have no master bridge, the algorithm yields a perfect, feasible schedule which guarantees the exact amounts of bandwidth to the requesting applications
Scheduling Algorithm for General Scatternet When a scatternet allows master bridge as an integral part, the perfect scheduling problem has no solution Here is an example of a general scatternet that requires a subperfect scheduling algorithm
Piconet Scheduling Schemes Step 2 in load partition is not sufficient because of the existence of a master bridge that creates some odd cycle in the scatternet while even partitioning of link and nodal load is necessary for the perfect schedule Introduction of inclined links are necessary in order to solve this which pairs one unpaired entry on the row with another unpaired entry on the column of the master bridge
Example
Load_Partition_General The main difference to this procedure compared to its original is that entries that unpaired with any other node must be paired with a nonzero entry. For each master bridge whose load is presented by one row as a piconet master and another column as bridging slave interconnected two piconets, group an unpaired nonzero row entry with another unpaired nonzero column entry. Other than these two differences, the rest of the subperfect scheduling algorithm is similar to the perfect scheduling algorithm
QoS Perfomance Analysis Terms regarding Quality of Service (QoS): Bandwidth – the amount of data transferred per unit time Delay – deliver within a bounded time Jitter – range of arrival time
Scatternet Traffic Model There are two classes of connection-oriented traffic Constant bit rate (CBR) – guaranteed bandwidth, bounded delay, bounded jitter Variable bit rate (VBR) – variable bandwidth, bounded delay, bounded jitter Examples of CBR PCM, G.721, EVRC Networked sensors and actuators Examples of VBR MPEG4, H.263, and PNG
Scatternet Traffic Model CBR traffic schedule should satisfy two QoS conditions The schedule contains a proper number of slots providing the required bandwidth Scheduled slots are distributed evenly to meet delay and jitter requirements VBR traffic requirements are the same as CBR except they also: The minimum bandwidth required by the application should be statically scheduled as a guarantee and the additional bandwidth is dynamically assigned by another scheme There is also statistical bursty rate (SBR) traffic which handles random, bursty phase and large delay/jitter One example of SBR is file transfer since the due time does not exist,
Traffic-model Based Global Scheduling Scheme Rule 1: Bandwidth division Total bandwidth for CBR and VBR traffic should be upper bounded to leave remaining bandwidth for SBR, protocal messages, and local traffic Rule 2: Instant rescheduling The actual traffic is statically distributed because of mutual interference among independent traffic flows along routing paths and local delay in task scheduling When data to be transferred on a link is less than the size of one logical slot, the unused slots should be rescheduled for other purposes such as local traffic
Traffic-model Based Global Scheduling Scheme Rule 3: Resolution for bandwidth competition Messages with highest priorities are selected up to the available number of slots and transferred The management protocol message has the highest priority followed by time-critical, real-time messages and so forth Rule 4: Dynamic slot assignment Free slots can be assigned on-the-fly by the consent of both global and local traffic
Conclusion There are several ways to handle Bluetooth scheduling Each scheme used to handle the scheduling has different strengths and weaknesses depending on the amount of masters and slaves are being used