510 likes | 647 Views
On Delivery Guarantees of Face and Combined Greedy-Face Routing in Ad Hoc and Sensor Networks. Hannes Frey, Ivan Stojmenovic MobiCom 2006. Face Recovery Details. When to change current face traversal? How to decide the next face locally?. Example 1.
E N D
On Delivery Guarantees of Face and Combined Greedy-Face Routing in Ad Hoc and Sensor Networks Hannes Frey, Ivan Stojmenovic MobiCom 2006
Face Recovery Details • When to change current face traversal? • How to decide the next face locally?
Example 1 Greedy Perimeter Stateless Routing GPSR [Karp, Kung, 2000]
GPSR – The FACE Routing Part S T “On each face, the traversal uses the right hand rule to reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
x GPSR – The FACE Routing Part S T V “On each face, the traversal uses the right hand rule to reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
x GPSR – The FACE Routing Part S T F1 F2 V “On each face, the traversal uses the right hand ruleto reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
x GPSR – The FACE Routing Part S T V “On each face, the traversal uses the right hand rule to reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
x GPSR – The FACE Routing Part S T V “On each face, the traversal uses the right hand rule to reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
x GPSR – The FACE Routing Part S T “On each face, the traversal uses the right hand rule to reach an edge that crosses line xT. At that edge, the traversal moves to the adjacent face crossed by xT. … The node forwards the packet along the first edge of this next face – by applying the right hand rule, …” [Karp & Kung 2000]
What about Delivery Guarantees? A B S T D C E
What about Delivery Guarantees? A B S T D C E Outer Face
What about Delivery Guarantees? A B S T D C E Outer Face
What about Delivery Guarantees? A B S T D C E
What about Delivery Guarantees? A x B S T D C E GPSR Forwarding Loop for GG, RNG, and LDT
Is this an Issue for Greedy + PSR? A F1 P S T Q F2 E B C [Kim et al., 2005] D
Example 2 Greedy-Face-Greedy GFG, [Bose et al., 1999]
GFG – The face routing part P S repeat Let F be the face with P on boundary and intersecting PT Traverse* F until reaching an edge that intersects PT at some point Q≠P P Q until P=T *counterclockwise if inner, clockwise if outer face P S T F
GFG – The face routing part P S repeat Let F be the face with P on boundary and intersecting PT Traverse* F until reaching an edge that intersects PT at some point Q≠P P Q until P=T *counterclockwise if inner, clockwise if outer face Q P S T F
GFG – The face routing part P S repeat Let F be the face with P on boundary and intersecting PT Traverse* F until reaching an edge that intersects PT at some point Q≠P P Q until P=T *counterclockwise if inner, clockwise if outer face P S T F
GFG – The face routing part P P S repeat Let F be the face with P on boundary and intersecting PT Traverse* F until reaching an edge that intersects PT at some point Q≠P P Q until P=T *counterclockwise if inner, clockwise if outer face S T F
What about the GPSR Loop? A B S T D C E Outer Face
What about the GPSR Loop? A B S T D C E Outer Face
What about the GPSR Loop? Select face with P on boundary and intersecting PT A B S T D C E P Outer Face
What about the GPSR Loop? A B S T D C E Outer Face
Example 3 Greedy Path Vector Face Routing (GPVFR) [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part A S T F B 1. Find the face F containing the line segment ST. Let A and B be the clockwise and anti-clockwise nodes. If |AT| ≤ |BT|, forward the packet clockwise along F; if |AT| > |BT|, forward the packet anti-clockwise. 2. If any adjacent edge intersects the line segment ST then set S to current node C and go to step 1. [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part A S T B 1. Find the face F containing the line segment ST. Let A and B be the clockwise and anti-clockwise nodes. If |AT| ≤ |BT|, forward the packet clockwise along F; if |AT| > |BT|, forward the packet anti-clockwise. 2. If any adjacent edge intersects the line segment ST then set S to current node C and go to step 1. [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part S := C A C S T B 1. Find the face F containing the line segment ST. Let A and B be the clockwise and anti-clockwise nodes. If |AT| ≤ |BT|, forward the packet clockwise along F; if |AT| > |BT|, forward the packet anti-clockwise. 2. If any adjacent edge intersects the line segment STthen set S to current node C and go to step 1. [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part A S S T F B 1. Find the face F containing the line segment ST. Let A and B be the clockwise and anti-clockwise nodes. If |AT| ≤ |BT|, forward the packet clockwise along F; if |AT| > |BT|, forward the packet anti-clockwise. 2. If any adjacent edge intersects the line segment ST then set S to current node C and go to step 1. [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part A F S S T B 1. Find the face F containing the line segment ST. Let A and B be the clockwise and anti-clockwise nodes. If |AT| ≤ |BT|, forward the packet clockwise along F; if |AT| > |BT|, forward the packet anti-clockwise. 2. If any adjacent edge intersects the line segment ST then set S to current node C and go to step 1. [Leong, Mitra, Liskov, 2005]
What about Delivery Guarantees? S A F T B
What about Delivery Guarantees? S A T B C
What about Delivery Guarantees? C B F T A S
What about Delivery Guarantees? C B F T A B S
What about Delivery Guarantees? S GPVFR forwarding loop in arbitrary graphs F T
Is this an Issue for Greedy + PVFR? B Start here. S F T A
Example 4 • Greedy Other Adaptive Face Routing GOAFR, [Kuhn et al., 2003]
Face Routing Part of GOAFR P S repeat Explore the complete boundary of face F containing the line PT Advance to Q on F’s boundary which is closest to T and set P Q until reaching T P S T F
Face Routing Part of GOAFR P S repeat Explore the complete boundary of face F containing the line PT Advance to Q on F’s boundary which is closest to T and set P Q until reaching T P Q S T F
Face Routing Part of GOAFR P S repeat Explore the complete boundary of face F containing the line PT Advance to Q on F’s boundary which is closest to T and set P Q until reaching T P Q S T F
Face Routing Part of GOAFR P S repeat Explore the complete boundary of face F containing the line PT Advance to Q on F’s boundary which is closest to T and set P Q until reaching T F S T Q P
State of the Art • Counter examples for some well established mechanisms which are proved to be correct • Proofs do not consider the details of localized face selection • General question: Does face and combined greedy-face routing provide delivery guarantees???
General Face Start Mechanism • Assumption • Planar graph • S and T are connected • Mechanism Select first edge SA in cw direction from ST; traverse by right hand rule Or select first edge SB in ccw direction from ST; traverse by left hand rule • Invariant: Always detects an ST-intersection P≠S S A B V U P T
General Face Change Mechanism • Precondition • Planar Graph • S and T are connected • S and U are connected • UV intersects ST • Mechanism If UT right of UV then traverse by left hand rule else traverse by right hand rule • Invariant: Always detects a PT-intersection Q≠P (a) V left right T S cw<180° ccw≤180° U (b) V T Q S P U
RNG and GG are Good Natured • Face change is not an issue in GG and RNG • Intersection Property of GG • RNG GG applies to RNG as well U T WLOG: |UT| < |ST| S V
Summary • Success of face routing applied on its own
Summary • Success of combined greedy-face routing