Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Efficient Techniques and Tools for Intra-Domain TrafficEngineering
Bernard FortzDepartment of Computer Science, Universite Libre de Bruxelles, Brussels, Belgium
and CORE, Universite catholique de Louvain, Louvain-la-Neuve, Belgium, [email protected]
Hakan UmitIAG-Louvain School of Management
and CORE, Universite catholique de Louvain, Louvain-la-Neuve, Belgium, [email protected]
In an Autonomous System (AS), links that connect routers have certain metric (adminis-
trative weight or cost of transferring an IP packet) that can be modified by network ad-
ministrators, usually for the purpose of minimizing traffic congestion or minimizing the cost
of overall routing. As traffic is routed along the shortest paths in the network, finding an
optimum combination of these integer weights is proved to be NP-Hard (Fortz and Thorup
2000) due to hard protocol constraints, e.g. a flow is evenly distributed along the shortest
paths between its origin and destination nodes, also referred to as equal cost multi-path
(ECMP) rule.
We study the link weight optimization problem in intra-domain networks. We present
an open source Internet Traffic Engineering toolbox (TOTEM) and its link weight optimizer
(IGP-WO) that we have developed and implemented. Furthermore, we present two heuris-
tic approaches to generate fast and efficient link metric for intra-domain routing. We also
present some promising experimental results that were done using various sizes of networks
and traffic matrices.
Key words: IGP; OSPF; Internet Traffic Engineering; shortest path routing; column gener-
ation; open source
1. Introduction
In today’s internet service providing domain, supplying an appropriate level of service has
become a big challenge due to growing customer needs and Quality of Service (QoS) terms
in Service Level Agreements (SLAs). The usual method to provide a good level of service
is to overprovision the network compared to the real needs. However, overprovisioning does
not necessarily ensure the required QoS. Application of Traffic Engineering (TE) techniques
1
proves to be a popular alternative. Nevertheless the problems that are encountered in this
field are combinatorial and of large size, which implies to make use of heuristic and subop-
timal solutions.
Interior gateway protocols (IGP) such as Open Shortest Path First (OSPF), Intermediate
System-Intermediate System (IS-IS) and Routing Information Protocol (RIP) are among the
most popular routing protocols used by Internet Service Providers. Traffic routing is based
on shortest paths that are calculated and regularly maintained by the routers using link
metric, i.e. a positive integer value between [1, 216). These link metric or weights can be
modified by network administrators for administrative purposes (Moy 1998).
Intra-domain routing operates under various protocol rules, the most important being
the “traffic splitting” rule. According to the OSPF standards in RFC 2328, any traffic that
arrive a router is split equally over all the outgoing links of that router that belongs to a
shortest path to the destination (Moy 1998). Due to this protocol rule, also referred to as
equal cost multi-path (ECMP), optimizing IGP weights is shown to be NP-Hard (Fortz and
Thorup 2000). In Figure 1, a small shortest path network is depicted, where 2 units of data
is routed according to the ECMP rule.
1/2NNNNN
&&NNNNN
1/2 //
1/2NNNNN
&&NNNNN
2 // •
1pppppp
88pppppp
1NNNNNN
&&NNNNNN
3/2 // • 2 //
1pppppp
88pppppp
Figure 1: Equal cost multi-path in intra-domain routing
To the best of our knowledge first studies on OSPF link weight optimization were done
by Fortz and Thorup (Fortz and Thorup 2000), where the authors develop a tabu search
heuristic in order to optimize the weight setting of a proposed AT&T WorldNet backbone.
They show near optimal results where their heuristic can support up to 110% increase in
demand compared to a standard heuristic, i.e. unit weights inveresely proportional to the
link capacities, as suggested by Cisco (1997).
Further studies on the IGP weight setting problem continue drawing an attention on the
optimization by using various heuristic approaches. A recent example is a Hybrid Genetic
2
Algorithm (HGA) approach by Buriol et al. (2005) that is based on a Genetic Algorithm
(GA) heuristic and a local search procedure proposed by Ericsson et al. (2002). Experiments
show that HGA performs better and faster than GA, where the results of HGA are equally
competitive with that of Fortz and Thorup (2000).
More different approaches were studied by Pioro et al. (2002) and Wang et al. (2001),
where the authors use the idea of optimal dual link weights resulting from linear relaxation
of a bifurcated flow allocation problem in the context of single shortest-path routing.
There are also some studies where additional objectives are taken into account, e.g.
optimizing weights with few possible changes and also robust optimization approaches (Fortz
and Thorup 2002). In this study, the authors introduce multiple demand matrices in order
to obtain one generic weight setting that suits changing network conditions.
In networks, it is sometimes required that the paths between demand end nodes are
unique. In the so-called Inverse Shortest Paths (ISP) problem, the lengths of the links must
be chosen in such a way that all end-to-end traffic demands must be connected by unique
shortest paths. Recently, Bley has shown that minimizing the longest arc or the longest
path length is APX-Hard to approximate (Bley 2005). Previously Ben-Ameur and Gourdin
(2003) formulated this problem as a linear program and developed heuristics to compute
small integer weights with guaranteed worst-case situations.
This paper is structured as follows. Section 2 gives the definiton of the IGP weight
optimization problem and presents the assumed piecewise linear objective function. Section 3
presents the architecture and features of the open source Traffic Engineering tool (TOTEM).
We also present the TE algorithms that are embedded within the toolbox as well as the
weight optimizer, IGP-WO, which we have developed and implemented. In Section 4, we
propose two heuristic methods to generate IGP weights using a column generation method.
In section 5, we present various numerical experiments along with comparisons of different
methods. We conclude the study with section 6.
2. Problem Definition
Given an internetwork (routers, hosts and links that connect them) and a traffic matrix
(positive entries are defined to be a “demand” between any pair of nodes), the intra-domain
routing metric optimization problem is to find the optimum set of link weights for IGP
routing such that the cost of the routing is minimized. The objective in IGP routing is
3
usually to avoid link congestion, hence over-utilized links must be avoided.
Let G = (N, A) be a directed graph, where N denotes the set of nodes and A represents
the set of capacitated arcs connecting these nodes. The capacity of an arc (i, j) ∈ A is
denoted by cij. We have a traffic matrix F of size (|N | × |N |), where each positive entry of
F (o, d) is called a demand between origin o ∈ N and destination d ∈ N . We have a decision
variable f dij which represents the flow on arc (i, j) destined for node d.
Let Φ =∑
(i,j)∈A φ(cij, lij) be the objective function with derivative below, where lij, the
total flow on arc (i, j) ∈ A, is a decision variable representing the load on arc (i, j) ∈ A:
φ′
(cij, lij) =
1 for 0 ≤ lij/cij < 1/3,3 for 1/3 ≤ lij/cij < 2/3,
10 for 2/3 ≤ lij/cij < 9/10,70 for 9/10 ≤ lij/cij < 1,
500 for 1 ≤ lij/cij < 11/10,5000 for 11/10 ≤ lij/cij < ∞.
(1)
Note that φ(cij, 0) = 0. It is clear from (1) that it forms an increasing piece-wise linear
convex function (see Figure 2). In practical terms this objective means that over-utilized
links are heavily penalized, anyhow they are still allowed to transmit traffic.
Figure 2: Arc cost with respect to Φ(1, lij)
3. A Traffic Engineering Toolbox
TOTEM (TOolbox for Traffic Engineering Methods) is an open source software for Internet
Traffic Engineering (TE) purposes. It unites a set of algorithms and tools that allow netwok
4
administrators to optimize their networks. These methods cover intra-domain, inter-domain
TE, IP based and Multiprotocol Label Switching (MPLS)-based TE, which can be used for
better routing of traffic for providing Quality of Service (QoS), load balancing, protection
and restoration in case of failure, etc. The toolbox can both be used as an on-line tool as
well as off-line optimization and simulation tool (Leduc et al. 2006).
3.1. Technical Features and Architecture
TOTEM embodies a wide range of TE algorithms. The kernel of the toolbox is the repository
of TE methods grouped into several categories (see Figure 3):
• Internet Protocol (IP): algorithms using only IP information, e.g. IGP weight opti-
mization
• Multiprotocol Label Switching (MPLS): algorithms using MPLS TE functionalities,
e.g. Label Switched Path (LSP) primary or backup computation algorithms
• Border Gateway Protocol (BGP): inter-domain algorithms, e.g. traffic redistribution
• Generic: classical optimization and search algorithms useful for other parts of the
toolbox, e.g. tabu search framework
Besides this kernel, the topology manager contains all the topological data (i.e. node, link,
IGP, BGP and MPLS information). This module is the reference access point to the topology
representation in the toolbox, which is realized by the XML language (see Figure 4). The
configuration manager configures the global toolbox parameters and the different algortihms.
Finally the web service interface module provides the standard interface for interoperability
with existing external tools.
We have developed the toolbox in Java since it allows rapid and structured development.
Moreover, the Java Native Interface (JNI) library allows us to integrate C and C++ algo-
rithms in the toolbox. The toolbox has been designed to facilitate the integration of new
algorithms by providing different generic services. It provides topology information (nodes,
links, LSPs, ...) to the algorithm to be integrated. It also provides a scenario execution ser-
vice. This parses an XML file describing scenario and then calls the appropriate algorithm
to execute the scenario.
As of version 2.0, the toolbox has been improved with the addition of Graphical User
5
Figure 3: TOTEM architecture
Figure 4: Example of the XML DOMAIN element
6
Interface (GUI) that uses the Java Universal Network/Graph Framework (JUNG) library
(see Figure 5).
3.2. TE Algorithms of the Toolbox
The TE methods that exist in TOTEM can be classified into three categories: (1) intra-
domain IP-based, (2) inter-domain IP-based and (3) MPLS-based. The list of the algorithms
and tools in the toolbox is as follows (Balon et al. 2007):
3.2.1. Shortest Path First Algorithm
The toolbox contains a flexible implementation of the SPF (Shortest Path First) algorithm
and its constrained extension CSPF (Constrained Shortest Path First). The implementation
is very efficient and uses a priority queue to store the list of temporary visited nodes. For
computing the path of a LSP (Label Switched Path) with a given reservation, the CSPF
skips links that do not meet the bandwidth requirement.
3.2.2. DAMOTE
DAMOTE (Decentralized Agent for MPLS Online Traffic Engineering) is a generic tool with
the following functionalities:
• QoS-based routing Diffserv LSPs under constraints, i.e. compute primary paths at
ingress nodes in a way similar to the classical CSPF.
• Local and global back-up LSP routing for fast restoration
3.2.3. SAMCRA
This algorithm can be used to compute LSPs between two nodes in the network. SAMCRA
is an exact multi-constrained shortest path algorithm that was originally proposed by Van
Mieghem et al. (2001) and later extended by Van Mieghem and Kuipers (2004). The
implementation of SAMCRA included in the toolbox is the one described in the latter.
3.2.4. optDivideTM
This algorithm consists of dividing the traffic matrix into N sub-matrices, called strata, and
route each of these independently. The method can also be used to compute a very precise
7
Figure 5: Graphical User Interface of TOTEM
8
approximation of the optimal value of a given objective function to compare TE algorithms
(Balon and Leduc 2006).
3.2.5. C-PGP
C-BGP is a BGP simulator. It aims at the interdomain routes selected by BGP routers
in a domain. The route computation is an accurate model of the BGP decision process as
well as several sources of input data. The model of the decision process takes into account
every decision rule present in genuine BGP decision process as well as the iBGP hierarchy
(route-reflectors) (Quoitin 2007).
3.2.6. SAMTE
SAMTE (Scalable Approach for MPLS Traffic Engineering) is a hybrid IP/MPLS optimiza-
tion method. The idea of SAMTE is to combine both the simplicity and robustness of IGP
routing and the flexibility of MPLS. This approach lies between the pure IP metric based op-
timization and the full mesh of LSPs. SAMTE uses the simulated annealing meta-heuristic
to find a small number of LSPs to establish in the network. The combination of the set of
LSPs computed by SAMTE and the IGP routing for the remaining flows optimize a given
operational objective.
3.2.7. IGP-WO
IGP-WO is the intra-domain routing metric optimizer of TOTEM. The basic model in the
weight optimization problem assumes a given topology and a traffic matrix. The objective
is to maintain the utilization of links within given link capacities.
The tool implements the heuristic algorithm introduced by Fortz and Thorup (2000). The
piecewise linear cost function presented in section 2 is used as the objective function. The
search procedure includes a heuristic algorithm based on tabu search (Glover and Laguna
1997). A solution is represented by an integer weight vector, (wij). Two functions are defined
to build the neighborhood of a solution:
1. Single weight change: The weight of a single link is changed at each iteration
2. Evenly balancing flows: Given a destination node d, a node u is selected randomly
among the ones that are on any shortest path towards d. The weights of the arcs
outgoing from u is adjusted in such a way that the traffic from u to d is split as evenly
9
as possible among multiple arcs. The weight change is retricted to the arcs that have
less load than the treshold. The changes leading to infeasible weight values are also
avoided.
The tabu search algorithm is structured with the following specifications. Tabu lists are used
to avoid cycling during the whole run. Special hash functions are used to facilitate the tabu
aspect of the heuristic, as well as to improve the running time. Diversification is carried
out when a working solution is not improved for 300 iterations. During the diversification,
each link weight is changed with probability rate 10% by adding a randomly chosen integer
between [−2, +2]. If the resulting weight is infeasible (less than 1 or larger than 216 − 1), it
is forced to the corresponding bound value.
At each iteration, a proportion of the neighborhood is evaluated due to the large size of
the problems. The initial rate by which the neighborhood is sampled is determined by the
users. During the algorithm run, the value of the sampling rate is updated. If the current
solution is improved, the sampling rate is divided by three, if not it is multiplied by two.
The upper and lower bounds of the sampling rate are determined by the users, too.
Cost evaluation is a bottleneck throughout the local search as the algorithm necessitates
calculation of shortest path graphs using Dijkstra’s algorithm (1959). Therefore a dynamic
shortest path algorithm (Ramalingam and Reps 1996) is embedded in the cost evaluation
procedure. This addition saves up to 70% of the total CPU time.
As observed in Fortz and Thorup’s work (2000), OSPF performs well with optimized
weights in realistic network topologies. The results have shown that maximum link utilization
rate in OSPF networks with optimized weights is generally close to the one in the ideal case,
where the traffic is split freely.
4. Heuristics for IP Metric
The multicommodity network flow problem (MCNFP) is assumed to be a good lower bound
for the IGP weight setting problem (Fortz and Thorup 2000) and we opt for the same
approach in this study.
10
4.1. A Lower Bound for IGP Routing
Given the cost function Φ, the linear programming formulation of the MCNFP is as follows:
(GRPa)
min Φ =∑
(i,j)∈A
φij
subject to
∑
i∈N
f dij −
∑
i∈N
f dji =
−∑
o∈N F (o, d) if i = dF (i, d) if i 6= d
i, d ∈ N (2)
lij =∑
d∈N
f dij (i, j) ∈ A (3)
φij ≥ αzlij − βzcij (i, j) ∈ A, z ∈ Z (4)
f dij ≥ 0 (i, j) ∈ A, d ∈ N (5)
Within the above egress-centric flow formulation, constraints (2) are the flow conservation
constraints. Equations (3) define the load on each arc and inequalities (4) define the cost on
each arc, where Z is the set of break points of the piece-wise linear function and αz and βz
are the coefficients of the corresponding segment.
As an alternative to defining the flows on arcs, we now define flows on directed paths for
each commodity F (o, d) : o, d ∈ N . Let P (o, d) be the set of directed paths between origin
o ∈ N and destination d ∈ N . Then fp represents the flow on path p ∈ P (o, d). For the
path-based formulation of the MCNFP we use the same piece-wise linear objective function:
(GRPp)
min Φ =∑
(i,j)∈A
φij
subject to
φij ≥ αzlij − βzcij (i, j) ∈ A, z ∈ Z (νzij) (6)
lij =∑
p∈P (o,d):(i,j)∈A
fp (i, j) ∈ A (ωij) (7)
∑
p∈P (o,d)
fp = F (o, d) o, d ∈ N (σod) (8)
fp ≥ 0 o, d ∈ N, p ∈ P (o, d) (9)
11
Constraints (6) are basically the same with constraints (4) in the previous formulation.
Following equations (7) define the load on each arc, whereas constraints (8) make sure that
each demand is satisfied.
4.2. A Column Generation Approach
Let us reconsider GRPp, the path-based formulation of the MCNFP. We will solve this model
using column generation due to exponential number of paths. In this formulation we have
three basic set of constrains. So, the dual linear program of this model has the dual variables
that are shown in the formulation above.
With path flow complementary slack conditions, the dual variable ωij corresponding to
the flow constraints is the optimum arc price for (i, j) ∈ A and the dual variable σod corre-
sponding to the demand constraints is the optimum shortest path cost for the commodity
o, d ∈ N , for the MCNFP (Ahuja et al. 1993). Hence the dual variables are used to check
optimality with the following pricing:
minp∈P (o,d)
∑
(i,j)∈p
ωij ≤ σod (10)
It is clear from the above equation that the pricing problem is indeed a shortest path problem.
Let S be an arbitrary subset of P , then the column generation procedure is the following:
Procedure CG
I Initialize S(o, d) ⊂ P (o, d).
II Solve the LP obtaining ωij for (i, j) ∈ A and σod for (o, d) ∈ N × N .
III If (minp∈P (o,d)
∑
(i,j)∈P ωij ≤ σod), then add S′
(o, d) to GRPp, where S′
(o, d)
contains the shortest paths from o to d, and go to Step II.
Else an optimal solution is obtained. Stop.
4.3. Heuristics
We propose two ideas to be used as IP metric for intra-domain routing, which can be obtained
as follows:
1. The dual vector of (7), denoted by Ωp, that is obtained as a byproduct at step II of
Procedure CG.
12
2. The dual vector of (3), denoted by Ωa, of GRPa.
In fact this idea stems from the fact that the MCNFP or the General Routing Problem
(GRP) is assumed to be a good lower bound for IGP routing. Thus, we would like to see
whether we could use it as a heuristic for IGP routing. This is a heuristic because in the
General Routing Problem the flow is distributed freely disregarding the ECMP requirement
of IGP routing.
Further optimization strategies are also possible by combining existing tools with new
ones: the above heuristic weights, i.e. Ω, can be used as a good starting point in TOTEM
(IGP-WO) as it is normally initialized by random or unit weights.
5. Numerical Experiments and Discussion
We have done numerous experiments using 2-level hierarchical graphs, which were also used
by Buriol et al. (2005), Ericsson et al. (2002), Fortz and Thorup (2000) and Fortz and
Thorup (2002). Hierarchical graphs are considered to be the most realistic representation of
internetworks. The arcs are clustered into two groups according to their capacities, i.e. local
access and long distance arcs.
We have a complete traffic matrix to define demands, i.e. from each node to every other
node there exists a positive demand, which is derived from multiplication of three random
variables between (0, 1]. We use XPress-MP (optimizer version 14.27) to solve the LPs on a
Pentium PC with 512 Mb of memory running at 1.40 Ghz. In order to generate columns,
the Dijkstra Algorithm is used with an implementation in C.
In Procedure CG, a run is initialized with |N |(|N |− 1) shortest paths that are calculated
using unit weights. During this procedure, a single path is added for each commodity
(o, d) ∈ N , provided that the optimality condition in (10) is satisfied. At each iteration, the
dual vector Ωp is retrieved to be used as heuristic weights in IGP routing.
We use XPress-MP to obtain Ωa by solving GRPa.
5.1. Performance Evaluation
In order to evaluate the real performances of Ωp and Ωa, we calculate the actual IGP routing
cost as follows (Fortz and Thorup 2000):
13
Procedure IGPcost
I Compute a shortest path (SP) graph for each node n ∈ N using Ω
II Compute the set arcs in SP graph of n ∈ N : An =
(i, j) ∈ A : dni − dn
j = ωij
,
where dn is the shortest path distance of a node to n
III For each (i, j) ∈ An, compute the partial load lnij = 1|δ+
i|
(
F (i, n) +∑
(k,i)∈An lnki
)
,
where δ+i is the outdegree of node i ∈ An.
Note that this computation is initialized from the farthest node to the root node.
IV Aggregate the load on arc lij =∑
n∈N lnij
V Compute the total routing cost Φ =∑
(i,j)∈A φ(cij, lij).
We have two criteria to evaluate the performance of our heuristics: maximum utilization
and normalized cost. Maximum utilization refers to the maximum loaded link from the
resulting weight set. Normalized cost is a transformation of the cost function value into a
more universal one by using a special scaling factor. This scaling factor is calculated by:
1. Computing the total cost, Φ1, of routing the commodities over the network using unit
weights,
2. Multiplying Φ1 by a cost factor, 32/3. This value comes from the piece-wise linear cost
function: basically, if a commodity follows a shortest path, and if all arcs are exactly
full, the cost factor is 32/3. For more details, the user is referred to the article by Fortz
and Thorup (2002).
The significance of the normalized cost is: if it is more than 1, the routing will result in
congestion.
We present the numerical results in Tables [1-4]. Maximum link utilization and nor-
malized cost results are given for each approach and for a range of demands that increase
gradually. The significance of the abbreviations are the following:
• Opt: Optimum solution of the MCNFP
• IGP-WO: Result obtained using the IGP weight optimizer of TOTEM v2.4
14
• CG: Best result obtained by using heuristic weights of the column generation approach:
At each iteration of Procedure CG, the corresponding dual vector Ωp is evaluated in
IGP routing and the best Ωp is chosen among these results
• DV: Result obtained by using the heuristic weights of Ωa.
Table 1: 2-Level Hierarchical Graph with 50 nodes and 148 arcsMaximum Utilization Normalized Cost
# Opt IGP-WO DV CG Opt IGP-WO DV CG Sum of Demands1 0.18 0.18 0.18 0.18 0.09 0.09 0.09 0.09 410.642 0.33 0.33 0.37 0.33 0.09 0.09 0.09 0.09 821.283 0.33 0.33 0.43 0.43 0.09 0.09 0.09 0.09 1231.924 0.59 0.66 0.47 0.47 0.09 0.09 0.10 0.10 1642.565 0.66 0.68 0.59 0.59 0.10 0.10 0.11 0.11 2053.206 0.66 0.70 0.73 0.73 0.10 0.11 0.12 0.12 2463.847 0.66 0.86 0.93 0.92 0.12 0.12 0.14 0.14 2874.498 0.90 0.90 0.97 0.93 0.13 0.14 0.16 0.16 3285.139 0.90 1.01 1.02 1.02 0.14 0.17 0.20 0.20 3695.77
10 1.00 1.01 1.14 1.14 0.17 0.20 0.88 0.84 4106.41
Table 2: 2-Level Hierarchical Graph with 50 nodes and 212 arcsMaximum Utilization Normalized Cost
# Opt IGP-WO DV CG Opt IGP-WO DV CG Sum of Demands1 0.19 0.19 0.19 0.19 0.09 0.09 0.09 0.09 280.222 0.33 0.33 0.27 0.27 0.09 0.09 0.09 0.09 560.443 0.33 0.33 0.38 0.38 0.09 0.09 0.09 0.09 840.674 0.39 0.66 0.45 0.45 0.09 0.09 0.10 0.10 1120.905 0.66 0.61 0.54 0.54 0.09 0.10 0.10 0.10 1401.126 0.66 0.66 0.65 0.65 0.10 0.10 0.11 0.11 1681.357 0.66 0.67 0.71 0.71 0.10 0.11 0.12 0.12 1961.578 0.66 0.87 0.89 0.89 0.11 0.12 0.13 0.13 2241.809 0.90 0.89 0.97 0.97 0.12 0.14 0.16 0.16 2522.02
10 0.90 0.96 1.06 1.06 0.13 0.16 0.24 0.24 2802.24
Considering the overall results in Table 1 and Table 2, we observe that both of our heuristic
approaches yield in highly good results in general, with superior positions that are printed
in bold. In almost all runs except #10 in Table 1, the maximum utilization and normalized
cost results of DV and CG are equally competitive with that of IGP-WO and Opt.
The advantage of our heuristic is that we are able to generate weights quite fast. Using
GRPa, the optimum solution (hence the heuristic weights) is attained in just a few seconds
15
Table 3: 2-Level Hierarchical Graph with 100 nodes and 280 arcsMaximum Utilization Normalized Cost
# Opt IGP-WO DV CG Opt IGP-WO DV CG Sum of Demands1 0.17 0.17 0.17 0.17 0.09 0.09 0.09 0.09 383.762 0.33 0.33 0.35 0.25 0.09 0.09 0.09 0.09 767.533 0.35 0.35 0.38 0.35 0.09 0.09 0.09 0.09 1151.304 0.46 0.46 0.46 0.46 0.09 0.09 0.09 0.09 1535.075 0.60 0.60 0.64 0.62 0.09 0.09 0.10 0.10 1918.846 0.67 0.67 0.70 0.71 0.10 0.10 0.11 0.11 2302.617 0.78 0.78 0.82 0.81 0.11 0.11 0.12 0.11 2686.378 0.89 0.89 0.96 0.96 0.12 0.12 0.13 0.13 3070.149 1.00 1.00 1.00 1.00 0.14 0.14 0.15 0.15 3543.91
10 1.11 1.11 1.34 1.11 0.23 0.32 1.34 0.31 3837.68
Table 4: 2-Level Hierarchical Graph with 100 nodes and 360 arcsMaximum Utilization Normalized Cost
# Opt IGP-WO DV CG Opt IGP-WO DV CG Sum of Demands1 0.22 0.21 0.22 0.22 0.09 0.09 0.09 0.09 1033.882 0.33 0.33 0.45 0.35 0.09 0.09 0.09 0.09 2067.763 0.33 0.41 0.39 0.39 0.09 0.09 0.09 0.09 3101.644 0.48 0.55 0.63 0.60 0.10 0.10 0.10 0.10 4135.515 0.67 0.67 0.79 0.79 0.10 0.10 0.10 0.10 5169.396 0.67 0.68 0.71 0.71 0.10 0.11 0.10 0.10 6203.277 0.76 0.76 0.79 0.86 0.11 0.11 0.11 0.11 7237.158 0.90 0.90 1.02 0.97 0.11 0.13 0.14 0.12 8271.039 0.93 0.96 1.38 1.14 0.12 0.16 0.81 0.28 9304.91
10 1.04 1.04 1.30 1.20 0.17 0.22 0.58 0.20 10338.80
16
for all the instances of the 50-node networks. In order to obtain the same quality of result
for the same data set using IGP-WO, a running time around 45 minutes is needed depending
on the tabu search parameters.
The CPU times of the column generation approach are also quite reasonable: they vary
from 20 to 113 seconds for both instances of the 50-node graphs. Our results show that
the column generation procedure stops, i.e. optimal solution is attained, after maximum 7
iterations for the 50-node and 9 iterations for the 100-node networks. In these iterations
column generation procedure itself takes approximately 3% of the total running time.
Table 3 and Table 4 present the results for the 100-node networks. These results are
parallel to the results shown in Table 1 and 2, i.e. both of our heuristic approach results
are either equaly competitive or superior with that of IGP-WO. It takes us maximum 106
seconds to compute the optimum solution of GRPa for these large networks. The column
generation approach requires more CPU time for these instances: a single run takes from 8
to 47 minutes for the examples #1 to #10.
We now would like to go further and combine our heuristic approaches with IGP-WO.
From the observations in Tables [1-4], we see that there is still some margin to converge the
normalized cost results of Opt, e.g. for the instances #7 - #10 in Table 1 and the instances
#8 - #10 in Table 4. To capture this gap we would like to perform further experiments with
IGP-WO using Ωa and Ωp. By default IGP-WO initializes tabu search with random weights.
Instead of this approach, we start the neighborhood search with Ω.
To maintain consistency, we have made the experiments in TOTEM v2.4 with the fol-
lowing fixed parameters for all the instances:
• Iteration number: 100
• Neighborhood sampling rate: 20%
• Weight range: [1, 20]
The columns that are shown in Tables [5-8] represent the following. Bold entries show
superiority of our results.
• IGP-WO: Tabu search results initialized with random weights
• IGP-WO + CG: Tabu search results initialized with Ωp
• IGP-WO + DV: Tabu search results initialized with Ωa
17
Table 5: Tabu Search Results for 2-Level Hierarchical Graph with 50 nodes and 148 arcsMaximum Utilization Normalized Cost
IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO# + CG + DV + CG + DV7 0.76 0.70 0.87 0.12 0.12 0.128 0.89 0.88 0.87 0.13 0.13 0.149 0.89 0.89 0.96 0.15 0.15 0.17
10 0.99 0.99 1.02 0.19 0.19 0.22
Table 6: Tabu Search Results for 2-Level Hierarchical Graph with 50 nodes and 212 arcsMaximum Utilization Normalized Cost
IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO# + CG + DV + CG + DV7 0.71 0.71 0.89 0.11 0.11 0.128 0.78 0.78 0.89 0.12 0.12 0.139 0.89 0.89 1.00 0.14 0.14 0.19
10 0.91 0.91 1.05 0.16 0.16 0.32
Table 7: Tabu Search Results for 2-Level Hierarchical Graph with 100 nodes and 280 arcsMaximum Utilization Normalized Cost
IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO# + CG + DV + CG + DV7 0.78 0.78 0.78 0.11 0.11 0.118 0.89 0.89 0.89 0.12 0.12 0.139 1.00 1.00 1.00 0.14 0.14 0.15
10 1.11 1.11 1.11 0.30 0.30 0.33
Table 8: Tabu Search Results for 2-Level Hierarchical Graph with 100 nodes and 360 arcsMaximum Utilization Normalized Cost
IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO IGP-WO# + CG + DV + CG + DV8 0.85 0.88 1.00 0.12 0.12 0.179 0.99 0.97 1.10 0.14 0.15 0.27
10 1.06 1.03 1.09 0.20 0.21 0.39
18
As observed from Tables [5-8], when IGP-WO is initialized with Ωa or Ωp, normalized
cost and maximum utilization values converge to the lower bound better and faster than
IGP-WO alone, even for a relatively small number of iteration. Note that the results of
IGP-WO in Tables [1-4] are obtained with 5000 iterations, whereas the experiments shown
in tables [5-8] are the results of only 100 iterations. This is a substantial gain in terms of
solutions attained as well as the running time needed.
In addition to these improvements we are still interested to know how far we can go with
the hybrid approach. We know that in order to obtain “good” solutions with this stochastic
search, an experiment must be made with at least 3000 iterations (Fortz and Thorup 2000).
Thus, we perform one more experiment with 3000 iterations for the example that has the
highest gap, i.e. #10 of the 100-node network 360-arc network presented in Table 8. We
initialize this example with Ωp. As a consequence of this experience, we still get highly
improved results: 0.19 for normalized cost and 1.03 for maximum link utilization.
6. Conclusion
In this study, we bring some promising solutions to the IGP weight optimization problem.
We introduce an open source Traffic Engineering Toolbox, i.e. TOTEM, that embodies a set
of TE tools including an intra-domain IP metric optimizer, called IGP-WO. IGP-WO can
be used as an offline link metric optimization tool by intra-domain network administrators.
Additionally, we present two heuristic methods for the same problem. We use the Minimum
Cost Network Flow Problem as a lower bound and a base for our heuristics. We formulate
the MCNFP as arc-based and path-based models and use the corresponding dual variables as
heuristic weights for IGP routing. We demonstrate that both 50-node and 100-node 2-level
hierarchical networks can support up to ten times more traffic when heuristic weights are
used.
We perform further experiments by combining our heuristics with the IGP weight op-
timizer of TOTEM, i.e. IGP-WO. In this hybrid approach we intialize IGP-WO with our
heuristic weights. We show that we are able to get even better results with a substantial
gain in CPU time, i.e. 50 times less number of iterations.
Improvement of these results and obtaining a robust solution that suits a wider span of
topologies are considered as future work of this study. Further methods can be sought on
how to minimize the number of weight changes of the initial set. Moreover, router and link
19
failure scenarios can be incorporated in order to represent more realistic situations in inter-
networks. Demand uncertainty is a further stochastic extension that could be considered for
application within TOTEM (IGP-WO). This topic has been recently studied by Altın et al.
(2007), where the authors use two uncertainty models, i.e. Hose model and Bertsimas-Sim
model, to define traffic uncertainty. We also plan to improve the path-based formulation
by adding cuts valid for the equal-cost multipath constraint of IGP routing. This approach
would hopefully generate better lower bounds.
Acknowledgments
This work has been partially supported by the Walloon Region (DGTRE) in the framework
of the TOTEM project and the Communaute francaise de Belgique - Actions de Recherche
Concertees (ARC).
References
Ahuja, R.K., T.L. Magnanti, J.B. Orlin, 1993. Network Flows: Theory, Algorithms and
Applications, Prentice-Hall. Englewood Cliffs, NJ.
Altın, A., P. Belotti, M. C. Pınar, 2007. OSPF Routing with Optimal Oblivious Performance
Ratio under Polyhedral Demand Uncertainty. Proceedings of International Network Op-
timization Conference (INOC 2007), Spa, Belgium.
Balon S., S. Cerav-Erbas, O. Delcourt, J. Lepropre, G. Monfort, B. Quoitin, F. Skivee, H.
Umit, 2007. TOTEM 2.4 - User Guide.
http://totem.run.montefiore.ulg.ac.be/documentation.html/.
Balon, S., G. Leduc, 2006. Dividing the Traffic Matrix to Approach Optimal Traffic En-
gineering. Proceedings of 14th IEEE International Conference on Networks September
2006, IEEE Xplore, Singapore.
Ben-Ameur, W., E. Gourdin, 2003. Internet Routing and Related Topology Issues. SIAM
Journal on Discrete Mathematics 17 18-49.
Bley, A., 2005. Finding Small Administrative Lengths for Shortest Path Routing. Proceed-
ings of International Network Optimization Conference (INOC 2005) 121-128, Lisbon,
Portugal.
20
Buriol, L.S., M.G.C. Resende, C.C. Ribeiro, M. Thorup, 2005. A Hybrid Genetic Algorithm
for the Weight Setting Problem in OSPF/IS-IS Routing. Networks 46(1) 36-56.
Cisco, 1997. Configuring OSPF, http://www.cisco.com.
Dijkstra, E.W., 1959. A Note on Two Problems in Connexion with Graphs. Numerische
Mathematik 1 269-271.
Ericsson, M., M.G.C. Resende, P. M. Pardalos, 2002. A Genetic Algorithm for the Weight
Setting Problem in OSPF Routing. J. Combinatorial Optimization 6 299-333.
Fortz, B., M. Thorup, 2000. Internet Traffic Engineering by Optimizing OSPF Weights.
Proc. 19th IEEE Conf. on Computer Communications (INFOCOM) 519-528.
Fortz, B., M. Thorup, 2002. Optimizing OSPF/IS-IS Weights in a Changing World. IEEE
Journal on Selected Areas in Communications 20(4) 756-767.
Glover, F., M. Laguna, 1997. Tabu Search. Kluwer Academic Publisher.
Java Native Interface (JNI), 1997. http://java.sun.com/j2se/1.4.2/docs/guide/jni/.
Java Universal Network/Graph Framework (JUNG). http://jung.sourceforge.net/.
Leduc, G., H. Abrahamsson, S. Balon, S. Bessler, M. D’Arienzo, O. Delcourt, J. Domingo-
Pascual, S. Cerav-Erbas, I. Gojmerac, X. Masip, A. Pescape, B. Quoitin, S.P. Romano,
E. Salvadori, F. Skivee, H.T. Tran, S. Uhlig, H. Umit, 2006. An Open Source Traffic
Engineering Toolbox. Computer Communications 29(5) 593-610.
Moy, J., 1998. OSPF Version 2 RFC 2328. Internet RFC/STD/FYI/BCP Archives.
http://www.ietf.org/rfc/rfc2328.txt.
Pioro, M., A. Szentesi, J. Harmatos, A. Juttner, P. Gajowniczek, S. Kozdrowski, 2002.
On Open Shortest Path First Related Network Optimization Problems. Performance
Evaluation 48 201-223.
Quoitin, B., 2007. C-BGP, An Efficient BGP Simulator, http://cbgp.info.ucl.ac.be/.
Ramalingam, G., T. Reps, 1996. An Incremental Algorithm for a Generalization of the
Shortest-Path Problem. Journal of Algorithms 21(2) 267-305.
TOTEM Toolbox v2.4, 2007. http://totem.run.montefiore.ulg.ac.be/.
Van Mieghem, P., H. De Neve, F.A. Kuipers, 2001. Hop-by-hop Quality of Service Routing.
Computer Networks 37(3-4) 407-43.
Van Mieghem, P., F.A. Kuipers, 2004. Concepts of Exact Quality of Service Algorithms.
21
IEEE/ACM Transaction on Networking .
XML Schema, 2004. http://www.w3.org/XML/Schema.html.
XPress-MP, 2007. http://www.dashoptimization.com.
Wang, Y., Z. Wang, L. Zhang, 2001. Internet Traffic Engineering without Full Mesh Over-
laying. Proc. of INFOCOM April 2001.
22