chapter 15: network applicationstsoukias/download/tutorials/simonis/slid… · traffic placement...

88
Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis Cork Constraint Computation Centre Computer Science Department University College Cork Ireland ECLiPSe ELearning Overview Helmut Simonis Network Applications 1

Upload: others

Post on 16-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Chapter 15: Network Applications

Helmut Simonis

Cork Constraint Computation CentreComputer Science Department

University College CorkIreland

ECLiPSe ELearning Overview

Helmut Simonis Network Applications 1

Page 2: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Licence

This work is licensed under the Creative CommonsAttribution-Noncommercial-Share Alike 3.0 Unported License.To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ orsend a letter to Creative Commons, 171 Second Street, Suite300, San Francisco, California, 94105, USA.

Helmut Simonis Network Applications 2

Page 3: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Outline

1 Traffic Placement

2 Capacity Management

3 Other Problems

Helmut Simonis Network Applications 3

Page 4: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Common Theme

How can we get better performance out of a givennetwork?Make network transparent

Users should not need to know about detailsService maintained even if failures occur

Restricted by accepted techniques available in hardwareInteroperability between multi-vendor equipmentVery conversative deployment strategies

Helmut Simonis Network Applications 4

Page 5: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Reminder: IP Networks

Packet forwardingConnection-lessDestination based routing

Distributed routing algorithm based on shortest pathalgorithmRouting metric determines preferred path

Best effortPackets are dropped when there is too much traffic oninterfaceGuaranteed delivery handled at other layers(TCP/applications)

Helmut Simonis Network Applications 5

Page 6: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Disclaimer

Flexible border between CP and ORCP is ...

what CP people do.what is published in CP conferences.what uses CP languages.

Does not mean that other approaches are less valid!

Helmut Simonis Network Applications 6

Page 7: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Outline

1 Traffic PlacementLink Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

2 Capacity Management

3 Other Problems

Helmut Simonis Network Applications 7

Page 8: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Example Network (Uniform metric 1, Capacity 100)

A

B

C

D

E

R1 R2

R3 R4

1

1

1

1

1

1

1

1 1

1

111

1

Helmut Simonis Network Applications 8

Page 9: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Example Traffic Matrix

Only partially filled in for example

A B C D EA 0 0 10 20 20B 0 0 10 20 20C 0 0 0 0 0D 0 0 0 0 0E 0 0 0 0 0

Helmut Simonis Network Applications 9

Page 10: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand AC 10

A

B

C

D

E

R1 R2

R3 R4

10

10 10

Helmut Simonis Network Applications 10

Page 11: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand AD 20

A

B

C

D

E

R1 R2

R3 R4

20 20

20

Helmut Simonis Network Applications 11

Page 12: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand BC 10A

B

C

D

E

R1 R2

R3 R4

5

5 5

5 5

5

Helmut Simonis Network Applications 12

Page 13: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand BD 20

A

B

C

D

E

R1 R2

R3 R4

10

10 10

10

10

10

Helmut Simonis Network Applications 13

Page 14: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand AE 20

A

B

C

D

E

R1 R2

R3 R4

20

20

Helmut Simonis Network Applications 14

Page 15: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Using Routing

Demand BE 20A

B

C

D

E

R1 R2

R3 R4

20

20

Helmut Simonis Network Applications 15

Page 16: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Resulting Network Load

A

B

C

D

E

R1 R2

R3 R4

50

35

15 15

30

55 15

5

15

5

Helmut Simonis Network Applications 16

Page 17: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Considering failure of R1-E

A

B

C

D

E

R1 R2

R3 R4

15

35

10

55

10

65

35

40 20

5

30

10

Helmut Simonis Network Applications 17

Page 18: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Can we do better?

Choose single, explicit path for each demandRequires hardware support in routers (MPLS-TE)Baseline: CSPF, greedy heuristic

Helmut Simonis Network Applications 18

Page 19: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Why not just use Multi-Commodity Flow ProblemSolution?

