You are on page 1of 27

GPSR: Greedy Perimeter Stateless

Routing for Wireless Networks


B. Karp, H. T. Kung

Motivation
A sensor net consists of hundreds or thousands of

nodes

Scalability is the issue


Existing ad hoc net protocols, e.g., DSR, AODV, ZRP,
require nodes to cache e2e route information
Dynamic topology changes
Mobility

Reduce caching overhead


Hierarchical routing is usually based on well defined, rarely
changing administrative boundaries
Geographic routing
Use location for routing
2

Scalability metrics
Routing protocol msg cost
How many control packets sent?
Per node state
How much storage per node is required?
E2E packet delivery success rate

Assumptions
Every node knows its location
Positioning devices like GPS
Localization
A source can get the location of the

destination

802.11 MAC
Link bidirectionality

Geographic Routing: Greedy Routing

Closest
to D

- Find neighbors who are the closer to the destination


- Forward the packet to the neighbor closest to the
destination
5

Benefits of GF
A node only needs to remember the location

info of one-hop neighbors


Routing decisions can be dynamically made

Greedy Forwarding does NOT always work


GF fails

If the network is dense enough that each

interior node has a neighbor in every 2/3


angular sector, GF will always succeed
7

Perimeter Forwarding
Destination

Dealing with Void: Right-Hand Rule

Apply the right-hand rule to traverse the edges of

a void

Pick the next anticlockwise edge

Traditionally used to get out of a maze

Right Hand Rule on Convex Subdivision

For convex subdivision, right hand rule is equivalent to


traversing the face with the crossing edges removed.

10

Right-Hand Rule Does Not Work with


Cross Edges

z
u

x originates a packet to u

Right-hand rule results in the


tour x-u-z-w-u-x

11

Remove Crossing Edge

z
u

Make

the graph planar

Remove

(w,z) from the graph

Right-hand rule results in the


tour x-u-z-v-x

12

Make a Graph Planar


Convert a connectivity graph to planar non-

crossing graph by removing bad edges

Ensure the original graph will not be


disconnected
Two types of planar graphs:

Relative Neighborhood Graph (RNG)


Gabriel Graph (GG)

13

Relative Neighborhood Graph


uv can exist if
w u, v, d(u,v) < max[d(u,w),d(v,w)]

Connection

not empty
remove uv

14

Properties of GG and RNG


RNG is a sub-graph of

RNG

GG

Because RNG removes more


edges

GG

If the original graph is

connected, RNG is also


connected

15

Connectedness of RNG Graph


Key observation
Any edge on the minimum
spanning tree of the original
graph is not removed
Proof by contradiction: Assume
(u,v) is such an edge but removed in RNG

v
16

Examples

Full graph

RNG subset

200 nodes
randomly placed on a 2000 x 2000 meter region
radio range of 250 m

Bonus: remove redundant, competing path less collision

17

Greedy Perimeter Stateless Routing (GPSR)


Maintenance

all nodes maintain a single-hop neighbor table


Use RNG or GG to make the graph planar

At source:

mode = greedy

Intermediate node:

if (mode == greedy) {
greedy forwarding;
if (fail) mode = perimeter;
}
if (mode == perimeter) {
if (have left local maxima) mode = greedy;
else (right-hand rule);
}
18

GPSR

greedy fails

Greedy Forwarding

greedy works

Perimeter Forwarding

have left local maxima


greedy fails

19

Implementation Issues
Graph planarization
RNG & GG planarization depend on having the
current location info of a nodes neighbors
Mobility may cause problems
Re-planarize when a node enters or leaves the
radio range

What if a node only moves in the radio range?


To avoid this problem, the graph should be re-planarize
for every beacon msg

Also, assumes a circular radio transmission model


In general, it could be harder & more expensive
than it sounds

20

50, 112 & 200 nodes


22 sending nodes & 30 flows
About 20 neighbors for each node very dense
CBR (2Kbps)
Nominal radio range: 250m (802.11 WaveLan

radio)
Each simulation takes 900 seconds
Take an average of the six different
randomly generated motion patterns

21

Packet Delivery Success Rate

22

Routing Protocol Overhead

23

GPSR Failure
Uses the popular route again and again

without considering residual energy.


Perimeter forwarding may result in Failure
even if the route exist to
destination(excluding the loops)

24

GPSR (Perimeter)failure

25

Refinement of GPSR
consider two conditions to select best

neighboring node to forward data


First, the chosen node must have less distance
to sink than node itself.
Secondly, among the neighboring nodes that
satisfy the first condition, choose the node
that have maximum residual energy left.
first condition ensures that the data packets
must travel towards sink rather than just
roaming around the network and second
condition will eliminate the hot spot condition

26

Questions?

27

You might also like