architectures and applications for wireless sensor networks (204525) topology control
Post on 03-Jan-2016
34 Views
Preview:
DESCRIPTION
TRANSCRIPT
Architectures and Architectures and Applications for Applications for Wireless Sensor Wireless Sensor
Networks (01204525)Networks (01204525)
Topology ControlTopology Control
Chaiporn JaikaeoChaiporn Jaikaeochaiporn.j@ku.ac.thchaiporn.j@ku.ac.th
Department of Computer EngineeringDepartment of Computer EngineeringKasetsart UniversityKasetsart University
Materials taken from lecture slides by Karl and Willig
2
OverviewOverview Motivation, basicsMotivation, basics Power controlPower control Backbone constructionBackbone construction ClusteringClustering Adaptive node activityAdaptive node activity
3
Motivation: Dense Motivation: Dense networksnetworks Too many collisions/too complex operation Too many collisions/too complex operation
for a MAC protocol, too many paths to for a MAC protocol, too many paths to chose from for a routing protocol, …chose from for a routing protocol, …
Idea: Make Idea: Make topology topology less complexless complex TopologyTopology: Which node is able/allowed to : Which node is able/allowed to
communicate with which other nodes communicate with which other nodes Topology control needs to maintain invariants, Topology control needs to maintain invariants,
e.g., connectivitye.g., connectivity
4
Options for topology Options for topology controlcontrol Topology control
Control node activity – deliberately turn on/off nodes
Control link activity – deliberately use/not use certain links
Topology control
Flat network – all nodes have essentially same role
Hierarchical network – assign different roles to nodes; exploit that to
control node/link activity
Power control Backbones Clustering
5
Flat networksFlat networks Main option: Control transmission Main option: Control transmission
powerpower
Alternative: Selectively discard some Alternative: Selectively discard some links links Usually done by introducing hierarchies Usually done by introducing hierarchies
6
Hierarchical NetworksHierarchical Networks Construct a Construct a backbonebackbone
networknetwork Some nodes form a Some nodes form a
(minimal) (minimal) dominating dominating set set Controlling nodes have to be Controlling nodes have to be connected (backbone)connected (backbone)
Formally: Given graph Formally: Given graph GG=(=(VV,,EE), ), constructconstructDD VV such that such that
7
Hierarchical NetworksHierarchical Networks Construct Construct clustersclusters
Each node in exactly Each node in exactly one groupone group Except “bridging” Except “bridging”
nodes nodes Groups can have Groups can have
clusterheadsclusterheads Typically: all nodes in a cluster are direct Typically: all nodes in a cluster are direct
neighbors of their clusterheadneighbors of their clusterhead Clusterheads form both Clusterheads form both IIndependent setndependent set
and and Dominating SetDominating Set Clusterheads + bridges Clusterheads + bridges Connected Connected
Dominating setDominating set
8
Cluster FormulationCluster Formulation Formally: Given graph Formally: Given graph GG=(=(VV,,EE), construct ), construct
CC VV such that such that
9
Aspects of Topology Aspects of Topology ControlControl ConnectivityConnectivity Stretch factor Stretch factor – should be small– should be small
Hop stretch factorHop stretch factor: how much longer are : how much longer are paths in Gpaths in G00 than in G? than in G?
Energy stretch factorEnergy stretch factor: how much more : how much more energy does the most energy-efficient energy does the most energy-efficient path need?path need?
Throughput Throughput – removing nodes/links – removing nodes/links can reduce throughput, by how much? can reduce throughput, by how much?
Robustness to mobilityRobustness to mobility Algorithm overhead Algorithm overhead
10
Example: Maintaining Example: Maintaining connectivityconnectivity Maintaining connectivity can be very Maintaining connectivity can be very
“costly” for a power control approach “costly” for a power control approach
0
1000
2000
3000
4000
5000
10 15 20 25 30 35 40
Maximum transmission range
Ave
rag
e si
ze o
f th
e la
rges
t co
mp
on
ent
0
0,2
0,4
0,6
0,8
1
Pro
bab
ilit
y o
f co
nn
ecti
vity
Maximum component size Probability of connectivity
11
OverviewOverview Motivation, basicsMotivation, basics Power controlPower control Backbone constructionBackbone construction ClusteringClustering Adaptive node activityAdaptive node activity
12
Power control – Magic Power control – Magic Numbers?Numbers? Idea: Controlling transmission power Idea: Controlling transmission power
corresponds to controlling the corresponds to controlling the number of neighbors for a given number of neighbors for a given nodenode
Is there an “optimal” number of Is there an “optimal” number of neighbors a node should have?neighbors a node should have?
Historically, k=6 or k=8 had been Historically, k=6 or k=8 had been suggested as such “magic numbers”suggested as such “magic numbers” However, they optimize progress per However, they optimize progress per
hop – they do hop – they do not not guarantee guarantee connectivity of the graph!!connectivity of the graph!!
13
Controlling Number of Controlling Number of NeighborsNeighbors Assumption: Nodes randomly, uniformly Assumption: Nodes randomly, uniformly
placed, only transmission range is placed, only transmission range is controlled, identical for all nodes, only controlled, identical for all nodes, only symmetric links are considered symmetric links are considered
Result: For connected network, required Result: For connected network, required number of neighbors per node is number of neighbors per node is (log | (log |V|)V|) It is It is not a constantnot a constant, but depends on the , but depends on the
number of nodes!number of nodes! Constants can be bounded Constants can be bounded
14
Example: Power Example: Power ControlControl Basic idea for most of the following Basic idea for most of the following
methods: methods: Given a graph G=(V,E)Given a graph G=(V,E) Produce a graph GProduce a graph G00=(V,E=(V,E00) that maintains ) that maintains
connectivity with fewer edgesconnectivity with fewer edges Assume, e.g., knowledge about node Assume, e.g., knowledge about node
positionspositions Construction should be local (for Construction should be local (for
distributed implementation)distributed implementation)
15
Example 1: Example 1: Relative Neighborhood Relative Neighborhood Graph (RNG) Graph (RNG) Edge between nodes u and v if and only if Edge between nodes u and v if and only if
there is no other node w that is closer to there is no other node w that is closer to either u or veither u or v
RNG maintains connectivity of the original RNG maintains connectivity of the original graphgraph
Easy to compute locally Easy to compute locally Worst-case spanning Worst-case spanning
ratio is ratio is (|V|) (|V|) Average degree is 2.6Average degree is 2.6
Connected only when this region is empty
16
Example 2: Gabriel Example 2: Gabriel Graph (GG)Graph (GG) Similar to RNGSimilar to RNG Difference: Smallest Difference: Smallest
circle with nodes u and circle with nodes u and v on its circumference v on its circumference must only contain node must only contain node u and vu and v
Properties: Maintains connectivity, Properties: Maintains connectivity, worst-case spanning ratio worst-case spanning ratio (|V|(|V|1/21/2), ), worst-case degree worst-case degree (|V|) (|V|)
Connected only when this circle is empty
17
Example 3: Example 3: Delaunay triangulationDelaunay triangulation Construct Construct Voronoi Voronoi
diagramdiagram Can be done in Can be done in
O(|V| log |V|) timeO(|V| log |V|) time Connect any two nodes Connect any two nodes
for which the Voronoi for which the Voronoi regions touchregions touch Delaunay Delaunay
triangulationtriangulation Problem: Might produce Problem: Might produce
very long links; not well very long links; not well suited for power controlsuited for power control
Voronoi region for upper left node
Edges of Delaunay triangulation
18
Example 4: Example 4: Cone-Based Topology Cone-Based Topology ControlControl Assumption: Distance and angle Assumption: Distance and angle
information between nodes is availableinformation between nodes is available Two-phase algorithmTwo-phase algorithm Phase 1Phase 1
Every node starts with a small transmission Every node starts with a small transmission powerpower
Increase it until a node has sufficiently many Increase it until a node has sufficiently many neighborsneighbors When there is at least one neighbor in each When there is at least one neighbor in each cone cone of of
angle angle
= 5/6= 5/6 is necessary and sufficient condition is necessary and sufficient condition for connectivity!for connectivity!
19
Cone-Based Topology Cone-Based Topology ControlControl Phase 2Phase 2
Remove redundant edges: Drop a Remove redundant edges: Drop a neighbor w of u if there is a node v of w neighbor w of u if there is a node v of w and u such that sending from u to w and u such that sending from u to w directly is less efficient than sending directly is less efficient than sending from u via v to wfrom u via v to w
Essentially, a local Gabriel graph Essentially, a local Gabriel graph constructionconstruction
20
Cone-Based Topology Cone-Based Topology ControlControl
Properties: simple, local constructionProperties: simple, local construction Extensions for k-connectivity (Yao graph)Extensions for k-connectivity (Yao graph)
2
22 22
22
2
21
Centralized AlgorithmCentralized Algorithm Goal: Find topology control algorithm Goal: Find topology control algorithm
minimizing the minimizing the maximum maximum power used power used by any nodeby any node
Idea: Use a centralized, greedy Idea: Use a centralized, greedy algorithmalgorithm Initially, all nodes have transmission power Initially, all nodes have transmission power
00 Connect those two components with the Connect those two components with the
shortest distance between them (raise shortest distance between them (raise transmission power accordingly)transmission power accordingly)
Remove redundant linksRemove redundant links Based on Kruskal's MSTBased on Kruskal's MST
22
Centralized AlgorithmCentralized Algorithm
1 1
2
3
4 4
A B
C D
E F
D
Topology
1 1
A B
C D
E F
1) Connect A-C and B-D
1 1
2A B
C D
E F
2) Connect A-B
1 1
2
3
A B
C D
E F
3) Connect C-D
1 1
2
3
4 4
A B
C
E F
4) Connect C-E and D-F
1 1
3
4 4
A B
C D
E F
5) Remove edge A-B
23
OverviewOverview Motivation, basicsMotivation, basics Power controlPower control Backbone constructionBackbone construction ClusteringClustering Adaptive node activityAdaptive node activity
24
Hierarchical Networks – Hierarchical Networks – Backbones Backbones Idea: Select some nodes from the Idea: Select some nodes from the
network/graph to form a network/graph to form a backbonebackbone A connected, minimal, dominating set A connected, minimal, dominating set
(MDS or MCDS)(MDS or MCDS) Dominating nodes control their neighborsDominating nodes control their neighbors Protocols like routing are confronted with Protocols like routing are confronted with
a simple topology – from a simple node, a simple topology – from a simple node, route to the backbone, routing in route to the backbone, routing in backbone is simple (few nodes)backbone is simple (few nodes)
Problem: MDS/MCDS is an NP-hard Problem: MDS/MCDS is an NP-hard problemproblem
25
Backbone by growing a Backbone by growing a treetree Construct the backbone as a tree, Construct the backbone as a tree,
grown iterativelygrown iteratively
26
Backbone by growing a Backbone by growing a tree – Example tree – Example
1: 2:
3: 4:
27
Start big, make leanStart big, make lean Idea: start with some, possibly large, Idea: start with some, possibly large,
connected dominating set, reduce it by connected dominating set, reduce it by removing unnecessary nodesremoving unnecessary nodes
Initial construction for dominating setInitial construction for dominating set All nodes are initially whiteAll nodes are initially white Mark any node black that has two Mark any node black that has two
neighbors that are not neighbors of each neighbors that are not neighbors of each other (they might need to be dominated)other (they might need to be dominated)
Black nodes form a connected dominating Black nodes form a connected dominating set (proof by contradiction); shortest path set (proof by contradiction); shortest path between ANY two nodes only contains between ANY two nodes only contains black nodesblack nodes
28
OverviewOverview Motivation, basicsMotivation, basics Power controlPower control Backbone constructionBackbone construction ClusteringClustering Adaptive node activityAdaptive node activity
29
ClusteringClustering Partition nodes into Partition nodes into clusters clusters Many options for detailsMany options for details
Are there Are there clusterheadsclusterheads? ? May clusterheads be neighbors? May clusterheads be neighbors?
If not If not Independent SetIndependent Set
May clusters overlap? Do they have nodes in May clusters overlap? Do they have nodes in common?common?
30
ClusteringClustering Further optionsFurther options
How do clusters communicate? How do clusters communicate? Some nodes need to act as Some nodes need to act as gatewaysgateways
between clustersbetween clusters If clusters may not overlap, two nodes need If clusters may not overlap, two nodes need
to jointly act as a to jointly act as a distributed gateway distributed gateway
Is there a hierarchy of clusters? Is there a hierarchy of clusters?
31
Constructing Constructing Independent SetsIndependent Sets Make each node a Make each node a
clusterhead that clusterhead that locally has the locally has the largest prioritylargest priority
Once a node is Once a node is dominated by a dominated by a clusterhead, it clusterhead, it abstains from local abstains from local competition, competition, giving other nodes giving other nodes a chancea chance
1 2 3 6 57 4Init:
1 2 3 6 57 4Step 1:
1 2 3 6 57 4Step 2:
1 2 3 6 57 4Step 3:
1 2 3 6 57 4Step 4:
32
Connecting ClustersConnecting Clusters Suppose: Clusterheads have been found Suppose: Clusterheads have been found How to connect the clusters, how to How to connect the clusters, how to
select gateways? select gateways?
It suffices for each clusterhead to It suffices for each clusterhead to connect to all other clusterheads that connect to all other clusterheads that are at most three hops are at most three hops Resulting backbone is connectedResulting backbone is connected
33
Rotating clusterheadsRotating clusterheads Serving as a clusterhead can put Serving as a clusterhead can put
additional burdens on a node additional burdens on a node For MAC coordination, routing, … For MAC coordination, routing, …
Let this duty rotate among various Let this duty rotate among various membersmembers Periodically reelect – useful when Periodically reelect – useful when
energy reserves are used as energy reserves are used as discriminating attribute discriminating attribute
LEACH – determine an optimal LEACH – determine an optimal percentage P of nodes to become percentage P of nodes to become clusterheads in a networkclusterheads in a network
34
OverviewOverview Motivation, basicsMotivation, basics Power controlPower control Backbone constructionBackbone construction ClusteringClustering Adaptive node activityAdaptive node activity
35
Adaptive node activityAdaptive node activity Remaining option: Turn some nodes off Remaining option: Turn some nodes off
deliberatelydeliberately Only possible if other nodes remain on that can Only possible if other nodes remain on that can
take over their dutiestake over their duties Example duty: Packet forwardingExample duty: Packet forwarding
Approach: Geographic Adaptive Fidelity (GAF)Approach: Geographic Adaptive Fidelity (GAF)
r
rR
Observation: Any two Observation: Any two nodes within a square of nodes within a square of length length r < R/5r < R/51/21/2 can replace each can replace each other with respect to other with respect to forwardingforwarding R radio rangeR radio range
Keep only one such node Keep only one such node active, let the other sleep active, let the other sleep
36
ConclusionConclusion Various approaches exist to trim the Various approaches exist to trim the
topology of a network to a desired shapetopology of a network to a desired shape Most of them bear some non-negligible Most of them bear some non-negligible
overheadoverhead At least: Some distributed coordination among At least: Some distributed coordination among
neighbors, or they require additional neighbors, or they require additional informationinformation
Constructed structures can turn out to be Constructed structures can turn out to be somewhat brittle – overhead might be wasted somewhat brittle – overhead might be wasted or even counter-productive or even counter-productive
Benefits have to be carefully weighted Benefits have to be carefully weighted against risks for the particular scenario at against risks for the particular scenario at handhand
top related