Geographic Routing - PowerPoint PPT Presentation

1 / 56
About This Presentation
Title:

Geographic Routing

Description:

Assume we have algorithm X that takes as input a realizable globally rigid ... other 'virtual coordinate' systems such Vivaldi as an Internet coordinate system ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 57
Provided by: yangrich
Category:

less

Transcript and Presenter's Notes

Title: Geographic Routing


1
Geographic Routing
  • Y. Richard Yang
  • 4/7/2009

2
Admin.
  • Homework 4
  • Exam
  • Highest 75
  • Median 63
  • Average 59

3
NP-Hardness of Location Computation
Location computation of globally rigid networks
is NP-hard
Proof sketch Assume we have algorithm X that
takes as input a realizable globally rigid
network and outputs its unique positions. We
will find the set-partition of the partitionable
set S 1) scale so that the sum of elements in S
is less than p/2 2) construct wheel network with
di,i12sin(si/2) 3) call X to localize.
sin(s1/2)
1
sin(s1/2)
2
3
s1s4s2s3
s4
s2
rights lefts
s1
4
s3
0
4
The Localization Process
Applications Using Location
Location Computation
Localizability
Measurements
5
Geographical Routing
6
Motivations
  • A need for geographical based distribution
  • e.g., sensornets and location-based services
  • Reducing state overhead
  • the routing protocols we discussed so far may not
    scale to large-scale networks
  • routing states proportional to network size
  • objective of georouting each node keeps state
    (positions) only of its direct neighbors

7
Greedy Geographical Routing
  • Given destination D, find neighbor who is the
    closest to D

S
D
8
Problem of Greedy Georouting
  • May stuck with local minimum
  • To make progress (avoiding local min), the chosen
    neighbor should be closer to destination

D
A
B
9
Greedy Routing Works Well in Dense Networks
D
  • If node density is high, it is a low probability
    event for the region to have no nodes

10
Dealing with Void
Right-hand rule When arriving at node a from
node b, the next edge traversed is the next one
sequentially counterclockwise about a from edge
(a,b)
11
Example Right Hand Rule on Convex Subdivision
Convex subdivision a planar graph where every
internal face is a polytope Applying the
right-hand rule first remove the edges crossing
the line from source to destination, and then
apply the right hand rule.
12
Right-Hand Rule Does Not Work Well with Cross
Edges
z
v
D
u
  • s originates a packet to u
  • Right-hand rule results in the long detour
    s-u-z-w-u-s

w
s
13
Removing Cross Edges
z
v
D
u
w
  • Remove (w,z) from the graph
  • Right-hand rule results in the route s-u-z-v-D

s
14
Removing Cross-Edges -gt Planar Graph
  • Convert a connectivity graph to planar
    non-crossing graph by removing bad edges
  • Requirements
  • make sure the original graph will not be
    disconnected
  • local, distributed algorithm

15
Two Types of Planar Graphs
  • Relative Neighborhood Graph (RNG)
  • Gabriel Graph (GG)

16
Relative Neighborhood Graph
  • Edge uv can exist only if there does not exist
    another node w inside the intersection of the
    two circles centered at u and v with radius d(u,
    v)
  • i.e., no w such that d(w, u) lt d(u, v) and d(w,
    v) lt d(u, v)
  • Or equivalently ?w ? u, v d(u,v)
    maxd(u,w),d(v,w)

not empty ? remove uv
17
Gabriel Graph
  • An edge (u,v) exists between vertices u and v if
    no other vertex w is present within or on the
    circle whose diameter is uv.
  • ?w ? u, v d2(u,v) lt d2(u,w) d2(v,w)

Not empty ? remove uv
18
Examples
Full graph
GG subset
RNG subset
  • 200 nodes
  • randomly placed on a 2000 x 2000 meter region

19
Properties of GG and RNG
RNG
  • RNG is a sub-graph of GG
  • because RNG removes more edges
  • GG is a planar graph
  • and thus RNG is also planar
  • Connectivity
  • if the original graph isconnected, RNG is also
    connected

GG
20
Connectedness of RNG Graph
  • Key observation
  • Any edge on the minimumspanning tree of the
    originalgraph is not removed
  • Assume (u,v) is such an edge but removed in RNG
    due to w

u
v
21
Delaunay Triangulation
  • Let disk(u,v,w) be a disk defined by the three
    points u,v,w
  • The Delaunay Triangulation (Graph)
  • There is a triangle of edges between three nodes
    u,v,w iff the disk(u,v,w) contains no other
    points
  • Properties of the Delaunay Triangulation graph
  • it is the dual of the Voronoi diagram
  • DT graph is planar

22
Some Interesting Properties
  • Since the MST(V) is connected and the DT(V) is
    planar, all the planar graphs above are connected
    and planar

23
Final Algorithm Greedy Perimeter Stateless
Routing (GPSR)
  • Maintenance
  • all nodes maintain a single-hop neighbor table
  • Use RNG or GG to make the graph planar
  • Routing
  • use greedy forwarding whenever possible
  • resort to perimeter routing when greedy
    forwarding fails and record current location Lc
  • resume greedy forwarding when we are closer to
    destination than Lc

