Top Banner
A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications Research Institute(ACRI), Sharif University of Technology, Tehran, Iran. Distributed Collaborative Virtual Environment Research Lab., University of Ottawa, Ottawa, Canada.
20

A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Jan 11, 2016

Download

Documents

Lucy Stokes
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

A Delaunay Triangulation Architecture Supporting Churn and

User Mobility in MMVEs

Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi

Advanced Communications Research Institute(ACRI), Sharif University of Technology, Tehran, Iran.

Distributed Collaborative Virtual Environment Research Lab., University of Ottawa, Ottawa, Canada.

Page 2: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

MMVEs and their requirements

Virtual worlds where a large number of users distributed all over

the Internet can interact with each other in real time.

MMVEs must deal with the real-time update message exchange.

The large number of users highly motivates the use of

distributed architectures where there is no central switching

point for the updates.

Page 3: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Geometric routing

Aimed to send an update message to

a specific coordinate in space, as

opposed to sending it to a specific IP

address.

The use of IP routing would require a node

to make a location query to know who is

located in its area of effect.

Efficiency of geometrical routing is closely

related to the structure of the overlay

network.

The overlay must be a highly dynamic as

users frequently join, leave or change

their locations.

Virtual Environment

Geometric Routing Overlay

Send to location

Page 4: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Greedy Routing - Motivation

Due the highly dynamic characteristics MMVEs, it is almost impossible for

the nodes to gather information of all possible locations and available links.

Therefore, the use of an online routing method is highly motivated where

topology data centralization is not required.

Greedy routing

Among the simplest and most common routing algorithms that can be

used in geometrical routing context.

Tries to select the closest available node as the next hop

for the packets.

Is only supported over a specific family of

overlay graphs

Page 5: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Definitions - Voronoi Cell and Delaunay Triangulation

Voronoi Cells

Partition the plane.

Voronoi Cell of each point vi,

VC(vi), is defined as the set of all

points in the plane that are

closer to vi than any other point.

No Overlap

Delaunay Triangulation

Graph formed from Voronoi Cells

Delaunay Triangulation is a

graph G=(V, E) where e=(vi, vj) is

in E, iff VC(vi) and VC(vj) has a

side in common.

30 40 50 60 70 80

25

30

35

40

45

50

55

60

65

70

30 40 50 60 70 80

25

30

35

40

45

50

55

60

65

70

30 40 50 60 70 80

25

30

35

40

45

50

55

60

65

70

30 40 50 60 70 80

25

30

35

40

45

50

55

60

65

70

Points on a planeVoronoi CellsDelaunay Triangulation Graph

Page 6: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

Definitions - Vertex Region

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Consider a graph G = (V,

E). For each vertex vi, we

define the Vertex Region of

vi in graph G, VRG(vi), as

the set of all points in the

plane that are closer to vi

than to any of its neighbors

in G. Arbitrary Graph

Set of NodesVertex Region

Page 7: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Necessities of Overlay to support Greedy Routing

Theorem 1: Graph G = (V, E) in the Euclidian plane supports

greedy routing iff for every node vi in V, VRG(vi) = VC(vi).

Theorem 2: Graph G = (V, E) in the Euclidian plane supports

greedy routing iff for all vi, vj in V, VRG(vi) ∩VRG(vj) = ф .

Therefore, in order to support greedy routing, it suffices to

connect each pair of nodes that their VRG’s have a nonempty

intersection.

Page 8: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Motivation of RED-BLACK ARCHITECTURE

Nodes are usually in movement and they use location

update messages for announcing their new locations to

the other nodes.

BUT: destination nodes may also be in motion.

The challenge for the fully distributed topology update is

the lack of any fixed points that can be used as landmarks

to help the nodes in topology reconstruction after any

movement.

Page 9: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

The idea of RED-BLACK ARCHITECTURE

To deal with this problem/, we divide the nodes into two

sets called Red and Black.

Nodes of each set send their update messages in one of

the update phases.

Therefore each set is able to use the other set as its

landmark in order to update itself.

