Reducing the Number of Hops between Communication Peers in a Bluetooth Scatternet Csaba Kiss Kalló, Carla-Fabiana Chiasserini, Roberto Battiti, Marco Ajmone Marsan Dipartimento di Informatica e Telecommunicazioni Università di Trento, Trento, Italy. Dipartimento di Elettronica Politecnico di Torino, Torino, Italy. WCNC 2004
Outline Introduction Approach Overview Proposed Approach Simulation Conclusion
Introduction Scatternet formation and optimization Spec. 1.2 Introduce the scatter mode for supporting scatternets. Tradeoff Energy consumption – lower is better Supported traffic – higher is better Duration of scatternet formation – shorter is better Link scheduling – lower bridge degree is better
Introduction Motivation Scatternet optimization without respecting to changing traffic flows. Mobility and communication peer. Approach Modify the nodes’ links and roles. Goal Minimize the distance between every source- destination pair.
Approach Overview - Scatternet Representation Link matrix
Approach Overview Scatternet generation Based on the algorithm proposed in “A scatternet formation protocol for ad hoc networks of Bluetooth devices.” Slave&bridge selection Lowest degree and minimal distance. Connection selection Two-hop master either not already connected or the shortest path between their pure slaves is at least 6 hops. Centralized approach Select an optimizer The optimizer performs the optimizations and communicates the results to the nodes
Approach Overview Optimization function
Proposed Approach – Move Types A move is a set of modifications on the topology SS: a slave changes its master. SM: a slave creates its own piconet. MS: a master becomes a slave MM: a master overtakes the piconet of another master
Proposed Approach – Algorithms: SS and SM id: slave to move m: master of id F: function to minimize F = nr_hops Neigh i potential new master of id Neigh i potential new master of id l[m][id] = 0 l[i][id] = 1 (SM: l[id][i] = 1) l[m][id] = 0 l[i][id] = 1 (SM: l[id][i] = 1) F = nr_hops bestid = i F = nr_hops bestid = i k ≤ nr_neighbors return bestid, F F > nr_hops TRUE FALSE TRUE l[m][id] = 1 l[i][id] = 0 (SM: l[id][i] = 0) Inc(k) l[m][id] = 1 l[i][id] = 0 (SM: l[id][i] = 0) Inc(k) FALSETRUE
Proposed Approach – Algorithm: MS id: slave to move F: function to minimize F = nr_hops Scatternet connected AND F > nr_hops Scatternet connected AND F > nr_hops Move each slave of id to the best neighbor master Move id to target master i F = nr_hops bestmaster = i F = nr_hops bestmaster = i Undo move of id Inc(k) Undo move of id Inc(k) k ≤ nr_neighbors return move list SUCCESS FAILURE TRUE FALSE TRUE
Proposed Approach – Algorithm: MM id: slave to move F: function to minimize lm: lowest number of masters found F = nr_hops For all slaves j of i: l[i][j] = 0; l[id][j] = 1 For all slaves j of i: l[i][j] = 0; l[id][j] = 1 Piconet of id’s neigh master I in range AND total nr nodes ≤ 8 Piconet of id’s neigh master I in range AND total nr nodes ≤ 8 l[i][id] = 0; l[id][i] = 1 F > nr_hops OR (F == nr_hops AND lm > nr_masters) F > nr_hops OR (F == nr_hops AND lm > nr_masters) bestid = i; F = nr_hops; lm = nr_masters Restore original links of i and id Inc(k) Restore original links of i and id Inc(k) TRUE FALSE TRUE k ≤ nr_neigh_masters FALSE return bestid, F FALSE TRUE
Proposed Approach – Algorithm: The Optimizer Optimization module: finds for all of its target nodes the link set that most reduces the hop count to the nodes’ destinations L init / L opt : initial/optimal scatternet configurations stored in link matrices L init = L F = nr_hops Set slave/master list L init = L F = nr_hops Set slave/master list F > nr_hops Execute optimization module F = nr_hops L opt = L F = nr_hops L opt = L L = L init Shuffle slave/master list Inc(k) L = L init Shuffle slave/master list Inc(k) k ≤ divers L opt = L TRUE FALSE TRUE
Simulation Simulator in C++ on Linux platform Considered: topology-related aspects (physical links, node roles, radio proximity, multihop connections) Not considered: protocol stack details and connection establishment delays Settings: 100 nodes with radio range of 10m on 66x66 m2 50 scatternets 1000 diversifications 100 source-destination bidirectional connections with normalized traffic load of 0.1, 0.25, 0.5 for 50%, 30% and 20%, respectively Simulations combining optimization modules in many ways
Simulation - One Module
Simulation - Two Modules
Simulation – Two Modules
Simulation - Three Modules
Simulation - diversifications Average execution times for 1000 and 10 diversifications Low number of diversifications => reduced execution times without significant impact on hop reductions. Nr. Diversifi c. SMSM_MMSM_MS_MM Time [s] Red. [%] Time [s] Red. [%] Time [s] Red. [%]
Conclusion Mathematical model for scatternets Algorithm suite for reducing the hop count Simulation results Slave moves increase the number of piconets and keep the number of links unchanged. Master moves reduce the number of piconets and slightly increase the number of links. Overall hop count reduction of 15%. Future work: dynamic connections and mobility.