SLIDE 1 Path Vector Face Routing: Geographic Routing with Local Face Information
Ben Leong, Sayan Mitra, and Barbara Liskov MIT CSAIL
SLIDE 2 Geographic Routing
- Geographic routing algorithms
– leverage physical location information – scale better than other ad hoc routing algorithms (Karp, 2001) – state proportional to network density, not size – can be applied using virtual coordinates (Rao et al., 2003)
SLIDE 3 Geographic Routing
- Existing geographic routing algorithms
– GPSR (Karp, 2001) GFG (Bose, 2001) – GOAFR+ (Kuhn, 2003) – nodes know only about immediate neighbors
- Can we do better if nodes have more
information?
SLIDE 4 Geographic Routing
- Existing geographic routing algorithms
– GPSR (Karp, 2001) GFG (Bose, 2001) – GOAFR+ (Kuhn, 2003) – nodes know only about immediate neighbors
- Can we do better if nodes have more
information? Yes!
SLIDE 5 Greedy Path Vector Face Routing
- Our new algorithm (GPVFR):
– stores small amount of additional local information (< 200 bytes) – improve maximum routing stretch over GPSR by 35 to 40% – improve maximum routing stretch over GOAFR+ by 20 to 25%
SLIDE 6 Overview
- Problem
- Approach
- Simulation Results
- Conclusion
SLIDE 7 Geographic Routing
- Nodes have x-y coordinates
- Nodes know coordinates of immediate
neighbors
- Packet destinations specified with x-y
coordinates
- In general, forward packets greedily
SLIDE 8
Example
SLIDE 10 Example
Destination Source
SLIDE 11 Example
Source Destination
SLIDE 12 Example
Source Destination
SLIDE 13 Example
Source Destination
SLIDE 14 Example
Source Destination
SLIDE 15 Geographic Face Routing
- Problem: sometimes a packet ends up at a local
minimum.
- Face routing – route packet along faces of a
planar subgraph
– Relative Neighborhood Graph (RNG) – Gabriel Graph (GG) – Cross Link Detection Protocol (CLDP) (Kim et al., NSDI 2005)
SLIDE 16 Example
Source Destination
SLIDE 17 Example
Source Destination
SLIDE 18 Example
Source Destination
SLIDE 19 Example
Source Destination
SLIDE 20 Example
Source Destination
SLIDE 21 Example
Source Destination
SLIDE 22 Example
Source Destination
SLIDE 23
Problem
Nodes do not know enough to determine the“correct” forwarding direction.
SLIDE 24 Bad Choice Example
Destination Source
SLIDE 25 Bad Choice Example
Destination Source
SLIDE 26 Bad Choice Example
Destination Source
SLIDE 27
Hypothesis
By maintaining several hops of information along each planar face, we can make a better choice when deciding how to traverse a face
SLIDE 28 Greedy Path Vector Face Routing (GPVFR)
- Three modes:
- 1. Forward greedily if possible.
- 2. Use face information to forward along
existing face
- 3. Fallback on face traversal (GPSR)
- Revert to greedy forwarding as soon as it
is feasible
SLIDE 29 Using Face Information
Source Destination
SLIDE 30 Using Face Information
Source Destination
SLIDE 31 Revert to Greedy Mode
Source Destination
SLIDE 32 Path Vector Exchange (PVEX)
- Protocol for maintaining face
information
- Nodes periodically exchange path
vectors with planar neighbors
– h hops of information
- Information is piggybacked on
keepalive messages
SLIDE 33
Maintaining Face Information
SLIDE 34
Maintaining Face Information
SLIDE 35 Simulation Results
- Measured 2 routing metrics:
– Path Stretch – Hop Stretch
- Random networks over a range of network
densities
- Compare to GPSR (Karp, 2001) and GOAFR+
(Kuhn, 2003)
- Results for RNG and GG planarization in paper
SLIDE 36
Hop Stretch (CLDP Planarization)
SLIDE 37 Hop Stretch (CLDP Planarization)
Average node degree 9
SLIDE 38
Scaling up
Average node density = 9
SLIDE 39 Hop Stretch (CLDP Planarization)
Average node degree 8
SLIDE 40
Scaling up
Average node density = 8
SLIDE 41
Scaling up
Average node density = 7
SLIDE 42
Scaling up
Average node density = 6.5
SLIDE 43
Varying Path Vector Length
SLIDE 44 Maintenance Cost
– Small (15 to 20 extra nodes on average, < 200 bytes) – proportional to number of planar neighbors – independent of network density
– h message exchanges (each < 200 bytes)
- Planarization cost >> PVEX cost
SLIDE 45 Theoretical results
- 1. With full face information, we
can route obliviously;
- 2. Without full face information, it
is impossible to route
SLIDE 46 Conclusion
- Forwarding direction is critical
for good performance
- GPVFR achieves significantly
improved routing stretch with a little extra storage.
SLIDE 47 Path Vector Face Routing: Geographic Routing with Local Face Information
Ben Leong, Sayan Mitra, and Barbara Liskov MIT CSAIL
SLIDE 48 Why unlimited face information can be bad
Source Destination
SLIDE 49 Why unlimited face information can be bad
Source Destination
SLIDE 50 Why unlimited face information can be bad
Source Destination
SLIDE 51 Why unlimited face information can be bad
Source Destination
SLIDE 52 Why unlimited face information can be bad
Source Destination
SLIDE 53 Why unlimited face information can be bad
Source Destination
SLIDE 54 Why unlimited face information can be bad
Source Destination
SLIDE 55 Why unlimited face information can be bad
Source Destination
SLIDE 56 Why unlimited face information can be bad
Source Destination
SLIDE 57 Theorem 1
Given a connected pair of nodes v and t in a planar graph G, assuming that every node in G completely knows all its faces, we can route from v to t
SLIDE 58
Theorem 1 Paraphrased
With full face information at each node, we can route without storing state in the packets
SLIDE 59 Oblivious Routing with Full Face Information (OPVFR)
- Suppose all nodes have full face
information
– Find target node and route towards it. – To find target node: find edge that is nearest to destination node among all faces. Node on edge that is nearer destination is target node.
- Break ties in some consistent way.
SLIDE 60 Non-oblivious Routing
- Need to know when we come back to the same
node!
SLIDE 61 Non-oblivious Routing
- Need to know when to switch back to greedy
SLIDE 62
Theorem 2
For any given non-negative integer h, there does not exist a deterministic oblivious routing algorithm that guarantees packet delivery for all planar graphs if nodes are limited to knowing only about nodes that are up to h hops away
SLIDE 63
Theorem 2 Paraphrased
If nodes do not have full face information, it is impossible to always route correctly without storing some state in the packets.