Topology Control
Other Geometric Structures
2
Yao Graph
Definition
Result is a directed graph
Contains EMST as subgraph
Removing directed edges preserves connectivity
Not necessarily planar
U U
Minimum Power Topology
Recall: only for |UW|>C(a,c) the following equation holds
Consequence
Only for certain distance relaying over V saves energy
Concept: relay region
U V W
2 * (|UW|/2)^a + 2 * c <= |UW|^a + c
4
Minimum Power Topology
Node u preserves all nodes in transmission range which are lying in the intersection of all relay region complements
Intuition: when sending
beyond, there is always
a relay node for reducing
energy
Cone-Based Topology
Set power such that one node in each cone of angle can be reached
CBTC() may yield a directed topology
U
W
V X
6
Excursion: Directed Graphs
Directed Graph G
Symmetric subtopology G-
Remove all directed links
Localized construction
Exchange outgoing edges
U removes edge UV if V is not pointing to U
Symmetric supertopology G+
Add reverse link for each directed link
Localized construction
Exchange outgoing edges
U increases transmission range to reach any node pointing to U
A
E C B
F D
A
E C B
F D
A
E C B
F D
Cone-Based Topology
Some facts (without proofs here)
Shrink back optimization
V Shrink back V
Node at Network corner?
Maximum power setting Reduced power setting
Topology Control
Directed Underlying
Network Graphs
Motivation
Many topology control mechanisms may produce disconnectivity in directed networks
Example 1: CBTC
Example 2: RNG
U
W
V
U
W
V
V
U
W V
U
W
10
Directive RNG
DRNG: include an edge uv iff
Not exists w and edges uw and wv and
|uw| < |uv| and |wv| < |uv|
V
U
W V
U
W
Directive Local Spanning Subgraph
DLSS
Each node v builds directed EMST T(v) over neighborhood N(v)
Chu-Liu/Edmonds Algorithm
Keep all outgoing edges vw of T(v)
V
A
B
D C
V
A
B
D C
V
A
B
D C
Original graph Directed EMST Result in V
12
Directive Local Spanning Subgraph
Directed MST with Kruskal?
Add sorted edge as long no cycle
Directed MST with Prim?
Add minimum weight connected vertex
A
C
B (2) (1)
(3)
A
C
B
No spanning tree
S
A
B
C (5)
(6)
(5)
(1)
S
A
B
C (5)
(6)
(5)
S
A
B
C (5)
(1) cost(Prim) = 16 cost(MST) = 12
(6)
Directive Local Spanning Subgraph
2
1
3
4 5
6 (1)
(10) (5)
(11) (4) (6)
(3) (6) (9)
(7)
(8) 2
1
6 (1)
(9) (5)
(9) (8) (6)
(7) (7)
S={(1,2),(1,6),(4,3),(3,5),(5,4)} => S={(1,2),(1,6),(2,3),(3,5),(5,4)}
Chu-Liu/Edmonds Algorithm for computing a directed MST 1. Discard the arcs entering the root if any;
For each node other than the root, select the entering arc with the smallest cost;
Let the selected n-1arcs be the set S.
2. If no cycle formed, G(N,S)is a MST. Otherwise, continue.
3. For each cycle formed, contract the nodes in the cycle into a pseudo-node (k), and modify the cost of each arc which enters a node (j)in the cycle
from some node (i)outside the cycle according to the following equation.
c(i,k)=c(i,j)-(c(x(j),j)-min_{j}(c(x(j),j))
where c(x(j),j)is the cost of the arc in the cycle which enters j.
4. For each pseudo-node, select the entering arc which has the smallest modified cost;
Replace the arc which enters the same realnode in Sby the new selected arc.
5. Go to step 2 with the contracted graph.
14
Directive Local Spanning Subgraph
2
1
3
4 5
6 (1)
(10) (5)
(11) (4) (6)
(3) (6) (9)
(7)
(8) 2
1
6 (1)
(9) (5)
(9) (8) (6)
(7) (7)
S={(1,2),(1,6),(4,3),(3,5),(5,4)} => S={(1,2),(1,6),(2,3),(3,5),(5,4)}
Chu-Liu/Edmonds Algorithm for computing a directed MST 1. Discard the arcs entering the root if any;
For each node other than the root, select the entering arc with the smallest cost;
Let the selected n-1 arcs be the set S.
Directive Local Spanning Subgraph
2
1
3
4 5
6 (1)
(10) (5)
(11) (4) (6)
(3) (6) (9)
(7)
(8) 2
1
6 (1)
(9) (5)
(9) (8) (6)
(7) (7)
S={(1,2),(1,6),(4,3),(3,5),(5,4)} => S={(1,2),(1,6),(2,3),(3,5),(5,4)}
Chu-Liu/Edmonds Algorithm for computing a directed MST 2. If no cycle formed, G(N,S) is an MST. Otherwise, continue.
3. For each cycle formed, contract the nodes in the cycle into a pseudo-node (k), and modify the cost of each arc which enters a node (j) in the cycle
from some node (i) outside the cycle according to the following equation.
c(i,k)=c(i,j)-(c(x(j),j)-min_{j}(c(x(j),j))
where c(x(j),j) is the cost of the arc in the cycle which enters j.
16
Directive Local Spanning Subgraph
2
1
3
4 5
6 (1)
(10) (5)
(11) (4) (6)
(3) (6) (9)
(7)
(8) 2
1
6 (1)
(9) (5)
(9) (8) (6)
(7) (7)
S={(1,2),(1,6),(4,3),(3,5),(5,4)} => S={(1,2),(1,6),(2,3),(3,5),(5,4)}
Chu-Liu/Edmonds Algorithm for computing a directed MST
4. For each pseudo-node, select the entering arc which has the smallest modified cost;
Replace the arc which enters the same real node in S by the new selected arc.
5. Go to step 2 with the contracted graph.
DRNG and DLSS
Theorem: DLSS is a subgraph of DRNG
Theorem: DLSS preserves connectivity
Corollary: DRNG preserves connectivity
Topology Control
Connectivity
Probability of Connectivity
Consider randomly deployed nodes
Factors to control network connectivity
Fixed transmission range; vary number of nodes or
Fixed node count; vary transmission range
Common framework: node density d
Average number of neighbors in transmission range
An estimate of this value:
A
n nodes uniformly distributed in A r
d = (n-1) * U(r) / A
= (n-1) * r2 / A U(r)
However, nodes at the boundary!
20
Probability of Connectivity
0 8 22
0 100
50
11
Density
Probability of connectivity
Probability of Connectivity
Fundamental question:
Given a number of nodes deployed in a region
Minimum transmission range to obtain connectivity?
Asymptotically the following holds [Gupta, Kumar]:
Corollary:
Assume: n nodes uniformly distributed on a unit disk
Transmission radius r(n) satisfies that node covers the area
r(n)2 = (log n + c(n)) / n
Then: network connected with probability one if and only if c(n) infinity
Assume: n nodes uniformly distributed on a unit disk Then r(n)=O(sqrt(log n / n)) implies network connected with probability one
22
Probability of Connectivity
Fact [Penrose]:
Assume network with n nodes and n infinity, then
Length of longest nearest neighbor and length of longest MST edge have asymptotically the same value
Idea to compute minimum radius r to maintain connectivity
First, localized LMST construction
Second, wave propagation of locally longest LMST edge
Longest edge e in wave propagation “wins”
Each node adjusts it’s transmission radius to |e|
Improvement?
Compute MST LMST instead
Localized construction of MST?
Quasi-Localized MST Construction
Construct LMST first
Run loop breakage procedure
Follow faces
Eliminate longest edge in closed faces
Repeat until stop at single node
Note
How to traverse faces locally?
see later
Limited to 2D
24
The Critical Node Degree
Remember
Average number of neighbors d(n,r) = (n-1)r2/A
[Gupta, Kumar]: r(n)=O(sqrt(log n / n)) implies network connected with probability one
Setting r(n) into d(n,r)
There exists constant c such that network is connected with probability one if d(n) ≥ c log n
[Xu, Kumar]: What is the value of c?
Each node connected to less than 0.074 log n neighbors asymptotically disconnection with probability one
Each node connected to more than 5.1774 log n neighbors asymptotically connection with probability one
Conjecture: for connection c may be close to one (open issue)
Fault Tolerant Topology Construction
Problem when setting minimum transmission power
Topology user (e.g. routing) more susceptible to node failure
Extreme case: single point of failure
Solution: Topology control
constructs a k-vertex connected network
Definition: k-vertex connected network
Network which can tolerate failure of at most k-1 nodes
Example 3-vertex connected network
V
P1 P2
P3
26
K-Connectivity
Fact: constructing minimum cost k-connected topology is NP-hard
[Penrose]: k-connectivity in geometric
random graph, n nodes, common radius r
Minimum value of r for k-connectivity = minimum value of r for minimum degree k (with prob. 1 as n goes to infinity)
Important result: global parameter (k-
connectivity) linked to local parameter (node
degree)
K-Connectivity
Localized construction of k-connected topology
[Li et al.] Yao graph
Use at least 6 cones
Choose k closest neighbors in each cone
[Bahramgiri et al.] CBTC()
Use = 2 / 3k
Remove all directed edges
28
Detecting Critical Nodes and Links
Alternative
Given topology
Local detection of “critical” nodes or links
Definition
Critical node v: subgraph of p-hop neighbors without v is disconnected
Critical link uv: Consider subgraph of common p-hop neighbors without uv is disconnected
Generalization to the case of k-connectivity