Can not use arbitrary, fractional flows in hardwareMILP does not scale too well

Helmut Simonis Network Applications 19

Page 20: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Modelling Alternatives

Link based ModelPath based ModelNode based Model

Helmut Simonis Network Applications 20

Page 21: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Variants

Demand AcceptanceChoose which demands to select fitting into availablecapacity

Traffic PlacementAll demands must be placed

Helmut Simonis Network Applications 21

Page 22: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Intuition

Decide if demand d is run over link eSelect which demands run over link e (Knapsack)Demand d must run from source to sink (Path)Sum of delay on path should be limited (QoS)

Helmut Simonis Network Applications 22

Page 23: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Link Based Model

min{Xde}

maxe∈E

1cap(e)

∑d∈D

bw(d)Xde or min{Xde}

∑e∈E,d∈D

bw(d)Xde

st.

∀d ∈ D,∀n ∈ N :∑

e∈OUT(n)

Xde −∑

e∈IN(n)

Xde =

−1 n = dest(d)

1 n = orig(d)

0 otherwise

∀e ∈ E :∑d∈D

bw(d)Xde ≤ cap(e)

∀d ∈ D :∑e∈E

del(e)Xde ≤ req(d)

Xde ∈ {0, 1}

Helmut Simonis Network Applications 23

Page 24: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Solution Methods

Lagrangian RelaxationPath decompositionKnapsack decomposition

Probe Backtracking

Helmut Simonis Network Applications 24

Page 25: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Lagrangian Relaxation - Path decomposition

[Ouaja&Richards2003]Dualize capacity constraintsStarting with CSPF initial solutionFinite domain solver for path constraintsAdded capacity constraints from st-cutsAt each step solve shortest path problems

Helmut Simonis Network Applications 25

Page 26: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Lagrangian Relaxation - Knapsack decomposition

[Ouaja&Richards2005]Dualize path constraintsAt each step solve knapsack problemsReduced cost based filtering

Helmut Simonis Network Applications 26

Page 27: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Probe Backtracking

[Liatsos et al 2003]Start with (infeasible) CSPF heuristicConsider capacity violation

Resolve by forcing one demand off/on linkFind new path respecting path and added constraints withILP

Repeat until no more violations, feasible solutionOptimality proof when exhausted search space

Search space often very small

Helmut Simonis Network Applications 27

Page 28: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Intuition

Choose one of the possible paths for demand dThis paths competes with paths of other demands forbandwidthUsually too many paths to generate a priori, but most areuseless

Helmut Simonis Network Applications 28

Page 29: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Path-Based Model

max{Zd ,Yid}

∑d∈D

val(d)Zd

st.

∀d ∈ D :∑

1≤i≤path(d)

Yid = Zd

∀e ∈ E :∑d∈D

bw(d)∑

1≤i≤path(d)

heidYid ≤ cap(e)

Zd ∈ {0, 1}Yid ∈ {0, 1}

Helmut Simonis Network Applications 29

Page 30: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Solution Methods

Blocking IslandsLocal Search/ FD Hybrid(Column Generation)

Helmut Simonis Network Applications 30

Page 31: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Blocking Islands

[Frei&Faltings1999]Feasible solution onlyCSP with variables ranging over paths for demandsNo explicit domain representationPossible to perform forward checking by updating blockingisland structure

Helmut Simonis Network Applications 31

Page 32: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Local Search/FD Hybrid

[Lever2004]Start with (feasible) CSPF heuristicAdd more demands one by one

Use repair to solve capacity violationsUse FD model to check necessary conditions

Determine bottlenecks by st-cutsForce paths on/off links

Define neighborhood by rerouting demands currently overviolations

Helmut Simonis Network Applications 32

Page 33: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Node Based Model: Intuition

For each demand, decide for each router where to go nextMany routers not used

Treat link capacity with cumulative/diffn constraintsPure FD model, no global cost view

