On Delivery Guarantees of Face and Combined Greedy-Face Routing in Ad Hoc and Sensor Networks

Post on 05-Feb-2016

29 views 0 download

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 Presentation

transcript

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