Routing in communication networks
This presentation is the property of its rightful owner.
Sponsored Links
1 / 70

Routing in communication networks PowerPoint PPT Presentation


  • 45 Views
  • Uploaded on
  • Presentation posted in: General

Routing in communication networks. Celso C. Ribeiro Computer Science Department Catholic University of Rio de Janeiro j oint work with M.G.C. Resende. Summary. PVC routing Integer multicommodity flow formulation Cost function Solution method: GRASP with path-relinking

Download Presentation

Routing in communication networks

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Routing in communication networks

Routing in communication networks

Celso C. Ribeiro

Computer Science Department

Catholic University of Rio de Janeiro

joint work with M.G.C. Resende

Routing in communication networks (MIC'2001)


Summary

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, extensions, and conclusions

Routing in communication networks (MIC'2001)


Routing in communication networks

  • PVC routing

  • Integer multicommodity flow formulation

  • Cost function

  • Solution method: GRASP with path-relinking

  • Numerical results and conclusions

Routing in communication networks (MIC'2001)


Pvc routing application

PVC routing: application

  • Frame relay service offers virtual private networks: permanent (long-term) virtualcircuits (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

Routing in communication networks (MIC'2001)


Pvc routing application1

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

Routing in communication networks (MIC'2001)


Pvc routing application2

PVC routing: application

  • Other algorithms simply handle the number of hops (e.g. routing algorithmin Cisco switches)

  • Handling delays is particularly important in international networks,where distances between backbone nodes vary considerably

Cisco Catalystic 5505 switch

Routing in communication networks (MIC'2001)


Pvc routing application3

PVC routing: application

  • Load balancing is important for providing flexibility to handle:

    • overbooking: typically used by network designers to account fornon-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

Routing in communication networks (MIC'2001)


Pvc routing example

PVC routing: example

Routing in communication networks (MIC'2001)


Pvc routing example1

PVC routing: example

Routing in communication networks (MIC'2001)


Pvc routing example2

PVC routing: example

Routing in communication networks (MIC'2001)


Pvc routing example3

PVC routing: example

Routing in communication networks (MIC'2001)


Pvc routing example4

PVC routing: example

max capacity = 3

Routing in communication networks (MIC'2001)


Pvc routing example5

PVC routing: example

very long path!

max capacity = 3

Routing in communication networks (MIC'2001)


Pvc routing example6

PVC routing: example

very long path!

max capacity = 3

reroute

Routing in communication networks (MIC'2001)


Pvc routing example7

PVC routing: example

max capacity = 3

Routing in communication networks (MIC'2001)


Pvc routing example8

PVC routing: example

max capacity = 3

feasible and

optimal!

Routing in communication networks (MIC'2001)


Problem formulation

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

Routing in communication networks (MIC'2001)


Problem formulation1

Problem formulation

  • DemandsK = {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

Routing in communication networks (MIC'2001)


Problem formulation2

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)

Routing in communication networks (MIC'2001)


Problem formulation3

= 1, iff trunk (i,j )

is used to route

PVC k.

Problem formulation

Routing in communication networks (MIC'2001)


Cost function

Cost function

  • Linear combination of

    • delay component - weighted by (1-)

    • load balancing component - weighted by 

  • Delay component:

Routing in communication networks (MIC'2001)


Cost function1

Cost function

  • Load balancing component: measure of Fortz & Thorup (2000) to compute congestion:

     = 1(L1) + 2(L2) + … + |E|(L|E|)

    where Leis the load on link e  E,

    e(Le) is piecewise linear and convex,

    e(0) = 0, for all e  E.

Routing in communication networks (MIC'2001)


Piecewise linear and convex e l e link congestion measure

slope = 5000

slope = 500

slope = 3

slope = 10

slope = 1

slope = 70

Piecewise linear and convex e(Le) link congestion measure

(Lece)

Routing in communication networks (MIC'2001)


Some recent applications

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

Routing in communication networks (MIC'2001)


Solution method grasp with path relinking

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

Routing in communication networks (MIC'2001)


Solution method grasp

Solution method: GRASP

  • GRASP

    • Construction:

      • RCL: nc unrouted PVCs with largest demands

      • choose unrouted pair kbiasing in favor of high bandwidth requirements, with probablity k = rk / (pRCLrp)

      • 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

Routing in communication networks (MIC'2001)


Solution method grasp1

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

Routing in communication networks (MIC'2001)


Solution method p ath relinking

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

Routing in communication networks (MIC'2001)


Solution method p ath relinking1

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

Routing in communication networks (MIC'2001)


Solution method p ath relinking2

Solution method: path-relinking

Elite solutions x and y

(x,y): symmetric difference between S and T

while ( |(x,y)| > 0 ) {

evaluate moves corresponding in(x,y)make best move

update (x,y)

}

Routing in communication networks (MIC'2001)


Path relinking in grasp

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.

Routing in communication networks (MIC'2001)


Path relinking in grasp1

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)

Routing in communication networks (MIC'2001)


Path relinking e lite set

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 .

Routing in communication networks (MIC'2001)


Routing in communication networks

Routing in communication networks (MIC'2001)


Experiment

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

Routing in communication networks (MIC'2001)


Experiment1

Experiment

  • Test problems:

 Theorem:

The Cartesian product of a family of

algorithms by a family of test problems is

an unreadable table!

Routing in communication networks (MIC'2001)


Variants of grasp and path relinking

T

S

T

S

S

T

S

T

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)

Routing in communication networks (MIC'2001)


Variants of grasp and path relinking1

Variants of GRASP and path-relinking

Each variant: 200 runs for one instance of PVC routing problem

Probability

Iterations

Routing in communication networks (MIC'2001)


Variants of grasp and path relinking2

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:

    • GPRb:129s G:10933s GPRf:1727s GPRfb:172s

Routing in communication networks (MIC'2001)


Comparisons

cost

max util.

Comparisons

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 > H3 > H2 > H1 (cost, max utilization, distribution)

Routing in communication networks (MIC'2001)


Parameter of the objective function

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.)

Routing in communication networks (MIC'2001)


Parameter of the objective function1

Parameter of the objective function

Routing in communication networks (MIC'2001)


Concluding remarks 1 3

Concluding remarks (1/3)

  • New formulation with flexible objective function

  • Family of heuristics (greedy, greedy+LS, GRASP, GRASP+PR)

  • 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

Routing in communication networks (MIC'2001)


Concluding remarks 2 3

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).

Routing in communication networks (MIC'2001)


Concluding remarks 3 3

Concluding remarks (3/3)

  • NETROUTER – Tool for optimallyloading 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 AT&T's next generation frame-relay and MPLS core architecture, to assess if thecurrent and forecasted demands can be handled by the proposed trunkingplan.

Routing in communication networks (MIC'2001)


Routing in communication networks

  • Weight setting in OSPF routing

  • Genetic algorithm for OSPF routing

  • Population dynamics

  • Parallel GA for OSPF routing

  • Numerical results, extensions, and conclusions

Routing in communication networks (MIC'2001)


Weight setting in ospf routing

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.

  • Objective of traffic engineering: make more efficient use of network resources

  • Traffic routing can have a major impact on the efficiency of network resource utilization

Routing in communication networks (MIC'2001)


Traffic routing

Traffic routing

  • When packet arrives at router, router must decide where to send it next.

  • Routing consists in finding a path from source to destination.

  • To decrease the complexity of routing, the Internet is divided into smaller domains, calledAutonomous Systems (AS).

  • Routing within an AS is done viaInterior Gateway Protocols(IGP), while between AS’sExterior Gateway Protocols(EGP) are used.

Routing in communication networks (MIC'2001)


Ospf open shortest path first

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.

Routing in communication networks (MIC'2001)


Weight setting in ospf routing1

Weight setting in OSPF routing

  • Each link in the AS is assigned an integer weight  [1,65535=216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 Dijkstra’s algorithm.

Bottom: Cisco 7000 router

Top: ForeRunner ASX-200 ATM switch

Routing in communication networks (MIC'2001)


Weight setting in ospf routing2

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

1

2

3

D5

R1

D6

R3

6

1

5

3

4

Destination routers

2

Cisco 12400 routers

Routing in communication networks (MIC'2001)


W eight setting in ospf routing

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

Routing in communication networks (MIC'2001)


Minimization of congestion

Minimization of congestion

  • Directed capacitated network G = (N,A,c), where N are routers, A are links, and cais 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|(L|A|)

    La is the load on link a  A,a(La) is piecewise linear and convex, and a(0) = 0, for all a  A.

Routing in communication networks (MIC'2001)


W eight setting in ospf routing1

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

Routing in communication networks (MIC'2001)


Genetic algorithms

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.

t = t + 1

Evaluate P (t )

Routing in communication networks (MIC'2001)


Ga for ospf solution encoding

GA for OSPF: solution encoding

  • Ericsson, Pardalos, & Resende (2001)

  • A population consists of nPop integer weight arrays: w = (w1, w2 ,…, w|A|),

    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

Routing in communication networks (MIC'2001)


Ga for ospf fitness evaluation

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|(L|A|)

Routing in communication networks (MIC'2001)


Initial population

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)

  • Population is sorted according to fitness  and classified into three categories

Routing in communication networks (MIC'2001)


Population dynamics

Class A

Class A is promoted unchanged

Class B is replaced by

crossover of:

one Class A parent

and

Class B

one Class B or C

parent.

Class C

Class C is replaced by randomly

generated solutions.

Population dynamics

generation t + 1

generation t

Class A

20% most fit

Class B

10% least fit

Class C

Routing in communication networks (MIC'2001)


Crossover with random keys

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 rrandom[0,1] < 0.01 then

c [i ]= irandom[1,MAX]

else if rrandom[0,1] < 0.7 then

c [i ]= p1[i ]

else c [i ]= p2[i ]

end

With small probability child

has single gene mutation.

Child is more likely to inherit

gene of elite parent.

Routing in communication networks (MIC'2001)


Parallel ga local search

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

Routing in communication networks (MIC'2001)


Parallel ga local search1

Parallel GA: local search

  • Variants:

    • V1: at each processor, apply LS to the best solution whenever it is improved

    • V2: at each processor, always apply LS to the best non-locally optimal solution

Routing in communication networks (MIC'2001)


Parallel ga cooperation

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

Routing in communication networks (MIC'2001)


Numerical results

Numerical results

  • Work-in-progress, preliminary results: GA, LS

    • Combine GA+LS? Cooperative // GA? Scatter search?

  • One real world network: AT&T 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

Routing in communication networks (MIC'2001)


Routing in communication networks

Routing in communication networks (MIC'2001)


Routing in communication networks

Routing in communication networks (MIC'2001)


Routing in communication networks

Routing in communication networks (MIC'2001)


Routing in communication networks

Routing in communication networks (MIC'2001)


Concluding remarks 1 1

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.

  • //GA+LS works very well on real-world AT&T Worldnet backbone network, significantly increasing traffic and Internet capacity over CISCO’s recommended weight setting strategy.

  • Extensions: speedup LS, improve cooperation, evaluate effects, scatter search

Routing in communication networks (MIC'2001)


Slides and publications

Slides and publications

  • Slides of this talk can be downloaded from: http://www.inf.puc-rio/~celso/talks

  • Paper about PVC routing 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.pdf

  • Paper about parallel GA for OSPF weight setting in preparation

Routing in communication networks (MIC'2001)


  • Login