Jan 03, 2016
Bluetooth Scatternet FormationBy Mihir [email protected]
Outline
• Introduction
▫Bluetooth technology today
▫Comparable technologies
▫Piconets & Scatternets
• Bluetooth Scatternet Formations (BSF)
▫Blue Mesh
▫Maximal Independent set based BSF
• Review
Problem Statement
•Basic Bluetooth protocol does not support relaying that Scatternets can theoretically
provide
•Very few implementations are found
•Goal is to use an algorithm that effectively produces a most efficient scatternet
Introduction to Bluetooth
• Voice and Data Applications
• Operates in unlicensed 2.4 GHz
• Operate over a distance of 10m-100m range based on
device power class
• Obstacle proof
• Omni-directional wireless range; FHSS modulation
• Low Price
Comparable TechnologiesUnits Bluetoot
hZigbee 802.11
b802.11 g 802.11 a 802.11
nUWB
Throughput Mbps 0.03 1-3 11 54 54 200 200
Max Range ft 75 30 200 200 150 150 30
Sweet SpotMbps-ft .03@75 1-3@10 2@200 2@200 36@100
100@100
200@10
Service bps-ft2 530 314M 251G 251G 1.13T 3.14T 62G
Power mW 30 100 750 1000 1500 2000 400
BW MHz 0.6 1 22 20 20 40 500
Spectral Efficiency b/Hz 0.05 1 0.5 2.7 2.7 5 0.4
Power Efficiency mW/Mbps 1000 100 68 19 27 10 2
Price USD $ $2 $3 $5 $9 $12 $20 $7
Paired Configurations
Slave
Master
Piconet• An ad-hoc network of Bluetooth
master-slave pairs.
▫ Only one designated Master
and up to seven slaves
• Three-bit MAC addressing
• Up to 255 slaves can be inactive
or parked
• Piconet range depends on
Bluetooth class
• Data transfer depends on number
of connections, and
synchronization
Scatternet
• Ad-hoc network consisting of two or more piconets
• Scatternets are created through Master-Slave
configuration
▫ Device pairing with another piconet can be either
master or slave
• Main goal is to expand the physical size of the lower class
(short range) Bluetooth networks
• Several techniques have been presented that offer
varying efficiencies
Example
Scatternet Formation
• No specification indicates a method for BSF
• Several single hop topologies, such as tree topologies,
have been presented
• Two techniques can be closely examined:
▫ BlueMesh
▫ Maximal Independent Set (MIS)
BlueMesh
• Improvement upon BlueStar algorithm
• Phases proceed in successive iterations
• Technique follows algorithmic process
• Phases include topology discovery, followed by scatternet
formation
• Piconet interconnection is achieved through gateway
selection: slave-slave or Master-slave
• Masters proceed to select intermediate slaves (going to next
iteration)
• All master, slaves not selected gateways exit the BlueMesh
algorithm
Topology Discovery
• Unit disc graph
• Device discovery
• BT inquiry and paging
procedures are used to set up
two-node temporary piconets
through which neighbours
exchange:
▫ Identity
▫ Weight
▫ Synchronization information
15
5
2
12
Algorithm for Master SelectionMaster(v)1.Myrole master2.PAGEMODE3.COMPUTE S(v)4.for each u in S(v)5. do PAGE(u, v, master, true, NIL)6.for each u in C(v)\S(v)7. do PAGE(u, v, master, false, NIL)8.EXIT
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes
Algorithm for Slave SelectionCompute S(v)1.S(v) 2.U C(v)3.While U ≠ 4. do x bigger in U(v)5. S(v) S(v) {x}6. U U \ N(x)7.S(v) S(v) GET(7 - |S(v)|, C(v) \ S(v) )
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes. N(x) denotes the set of all x’s one-hop neighbours.
Example
3
2
6
5
13
15
4
14
12
11
10
98
7
[6] I. Stojmenovic, Bluetooth Scatternet Formation: Tutorial, Ottawa, Canada: School of Infomation Technology and Engineering (SITE), slides 1-15
Algorithm for Master SelectionMaster(v)1.Myrole master2.PAGEMODE3.COMPUTE S(v)4.for each u in S(v)5. do PAGE(u, v, master, true, NIL)6.for each u in C(v)\S(v)7. do PAGE(u, v, master, false, NIL)8.EXIT
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes
Example
3
2
6
5
13
15
4
14
12
11
10
98
7
* Node 15 is chosen as Master based on a best fit scenario
Algorithm for Master SelectionMaster(v)1.Myrole master 2.PAGEMODE3.COMPUTE S(v)4.for each u in S(v)5. do PAGE(u, v, master, true, NIL)6.for each u in C(v)\S(v)7. do PAGE(u, v, master, false, NIL)8.EXIT
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes
Example
3
2
6
5
13
15
4
14
12
11
10
98
7
Algorithm for Master SelectionMaster(v)1.Myrole master 2.PAGEMODE3.COMPUTE S(v)4.for each u in S(v)5. do PAGE(u, v, master, true, NIL)6.for each u in C(v)\S(v)7. do PAGE(u, v, master, false, NIL)8.EXIT
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes
Algorithm for Slave SelectionCompute S(v)1.S(v) 2.U C(v)3.While U ≠ 4. do x bigger in U(v)5. S(v) S(v) {x}6. U U \ N(x)7.S(v) S(v) GET(7 - |S(v)|, C(v) \ S(v) )
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes. N(x) denotes the set of all x’s one-hop neighbours.
Example
3
2
6
5
13
15
4
14
12
11
10
98
7
U(15) = {5, 12, 7, 14, 3, 9, 2, 8} S(15) = {14, 12, 8}
Algorithm for Slave SelectionCompute S(v)1.S(v) 2.U C(v)3.While U ≠ 4. do x bigger in U(v)5. S(v) S(v) {x}6. U U \ N(x)7.S(v) S(v) GET(7 - |S(v)|, C(v) \ S(v) )
Where v is a master, and u is a neighbour. S(v) is the slave selection process and C(v)denotes the set of v’s bigger nodes that are slaves and smaller nodes. N(x) denotes the set of all x’s one-hop neighbours.
Example
3
2
6
5
13
15
4
14
12
11
10
98
7
S(15) = {14, 12, 9, 8, 7, 5, 3}S(13) = {4, 11}
S(10) = {6, 12, 5}S(2) = {9, 8, 5}
Gateway Selection
• When role selection of an iteration has completed, the nodes
start the gateway selection process to complete the scatternet.
• All slaves communicate to their master(s) information about
their neighbours
▫ Roles of neighbour
▫ Neighbour’s list of masters
▫ If neighbours are masters, then whether the node is a slave of it
• If a pair of masters have selected common slaves, they choose
the bigger one among them as gateway slave
Example – Iteration 2
3
2
6
5
13
15
4
14
12
11
10
98
7
Blue MIS• Newer protocol to simplify BlueMesh procedures
• Method limits the number of iterations to two
• After discovery phase, construction of Maximal Independent Set (MIS) occurs
where:
▫ Neighbour’s information is exchanged
▫ Knowledge of two-hop neighbours is attained
• Notation: MIS(X) represents a set of neighbour’s of X such that no two nodes are
connected (independent) and the neighbours are not a subset of another set
(Maximal)
• Each node creates a piconet by selecting MIS of its neighbours as its potential
slaves.
Slave Selection
• If two neighbours u and
v select each other as
slaves, then we keep
only one relationship
based on key2 from
node ID(key1, key2 ).
• If key2(u) < key2(v)
then u remains master,
and v becomes slave.
v
u
ComputeMIS(u) AlgorithmComputeMIS (u)1 MIS(u) ; Master(u) true ;2 Z N(u);3 while Z!= 4 do v Node in Z with smallest key1;5 Page (v, u, N(v), MIS(v));6 If u in MIS(v) 7 if key2(u) < key2(v) then 8 M(v) M(v) {u};9 MIS(v) MIS(v) – {u};10 M(u) M(u) - {v};11 MIS(u) MIS(u) {v};12 Otherwise 13 M(v) M(v) {u};14 MIS(u) MIS(u) {v};15Z Z – (N(v) {v});16If MIS(u) = then Master(u) false
Example – Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
MIS(1) = {2}MIS(1) = {2, 7}
[5] N. Zaguia , I. Stojmenovic, and Y. Daadaa, Simplified Bluetooth Scatternet Formation Using Maximal Independent Sets, Ottawa, Canada: School of Information Technology and Engineering (SITE); 2008
Example – Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
15 is not MIS(1) = {2, 7}Thus, node 1 is MIS(15)
MIS(15) = {1, 3, 8, 11}
Example – Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
MIS(11) = ?MIS(15) = {1, 3, 8, 11}
MIS(1) = {2, 7}
ComputeMIS(u) Algorithm Steps 6-11
If u in MIS(v) if key2(u) < key2(v) then
M(v) M(v) {u};MIS(v) MIS(v) – {u};M(u) M(u) - {v};MIS(u) MIS(u) {v};
Example – Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
Example – Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
Iteration 2
• Two procedures performed to simplify scatternet
• Scatternet structure deletes piconets which are
not essential for the connectivity of the
scatternet, thus lowering total number of
piconets
• MasterProc & SlaveProc
▫Both delete piconets with master device u which is
not a slave in any other piconet, i.e. M(u) = NIL
SlaveProcedure(u)SlaveProcedure (u)
1 If Master(u) = false then
2 u Pages all nodes v in M(u) to get (MIS(v), M(v))
3 If MIS(v)={u} and M(v) = and |∅ MIS(u)|<7 then
4 Master(u) ←true,
5 Master(v) ← false
6 MIS(u) ← MIS(u) ∪ {v}
7 MIS(v) ← ∅
8 M(v) ← {u}
9 Page (done) all nodes in M (u)
Example – Iteration 2
15
212 14
16
4
5
1
7
13116
8
9
103
Final Configuration – Iteration 2
15
212 14
16
4
5
1
7
13116
8
9
103
Conclusion
• Scatternets help increase the physical range of lower class
Bluetooth devices
• Piconets and Scatternets are conjoined by gateways that include
a Master-slave or slave-slave configuration
• Two effective methods have been presented:
▫ BlueMesh
▫ Bluetooth Maximal Independent Set (MIS)
• Blue MIS proves to be a better option since the number of
iterations are always limited to two
• Both techniques suffer due to great number of masters and
slaves in Blue MIS and BlueMesh, respectively.
Questions?
Quiz Question 1• Q.
Name two other wireless technologies and compare their
specifications with Bluetooth technology. • A.
Zigbee: Closest comparable to BT. Wireless range is
smaller than BT, but compares very well with price of
BT. It uses more power than Bluetooth. Zigbee can
also offer much faster data speeds.
802.11b: Much larger range, intended for a different
class of devices. Higher speed and data rates than
Bluetooth with higher spectral efficiency.
Quiz Question 2• Use BlueMesh method to create all possible
scatternets with proper master-slave connections
8
17
21
20
15
36
13
6
25
7
22
30 11
Node 25 is selected as gateway slave between Piconets 7 & 36Node 22 is selected as gateway slave between Piconets 7 & 30
Quiz Question 2 Cont’d• Use BlueMesh method to create all possible
scatternets with proper master-slave connections
8
17
21
20
15
36
13
6
25
7
22
30 11
To connect Piconets 36 & 30, we use intermediate gateway slaves 13 & 22, which forms a 2-node piconet 22.
Quiz Question 3• Use the ComputeMIS and SlaveProc(u)
protocols to complete the scatternets
15
212 14
16
4
5
1
7
13116
8
9
103
ComputeMIS(u) AlgorithmComputeMIS (u)1 MIS(u) ; Master(u) true ;2 Z N(u);3 while Z!= 4 do v Node in Z with smallest key1;5 Page (v, u, N(v), MIS(v));6 If u in MIS(v) 7 if key2(u) < key2(v) then 8 M(v) M(v) {u};9 MIS(v) MIS(v) – {u};10 M(u) M(u) - {v};11 MIS(u) MIS(u) {v};12 Otherwise 13 M(v) M(v) {u};14 MIS(u) MIS(u) {v};15Z Z – (N(v) {v});16If MIS(u) = then Master(u) false
15
212 14
16
4
5
1
7
13116
8
9
103
MIS(1) = {2, 7}MIS(2) = {1, 12}
Node 2 belongs to MIS(1)MIS(2) = {12}
MIS(3) = {6, 9}MIS(4) = {16}
MIS(5) = {1, 12}MIS(6) = {}
MIS(7) = {13}MIS(8) = {9}MIS(9) = {}
MIS(10) = {3}MIS(11) = {15}MIS(12) = {14}
MIS(14) = {16}
MIS(15) = {1, 3, 8}
MIS(16) = {}
MIS(13) = {}
Iteration 1
15
212 14
16
4
5
1
7
13116
8
9
103
Iteration 2
15
212 14
16
4
5
1
7
13116
8
9
103
Nodes 3 & 10 will switch roles due to SlaveProc(u) Nodes 15 & 11 will switch roles due to SlaveProc(u) Nodes 1 & 5 will switch roles due to SlaveProc(u) Nodes 5 & 12 will switch roles due to SlaveProc(u)
Nodes 16 & 4 will switch roles due to SlaveProc(u)
Final Configuration – Iteration 2
15
212 14
16
4
5
1
7
13116
8
9
103
References• [1] A. Alkhrabash and M. Elshebani, Routing schemes for Bluetooth
Scatternet applicable to mobile Ad-Hoc networks, Serbia : Telsiks, 2009 • [2] J. Wang, Dynamical Algorithm for Multi-Hop Bluetooth Scatternet
Formation, P.R. China: Qingdao University of Science and Technology, 2008 • [3] C. Petrioli and S. Basagni, Degree constrained Multihop Scatternet
formation for Bluetooth Networks, Boston USA: Department of Electrical and Computer Engineering, Northeastern University, 2002
• [4] T. Olzak, Secure your Bluetooth wireless network and protect your data, Tech Republic, December 2006 [Online]. Available: http://articles.techrepublic.com.com/5100-10878_11-6139987.html
• [5] N. Zaguia , I. Stojmenovic, and Y. Daadaa, Simplified Bluetooth Scatternet Formation Using Maximal Independent Sets, Ottawa, Canada: School of Information Technology and Engineering (SITE); 2008
• [6] I. Stojmenovic, Bluetooth Scatternet Formation: Tutorial, Ottawa, Canada: School of Infomation Technology and Engineering (SITE), slides 1-15
• [7] Compare with Other Technologies, Bluetooth SIG Incorporated, 2010 [Online]. Available: http://www.bluetooth.com/English/Technology/Works/Pages/Compare.aspx#3