PVC routing algorithms - PowerPoint PPT Presentation

1 / 104
About This Presentation
Title:

PVC routing algorithms

Description:

IV Congreso Chileno de Investigaci n Operativa. Curic , Chile, ... (0) = 0, for all e E. October 10, 2001. Routing in communication networks (OPTIMA 2001) ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 105
Provided by: at01
Category:
Tags: pvc | algorithms | alle | routing

less

Transcript and Presenter's Notes

Title: PVC routing algorithms


1
OPTIMA 2001
IV Congreso Chileno de Investigación Operativa
Routing in communication networks and advances in
metaheuristics
Celso C. Ribeiro Catholic University of Rio de
Janeiro, Brazil
Curicó, Chile, October 2001
2
Summary
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions
  • Experiments with // in GRASP and path-relinking

3
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions

4
PVC routing application
  • Frame relay service offers virtual private
    networks permanent (long-term) virtual circuits
    (PVCs) between customer endpoints on a backbone
    network
  • Routing either automatically by switch or by
    network designer without any knowledge of future
    requests
  • Inefficiencies and occasional need for off-line
    rerouting of the PVCs

5
PVC routing application
  • Reorder PVCs and apply algorithm on switch to
    reroute
  • taking advantage of factors not considered by
    switch algorithm may lead to greater network
    efficiency
  • FR switch algorithm is typically fast since it is
    also used to reroute in case of switch or trunk
    failures
  • this can be traded off for improved network
    resource utilization when routing off-line

6
PVC routing application
  • Other algorithms simply handle
    the number of hops (e.g. routing
    algorithm in Cisco switches)
  • Handling delays is particularly important in
    international networks, where distances between
    backbone nodes vary considerably

Cisco Catalystic 5505 switch
7
PVC routing application
  • Load balancing is important for providing
    flexibility to handle
  • overbooking typically used by network designers
    to account for non-coincidence of traffic
  • PVC rerouting due to failures
  • bursting above the committed rate not only
    allowed, but also sold to customers as one of the
    attractive features of frame relay
  • Integer multicommodity network flow problem

8
PVC routing example
9
PVC routing example
10
PVC routing example
11
PVC routing example
12
PVC routing example
max capacity 3
13
PVC routing example
max capacity 3
very long path!
14
PVC routing example
max capacity 3
very long path!
reroute
15
PVC routing example
max capacity 3
16
PVC routing example
max capacity 3
feasible and optimal!
17
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions

18
Problem formulation
  • Given undirected FR network G (V, E), where
  • V denotes n backbone nodes (FR switches)
  • E denotes m trunks connecting backbone nodes
  • for each trunk e (i,j )
  • b (e ) maximum bandwidth (max kbits/sec rate)
  • c (e ) maximum number of PVCs that can be routed
    on it
  • d (e ) propagation and hopping delay

19
Problem formulation
  • Demands K 1,,p defined by
  • Origin-destination pairs
  • r (p) effective bandwidth requirement (forward,
    backward, overbooking) for PVC p
  • Objective is to minimize
  • delays
  • network load unbalance
  • subject to
  • technological constraints

20
Problem formulation
  • route for PVC (o, d ) is a sequence of adjacent
    trunks from node o to node d
  • set of routing assignments is feasible if for all
    trunks e
  • total bandwidth requirements routed on e does
    exceed b (e)
  • number of PVCs routed on e not greater than c(e)

21
Problem formulation
22
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions

23
Cost function
  • Linear combination of
  • delay component - weighted by (1-?)
  • load balancing component - weighted by ?
  • Delay component

24
Cost function
  • Load balancing component measure of Fortz
    Thorup (2000) to compute congestion
  • ? ?1(L1) ?2(L2)
    ?E(LE)
  • where Le is the load on link e ? E,
  • ?e(Le) is piecewise linear and
    convex,
  • ?e(0) 0, for all e ? E.

