A Lightweight CDS Construction
Refinement can be generalized
Node A is covered by B and C if
All neighbors of A are either neighbors of B or C or both and
Key(A)<Key(B) and Key(A)<Key(C)
Remove node A from DS if it is covered by B and C while
B and C are connected
A most general rule
Node A is covered by B1,…,Bk if
All neighbors of A are neighbor of at least one Bi and
Key(A) < min { Key(B1),…,Key(Bk) }
Remove node A from DS if it is covered by B1,…,Bk while
B1,…,Bk are connected
How to implement this rule efficiently? …
B C
A Lightweight CDS Construction
Efficient implementation of the most general rule
Each node checks if it is an intermediate node, i.e., if it has two unconnected neighbors
Each intermediate node A constructs a subgraph G of neighbor nodes with higher key values
Intermediate node A is in DS if it’s subgraph G is
Empty or disconnected or
connected but there exists a neighbor of A which is not a neighbor of any node in G
Node 4 is an
intermediate node 4 6
2 3 5
7
Subgraph of nodes with Key values higher than 4
6
5 7
Further Enhancements
Example: assume A, B, C are DS members
Recall: node A removes itself if any two neighbor nodes B and C satisfy
All neighbors of A are neighbor of B or C or both
Key(A) < min { Key(B), Key(C) }
B and C are connected
Node A stays in DS. Why?
Solution: use (already available) two-hop info B
D
C E A
Further Enhancements
Example
A is DS member because of C
E is DS member because of key(E) > key(A)
However, DS may consist of node A only
DS may consist of A only if key(E) < key(A) holds
Observation: quality of DS depends on key value
Solution: alternative rule definition
Node u is covered by node v iff
N(u)N(v) or
N(u)=N(v) and key(u)<key(v)
Example: E is covered by A
C B
D A
E
Summary
Other geometric structures and objectives
Containing EMST
Reducing Power Consumption
Handling directed graphs
Connectivity
Stochastics depending on node density
MST as a useful tool to reduce power and keep connectivity
k-connectivity
Backbone Construction
Example objective: switching off nodes to preserve energy
Example objective: reduce message overhead of broadcast