Routing IV - SUNY

advertisement
Landmark--based routing
Landmark
Landmark--based routing
Landmark
[Kleinberg04] J. Kleinberg, A. Slivkins, T. Wexler. Triangulation and
Embedding using Small Sets of Beacons. Proc. 45th IEEE Symposium
on Foundations of Computer Science, 2004. Using the distances to
landmarks and triangle inequality, one can approximate the distance for
most of pairs.
[Fang05a] Qing Fang, Jie Gao, Leonidas Guibas, Vin de Silva, Li Zhang,
GLIDER: Gradient Landmark-Based Distributed Routing for Sensor
Networks, Proc. of the 24th Conference of the IEEE Communication
Society (INFOCOM'05), March, 2005. Route around holes. Use
combinatorial Delaunay graph to capture the global topology.
[Fonseca05] Rodrigo Fonseca, Sylvia Ratnasamy, Jerry Zhao, Cheng Tien Ee
and David Culler, Scott Shenker, Ion Stoica, Beacon Vector Routing:
Scalable Point-to-Point Routing in Wireless Sensornets, NSDI'05.
Landmark-based routing scheme.
[Mao07] Yun Mao, Feng Wang, Lili Qiu, Simon S. Lam, Jonathan M. Smith,
S4: Small State and Small Stretch Routing Protocol for Large Wireless
Sensor Networks, NSDI’07. Landmark-based routing with constant stretch,
and \sqrt{n} routing table size.
Landmark--based schemes
Landmark
• k nodes are selected as landmarks (beacons)
that flood the network. Each node records hop
distances to these landmarks.
– estimate pair-wise distances,
– point-to-point routing.
• Pros:
– simplicity,
– location-free,
– independent of dimensionality (works for 3D
networks).
– No unit disk graph assumption
Use landmarks to estimate pairpair-wise
distances
• Triangulation: estimate via triangle inequality
– (u,v), beacon b : |d(u,b)-d(v,b)| ≤ d(u,v) ≤
d(u,b)+d(v,b)
– lower bound: d-(u, v) = max beacons b |d(u,b)-d(v,b)|
– upper bound: d+(u,v) = min beacons b d(u,b)+d(v,b)
– Internet setting, IDMaps [Francis+ ’01], etc
• magic: relative error <1 on 90% node pairs
– 900 random nodes, 15 beacons
– relative error(x,y) = |x-y| / min(x,y)
A simple case
• With O(1) random landmarks, d+(u,v) ≤ 3d(u,v)
for all but εfraction of pairs with prob 1-γ.
–
–
–
–
At least one beacon inside B(u).
For any point v outside B(u),
d(v,b) ≤ d(u,b)+d(u,v) ≤ 2d(u,v)
d+(u,v) ≤ d(u,b)+d(v,b) ≤ 3d(u,v)
b
u
B(u): ball with εn nodes inside.
v
Sensor networks, doubling metric
• A metric space has doubling dimension s if any
ball of radius r can be covered by s balls of
radius r/2.
– Geometric growth.
– Binary trees do not have constant doubling
dimension.
– Euclidean space has constant doubling dimension
– Many practical networks fit in this model: Internet
delay distance, sensor network (not too fragmented),
VSLI layout, etc.
Improved bound on triangulation
• With O(1) random landmarks, d+(u,v) ≤ (1+δ)
d+(u,v) for all but ε fraction of pairs with prob 1-γ.
Landmark--based embedding
Landmark
Global Network Positioning (GNP) [Ng+Zhang’02]
• select small #nodes as “beacons”
– users measure latencies to beacons
• embed into low-dim Euclidian space
– embed the beacons
– embed non-beacons one by one
• magic: 90% node pairs are embedded with relative
error <.5
– 900 random nodes, 15 beacons, 7 dimensions
– Proof omitted.
Discussion
• With distances estimation, potentially we
can do “greedy routing”.
• Next: different ways to implement
landmark-based routing schemes.
– Beacon Vector Routing
– GLIDER
– S4: compact routing
Beacon Vector Routing (BVR)
• A heuristic landmark-based routing.
• Every node remembers hop counts to a total of r
landmarks.
– Move towards a beacon when the destination is
closer to the beacon than the current node
– Move away from a beacon when the destination is
further from the beacon than the current node
2/27/09
Jie Gao, CSE595-spring09
10
Beacon Vector Routing (BVR)
• A heuristic landmark-based routing.
• Every node remembers hop counts to a total of r
landmarks.
• Routing metric:
– Pulling landmarks (those closer to destination).
Dist from d to landmark i.
Dist from p to landmark i.
– Pushing landmarks (further to destination)
2/27/09
Jie Gao, CSE595-spring09
11
Beacon Vector Routing (BVR)
• Routing metric: Choose a neighbor that
minimizes
Dist from d to landmark i.
Dist from p to landmark i.
• No theoretical understanding of the
performance.
2/27/09
Jie Gao, CSE595-spring09
12
Fall back mode
• If greedy routing with the routing metric
gets stuck, then send to the closest
beacon.
• The closest beacon does a scoped
flooding.
Simulations
• Assumptions for high level simulation
– Fixed circular radio range
– Ignore the network capacity and congestion
– Ignore packet losses
• Place nodes uniformly at random in a square
planner region
– 3200 nodes uniformly distributed in a 200 * 200 unit
area
– Radio range is 8 units
– Average node degree is 16
• Vary #total beacons and #routing beacons
Greedy success rate
Greedy routing with 10 beacons
Obstacles
Routing around holes
• Real-world deployment is not uniform, has holes
(due to buildings, landscape variation).
• Face routing is too “Short-sighted” and greedy.
• Boundary nodes get overloaded.
2/27/09
Jie Gao, CSE595-spring09
18
GLIDER
• 2-level infrastructure
• Top-level: capture the global topology.
– Where the holes are (e.g., CS building, Javitz
center, etc).
– General routing guidance (e.g., get around
the Javitz center, go straight to SAC).
• Bottom-level: capture the local
connectivity.
– Gradient descent to realize the routing path.
2/27/09
Jie Gao, CSE595-spring09
19
2-level infrastructure
• Why this makes sense?
– Global topology is stable (the position of
buildings are unlikely to change often).
– Global topology is compact (a small number
of buildings)
• From each node’s point of view:
– A rough guidance.
– Local greedy rule.
2/27/09
Jie Gao, CSE595-spring09
20
Combinatorial Delaunay graph
•
Given a communication
graph on sensor nodes,
with path length in shortest
path hop counts
•
Select a set of landmarks
•
Landmarks flood the
network. Each node learns
the hop count to each
landmark.
•
Construct Landmark
Voronoi Complex (LVC)
2/27/09
Jie Gao, CSE595-spring09
21
Combinatorial Delaunay graph
•
Construct Landmark
Voronoi Complex (LVC)
•
Each sensor identifies its
closest landmark.
•
A sensor is on the boundary if
it has 2 closest landmarks.
•
If flooding are synchronized,
then restricted flooding up to
the boundary nodes is
enough.
2/27/09
Jie Gao, CSE595-spring09
22
Combinatorial Delaunay graph
•
Construct Combinatorial
Delaunay Triangulation
(CDT) on landmarks
•
If there is at least one
boundary node between
landmark i and j, then
there is an edge ij in CDT.
•
Holes in the sensor field
map to holes in CDT.
•
CDT is broadcast to the
whole network.
2/27/09
Jie Gao, CSE595-spring09
23
Virtual coordinates
Each node stores virtual coordinates (d1, d2, d3, … dk),
dk= hop count to the kth reference landmark (home+neighboring
landmarks)
home landmark
(think about post-office)
resident tile
p
reference
landmarks
2/27/09
Boundary
nodes
Jie Gao, CSE595-spring09
24
Combinatorial Delaunay graph
Theorem: If G is connected, then the Combinatorial
Delaunay graph D(L) for any subset of landmarks is also
connected.
1. Compact and stable
2. Abstract the connectivity
graph:
Each edge can be mapped
to a path that uses only
the nodes in the two
corresponding Voronoi
tiles; Each path in G can
be “lifted” to a path in D(L)
2/27/09
Jie Gao, CSE595-spring09
25
Information Stored at Each Node
• The shortest path tree
on D(L) rooted at its
home landmark
• Its coordinates and
those of its neighbors
for greedy routing
2/27/09
Jie Gao, CSE595-spring09
26
Virtual coordinates
• With the virtual coordinates, a node can
test if
– It is on the boundary (two closest landmarks).
– A neighbor who is closer to a reference
landmark.
2/27/09
Jie Gao, CSE595-spring09
27
Local Routing with Global Guidance
• Global Guidance: routing on tiles
the D(L) that encodes global connectivity
information is accessible to every node for
proactive route planning on tiles.
• Local Routing: how to go from tile to tile.
high-level routes on tiles are realized as actual
paths in the network by using reactive protocols.
2/27/09
Jie Gao, CSE595-spring09
28
GLIDER -- Routing
1. Global planning
u2
2. Local routing
– Inter-tile routing
u1
– Intra-tile routing
p
2/27/09
Jie Gao, CSE595-spring09
u3
q
29
Intra--tile routing
Intra
L5
L1
p
L0
L4
L3
2/27/09
q
• How to route from one node to
the other inside a tile?
• Each node knows the hop count
to home landmark and
neighboring landmarks.
• No idea where the landmarks
are.
L2
• A bogus proposal: p routes to
the home landmark then routes
to q.
Jie Gao, CSE595-spring09
30
Centered LandmarkLandmark-Distance Coordinates and
Greedy Routing
L5
L1
Reference landmarks: L0,…Lk
T(p) = L0
2
p
L0
L4
q
Local virtual coordinates:
2
2
c(p)= (pL0 – s,…, pLk – s)
L2
L3
2
Let s = mean(pL0 ,…, pLk )
(centered metric)
Distance function:
2
d(p, q) = |c(p) – c(q)|
Greedy strategy: to reach q, do gradient descent on the function d(p, q)
2/27/09
Jie Gao, CSE595-spring09
31
Local Landmark Coordinates – No Local Minimum
• Theorem: In the continuous Euclidean
plane, gradient descent on the function d(p,
q) always converges to the destination q, for
at least three non-collinear landmarks.
• Landmark-distance coordinates
• Centered coordinates
• The function
function!
2/27/09
Landmark i
is a linear
Jie Gao, CSE595-spring09
32
Node Density vs. Success Rate of Greedy Routing
In the discrete case, we empirically observe that landmark gradient
descending does not get stuck on networks with reasonable density
(each node has on average six neighbors or more).
2000 nodes distributed on a perturbed grid.
Perturbation ~ Gaussian(0, 0.5r), where r is the radio range
2/27/09
Jie Gao, CSE595-spring09
33
u2
u1
u3
q
p
2/27/09
Jie Gao, CSE595-spring09
34
Examples
2/27/09
Each node on average has 6 one-hop
neighbors. Jie Gao, CSE595-spring09
35
Simulations – Path Length and Load Balancing
GLIDER
41 hops
GPSR
52 hops
Each node on average has 6 one-hop neighbors.
2/27/09
Jie Gao, CSE595-spring09
36
Simulations – Hot Spots Comparison
Randomly pick 45 source and destination pairs, each separated by
more than 30 hops.
GLIDER
GPSR
Blue (6-8 transit paths), orange (9-11 transit paths), black (>11 transit paths)
2/27/09
Jie Gao, CSE595-spring09
37
Stability
• Landmark failure.
– Not a big problem as the landmark is simply a
point of reference.
– Not like gateway.
• Combinatorial Delaunay edge change?
– Requires big change in the network topology
(merge of holes, disconnect a band of nodes,
etc).
2/27/09
Jie Gao, CSE595-spring09
38
S4: small state small stretch
• Landmark-based
– Each node knows how to route to the landmark.
– Use additional routing table entries to keep the routes
to other nodes.
– Routing: first route to the landmark closest to t, when
the message gets close, use local routing tables.
S4: small state small stretch
• Node clusters
– Each regular node d has a cluster, in which
each node knows how to route to d.
– Radius is the distance to the closest beacon.
• Claim: this guarantees delivery.
Stretch is 3
Path = |ux|+|xv| = |ux|+|bv|
≤ |ub|+|bv|
//shortcut
≤|uv|+2|bv|
//triangle inequality
≤ 3|uv|
// u is outside cluster
b
x
v
u
Routing table size?
• Take \sqrt{n} random landmarks such that
the number of nodes inside cluster is
roughly \sqrt{n}.
Comparison with BVR
Routing states
Summary
• Landmark failure?
– Landmark is for reference, and do not
necessarily carry messages.
• Design principles:
– Global routing -- route to somewhere close to
the destination v.s local routing – route to the
destination.
– Gradient-based or routing table based.
– Landmarks are global or local: accurate
distances to far away landmarks.
Summary
• BVR: global landmarks, global potential
function, gradient based.
• GLIDER:
– Global routing: routing table; local routing:
gradient based.
– Landmarks are local: the distances to far away
landmarks do not need to be accurate.
• S4: global landmarks, global routing:
gradient-based; local routing: routing table.
Download