25
Piecewise linear and convex ?e(Le) link
congestion measure
(Le?ce)
26
Some recent applications
  • Laguna Glover (1993) tabu search, different
    cost function, no constraints on PVCs
    routed on the same trunk (assign calls
    to paths)
  • Sung Park (1995) Lagrangean heuristic, very
    small graphs
  • Amiri et al. (1999) Lagrangean heuristic, min
    delay
  • Dahl et al. (1999) cutting planes (traffic
    assignment)
  • Barnhart et al (2000) branch-and-price,
    different cost function, no constraints on
    PVCs routed on same trunk
  • Shyur Wen (2000) tabu search, min hubs

27
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions

28
Solution method GRASP with path-relinking
  • GRASP Multistart metaheuristic, Feo Resende
    1989
  • Path-relinking intensification, Glover (1996)
  • Repeat for Max_Iterations
  • Construct greedy randomized solution
  • Use local search to improve constructed solution
  • Apply path-relinking to further improve solution
  • Update pool of elite solutions
  • Update best solution found

29
Solution method GRASP
  • GRASP
  • Construction
  • RCL nc unrouted PVCs with largest demands
  • choose unrouted pair k biasing in favor of high
    bandwidth requirements, with probablity ?k rk /
    (?p?RCL rp)
  • capacity constraints relaxed and handled via the
    penalty function introduced by the load-balance
    component
  • length of each edge (i,j) is the incremental cost
    of routing rk additional units of demand on it
  • route pair k using shortest route between its
    endpoints

30
Solution method GRASP
  • GRASP
  • Local search
  • for each PVC k ?K , remove rk units of flow from
    each edge in its current route
  • recompute incremental weights of routing rk
    additional units of flow for all edges
  • reroute PVC k using new shortest path

31
Solution method path-relinking
  • Introduced in the context of tabu search by
    Glover (1996)
  • Intensification strategy using set of elite
    solutions
  • Consists in exploring trajectories that connect
    high quality solutions.

guiding solution
path in neighborhood of solutions
initial solution
32
Solution method path-relinking
  • Path is generated by selecting moves that
    introduce in the initial solution attributes of
    the guiding solution.
  • At each step, all moves that incorporate
    attributes of the guiding solution are evaluated
    and the best move is taken

guiding solution
Initial solution
33
Solution method path-relinking
  • Elite solutions x and y
  • ?(x,y) symmetric difference between S and T
  • while ( ?(x,y) gt 0 )
  • evaluate moves corresponding in ?(x,y) make
    best move
  • update ?(x,y)

34
Path-relinking in GRASP
  • Introduced by Laguna Martí (1999)
  • Maintain an elite set of solutions found during
    GRASP iterations.
  • After each GRASP iteration (construction local
    search)
  • Select an elite solution at random guiding
    solution.
  • Use GRASP solution as initial solution.
  • Perform path-relinking between these two
    solutions.

35
Path-relinking in GRASP
  • Successful applications
  • Prize-collecting Steiner tree problem
    Canuto, Resende, Ribeiro (2000)
  • Steiner tree problem
    Ribeiro, Uchoa, Werneck (2000) (e.g.,
    best known results for open problems in series
    dv640 of the SteinLib)
  • Three-index assignment problem
    Aiex, Pardalos, Resende, Toraldo (2000)

36
Path-relinking elite set
  • P is set of elite solutions
  • Each iteration of first P GRASP iterations
    adds one solution to P (if different from
    others).
  • After that solution x is promoted to P if
  • x is better than best solution in P.
  • x is not better than best solution in P, but is
    better than worst and it is sufficiently
    different from all solutions in P .

37
(No Transcript)
38
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions

39
Experiment
  • Heuristics
  • H1 sorts demands in decreasing order and routes
    them using minimum hops paths
  • H2 sorts demands in decreasing order and routes
    using same cost function as GRASP
  • H3 adds the same local search to H2
  • GPRb GRASP with backwards path-relinking
  • SGI Challenge 196 MHz