Page 10: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Outline of the RED-BLACK ARCHITECTURE

This architecture has two graphs in the

background, red and black.

Red and black graphs have separate

updated phases and always will support

greedy routing.

This architecture also has a main graph on

all of the nodes which would be the main

overlay of the network.

The red and black graphs are used only as a

substrate to retain the main graph.

Phase Shifted Update CyclesUpdate Cycle = T seconds

Red:

0, T, 2T,

3T, 4T…

Black:

T/2, 5T/2, 7T/2,3T/2,

9T/2…

Page 11: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Updating Red Graph Using the Black Graph

Since there is no single point where all

of information required for checking

overlaps is located, we need a

distributed method.

To update the red graph to support

greedy routing, the idea is to find the

overlaps between vertex regions and

connect relevant nodes to eliminate

this overlaps .

The point is if we connect two nodes,

the intersection of their vertex regions

would be empty.

RED UPDATE CYCLE:

1) Red positions are updated

in Red graph

Red connections remain

Black graph does not

change

2) Red nodes notify Black

nodes

3) Black nodes check Red

graph correctness

4) Main graph is updated

Page 12: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Updating Red Graph Using the Black Graph

To maintain greedy routing support in the red graph, the

black nodes would be used as the reliable substrate of this

distributed method.

The specifications of each VRR(vi) (the vertex region of vi in

the red graph) will be sent to all the black nodes whose

their VRB (the vertex region in the black graph) has a

nonempty intersection with this VRR.

Page 13: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

How to disseminate specifications of VRR(vi)

Each red node reminds the nearest

black node of itself (named its black

owner).

During the red update period, each

red node sends the specifications of

its red vertex region to its previous

black owner and asks the black

owner to return the message to itself

using the black graph.

Since the black graph supports

greedy routing, this packet will get to

the red node’s new black owner.

Page 14: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

How to disseminate specifications of VRR(vi)

Upon the reception of every new VRR

specification by a black node, the black

node propagates the received VRR

specification to every black neighbor in

the black graph whose VRB’s common

side (or point) has a nonempty

intersection with the VRR encapsulated

in the message.

Theorem 3: With the above method, the

message encapsulating VRR(vi) will be

received by a black node iff the black

vertex region of it has a nonempty

intersection with VRR(vi).

Page 15: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Vertex Region Overlap Detection

If there is an overlap, the overlap will be in the black vertex region of one node, therefore this black node will receive the specifications of both of overlapping vertex regions and will find out the overlap.

10 15 20 25 30 35

5

10

15

20

25

30

35

10 15 20 25 30 35

5

10

15

20

25

30

35

10 15 20 25 30 35

5

10

15

20

25

30

35

10 15 20 25 30 35

5

10

15

20

25

30

35

10 15 20 25 30 35

5

10

15

20

25

30

35Overlap Area

10 15 20 25 30 35

5

10

15

20

25

30

35

Black node responsible for detection of this overlap

Page 16: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Improvement of the Update Algorithm

Before propagating the messages in black nodes, every

black node checks for the red VRR-s overlap and updates

the message contents. Then the message will be

broadcasted to neighbors which their black vertex region

have common point with this updated VRR.

Page 17: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Update of the main graph

Upon the reception of a new VRR(vi)

in each black node, the black node

checks the vi as a candidate of

neighborhood in the main graph.

If candidateship is granted, it

sends a neighborhood request

message to vi including its own

location.

The black node also re-computes

its main graph in the presence of vi

as a new neighbor.

Page 18: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Simulation Results

It can be seen that delightfully, the number of nodes in the

area has a slight effect on the termination time of the

proposed method

Page 19: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Simulation Results

Number of messages sent in the resumption algorithm has

an approximately linear relation with the number of nodes

and thus, average number of messages transmitted by

every node is almost constant

Page 20: A Delaunay Triangulation Architecture Supporting Churn and User Mobility in MMVEs Mohsen Ghaffari, Behnoosh Hariri and Shervin Shirmohammadi Advanced Communications.

Fin.

Thank You.