Helmut Simonis Network Applications 33

Page 34: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Cisco ISC-TEM

Path placement algorithm developed for Cisco by PTL andIC-Parc (2002-2004)Internal competitive selection of approachesStrong emphasis on stabilityWritten in ECLiPSePTL bought by Cisco in 2004Part of team moved to Boston

Helmut Simonis Network Applications 34

Page 35: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Problem

What happens if element on selected path fails?Choose second path which is link (element) disjointState bandwidth constraints for each considered failurecaseProblem: Very large number of capacity constraints

Helmut Simonis Network Applications 35

Page 36: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Example

Primary/Secondary path for demand AE

A

B

C

D

E

R1 R2

R3 R4

20

20

20 20

20

20

Helmut Simonis Network Applications 36

Page 37: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Which bandwidth to count?

Failed Element No Failure A-R1 R1-E All OthersCapacity for Path Primary Secondary Secondary Primary

Helmut Simonis Network Applications 37

Page 38: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Multiple Path Model

max{Zd ,Xde,Wde}

∑d∈D

val(d)Zd

∀d ∈ D, ∀n ∈ N :∑

e∈OUT(n)

Xde −∑

e∈IN(n)

Xde =

−Zd n = dest(d)

Zd n = orig(d)

0 otherwise

∀e ∈ E :∑d∈D

bw(d) ∗ Xde ≤ cap(e)

∀d ∈ D, ∀n ∈ N :∑

e∈OUT(n)

Wde −∑

e∈IN(n)

Wde =

−Zd n = dest(d)

Zd n = orig(d)

0 otherwise

∀e ∈ E, ∀e′ ∈ E \ e :∑d∈D

bw(d) ∗ (Xde − Xde′ ∗ Xde + Xde′ ∗Wde) ≤ cap(e)

∀d ∈ D, ∀e ∈ E : Xde + Wde ≤ 1

Zd ∈ {0, 1}, Xde ∈ {0, 1}, Wde ∈ {0, 1}

Helmut Simonis Network Applications 38

Page 39: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Link Based ModelPath-Based ModelNode-Based ModelCommercial SolutionMultiple Paths

Solution Method

Benders Decomposition [Xia&Simonis2005]Use MILP for standard demand acceptance problemFind two link disjoint paths for each demandSub-problems consist of capacity constraints for failurecasesBenders cuts are just no-good cuts for secondary violations

Helmut Simonis Network Applications 39

Page 40: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Outline

1 Traffic Placement

2 Capacity ManagementBandwidth ProtectionBandwidth on DemandResilience Analysis

3 Other Problems

Helmut Simonis Network Applications 40

Page 41: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

The Problem

How to provide cost effective, high quality services runningan IP network?Easy to build high quality network by massiveover-provisioningEasy to build consumer grade network disregarding Qualityof Service (QoS)Very hard to right-size a network, providing just enoughcapacity

Helmut Simonis Network Applications 41

Page 42: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

The Approach

Bandwidth on DemandCreate temporary bandwidth channels for high-value trafficAvoid disturbing existing traffic

Resilience AnalysisFind out how much capacity is required for current trafficProvide enough capacity to survive element failures withoutservice disruption

Helmut Simonis Network Applications 42

Page 43: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Background

Failures of network should not affect services running onnetworkNot cost effective to protect connections in hardwareResponse time is critical

Interruption > 50ms not acceptable for telephonyReconvergence of IGP 1 sec (good setup)Secondary tunnels rely on signalling of failure (too slow)Live/Live connections too expensive

Helmut Simonis Network Applications 43

Page 44: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Approach

Fast Re-routeIf element fails, use detour around failureLocal repair, not global reactionPre-compute possible reactions, allows offline optimization

Link protection rather easyNode protection quite difficult

Helmut Simonis Network Applications 44

Page 45: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Example Problem

k l

c f

j e

ce,cf

20

ce,cfcf

ce

30

10