40
Experiment
  • Test problems

? Theorem
The Cartesian product of a family of
algorithms by a family of test problems is
an unreadable table!
41
Variants of GRASP and path-relinking
  • Variants of path-relinking
  • G pure GRASP
  • GPRb GRASP with backward PR
  • GPRf GRASP with forward PR
  • GPRbf GRASP with two-way PR
  • Other strategies
  • Truncated path-relinking
  • Do not apply PR at every iteration (frequency)

42
Variants of GRASP and path-relinking
Each variant 200 runs for one instance of PVC
routing problem
Probability
time
43
Variants of GRASP and path-relinking
  • Same computation time probability of finding a
    solution at least as good as the target value
    increases from G ? GPRf ? GPRfb ? GPRb
  • P(h,t) probability variant h finds solution as
    good as target value in time no greater than t
  • P(GPRfb,100s)9.25 P(GPRb,100s)28.75
  • P(G,2000s)8.33 P(GPRf,2000s)65.25
  • P(h,time)50 Times for each variant
  • GPRb129s G10933s GPRf1727s GPRfb172s

44
Comparisons
cost
max util.
Distribution 86/60/2 86 edges with utilization
in 0,1/3), 60 in 1/3,2/3),
and two in 2/3,9/10)
In general GPRB gt H3 gt H2 gt H1 (cost, max
utilization, distribution)
45
Parameter of the objective function
  • Objective function ?(solution) Delay x (1-?)

    Load imbalance cost
    x ?
  • if ? 1 consider only trunk utilization rates
  • if ? 0 consider only delays (capacities
    relaxed)
  • increasing ? 0 ?1 ? minimization of maximum
    utilization rate dominates ? reduction of flows
    in edges with higher loads ? increase of flows in
    underloaded edges until the next breakpoint ?
    flows concentrate around breakpoint levels ?
    useful strategy for setting appropriate value of
    ? to achieve some level of quality of service
    (max util.)

46
Parameter of the objective function
47
Concluding remarks (1/3)
  • New formulation with flexible objective function
  • Family of heuristics (greedy, greedyLS, GRASP,
    GRASPPR)
  • Simple greedy heuristic improves algorithm used
    in traffic engineering by network planners
  • Objective function provides effective strategy
    for setting the weight parameter to achieve some
    quality of service level

48
Concluding remarks (2/3)
  • Path-relinking adds memory and intensification
    mechanisms to GRASP, systematically contributing
    to improve solution quality.
  • Some implementation strategies appear to be more
    effective than others (e.g., backwards from
    better, elite solution to current locally optimal
    solution).

49
Concluding remarks (3/3)
  • NETROUTER Tool for optimally loading demands on
    single-path routes on a capacitated network. It
    uses the GPRb variant of the combination of GRASP
    and path-relinking, minimizing delays while
    balancing network load.
  • Application - Netrouter is currently being used
    for the design of ATT's next generation
    frame-relay and MPLS core architecture, to assess
    if the current and forecasted demands can be
    handled by the proposed trunking plan.

50
Slides and publications
  • Slides of this talk can be downloaded from
    http//www.inf.puc-rio/celso/talks/curico.ppt
  • Recent survey about GRASP available at
  • http//www.inf.puc-rio.br/celso/publicacoes
  • Paper about PVC routing available at
  • http//www.inf.puc-rio.br/celso/publicacoes

51
OPTIMA 2001
IV Congreso Chileno de Investigación Operativa
Routing in communication networks and advances in
metaheuristics Part II
Celso C. Ribeiro Catholic University of Rio de
Janeiro, Brazil
Curicó, Chile, October 2001
52
Summary
  • PVC routing
  • Integer multicommodity flow formulation
  • Cost function
  • Solution method GRASP with path-relinking
  • Numerical results and conclusions
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions
  • Experiments with // in GRASP and path-relinking