24
Example
d
d
D
D
e
e
c
c
a
a
f
S
S
b
For details about GPSR algorithm, please GPSR.
25
Evaluations
  • 50, 112, and 200 nodes with 802.11 WaveLAN radios
  • Maximum velocity of 20 m/s
  • 30 CBR traffic flows, originated by 22 sending
    nodes
  • Each CBR flows at 2 Kbps, and uses 64-byte
    packets

26
Packet Delivery Success Rate
Very dense network 20 neighbors
27
Routing Protocol Overhead
28
Routing State
  • State per router for 200-node
  • GPSR node stores state for 26 nodes on average in
    pause time-0

29
Path Length
30
Worst Case of GeoRouting in Terms of Hop Count
  • A worst case scenario
  • destination is central node
  • source is any node on ring
  • any spine can go to middle
  • O(c) nodes along ring and O(c) nodes along each
    spine
  • Best path length O(c)O(c)
  • Geographic routing
  • Test O(c) spines of length O(c)
  • Cost O(c2) instead of O(c)

31
Pros of GPSR
  • Provides geographical routing at low routing
    overhead

32
Cons of GPSR
  • Localization is challenging
  • True location may be less effective if there are
    obstacles

In the connectivity space, B is closer to
destination!!
33
Geographical Routing without Location
34
Clarification
  • Two interpretations of the term geographical
    routing
  • Routing to geographical locations
  • Using the technique of georouting for scalable
    routing (assign each node a coordinate)
  • What we discuss is mostly the second usage

35
Overview
  • Objective assign virtual coordinates to nodes
    so that
  • the coordinates are computed efficiently,
  • routing works well using the computed coordinates
  • Progress in three steps
  • the perimeter nodes and their locations are known
  • the perimeter nodes are known but not their
    coordinates are not known
  • nothing is known
  • We cover the first two steps

36
The Perimeter Nodes and Their Locations Are Known
  • Image a rubber band from each node to each
    (connected) neighbor
  • The force of a rubber band is proportional to
    its length, directedto the neighbor

37
The Perimeter Nodes and Their Locations Are Known
  • The equilibrium is achievedwhen the position p
    of a node is equal to the average of its
    neighbors
  • where n is number of neighbors
  • Algorithm
  • each node sends its position to its neighbors
  • a node updates its new position to be the average
    of those of its neighbors

38
True Node Positions
3200 nodes 64 perimeter nodes on the boundary
39
Virtual Node Positions (10 iterations)
Internal nodes initialized as the center of the
square
40
Virtual Node Positions (100 iterations)
Internal nodes initialized as the center of the
square
41
Virtual Node Positions (1000 iterations)
Internal nodes initialized as the center of the
square
42
Routing Performance
  • 32000 packets with random source-destination pairs

Success rate using (distance) greedy routing
43
Two More Scenarios
Success rate 0.981 Avg. path length 17.3
Success rate 0.99 Avg. path length 17.1
44
Weird Shapes
45
The Perimeter Nodes Are Known But Their Locations
Are Not Known
  • Assume the distance between two nodes is the
    (minimum) number of hops to go from one to the
    other
  • Distances can be derived by flooding the network
  • each perimeter node sends a HELLO message with a
    hop counter of 0
  • when seeing a message from a perimeter node with
    a lower hop counter, a node increases the counter
    by 1 and forwards it

46
Virtual Coordinates by Triangulation
  • Each perimeter node solves the minimization
    problem
  • Detail

47
Convergence and Performance
One iteration success rate 0.992 avg. path
length 17.2 Ten iterations success rate
0.994 avg. path length 17.2
48
Improving Resiliency
  • If perimeter vector is inaccurate, it results in
    inconsistent information
  • Augment with two beaconing nodes which provide
    two coordinate axes
  • special perimeter nodes or run leader election to
    select the two nodes
  • Origin is chosen as the center of gravity of all
    perimeter nodes
  • more robust to lost information

49
Selecting Perimeter Nodes
  • Rule A node is a perimeter node if
  • It is farthest away from the first beacon node
    among all its one-hop neighbors

50
Perimeter Node Detection
51
Convergence and Performance
Ten iterations success rate 0.996 avg. path
length 17.3
52
Summary
  • Localization is a fundamental primitive as
    communications
  • Locations can be real or virtual
  • We saw one virtual coordinate system to help
    with routing
  • Multiple other virtual coordinate systems such
    Vivaldi as an Internet coordinate system

Applications Using Location
Location Computation
Localizability
Measurements
53
Backup Slides
54
Projecting on Circle After First Computation
  • Circle center is center of gravity radius is
    average of distance of the perimeter nodes to the
    CG
  • Motivation maintain a consistent coordinate
    space

55
Virtual Polar Coordinate Space
  • Each node is assigned a label
  • label is number of hops to root and virtual angle
    range

Discussion how to do routing?
56
Build the Tree
  • Root node
  • starts as root
  • broadcasts level 0
  • A non-root node
  • receives message level n marks parent
  • broadcasts message saying level n1
  • All subtrees report size back to parent.
  • Root does assignment of virtual angles.

Question what about the issues of the described
algorithm?
Write a Comment
User Comments (0)
About PowerShow.com