Helmut Simonis Network Applications 45

Page 46: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Node j Failure

k l

c f

j e

20,30,40?

20

20,30,40?20,30?

10?

30

10

Helmut Simonis Network Applications 46

Page 47: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Node j Failure (Result)

k l

c f

j e

20,30,40?

20

20,30,40?20,30?

10?

30

10

Helmut Simonis Network Applications 47

Page 48: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Bandwidth Protection Model

min{Xfe}

∑f∈F

∑e∈E

Xfe

st .

∀f ∈ F :

∀n ∈ N \ {orig(f ),dest(f )} :∑

e∈IN(n)

Xfe =∑

e∈OUT(n)

Xfe

n = orig(f ) :∑

e∈OUT(n)

Xfe = 1

n = dest(f ) :∑

e∈IN(n)

Xfe = 1

∀e ∈ E : cap(e) ≥

max{Qfe}

∑f∈F

XfeQfe

st .

∀o ∈ orig(F) : ocap(o) ≥

∑f :orig(f )=o

Qfe

∀d ∈ dest(F) : dcap(o) ≥∑

f :dest(f )=d

Qfe

Xfe ∈ {0, 1}quan(f ) ≥ Qfe ≥ 0

Helmut Simonis Network Applications 48

Page 49: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Solution Techniques

[Xia, Eremin & Wallace 2004]MILP

Use of Karusch-Kahn-Tucker conditionRemoval of nested optimizationLarge set of new variablesNot scalable

Problem DecompositionInteger Multi-Commodity Flow ProblemCapacity Optimization

Improved MILP out-performs decomposition [Xia 2005]

Helmut Simonis Network Applications 49

Page 50: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Cisco Tunnel Builder Pro

Algorithm/Implementation built by PTL/IC-Parc for CiscoNot based on published techniques aboveIn period 2000-2003Written in ECLiPSeEmbedded in Java GUINow subsumed by ISC-TEM

Helmut Simonis Network Applications 50

Page 51: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Planning Ahead

Consider demands with fixed start and end timesDemands overlapping in time compete for bandwidthDemands arrive in batches, not always in temporalsequenceProblem called Bandwidth on Demand (BoD)

Helmut Simonis Network Applications 51

Page 52: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Model: BoD

max{Zd ,Xde}

∑d∈D

val(d)Zd

st.

T = {start(d)|d ∈ D}

∀d ∈ D,∀n ∈ N :∑

e∈OUT(n)

Xde −∑

e∈IN(n)

Xde =

−Zd n = dest(d)

Zd n = orig(d)

0 otherwise

∀t ∈ T, ∀e ∈ E :∑d∈D

start(d)≤tt<end(d)

bw(d)Xde ≤ cap(e)

Zd ∈ {0, 1}Xde ∈ {0, 1}

Helmut Simonis Network Applications 52

Page 53: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Solution Methods

France Telecom for ATM network [Lauvergne et al 2002,Loudni et al 2003]Schlumberger Dexa.net (PTL, IC-Parc)

Helmut Simonis Network Applications 53

Page 54: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Schlumberger Dexa.net

Small, but global MPLS TE+diffserv networkOil field services(Very) High value traffic

Well loggingVideo conferencing

Bandwidth demand known well in advance, fixed periodLow latency, low jitter required

Helmut Simonis Network Applications 54

Page 55: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Architecture

Provisioning Network

Demand Manager Resilience Analysis

Dexa.net Portal

Customer

Helmut Simonis Network Applications 55

Page 56: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Workflow

Customer requests capacity for time slot via Web-interfaceDemand Manager determines if request can be satisfied

Based on free capacity predicted by Resilience AnalysisTaking other, accepted BoD requests into account

Email back to customerAt requested time, DM triggers provisioning tool to

Set up tunnelChange admission control

At end of period, DM pulls down tunnel

Helmut Simonis Network Applications 56

Page 57: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

How much free capacity do we have in network?