53
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions

54
Weight setting in OSPF routing
  • Internet traffic has been doubling each year
    Coffman Odlyzko (2001) in the 1995-96 period
    (introduction of web browsers), traffic doubled
    every three months!
  • Increasingly heavy traffic (due to video, voice,
    etc.) is raising the requirements of the
    Internet of tomorrow.

55
Weight setting in OSPF routing
  • Objective of traffic engineering make more
    efficient use of existing network resources
  • Routing of traffic can have a major impact on the
    efficiency of network resource utilization

56
Packets of information
Contains necessary routing information, such as
IP destination address.
body
header
Information sent over the Internet is broken into
chunks, called packets or datagrams.
57
Packet routing
Packets final destination.
When packet arrives at router, router must decide
where to send it next.
router
router
router
router
router
Routing consists in finding a path from source to
destination.
Routing table
58
Autonomous systems
To decrease the complexity of routing, the
Internet is divided into smaller domains, called
Autonomous Systems.
AS2
AS1
AS4
Routing within an AS is done via Interior Gateway
Protocols (IGP), while between ASs Exterior
Gateway Protocols (EGP) are used.
AS3
59
OSPF (Open Shortest Path First)
  • OSPF is the most commonly used intra-domain
    routing protocol (IGP).
  • It requires routers to exchange routing
    information with all other routers in the AS.
  • Complete network topology knowledge is available
    to all routers, i.e. state of all routers and
    links in the AS.

60
Weight setting in OSPF routing
  • Each link in the AS is assigned an integer
    weight ? 1,65535216?1
  • Smaller weights may be used MAX
  • Each router computes tree of
    shortest weight paths to all
    other routers in the AS, with
    itself as the root, using
    Dijkstras algorithm.

Bottom Cisco 7000 router Top ForeRunner ASX-200
ATM switch
61
Weight setting in OSPF routing
Routing table is filled with first hop
routers for each possible destination. In case of
multiple shortest paths, flow is evenly split.
Routing table
D1
R1
root
D2
R1
R2
D3
R3
First hop routers.
D4
3
2
1
D5
R1
D6
R3
6
3
5
1
4
Destination routers
2
Cisco 12400 routers
62
Weight setting in OSPF routing
  • OSPF weights are assigned by network operator
  • CISCO assigns, by default, a weight proportional
    to the inverse of the available link bandwidth.
  • If all weights are unit, the cost of a path is
    the number of hops in the path.
  • Fortz Thorup (2000) weight setting by using
    local search on large networks with up to 100
    nodes and 503 links
  • Ericsson, Pardalos, Resende (2001) genetic
    algorithm

63
Minimization of congestion
  • Directed capacitated network G (N,A,c), where N
    are routers, A are links, and ca is the
    capacity of link a ? A.
  • Same measure of Fortz Thorup (2000) to compute
    congestion (also used for PVC routing)
  • ? ?1(L1) ?2(L2)
    ?A(LA)
  • La is the load on link a ? A, ?a(La) is
    piecewise linear and convex, and ?a(0) 0, for
    all a ? A.

64
Piecewise linear and convex ?a(La) link
congestion measure
slope 5000
slope 500
slope 3
slope 10
slope 1
slope 70
(La?ca )
65
Weight setting in OSPF routing
  • Given a directed network G (N, A ) with link
    capacities ca ? A and demand matrix D (ds,t )
    specifying a demand to be sent from node s to
    node t
  • Assign weights wa ?1,65535 to each link a ? A,
    such that the objective function ? is minimized
    when demand is routed according to the OSPF
    protocol.
  • Weights are computed off-line and do not change
    often

66
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions

