on delivery guarantees of face and combined greedy-face routing in ad hoc and sensor networks
DESCRIPTION
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. - PowerPoint PPT PresentationTRANSCRIPT
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 1Greedy Perimeter Stateless Routing
GPSR [Karp, Kung, 2000]
GPSR – The FACE Routing Part
TS
“ 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]
GPSR – The FACE Routing Part
TS
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
F1 F2TS
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
TS
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
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
T
GPSR – The FACE Routing Part
TS
“ 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
What about Delivery Guarantees?
A
B
C
D
E
S T
What about Delivery Guarantees?
A
B
C
D
E
S T
Outer Face
What about Delivery Guarantees?
A
B
C
D
E
S T
Outer Face
What about Delivery Guarantees?
A
B
C
D
E
S T
What about Delivery Guarantees?
A
B
C
D
E
S T
GPSR Forwarding Loop for GG, RNG, and LDT
x
Is this an Issue for Greedy + PSR?
S
A
B
C
D
E
T
F1
F2
P
Q
[Kim et al., 2005]
Example 2Greedy-Face-Greedy GFG, [Bose et al.,
1999]
GFG – The face routing part
P Srepeat
Let F be the face with P on boundary and intersecting PTTraverse* F until reaching an edge that intersects PT at some point Q≠PP Q
until P=T
*counterclockwise if inner, clockwise if outer face
TS
P
F
GFG – The face routing part
P Srepeat
Let F be the face with P on boundary and intersecting PTTraverse* F until reaching an edge that intersects PT at some point Q≠PP Q
until P=T
*counterclockwise if inner, clockwise if outer face
TS
Q
F
P
GFG – The face routing part
P Srepeat
Let F be the face with P on boundary and intersecting PTTraverse* F until reaching an edge that intersects PT at some point Q≠PP Q
until P=T
*counterclockwise if inner, clockwise if outer face
TS
F
P
GFG – The face routing part
P Srepeat
Let F be the face with P on boundary and intersecting PTTraverse* F until reaching an edge that intersects PT at some point Q≠PP Q
until P=T
*counterclockwise if inner, clockwise if outer face
TS
P
F
What about the GPSR Loop?
A
B
C
D
E
S T
Outer Face
What about the GPSR Loop?
A
B
C
D
E
S T
Outer Face
What about the GPSR Loop?
A
B
C
D
E
S T
Outer Face
Select face with P on boundary and intersecting PT
P
What about the GPSR Loop?
A
B
C
D
E
S T
Outer Face
Example 3Greedy Path Vector Face Routing
(GPVFR) [Leong, Mitra, Liskov, 2005]
GPVFR – The Face Routing Part
S T
A
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]
F
GPVFR – The Face Routing Part
S T
A
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 T
A
B
C
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]
S := C
GPVFR – The Face Routing Part
S T
S
B
A
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]
F
GPVFR – The Face Routing Part
S T
S
B
A
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]
F
What about Delivery Guarantees?
S
T
What about Delivery Guarantees?
S
A
T
B
F
What about Delivery Guarantees?
S
A
C
T
B
What about Delivery Guarantees?
CB
S
T
A
F
What about Delivery Guarantees?
CB
T
B
A
S
F
What about Delivery Guarantees?
T
S
F
What about Delivery Guarantees?
S
TF
GPVFR forwarding loop in arbitrary graphs
Is this an Issue for Greedy + PVFR?
B
S
A
TF
Start here.
Example 4 Greedy Other Adaptive Face Routing
GOAFR, [Kuhn et al., 2003]
Face Routing Part of GOAFR
P Srepeat
Explore the complete boundary of face F containing the line PTAdvance to Q on F’s boundary which is closest to T and set P Q
until reaching T
S T
F
P
Face Routing Part of GOAFR
P Srepeat
Explore the complete boundary of face F containing the line PTAdvance to Q on F’s boundary which is closest to T and set P Q
until reaching T
S T
Q
F
P
Face Routing Part of GOAFR
P Srepeat
Explore the complete boundary of face F containing the line PTAdvance to Q on F’s boundary which is closest to T and set P Q
until reaching T
S T
Q
F
P
Face Routing Part of GOAFR
P Srepeat
Explore the complete boundary of face F containing the line PTAdvance to Q on F’s boundary which is closest to T and set P Q
until reaching T
S T
Q
F
P
What about the GPVFR Loop?S
TF
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
MechanismSelect 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
T
S
A B
U VP
General Face Change Mechanism
Precondition Planar Graph S and T are connected S and U are connected UV intersects ST
MechanismIf UT right of UV then traverse by left hand rule
else traverse by right hand rule
Invariant: Always detects a PT-intersection Q≠P
T
U
V
rightleftS
cw<180°
ccw≤180°
TS
U
(a)
V
P Q
(b)
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
T
S
U
V
WLOG: |UT| < |ST|
Summary Success of face routing applied on its
ownRNG GG LDT Any
GFG ok ok ok okGPSR loop loop loop loopGOAFR ok ok ok okGPVFR ? ? ? loop
Summary Success of combined greedy-face
routingRNG GG LDT Any
GFG ok ok ok okGPSR ok ok ? loopGOAFR ok ok ok okGPVFR ok ok ? loop
Summary GG and RNG allow simplified scheme
RepeatGreedy as long as possibleTraverse single face until return to greedy possible
Until delivery