Easy for normal network state (OSS tools)Challenge: How much is required for possible failurescenarios?Consider single link, switch, router, PoP failuresClassical solution

Get Traffic MatrixRun scenarios through simulator

Helmut Simonis Network Applications 57

Page 58: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

How to get a Traffic Matrix?

Many algorithms assume given traffic matrixTraffic flow information is not collected in the routersOnly link traffic is readily availableDemand pattern changes over time, often quitedramaticallyMeasuring traffic flows with probes is very costly

From a network consultant:We have been working on extracting a TM for thisnetwork for 15 months, and we still don’t have a clue ifwe’ve got it right.

Helmut Simonis Network Applications 58

Page 59: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Idea

Use the observed traffic to deduce traffic flowsNetwork Tomography [Vardi1996]

All flows routed over a link cause the observed trafficMust correct for observation errorsHighly dependent on accurate routing model

Gravity Model [Medina et al 2002]Ignore core of networkAssume that flows are proportional to product ofingress/egress size

Results are very hard to validate/falsify

Helmut Simonis Network Applications 59

Page 60: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Model: Traffic Flow Analysis

∀i , j ∈ N : min{Fij}

/ max{Fij}

Fij

st.

∀e ∈ E :∑i,j∈N

reij Fij = traf(e)

∀i ∈ N :∑j∈N

Fij = extin(i)

∀j ∈ N :∑i∈N

Fij = extout(j)

Fij ≥ 0

Helmut Simonis Network Applications 60

Page 61: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Start with Link Traffic

A

B

C

D

E

R1 R2

R3 R4

50

35

15 15

30

55 15

5

15

5

Helmut Simonis Network Applications 61

Page 62: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Setup Model to Find Flows

[AC,AD,BC,BD,AE,BE] :: 0.0 .. 1.0Inf,AC + AD + AE $= 50, % A R10.5*BC + 0.5*BD + BE $= 35, % B R10.5*BC + 0.5*BD $= 15, % B R3AD + 0.5*BD $= 30, % R1 R2AC + 0.5*BC + AE +BE $= 55, % R1 EAD + 0.5*BD $= 30, % R2 D0.5*BC + 0.5*BD $= 15, % R3 R4AC + 0.5*BC $= 15, % E C0.5*BC $= 5, % R4 C0.5*BD $= 10, % R4 D

Helmut Simonis Network Applications 62

Page 63: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Solve for Different Flows

min(AC,MinAC),max(AC,MaxAC),min(AD,MinAD),max(AD,MaxAD),min(BC,MinBC),max(BC,MaxBC),min(BD,MinBD),max(BD,MaxBD),min(AE,MinAE),max(AE,MaxAE),min(BE,MinBE),max(BE,MaxBE),...

Helmut Simonis Network Applications 63

Page 64: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Results of Analysis

C D EA 10 20 20B 10 20 20

Problem solved, no?

Helmut Simonis Network Applications 64

Page 65: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Benchmark Problems

Network Routers PoPs Lines Lines/routerdexa 51 24 59 1.15as1221 108 57 153 1.41as1239 315 44 972 3.08as1755 87 23 161 1.85as3257 161 49 328 2.03as3967 79 22 147 1.86as6461 141 22 374 2.65

Helmut Simonis Network Applications 65

Page 66: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

TFA Result for Benchmarks

Network LowSimul (%) High

Simul (%) Obj Time (sec)dexa 0 2310.65 1190 11as1221 0.09 8398.64 11556 1318as1239 n/a n/a n/a n/aas1755 0.15 6255.31 7482 699as3257 0.04 12260.03 25760 12389as3967 0.1 5387.10 6162 500as6461 0.28 8688.39 19740 8676

Helmut Simonis Network Applications 66

Page 67: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Reduce Problem Size

Pop Level AnalysisOnly consider flows between PoPs, not routersLocal area connections typically not bottlenecksModelling routing can be tricky

Helmut Simonis Network Applications 67