67
Genetic algorithms
done
Initialize and evaluate P (0) Set t 1
Test termination
Generate P (t ) from P (t?1)
crossover
Alter P (t )
mutation
P (t ) is population of solutions at generation t.
Evaluate P (t )
t t 1
68
GA for OSPF solution encoding
  • Ericsson, Pardalos, Resende (2001)
  • A population consists of nPop integer weight
    arrays w (w1, w2 ,, wA ),
  • where wa ?1,MAX
  • All possible weight arrays correspond to feasible
    solutions, i.e., every weight setting is feasible
  • nice problem feature for application of a GA

69
GA for OSPF fitness evaluation
  • Route each demand pair (s,t ) using OSPF
  • Compute loads Las,t on each link a ? A
  • Add up loads on each link a ? A, yielding total
    load La on link
  • Compute link congestion cost ?a(La) for each link
    a ? A
  • Add up costs ? ?1(L1) ?2(L2)
    ?A(LA)

70
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions

71
Initial population
  • nPop ? 10 solutions with randomly generated arc
    weights, uniformly in the interval 1,MAX
  • Weight settings of two other common heuristics
  • OSPF (unit) all weights set to 1
  • OSPF (invCap) each arc weight is set inversely
    proportional to its arc capacity
  • OSPF (fractions) all weights set to ?.MAX,
    with ? 1/8, 1/4, 3/8, 1/2, 5/8, 3/4, 7/8,
    1
  • all but invCap lead to the same routing decisions
    (all weights are equal)

72
Population partitioning
Class A
20 most fit
Population is sorted according to fitness
(solution value) ? and solutions are classified
into three categories.
Class B
Class C
10 least fit
73
Population dynamics
generation t 1
generation t
Class A
Class B
Class C
74
Parent selection
  • Parents are chosen at random
  • one parent from Class A (elite)
  • one parent from Class B or C (non-elite)
  • Reselection is allowed, i.e. parents can breed
    more than once per generation
  • Better individuals are more likely to reproduce

75
Crossover with random keys
  • Bean (1994) crossover combines elite parent p1
    with non-elite parent p2 to produce child c
  • for all
    genes i 1,2,,A do

  • if rrandom0,1 lt 0.01 then

  • c i irandom1,MAX

  • else if rrandom0,1 lt 0.7 then

  • c i p1i

  • else c i p2i
  • end

With small probability child has single gene
mutation.
Child is more likely to inherit gene of elite
parent.
76
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions

77
Parallel GA local search
  • Combine GA with local search
  • LS with cost recomputations from scratch
  • For each arc e with current weight we do
  • Temporarily replace arc weight by ?(1 we)/2?
  • Evaluate fitness
  • If new improved solution, update weight and go to
    next arc
  • Otherwise, temporarily replace arc weight by
    ?(MAX we)/2?
  • Evaluate fitness
  • If new improved solution, update weight
  • Go to next arc
  • Until no further improvement is possible

78
Parallel GA local search
  • Variants
  • V-1 at each processor, apply LS to the best
    solution whenever it is improved
  • V-2 at each processor, always apply LS to the
    best non-locally optimal solution

79
Parallel GA cooperation
  • P processors
  • Whenever a processor improves its incumbent, the
    latter is broadcasted to
  • all other processors
  • all closest log P processors (logical
    organization)
  • At the beginning of each generation, every
    processor replaces its worst solutions by those
    sent by other processors

80
  • Weight setting in OSPF routing
  • Genetic algorithm for OSPF routing
  • Population dynamics
  • Parallel GA for OSPF routing
  • Numerical results and conclusions

81
Numerical results
  • Work-in-progress, preliminary results GA, LS
  • Combine GALS? Cooperative // GA? Scatter search?
  • One real world network ATT Worldnet backbone
    with 90 nodes, 274 links, and 272 pairs
  • Compared with cost and maximum utilizations of
    the LB lower bound and several heuristics
  • OSPF(invCap)
  • Local search of Fortz and Thorup (2000)
  • Original sequential GA of Ericsson et al. (2001)
  • LP lower bound

