Reconfiguration of the routing in WDM networks with two classes of - - PowerPoint PPT Presentation

reconfiguration of the routing in wdm networks with two
SMART_READER_LITE
LIVE PREVIEW

Reconfiguration of the routing in WDM networks with two classes of - - PowerPoint PPT Presentation

Reconfiguration of the routing in WDM networks with two classes of services D. Coudert 1 , F. Huc 1 , 2 , D. Mazauric 1 , N. Nisse 1 and J-S. Sereni 3 , 4 1- MASCOTTE, INRIA, I3S, CNRS, Univ. Nice Sophia, Sophia Antipolis, France 2- TCS-sensor


slide-1
SLIDE 1

Reconfiguration of the routing in WDM networks with two classes of services

  • D. Coudert1, F. Huc1,2, D. Mazauric1, N. Nisse1 and J-S. Sereni3,4

1- MASCOTTE, INRIA, I3S, CNRS, Univ. Nice Sophia, Sophia Antipolis, France 2- TCS-sensor lab, Centre Universitaire d’Informatique, Univ. Gen` eve, Suisse 3- LIAFA, CNRS, Univ. D. Diderot, Paris, France 4- KAM, Faculty of Math. and Physics, Charles Univ., Prague, Czech Republic

  • D. Coudert et al.

ONDM’09 1/18

slide-2
SLIDE 2

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

+ A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-3
SLIDE 3

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Routing of request: A → F + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-4
SLIDE 4

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Routing of request: A → C + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-5
SLIDE 5

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Routing of request: E → F + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-6
SLIDE 6

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Removal of request: A → F + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-7
SLIDE 7

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Routing of request: D → F + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-8
SLIDE 8

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

Routing of request: A → B + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-9
SLIDE 9

WDM networks with dynamic traffic

How to handle traffic changes ?

B C D E F A

Routing of request: B → E ? ? + A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-10
SLIDE 10

WDM networks with dynamic traffic

How to handle traffic changes ?

A B C D E F

+ A → F + A → C + E → F − A → F + D → F + A → B + B → E

  • D. Coudert et al.

ONDM’09 2/18

slide-11
SLIDE 11

What can we do ?

Reject the new request → blocking probabilities Stop all requests and restart with new routing . . . Find the most suitable route for incoming request with eventual rerouting of pre-established connections Our problem: Inputs: Set of connection requests + current and new routing Output: Scheduling for switching connection requests from current to new routes.

  • D. Coudert et al.

ONDM’09 3/18

slide-12
SLIDE 12

What can we do ?

Reject the new request → blocking probabilities Stop all requests and restart with new routing . . . Find the most suitable route for incoming request with eventual rerouting of pre-established connections Our problem: Inputs: Set of connection requests + current and new routing Output: Scheduling for switching connection requests from current to new routes.

  • D. Coudert et al.

ONDM’09 3/18

slide-13
SLIDE 13

What can we do ?

Reject the new request → blocking probabilities Stop all requests and restart with new routing . . . Find the most suitable route for incoming request with eventual rerouting of pre-established connections Our problem: Inputs: Set of connection requests + current and new routing Output: Scheduling for switching connection requests from current to new routes.

  • D. Coudert et al.

ONDM’09 3/18

slide-14
SLIDE 14

GMPLS

Make-before-break: Establish new path before switching the connection = ⇒ Destination resources must be available Break-before-make: Break connection before establishing the new path = ⇒ Traffic stopped while new path not established

  • D. Coudert et al.

ONDM’09 4/18

slide-15
SLIDE 15

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

  • D. Coudert et al.

ONDM’09 5/18

slide-16
SLIDE 16

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

  • D. Coudert et al.

ONDM’09 5/18

slide-17
SLIDE 17

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

  • D. Coudert et al.

ONDM’09 5/18

slide-18
SLIDE 18

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

  • D. Coudert et al.

ONDM’09 5/18

slide-19
SLIDE 19

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

  • D. Coudert et al.

ONDM’09 5/18

slide-20
SLIDE 20

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

A B C D E F

  • D. Coudert et al.

ONDM’09 5/18

slide-21
SLIDE 21

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

break

B C D E F A

  • D. Coudert et al.

ONDM’09 5/18

slide-22
SLIDE 22

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

break

B C D E F A

  • D. Coudert et al.

ONDM’09 5/18

slide-23
SLIDE 23

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

A B C D E F

  • D. Coudert et al.

ONDM’09 5/18

slide-24
SLIDE 24

Reconfiguration in WDM networks

Example

Dependency digraph

B C D E F A A B C D E F

Processing using 1 break-before-make and 1 make-before-break

A B C D E F

  • D. Coudert et al.

ONDM’09 5/18

slide-25
SLIDE 25

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-26
SLIDE 26

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-27
SLIDE 27

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-28
SLIDE 28

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-29
SLIDE 29

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-30
SLIDE 30

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-31
SLIDE 31

Possible objectives

Minimize overall number of break-before-make = Minimum Feedback Vertex Set (MFVS), here 4 Minimize number of simultaneous break-before-make ∼ Graph searching problem, cops-and-robber game, pursuit,. . . Process number, here 1 Gap with MFVS up to N/2

  • D. Coudert et al.

ONDM’09 6/18

slide-32
SLIDE 32

Process number, pn

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex p-process strategy = strategy to process a (di)graph using at most p agents Process number = smallest p s.t. G can be p-processed, pn(G)

  • D. Coudert et al.

ONDM’09 7/18

slide-33
SLIDE 33

Example: DAG

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Direct path, DAG Th: If D is a DAG, then pn(D) = 0

  • D. Coudert et al.

ONDM’09 8/18

slide-34
SLIDE 34

Example: DAG

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Direct path, DAG Th: If D is a DAG, then pn(D) = 0

  • D. Coudert et al.

ONDM’09 8/18

slide-35
SLIDE 35

Example: DAG

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Direct path, DAG Th: If D is a DAG, then pn(D) = 0

  • D. Coudert et al.

ONDM’09 8/18

slide-36
SLIDE 36

Example: DAG

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Direct path, DAG Th: If D is a DAG, then pn(D) = 0

  • D. Coudert et al.

ONDM’09 8/18

slide-37
SLIDE 37

Example: DAG

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Direct path, DAG Th: If D is a DAG, then pn(D) = 0

  • D. Coudert et al.

ONDM’09 8/18

slide-38
SLIDE 38

Digraphs with process number 1

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Th: pn(D) = 1 ⇔ MFVS(D) = 1 Recognition in time O(N + M)

  • D. Coudert et al.

ONDM’09 9/18

slide-39
SLIDE 39

Digraphs with process number 1

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Th: pn(D) = 1 ⇔ MFVS(D) = 1 Recognition in time O(N + M)

  • D. Coudert et al.

ONDM’09 9/18

slide-40
SLIDE 40

Digraphs with process number 1

Rules R1 Put an agent on a vertex

= break a connection

R2 Process a vertex if all its out-neighbors are either processed or

  • ccupied by an agent

= (Re)route a connection when final resources are available

R3 An agent can be re-used after the processing of the vertex Th: pn(D) = 1 ⇔ MFVS(D) = 1 Recognition in time O(N + M)

  • D. Coudert et al.

ONDM’09 9/18

slide-41
SLIDE 41

Process number: what is known

Related parameters Pathwidth, pw

[Robertson & Seymour, JCTB, 1983]

Node search number, ns

[Kirousis & Papadimitriou, TCS, 1986]

Vertex separation, vs Relations pw(G) = vs(G) = ns(G) − 1 vs(D) ≤ pn(D) ≤ vs(D) + 1

[C. & Sereni, submitted, 2007]

Complexity NP-Hard Not APX

= No polynomial time constant factor approximation algorithm

Characterization of digraphs with process number 0, 1, 2

  • D. Coudert et al.

ONDM’09 10/18

slide-42
SLIDE 42

What’s next

How to handle priority connections (no break-before-make) Heuristic algorithms

Previous heuristic by Jose & Somani, DRCN 03 New heuristic using the process number

Simulation results

  • D. Coudert et al.

ONDM’09 11/18

slide-43
SLIDE 43

Two classes of services

Priority connections Refuse by contract break-before-make Impossiblitity Direct cycle of priority connections in the dependency digraph ⇒ Small number of such connections Transformation ⇒ Same problem to solve

  • D. Coudert et al.

ONDM’09 12/18

slide-44
SLIDE 44

Example with priority connection d

c d a r e b

Routing 1

b a r c e d

Routing 2

d b c a

Dependency digraph

b a c

Without d

  • D. Coudert et al.

ONDM’09 13/18

slide-45
SLIDE 45

Previous heuristic

[Jose and Somani, DRCN 03]

1 Compute all directed cycles using Johnson’s algorithm 2 Choose the vertex that belongs to the maximum number of cycles 3 Remove that vertex and update set of cycles 4 Repeat 2-3 until remaining digraph is a DAG 5 Process DAG 6 Process removed vertices Heuristic for MFVS Complexity in O((n + m)(c + 1)) Exponential number of cycles ⇒ only for small digraphs

  • D. Coudert et al.

ONDM’09 14/18

slide-46
SLIDE 46

Our heuristic / process number

1 Priority connections: impossibility and transformation 2 Choose of a candidate vertex to receive an agent (to be removed) using a flow circulation method 3 Remove that vertex and process all possible vertices including removed vertices 4 Repeat 2-3 until processing of all vertices

1 1 1

b a c

0.66 1.66 0.66

b a c

0.77 1.43 0.77

b a c

0.73 1.5 0.73

b a c

  • D. Coudert et al.

ONDM’09 15/18

slide-47
SLIDE 47

Our heuristic / process number

1 Priority connections: impossibility and transformation 2 Choose of a candidate vertex to receive an agent (to be removed) using a flow circulation method 3 Remove that vertex and process all possible vertices including removed vertices 4 Repeat 2-3 until processing of all vertices

1 1 1

b a c

0.66 1.66 0.66

b a c

0.77 1.43 0.77

b a c

0.73 1.5 0.73

b a c

1

c

1

b a

  • D. Coudert et al.

ONDM’09 15/18

slide-48
SLIDE 48

Our heuristic / process number

1 Priority connections: impossibility and transformation 2 Choose of a candidate vertex to receive an agent (to be removed) using a flow circulation method 3 Remove that vertex and process all possible vertices including removed vertices 4 Repeat 2-3 until processing of all vertices Heuristic for the process number Complexity in O(n2(n + m)) ⇒ large digraphs

  • D. Coudert et al.

ONDM’09 15/18

slide-49
SLIDE 49

Simulation results: n × n grids

Jose & Somani

5 10 15 20 5 10 15 20 25 30 35 40 45

Exact value

number of agents required square root of the number of nodes

This paper

Number of simultaneous agents (break-before-make)

time needed

2 4

6

8 10 12 50 100 150

square root of the number of nodes

Computation time

  • D. Coudert et al.

ONDM’09 16/18

slide-50
SLIDE 50

Simulation results

This paper (better candidates)

50 100 150 200 250 300 350 400 450 500 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

number of agents required number of nodes

This paper

2-digraphs

This paper (better candidates)

10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80

number of nodes number of agents required

Exact This paper

Circular arc graphs

  • D. Coudert et al.

ONDM’09 17/18

slide-51
SLIDE 51

Conclusion & perspectives

Routing reconfiguration in WDM networks Modeling using of tools from graph theory

Process number & cops-and-robber games

Take into account priority connections New heuristic algorithm Future work More simulations on more realistic scenarios Multiple classes of services Other objectives, e.g. minimizing interruption time of connections Distributed algorithms

  • D. Coudert et al.

ONDM’09 18/18