Page 68: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

PoP Level Results

Network LowSimul (%) High

Simul (%) Obj Time (sec)dexa 0 1068.37 557 5as1221 0.24 2964.93 3205 424as1239 0.63 1401.72 1931 101359as1755 0.66 1263.28 526 103as3257 0.30 2028.73 2378 2052as3967 0.1 1209.37 483 90as6461 1.47 951.41 481 768

Helmut Simonis Network Applications 68

Page 69: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Increase Accuracy

LSP CountersIn MPLS networks only, provide improved resolutionImplementation buggy, not all counters can be used

NetflowCollect end-to-end flow information in routerImpact on router (memory)Impact on network (data aggregation)

Helmut Simonis Network Applications 69

Page 70: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

TFA with LSP Counters

Network LowSimul (%) High

Simul (%) Obj Time (sec)dexa 30.35 249.71 1190 7as1221 9.94 685.37 11556 885as1239 10.74 1151.03 98910 72461as1755 25.29 269.30 7482 397as3257 23.77 425.67 25760 5121as3967 24.47 300.17 6162 275as6461 19.43 477.44 19740 2683

Helmut Simonis Network Applications 70

Page 71: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

PoP TFA with LSP Counters

Network LowSimul (%) High

Simul (%) Obj Time (sec)dexa 60.62 145.85 557 3as1221 28.49 499.16 3205 271as1239 33.36 211.84 1931 2569as1755 50.33 169.37 526 46as3257 36.82 249.16 2378 640as3967 40.72 182.97 483 36as6461 34.05 210.93 481 136

Helmut Simonis Network Applications 71

Page 72: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

What now?

Choose some particular solution?Which one? How to validate assumptions?Massively under-constrained problem

|N|2 variables|E |+ 2|N| constraints2|N|2 queries

Ill-conditioned even after error correctionAggregation helps

We are usually not interested in individual flowsWe want to use the TM to investigate something else

Helmut Simonis Network Applications 72

Page 73: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Resilience Analysis

How much capacity is needed to survive all reasonablefailures?Use normal state as starting pointConsider routing in each failure caseAggregate flows in rerouted networkCalculate bounds on traffic in failure case

Helmut Simonis Network Applications 73

Page 74: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Model: Resilience Analysis

∀e ∈ E : min{Fij}

/ max{Fij}

∑i,j∈N

r̄eij Fij

st.

∀e ∈ E :∑i,j∈N

reij Fij = traf(e)

∀i ∈ N :∑j∈N

Fij = extin(i)

∀j ∈ N :∑i∈N

Fij = extout (j)

Fij ≥ 0

Helmut Simonis Network Applications 74

Page 75: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Resilience Analysis

Network LowSimul (%) High

Simul (%) Obj Time (sec) Casesdexa 68.91 108.25 3503 57 59as1221 85.75 102.60 14191 2869 153as1239 92.53 102.64 4499 44205 10as1755 92.82 105.39 8409 1815 161as3257 93.69 103.15 31093 39934 328as3967 91.60 108.79 9090 1635 141as6461 96.51 103.44 24808 20840 374

Helmut Simonis Network Applications 75

Page 76: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Results over 100 runs

Network lower bound/simul upper bound/ simulaverage stdev average stdev

dexa 91.50 0.14 108.28 0.16as1755 88.65 0.11 106.08 0.056as3967 94.08 0.073 106.88 0.091as1221 87.34 0.10 102.05 0.025

Helmut Simonis Network Applications 76

Page 77: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Results with LSP counters

Network LowSimul (%) High

Simul (%) Obj Time Casesdexa 97.76 101.33 3503 36 59as1221 98.15 100.69 14191 1840 153as1239 99.37 100.38 4499 3974 10as1755 99.28 100.66 8409 964 161as3257 99.41 100.44 31093 13381 328as3967 98.88 101.00 9090 819 147as6461 99.44 100.52 24808 8006 374