82
(No Transcript)
83
(No Transcript)
84
(No Transcript)
85
(No Transcript)
86
Concluding remarks (1/1)
  • Sequential GAOSPF produced as good solutions as
    LS for most instances, even better in some cases.
  • GA generally finds good solutions close to the LP
    lower bound.
  • //GALS works very well on real-world ATT
    Worldnet backbone network, significantly
    increasing traffic and Internet capacity over
    CISCOs recommended weight setting strategy.
  • Extensions speedup LS, improve cooperation,
    evaluate effects, scatter search

87
  • Experiments with // in GRASP and path-relinking

88
Some experiments with parallelism in GRASP and
path-relinking
  • Parallel implementations of GRASP
  • Aiex, Resende, Ribeiro (2000) speedups
    in independent multi-thread parallel GRASP
    implementations
  • random variable time to target solution value
    fits a two-parameter exponential distribution ?
    approximate linear speedups with straightforward
    implementations

89
Using standard graphical methodology ( Aiex,
Resende, Ribeiro, 2000), one observes that
random variable time to target solution value
fits a two-parameter exponential distribution.
Therefore, one should expect approximate linear
speedup in a straightforward parallel
implementation.
90
60 independent runs of each algorithm.
MPI implementation.
3-index assignment
196Mhz MIPS R10000
91
Average speedup of 60 independent runs.
MPI implementation.
3-index assignment
92
Some experiments with parallelism in GRASP and
path-relinking
  • Path-relinking in parallel
  • Aiex, Pardalos, Resende, Toraldo 2000
  • Stopping criteria
  • Independent strategy
  • Cooperative strategy
  • Message Passing Interface (MPI) implementation
  • SGI Challenge computer with 28 processors

93
Stopping strategy
  • If process finds target solution
  • it stops and sends a message to other processes,
    which stop.
  • If process completes maximum number of iterations
  • it sends a message to other processes, which do
    not stop until all processes complete maximum
    number of iterations.

94
Independent strategy

seed(1)
seed(2)
seed(3)
seed(4)
seed(p)
2
1
3
p
4
Stopping criteria are communicated
among processes.
95
Cooperative strategy
Stopping criteria are communicated among
processes as before.
Solutions accepted into elite sets are
communicated among processes.
96
Elite set communication
  • Each process checks if there is any message to
    receive before each PR leg.
  • If messages are waiting
  • receive messages one or more candidate elite
    solutions
  • apply acceptance criteria to each candidate
    solution
  • update elite set of process if necessary

97
Elite set communication
  • In order to minimize communication
  • During a GRASPPR iteration, each process
    bufferizes all solutions accepted into its elite
    set.
  • At end of GRASPPR iteration, bufferized
    solutions are sent to all other processes.

98
3-index assignment (AP3)
Complete tripartite graph Each triangle made up
of three distinctly colored nodes has a cost.
AP3 Find a set of triangles such that each node
appears in exactly one triangle and the sum of
the costs of the triangles is minimized.
cost 10
99
Independent on 3-index assignment bs26
100
Collaborative on 3-index assignment bs26
101
Speedup on 3-index assignment bs26
102
Concluding remarks (1/1)
  • Path-relinking adds intensification and memory
    mechanisms to GRASP.
  • Time to target solution fits a two-parameter
    exponential distribution, so approximate linear
    speedups can be expected using independent
    processors.
  • Exchange of information by processors can improve
    performance of parallel implementation.

103
Slides and publications
  • Slides of this talk can be downloaded from
    http//www.inf.puc-rio/celso/talks/curico.ppt
  • Chapter about GRASP and PR available at
  • http//www.inf.puc-rio.br/celso/publicacoes
  • Paper about sequential GA for OSPF setting
    available at
  • http//www.research.att.com/mgcr/doc/gaospf.p
    df
  • Paper about parallel GA for OSPF setting in
    preparation

104
Curicó (Chile), October 9, 2001, 730 PM
Write a Comment
User Comments (0)
About PowerShow.com