Helmut Simonis Network Applications 77

Page 78: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Results over 100 runs (with LSP Counters)

Network lower bound/simul upper bound/ simulaverage stdev average stdev

dexa 99.60 0.029 100.33 0.025as1755 99.31 0.016 100.63 0.015as3967 99.41 0.014 100.61 0.014as1221 98.10 0.025 100.57 0.010

Helmut Simonis Network Applications 78

Page 79: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Bandwidth ProtectionBandwidth on DemandResilience Analysis

Perspectives

High polynomial complexityPossible to reduce number of queries

Small differences between failure casesMany queries are identical or dominated

Possible to reduce size of problem dramaticallyIntegrate multiple measurements in one modelWhich other problems can we solve without explicit TM?

Helmut Simonis Network Applications 79

Page 80: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Outline

1 Traffic Placement

2 Capacity Management

3 Other ProblemsNetwork DesignIGP Metric Optimization

Helmut Simonis Network Applications 80

Page 81: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Problem

Which links should be used to build network structure?Link speed is related to costModel simple generalization of path findingAssumptions about routing in target network?

Helmut Simonis Network Applications 81

Page 82: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Model

min{Xde,Wie}

∑e∈E

∑1≤i≤alt(e)

cost(i , e)Wie

∀d ∈ D,∀n ∈ N :∑

e∈OUT(n)

Xde −∑

e∈IN(n)

Xde =

−1 n = dest(d)

1 n = orig(d)

0 otherwise

∀e ∈ E :∑d∈D

bw(d)Xde ≤∑

1≤i≤alt(e)

cap(i , e)Wie

∀e ∈ E :∑

1≤i≤alt(e)

Wie = 1

Wie ∈ {0, 1}Xde ∈ {0, 1}

Helmut Simonis Network Applications 82

Page 83: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Issues

Real-life problem not easily modelledPossible choices/costs not easily obtained (outside US)Choices often are inter-relatedPackage deals by providersSome regions don’t allow any flexibility at all

Helmut Simonis Network Applications 83

Page 84: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Problem

How to set weights in IGP to avoid bottlenecks?Easy to beat default valuesSingle/equal cost paths required/allowed/forbidden?

Helmut Simonis Network Applications 84

Page 85: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Model

min{Yid ,We}

maxe∈E

1cap(e)

∑d∈D

bw(d)∑

1≤i≤path(d)

heid Yid

st.

∀d ∈ D :∑

1≤i≤path(d)

Yid = 1

∀d ∈ D, 1 ≤ i ≤ path(d) : Pid =∑e∈E

heid We

∀d ∈ D, 1 ≤ i, j ≤ path(d) : Pid = Pjd =⇒ Yid = Yjd = 0

∀d ∈ D, 1 ≤ i, j ≤ path(d) : Pid < Pjd =⇒ Yjd = 0

Yid ∈ {0, 1}integer We ≥ 1

Pid ≥ 0

Helmut Simonis Network Applications 85

Page 86: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Solution Methods

Methods tested at IC-ParcBranch and priceTabu searchSet constraints

Very hard to compete with (guided) local search

Helmut Simonis Network Applications 86

Page 87: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Further Reading

H. Simonis. Constraint Applications in Networks. Chaper 25 inF. Rossi, P van Beek and T. Walsh: Handbook of ConstraintProgramming. Elsevier, 2006.

Helmut Simonis Network Applications 87

Page 88: Chapter 15: Network Applicationstsoukias/download/tutorials/Simonis/slid… · Traffic Placement Capacity Management Other Problems Chapter 15: Network Applications Helmut Simonis

Traffic PlacementCapacity Management

Other Problems

Network DesignIGP Metric Optimization

Summary

Network problems can be solved competitively byconstraint techniques.Hybrid methods required, simple FD models usually don’twork.Constraint based tools commercial reality.Open Problems

How to make this easier to develop?How to make this more stable to solve?

Helmut Simonis Network Applications 88