Professional Documents
Culture Documents
qQ:sq=i
v
q
b
i
i V,
qQ:dq=i
v
q
b
i
i V }.
Gupta et al. [13] study a particular case of this problem where
the capacity must be installed so that the edges with nonzero
capacity form a spanning tree of the original network topology.
They prove that this version of the problem can be solved
in polynomial time and propose an algorithm to solve the
problem (see also [14, 15]).
Ben Ameur and Kerivin [16] propose an uncertainty model
where the set S of trafc matrices is a non-empty, bounded
polyhedron in |Q| dimensions (|Q| is the number of trafc de-
mands) dened by a set of linear inequalities. This polyhedral
uncertainty model encloses the hose model as a special case.
This leads to a semi-innite linear programming (LP) problem,
an optimization problem with nitely many variables and
innitely many constraints: given that there is one constraint
for each trafc matrix, which in turn is a point of a non-empty,
bounded polyhedron, the number of constraints is innite.
Rather than solving the semi-innite LP explicitly, they
describe an iterative method that considers an initial set
of demands. At each step, after solving the current LP, a
separation problem is solved to generate a trafc demand that
cannot be routed. This demand is used to increase the total
capacity, and the algorithm continues until separation gives
no new violated demands, proving that all demands in the
polyhedron are satised.
Ben Tal and Nemirovski [17] introduce a class of robust
optimization problems where the uncertainty set is identied
3
by a vector of mean values and a covariance matrix, which
dene a condence ellipsoid that includes a safe portion
of all vectors of uncertain parameters. Optimizing over this
uncertain set amounts to solving a second order conic opti-
mization problem [18]. Although more difcult than Linear
Programming problems, second order conic problems are
convex optimization problems and therefore admit an efcient
solution method.
Bertsimas and Sim [19] introduce an uncertainty model
where all parameters are allowed to take on a lower or an upper
value, while imposing a maximum number K of demands that
are at the upper value simultaneously. This is a compact yet
meaningful way to express a large uncertainty set.
Belotti et al. [20] deal with a network design problem using
the aforementioned uncertainty set in the very special case
where K = 1. At any point in time, all demands are at their
lower value except for one, which is at its upper value. As a
consequence, the maximum total trafc on each link is equal
to the sum of all lower values plus the peak volume of the
largest demand routed on that link. Riis et al. [21] discuss
another application of robust optimization to network design.
D. Robust network design
As anticipated above, the problem at hand asks to dimension
the capacity at each node of G. Each node has to be equipped
with a set of ports, corresponding to interfaces of a network
node with the incident links. A port is capable of routing trafc
to and from that node, and its capacity denes the maximum
trafc in either direction. For example, if a 10 Gbps port is
installed on node i as an interface for link ij, that port will
be able to handle at most 10 Gbps trafc from i to j and 10
Gbps in the opposite direction. Hence, for a trafc of 10 Gbps
i j and 7 Gbps j i there will have to be ports on both
i and j capable of 10 Gbps.
When installing capacity on OTN switches, each demand
is associated with a port and shares the port with no other
demand (see Section II). Hence, we do not need to take into
account demand uncertainty: each demand can be assumed to
be at its maximum value, and therefore trafc uncertainty has
little or no impact on OTN-only network design.
On MPLS links, however, statistical multiplexing substan-
tially reduces the amount of capacity to install. Because more
than one trafc demand is routed on a port, the amount of
capacity to be allocated on each link strongly depends on the
variability of the demand and on the uncertainty model. Hence,
MPLS links are best suited to route uncertain demands as long
as the demands dynamic values can be exploited to reduce
the total trafc w.r.t. the total trafc routed on OTN links, on
which demands are assumed to be xed at their peak value.
We use the uncertainty model of Bertsimas and Sim [19] to
describe the set of trafc matrices. For every q Q we are
given an average demand volume v
avg
q
and a peak volume,
v
peak
q
. Every link (i, j) is used by a set Q
ij
of demands,
of which at most K
ij
can be at their peak value while the
remaining are at average value.
The parameters v
avg
q
, v
peak
q
, and K
ij
are input to our problem
and can be estimated by the network planner based on network
measurements. The accurate estimate of the trafc demands
variability, which is crucial to a correct outcome of the network
planning process, is difcult and has been the subject of
extensive researchsee e.g. the Rocketfuel project [22]. We
assume these parameters to be an input to our problem, and
are likely to be the result of another, equally complex (if not
more complex) analysis task.
The choice of uncertainty model is critical in the design
problem we describe. We have chosen Bertsimas and Sims
model because we make no assumption regarding the trafc
matrix in our experiments, and because one parameter, K
ij
,
allows us to simplify the comparison of different technologies.
The optimization model we propose, nevertheless, admits
a straightforward extension to other uncertainty models as
general as those explained by Ben Ameur and Kerivin [16].
The capacity allocation on all nodes is determined by the
total trafc on the incident links. Consider the set Q
ij
of
demands routed on link ij. Denote as
Q
ij
the subset of the
largest K
ij
demands in Q
ij
, or Q
ij
itself if |Q
ij
| K
ij
. In
order to route all trafc matrices in S, the capacity on ij must
be at least the maximum trafc allowed by S on ij, or
q
Qij
v
peak
q
+
qQij\
Qij
v
avg
q
,
which is the worst-case total trafc among all subsets of trafc
demands routed on ij.
For simplicity, let us assume that uncertainty affects all links
equally, and use a single value K for all K
ij
. Throughout the
paper and in the experiments, we use relatively small values
of K ranging from 1 to 32. We provide in Section III-B an
explanation as to why these small values can tackle realistic
uncertain demands.
E. Sample Network and Trafc
In order to assess the validity and practicality of our
approach, we have created a sample network that closely re-
sembles, in size and demand distribution, a modern backbone
network. The nodes of this network are subdivided into core
nodes and edge nodes. There are 127 nodes in total: 20 core
nodes and 107 edge nodes. Each edge node is connected to
one core node (called its home node) through an edge link,
while each core node is incident to one or more core links.
Figure 1 shows a small sample network with some core and
edge nodes and links.
For all trafc demands, both source and destination are edge
nodes. The routing path of each trafc demand will therefore
contain: one edge link from the source to its home core node;
zero or more core links (zero if the source and the destination
nodes have the same home core node), and an edge link to
the destination node.
We focus on the problem of allocating capacity on core
nodes only, and ignore the capacity to be installed on edge
links and nodes. As will follow from the discussion over
technologies below, the problem of allocating capacity on
edge links admits only one solution and hence is trivial.
Consequently, demands whose source and destination nodes
have the same home core node are ignored in this work.
4
Edge node
Edge link
Core node
Core link
Fig. 1. A two-level network topology.
There are 39 core links, hence there are 146 links in total
(the network has 107 additional edge links, connecting each
edge node with its home core node). Normally, optimization
models on such a large network can be prohibitive, but, since
we can ignore capacity allocation on edge links, we are solving
a problem on a topology of 20 nodes and 39 edges.
The average trafc demands v
avg
q
have been selected by
combining real trafc data from mid-size networks, hence it
represents well the type of trafc that is routed on a network
of this type. There are 4451 trafc demands. The peak value is
assumed, only for our experiments, to be v
peak
q
= v
avg
q
, where
is a constant. Figure 2 shows a distribution of the average
trafc volume of the matrix we have used.
The trafc characteristics used in the model were inu-
enced from different trafc proles from various large service
provider (SP) networks. The traditional SPs have a top heavy
core where 10% of the largest demands occupies about 85% of
the network capacity. On the other hand, cable operators tend
to have atter characteristics with 20% of the largest demands
occupying about 40% of the network trafc. For the purposes
of our model we have the following trafc proles (which
were top heavy but at the same time applicable for different
service providers):
top 10% of demands holds 58% of total trafc;
bottom 40% of demands holds 8% of total trafc;
the total demand is 8 Tbps.
It is worth noting that, although we are interested in the
capacity allocation on core nodes and links, we still consider a
set of 4451 demands and do not group them in macro-demands
dened by a source core node and a destination core node.
This would signicantly reduce the size of the problem, but
would also restrict the set of feasible solutions and therefore
potentially increase the network cost. In fact, consider two
demands q
and q
and q
jV :(i,j)E
max{n
odu
ij
, n
odu
ji
}.
In the MPLS case, the capacity depends on the average
and peak values of the demands. We assume that only 10
Gbps ports are available at the MPLS level, and compute the
number of such ports based on the set of demands routed
on link ij in the direction i j, denoted Q
ij
, and in the
opposite direction, denoted Q
ji
. We recall that these subsets
of demands are known in advance. The total MPLS trafc on
a link ij under our uncertainty scenario has been described in
Section I-D, and we report the number of 10 Gbps ports:
n
mpls
ij
=
_
1
10
_
q
Qij
v
peak
q
+
qQij\
Qij
v
avg
q
__
.
The bypass case is slightly more complex: the incoming
and outgoing trafc at each node i are sent onto the network
through an MPLS router that allows statistical multiplexing.
That trafc is then forwarded on the network by means of OTN
switches. At each node, transiting trafc is handled by OTN
switches only, while incoming and outgoing trafc traverses
MPLS routers. Suppose Q
src
i
is the set of demands with origin
i, and Q
dst
i
the set of demands with destination i. Denote as
Q
src
i
the set of K largest demands among
Q
src
i
, or Q
src
i
itself
if |Q
src
i
| K, and analogously dene
Q
dst
i
. The total capacity
7
to be installed is the number of ports for the local trafc
n
byp,local
i
=
_
1
10
max
_
q
Q
src
i
v
peak
q
+
qQ
src
i
\
Q
src
i
v
avg
q
,
q
Q
dst
i
v
peak
q
+
qQ
dst
i
\
Q
dst
i
v
avg
q
__
,
which has to be considered both at the MPLS layer and at the
OTN layer (i.e., the cost of each such port will be that of an
OTN port plus an MPLS port) plus the number of OTN ports
for the transit trafc, n
byp,tr
ij
. This, in turn, is the total, among
all adjacent nodes j, of the ports to be installed at node i
for trafc owing on link ij in both directions. Let us denote
Q
tr
ij
the set of trafc demands routed on ij from i to j not
originating in i, and
Q
tr
ij
Q
tr
ij
a subset containing the K
largest demands (or, again, Q
tr
ij
itself if |Q
tr
ij
| K). Denote
Q
tr
ji
the set of trafc demands routed on ji from j to i not
ending in i, and dene
Q
tr
ji
analogously. Then
n
byp,tr
ij
=
_
1
10
max
_
q
Q
tr
ij
v
peak
q
+
qQ
tr
ij
\
Q
tr
ij
v
avg
q
,
q
Q
tr
ji
v
peak
q
+
qQ
tr
ji
\
Q
tr
ji
v
avg
q
__
.
In summary, in the OTN-only, bypass, and the MPLS-only
scenarios the capacity allocation can be carried out by a simple
procedure which does not require solving an optimization
problem. Relatively small optimization problems have to be
solved for the allocation of demands to the single OTU0 links.
One such problem must be solved per link in order to compute
the total capacity on that link.
III. OPTIMIZATION MODELS FOR COMBINED MPLS-OTN
SOLUTIONS
In order to cut costs even more, one could think of building
a network with both MPLS and OTN ports that can route
all trafc matrices in the uncertainty set. Hence, the network
admits both MPLS routers and OTN switches at the same
hierarchy, and the problem is that of determining the number
of MPLS and OTN ports for all nodes of the network.
Because we are dropping the restriction to use only one
technology, the resulting network, excluding additional costs
to interface, if necessary, MPLS routers to OTN switches, will
be less expensive than both the OTN-only and the MPLS-
only network. The question is then how much cheaper this
combined network would be.
This network optimization problem can be shown to be NP-
hard, i.e., it is very unlikely that there be an algorithm that
solves it in a number of elementary steps that is polynomial
in the size of the problem (number of nodes and links of G).
The proof of NP-hardness is by reduction from the Subset
Sum problem [24]: consider a set S and a function c : S R.
Dene c(S
) =
iS
c(i) for any S
hH
f
odu
qh
= 1 q Q, (1)
which forces exactly one of these variables to one and the
remaining to zero. There are |Q|(H + 2) such variables.
We also dene a set of integer variables for the ports on
the OTN layer: x
otn
ij,t
is the number of OTN ports on link ij
(i.e., installed at i and j), where t indexes the capacity vector
c
otn
= (1.25, 2.5, 10). Also, we dene binary variables x
odu
ij,h
,
which are one if 1.25 Gbps ODU0 ports are required to support
the combination of ports in h for aggregated demands. Finally,
the integer variable x
mpls
ij
is the number of 10 Gbps MPLS ports
allocated on link ij.
These variables are related to ow variables through the
capacity constraints. At the OTN layer, we need one OTN port
of capacity 1.25 Gbps on link ij for each demand q routed
on ij whose peak value is at most 1.25 Gbps and such that
f
otn
q
= 1. Similarly, we need one 2.5 Gbps OTN port on link
ij for each demand q routed on ij whose peak value is strictly
greater than 1.25 Gbps and not larger than 2.5 Gbps, and such
that f
otn
q
= 1, and similar considerations apply to 10 Gbps
8
OTN ports. We model this with the constraint
x
otn
ij,t
q Q : ij pq
c
otn
t1
< vq c
otn
t
f
otn
q
ij E, t {1, 2, 3}, (2)
where c
otn
0
= 0. The capacity constraint for ODU ports requires
that a port be present if there is nonzero trafc on it:
1.25 x
odu
ij,h
qQ:ijpq
v
peak
q
f
odu
qh
h = 1, 2 . . . , H, ij E.
(3)
Finally, the capacity on each link of the MPLS layer is dened
as follows:
10 x
mpls
ij
qQ
v
avg
q
f
mpls
q
+z
ij
ij E, (4)
where z
ij
is a variable describing the peak ow, and is
dened by a special port capacity constraint. Let us dene
the peak-average demand difference as
q
= v
peak
q
v
avg
q
.
Then the peak ow is given by the optimal solution value of
another optimization model which yields the worst-case (i.e.,
maximum) trafc on ij as a function of the set of demands
routed at the MPLS layer of ij:
ij E z
ij
max
q
Q:ijpq
q
f
mpls
q
s.t.
Q Q
|
Q| K.
(5)
Given that only a subset of demands of cardinality K is al-
lowed to have peak value, the right-hand side of this constraint
can be rewritten as
max
qQ:ijpq
q
f
mpls
q
q
s.t.
q
K
q
{0, 1}q Q,
which is an optimization model on binary variables
q
dening
the set of demands at peak value. In order to evaluate constraint
(5) one has to solve, for each link ij, a maximization problem
in variables
q
where f
mpls
q
are taken as parameters.
Another class of variables represents the number of links
needed at all nodes, which constitutes the ultimate decision
variable on which the total network cost is computed. We
dene the variables y
otn
ij
as the number of 10 Gbps links to
be installed on both ends of link ij at the OTN layer. The
constraints relating link variables to port variables are easily
dened, for each ij E, as follows (note that OTN links must
accommodate OTN and ODU ports):
t{1,2,3}
c
otn
t
x
otn
ij,t
+ 1.25
H
h=1
x
odu
ij,h
10 y
otn
ij
ij E. (6)
Each 10 Gbps OTN link must be assigned a set of whole
OTN ports, i.e. trafc on an OTN port cannot be shared
between two OTN links. In general, a more complicated set
of constraints, resembling the bin packing set of constraints
for ODU port/ow capacity, would be necessary. However, the
link capacity, 10 Gbps, is a multiple of the largest OTN port
capacity, and each OTN port capacity c
otn
t
is a multiple of the
preceding OTN port capacity, c
otn
t1
, thus resulting in another
bin packing problem that is implicitly solved in (6).
This set of variables and constraints is only dened at the
OTN layer, as the number of MPLS links is equal to that of
MPLS ports x
mpls
ij
, hence no additional variable is needed.
Let us assume that the cost of a single link is g
otn
at the OTN
layer and g
mpls
at the MPLS layer. It is realistic to assume that
g
mpls
= g
otn
with 1, i.e. the cost of MPLS links is greater
than that of OTN links. We have set = 1.3 in most of our
experiments, which reects a cost differential that seems more
realistic for the kind of functionality required, at the MPLS
level, from this type of network. This introduces a trade off
between the cheaper (but under-utilized) OTN links and the
more expensive MPLS links, which use statistical multiplexing
and can hence make a better use of the total capacity. The
objective function is the total core network cost, i.e., the total
OTN link cost plus the total MPLS link cost
2
ijE
(g
otn
y
otn
ij
+g
mpls
x
mpls
ij
), (7)
where all quantities are multiplied by two because the number
of ports on link ij is installed at both end nodes i and j.
To recap, the problem P of determining the minimum cost
capacity on the nodes of G to route all demands in the
uncertainty set S requires to minimize the objective function
(7) subject to constraints (1,2,3,4,5,6). This is a nonlinear
integer optimization problem, the only nonlinear constraint
being (5).
A. Robust optimization: an opponents view
Problems like P are in general classied as bilevel program-
ming problems as the evaluation of a constraint is associated
with solving another optimization problem [26]. Our model is
representative of a smaller class of bilevel programming, that
of robust optimization. The key component is the right-hand
side of constraint (5), which, as said before, is evaluated by
solving a linear optimization problem. The interpretation of
this inner optimization problem is functional to understanding
the advantages and the meaning of robust optimization.
Let us suppose an external player (such as nature, competi-
tors, or customers) is given the solution to our optimization
model (1,2,3,4,5,6,7) (i.e., the decisions on the layer on which
every demand is routed) and has the intent of maximizing
the nuisance on the network we have designed. This external
player, which is in practice our opponent, has the control over
the uncertainty set, i.e., decides which demands in a subset of
cardinality K are at their peak value. The opponent will then
determine a subset of demands that maximizes the load on the
installed capacity. In order to anticipate the opponents move,
we must implicitly solve the optimization model.
We begin by relaxing integrality over variables
q
and
constrain them in the interval [0, 1] rather than in the non-
convex set {0, 1}. This is a relaxation of the above problem
in that all solutions that are feasible for the initial problem
are also feasible when requiring that
q
be continuous. Also,
because the coefcient matrix of the problem (5) is totally
unimodular, any optimal solution of the relaxed problem is
optimal for the original problem as well [25].
Now the maximization problem on the right-hand side of
constraint (5) is a Linear Programming (LP) problem, which
9
is much easier to handle for our purposes. We rewrite it here
for the sake of clarity:
P
ij
: max
qQ:ijpq
q
f
q
q
s.t.
q
K
0
q
1 q Q.
In order to get rid of the maximization sign, we use weak
duality and apply a well known procedure in robust optimiza-
tion [27]. Any LP problem max{c
x : Ax b}, with an
n-vector of variables x R
n
and m constraints, with c Q
n
,
A Q
mn
, and b Q
m
, admits a dual LP problem
min{u
b : u
A = b, u 0}
with a vector u R
m
of variables. Weak duality dictates that
for any vector x satisfying Ax b and for any non-negative
vector u satisfying u
A = b, we have [28]
u
b c
x.
As a consequence, u
A = b, u
0 to the original problem allows us to implicitly solve the
maximization problem in (5) and obtain an upper bound on the
total trafc on link ij. It also yields a set of linear constraints,
thus eliminating the nonlinearity introduced by the max sign.
Consider each link ij E and the associated problem P
ij
.
Denote
ij
the dual variable of constraint
qQ
q
K and
q
ij
the dual variable of the upper bounding constraint for
q
.
Then the dual of problem P
ij
is the minimization problem
D
ij
: min K
ij
+
q
ij
s.t.
ij
+
q
ij
q
f
q
ij E, q Q
ij
0 ij E
q
ij
0 ij E, q Q.
This yields a model where constraints (5) are replaced by the
following sets of constraints:
z
ij
K
ij
+
q
ij
ij E
ij
+
q
ij
q
f
q
ij E, q Q
ij
0 ij E
q
ij
0 ij E, q Q.
Thus, we replace the set of |E| nonlinear constraints by
introducing |Q||E| +|E| new variables and |E| +|Q||E| con-
straints. Although this increases the model size substantially,
eliminating the nonlinear constraint (5) reduces the problem
to an Integer Linear Programming (ILP) problem, thus more
tractable. Also, it can be shown that only a small subset of
these constraints are necessary, by replacing Q with Q
ij
in
the above models P
ij
and D
ij
. We omit the details for the
sake of conciseness, but we did implement this reduction in
our experiments.
As an interpretation of this procedure, consider the initial
problem and remove the max term in constraint (5), and
suppose that
q
instead are variables of P. This would mean
that we, not the opponent, control
q
. Then we no longer
have to explicitly solve an optimization model, and can decide
which demands assume peak value. Solving such a (nonlinear)
problem yields an unrealistic best-case solution, in which the
most optimistic set of demands assume peak value: the empty
set. In fact, it is easy to prove that any optimal solution of such
a problem would have all
q
set to zero, therefore obtaining
a null value of z
ij
, which corresponds to a no-peak scenario.
Because we use the dual of this problem, by eliminating
the minimization sign we still impose the dual constraints,
thus forcing the variables
q
ij
and
ij
to be dual-feasible. This
in turn ensures that, for any feasible solution of the overall
problem, the right-hand side of constraint (5) is an estimate
from above of the maximum capacity allocation, hence forcing
z
ij
to a value that is no smaller than the optimal solution of
problem P
ij
. This yields a safe estimate (from above) of the
total peak trafc on link ij. Eliminating the minimization sign
puts the dual variables
q
ij
and
ij
in our control, albeit forcing
them to model a worst-case scenario.
B. Statistical multiplexing and robust allocation
The fundamental assumption of the model outlined above
is that the uncertainty in the trafc demand can be dealt with
by allocating capacity to accommodate a set of demands at
their average value plus a worst-case extra capacity dened by
the largest K demands. Given that this worst-case total trafc
is computed independently at every link, the total capacity
allocated on the network may be overly conservative even
for small values of K. This suggests that an appropriate
value of K is not easy to nd. As discussed above, the
availability of statistical data for trafc matrices may provide
more information, though it would be difcult to incorporate
it in an optimization model as simple as the one described.
Let us consider, in the remainder of this section, a different
problem: how does a value of K compare to a random
set of demands at their peak values? In other words, for a
capacity allocation that includes extra ports for supporting the
largest K peaks, can we estimate the number T of demands
that, on average, will be satised by the resulting capacity
allocation? Note the contrast between K and T: while the
former determines the set of largest demands routed on a
link, the latter is the expected number of demands, randomly
selected from Q, that can have peak value and still are routed
on every link.
Suppose that each demand can take its peak value with
equal probability, that is, each demand has probability T/|Q|
of being at peak value. The total extra capacity can be
computed as the expected value of the extra demand using
the uniform distribution p
q
= T/|Q| for all q Q, and is
D =
q
T
|Q|
. In order to compare D with the worst-case
amount of extra capacity to install, we must have
q
T
|Q|
=
q
Q
q
,
where
Q is the set of K largest demands. An estimate of T
is therefore
T =
|Q|
q
Q
q
.
Suppose now that the probability that a demand is at peak
value grows with the demand volume, and let us denote this
10
probability distribution as progressive. In particular, assume
w.l.o.g. that v
avg
1
v
avg
2
... v
avg
|Q|
. Suppose, furthermore,
that the probability p
q
that a demand q Q be at its peak
value is proportional to its index q, i.e. p
q
= q, where is
such that the expected number of demands at peak values is
T, i.e.
qQ
q = T and hence
=
T
qQ
q
=
2T
|Q|(|Q| + 1)
.
Again, we obtain T as a function of K by solving the equation
qQ
p
q
q
=
q
Q
q
,
which yields
T =
|Q|(|Q| + 1)
q
Q
q
2
q
.
The following table provides values of T for small values of
K for both the uniform and the progressive case using demand
data from the instance we have used.
K 1 2 4 8 16 32
T (unif.) 160 210 300 446 642 895
T (prog.) 96 126 180 268 385 587
When allocating capacity, the worst-case scenario, even for
small values of K, can cover a number of demands at their
peak value on a single link ij that is much larger than K, and
that can be up to one fth of |Q|, for K = 32 in the uniform
case. This table would clearly look different if the demand
distribution were different: the instance we have chosen has
a number of very large demands, while the volume is slowly
degrading for the smaller ones.
In practice, the number of simultaneous peaks in a real
network would likely be up to 10. However, for the purpose
of meaningful analysis, we have considered K up to 32 peaks.
Note that a larger K means that more bandwidth needs to be
provisioned in an MPLS network and thus a higher cost.
IV. COMPUTATIONAL RESULTS
We present below the results of a set of experiments
conducted on the robust optimization models described in this
paper. The main purposes of these experiments are:
1) to assess the utility of the proposed robust optimization
models as a means to obtain networks that are resilient
to at most K simultaneous peaks;
2) to compare networking technologies in terms of total
network costs; and
3) to quantify the dependence of the network cost on the
number K of simultaneous peaks allowed;
K takes values in the set {1, 2, 4, 8, 16, 32}. These values are
only apparently small in comparison with |Q| = 4451: apart
from the reasons pointed out in the previous section, we also
have observed, in preliminary tests, that a further increase of
K does not change the results signicantly: in several cases,
increasing K from 32 to 64 yields an increase of 1% or less
on the network cost, while changing K from 1 to 2 leads to
a steeper increase. Furthermore, numerous other experiments
have been conducted previously with smaller values of K, and
in practice even 32 is considered very conservative.
As we assume that the ratio between peak and average
volume is a constant 1, i.e., v
peak
q
= v
avg
q
q Q,
all trafc matrices are described by the set
S = {v
avg
q
(1 + ( 1)
q
), q Q :
q
K,
q
{0, 1}q Q}.
This denition of uncertainty is uniquely determined by
and K. Wrapping the denition of uncertainty around just
two parameters may seem too simplistic, but this allows us
to formulate a compact optimization model for the capacity
allocation problem. In order to accurately describe the real
uncertainty set, appropriate values of K and are necessary.
It is barely worth noting here that the larger K and , the more
conservative the result, i.e., the more expensive the network:
for very large K, we are allowing many trafc demands to
be at their peak value, therefore increasing the potential total
trafc on each link. If K = |Q|, the uncertainty set can
actually be reduced to a single point, as S is dominated by
a single trafc matrix: one in which all demands are at their
peak value (for a detailed description of dominance in trafc
demands, see [29]). The opposite case is one in which K = 0
(or equivalently = 1), where S is given by the trafc matrix
in which all trafc demands are equal to their average value.
A. Implementation details
We have implemented our optimization models using the
AMPL modeling language [30], and solved them with the
Gurobi Mixed Integer Linear Programming solver
1
, a state-of-
the-art commercial solver which implements a parallel branch-
and-bound algorithm. All experiments were conducted on a
Linux 64 bit machine with four processors, which are used
in parallel by the branch-and-bound algorithm, i.e., when the
branch-and-bound solver is operative, at most four branch-and-
bound nodes are solved simultaneously. All solver parameters
were set to their default value.
Integer Linear Programming problems are difcult, and
no polynomial-time solver is known for them [25]. As a
consequence, if the time allowed is limited, ILP solvers can
solve to optimality i.e., provide a solution with cost z
opt
and
a proof that it is optimal only instances of a certain size.
If the time allotted to search for an optimal solution is
scarce, ILP solvers attempt to provide a feasible, sub-optimal
solution, with cost z
feas
z
opt
, and are always able to provide
a lower bound z
lb
z
opt
of the optimal solution. Depending
on the quality of the solver, the optimality gap
zfeaszlb
zlb
(which
is zero when an optimal solution is found) provides a measure
of the quality of the solution found. In all our experiments, we
have imposed a time limit of two hours to all ILP instances
solved, namely those for the combined MPLS+OTN network.
We have observed that in all of these tests, either an optimal
solution was found or a relatively good one was found with
an optimality gap below 1%.
1
See http://www.gurobi.com for more information.
11
B. Capacity allocation
Table I shows the results for the four technology combi-
nations considered: Bypass, Optimized MPLS+OTN, MPLS
only, and OTN only. For each value of K {1, 2, 4, 8, 16, 32}
and {1.5, 3, 4.5}, we report the network cost (7) for all
four alternatives and the corresponding number of 10 Gbps
links that need to be installed on each network. For the bypass
network, we also report the local trafc and the transit trafc
(columns 3, 4, and 5, respectively). It is evident that MPLS
links, which fully exploit statistical multiplexing, use network
resources more efciently and hence limit the increase in
network cost when the uncertainty increases (i.e. for large
values of K and ).
In Table II we provide similar results with one parameter
change: the cost ratio between OTN and MPLS is set to one,
i.e., OTN and MPLS links are assumed to have equal cost in
this case. It comes as no surprise that the tradeoff between
MPLS routers and OTN switches favors MPLS networks even
more: when MPLS links and OTN links have equal cost, a
network composed solely of MPLS links is much cheaper
than the corresponding OTN network. We omit the results for
the optimized (combined) MPLS+OTN network as they are
unnecessary in this case: the combined network has an optimal
solution equal to that of the MPLS-only network.
Bypass MPLS OTN
Links
K transit local cost cost links cost links
1.5 1 767 1750 32840 17420 1742 38460 3846
2 787 1820 33940 18100 1810
4 816 1898 35300 19040 1904
8 854 1986 36940 19740 1974
16 906 2098 39100 21060 2106
32 958 2218 41340 22060 2206
3 1 846 1996 36880 19900 1990 69340 6934
2 927 2236 40900 22260 2226
4 1048 2556 46520 25560 2556
8 1201 2930 53320 29340 2934
16 1398 3370 61660 33700 3370
32 1614 3836 70640 38300 3830
4.5 1 927 2246 41000 22380 2238 98980 9898
2 1074 2672 48200 26720 2672
4 1282 3232 57960 32320 3232
8 1549 3890 69880 38940 3894
16 1894 4646 84340 46460 4646
32 2269 5482 100200 54640 5464
TABLE II
COMPARISON OF NETWORK COSTS FOR SEVERAL TRAFFIC UNCERTAINTY
SETS, WHERE MPLS AND OTN LINKS HAVE THE SAME COST.
Finally, in Table III we summarize the previous two tables
by pointing out the percentage difference in cost obtained
when using MPLS nodes rather than OTN nodes. Note that
the the cost difference is large when =
gmpls
gotn
= 1, for
higher values of and low values of K (see e.g. the 77.3%
highlighted in the table), and viceversa the difference is
relatively small (although still more than 30%) when the cost
ratio is 1.3 and for small values of and large values of K.
C. Approximating worst-case scenarios using xed peaks
Another perspective on the robust optimization model pre-
sented above arises from considering a single scenario, albeit
OTN MPLS
K = 1 K = 2 K = 4
cost cost % cost % cost %
1.3 1.5 38460 22466 41.5 23170 39.7 23958 37.7
1.3 3 69340 24928 64.0 28784 58.4 32872 52.5
1.3 4.5 98980 29020 70.6 33424 66.2 41608 57.9
1 1.5 38460 17420 54.7 18100 52.9 19040 50.4
1 3 69340 19900 71.3 22260 67.8 25560 63.1
1 4.5 98980 22380 77.3 26720 73.0 32320 67.3
K = 8 K = 16 K = 32
cost cost % cost % cost %
1.3 1.5 38460 24396 36.5 25382 34.0 25980 32.4
1.3 3 69340 37072 46.5 41834 39.6 45984 33.6
1.3 4.5 98980 49340 50.1 58034 41.3 65848 33.4
1 1.5 38460 19740 48.6 21060 45.2 22060 42.6
1 3 69340 29340 57.6 33700 51.3 38300 44.7
1 4.5 98980 38940 60.6 46460 53.0 54640 44.7
TABLE III
COST REDUCTION OF AN MPLS NETWORK WHEN COMPARED TO AN OTN
NETWORK. NOTE THAT =
gMPLS
gOTN
.
a very conservative one: the K largest demands are set to their
peak value, while the remaining ones are at average value.
This is equivalent to restricting the uncertainty set S to
one single trafc matrix, which is very limiting from the
opponents standpoint given that many scenarios are ruled out.
The clear advantage is that robust optimization is not necessary
to model this, as the trafc matrix simply needs to be set
according to the single scenario.
Extensive tests performed for all values of K to compare
the total network cost, in both cases, indicate that assuming
a single, although pessimistic, scenario produces very cheap
networks compared to the more conservative robust optimiza-
tion model. This can be explained by projecting the K largest
demands onto their routing paths, which probably do not cover
the whole set of links E and contribute a very small increase
of capacity on each link. This heuristic method can prove very
effective in larger networks if a solution is needed in shorter
time, but clearly no guarantee is provided on all other trafc
matrices of the uncertainty set. Other realistic scenarios, where
a disjoint set of smaller demands are at their peak value, would
overload the capacity installed on those links that are not used
in the routing paths of the largest K demands.
D. Equal Cost Multi-Path (ECMP) routing
Up to this point, we have assumed that all routing paths
follow the OSPF protocol and are established as shortest paths
according to weights provided as input. In order to obtain
Tables I-III, we have performed tests with single routing paths,
i.e., we did not impose the Equal Cost Multi-Path (ECMP),
which splits part of the trafc if more than one shortest path
to destination is available.
We have also performed some tests (not reported here) by
rst imposing ECMP at the MPLS layer only and then at both
layers, to address the effects on the network cost, and we
have observed no substantial difference. The OSPF weights
provided with the instance were such that few point-to-point
demands admit more than one shortest path. More precisely,
there are 20(20 1) = 380 pairs of core nodes in the core
network. Of these, only 10 pairs admitted more than one
12
Bypass Optimized MPLS OTN
Local trafc (Mbps) Links Links
K in out transit MPLS OTN cost cost OTN MPLS cost Links cost Links
1.5 1 7248.3 7236.1 8595.9 767 1750 35141 22466 86 1662 22646 1742 38460 3846
2 7451.6 7423.2 8893.2 787 1820 36301 23170 458 1430 23530 1810
4 7738.3 7698.4 9289.9 816 1898 37748 23958 828 1206 24752 1904
8 8079.6 8077.0 9754.9 854 1986 39502 24396 994 1112 25662 1974
16 8534.0 8559.4 10295.2 906 2098 41818 25382 1038 1154 27378 2106
32 9051.8 9068.0 10894.2 958 2218 44214 25980 1116 1140 28678 2206
3 1 8037.1 7988.5 9831.1 846 1996 39418 24928 106 1836 25870 1990 69340 6934
2 8850.5 8737.0 11017.0 927 2236 43681 28784 86 2148 28938 2226
4 9997.2 9837.4 12607.5 1048 2556 49664 32872 240 2344 33228 2556
8 11362.5 11351.8 14472.7 1201 2930 56923 37072 868 2184 38142 2934
16 13179.7 13281.1 16637.3 1398 3370 65854 41834 1482 2078 43810 3370
32 15250.6 15315.4 19023.3 1614 3836 75482 45984 2482 1628 49790 3830
4.5 1 8826.0 8740.8 11067.6 927 2246 43781 29020 94 2160 29094 2238 98980 9898
2 10249.5 10050.8 13146.3 1074 2672 51422 33424 134 2468 34736 2672
4 12256.1 11976.4 15964.7 1282 3232 61806 41608 344 2936 42016 3232
8 14645.4 14626.7 19263.0 1549 3890 74527 49340 1190 2880 50622 3894
16 17825.6 18003.1 23053.9 1894 4646 90022 58034 2010 2918 60398 4646
32 21449.7 21563.1 27219.6 2269 5482 107007 65848 3470 2396 71032 5464
TABLE I
COMPARISON OF NETWORK COSTS FOR SEVERAL TRAFFIC UNCERTAINTY SETS. THE MPLS/OTN RATIO OF LINK COST IS 1.3, I.E., MPLS PORTS COST
30% MORE THAN OTN PORTS. NOTE THAT THE DATA FOR OTN NETWORKS DOES NOT DEPEND ON K.
shortest path. Because the experiments under ECMP did not
show big changes and because ECMP is outside the scope of
this work, we omit the full results.
E. Reducing the overall demand upon multiple peaks
The set S of potential trafc matrices, a crucial concept in
our model, is in general a polyhedron and can be modied if
needed. We consider an example of uncertainty set that avoids
over-conservativeness.
The model we have discussed so far assumes that at most
K demands may take on a peak value. At any moment, if
the number of demands at peak value is small compared to
K, link usage (and thus congestion) is well below the limits
determined by the network capacity. However, if close to K
demands are at peak value, congestion and capacity occupation
gures can be critical and network service might be at risk.
To prevent this risk, or to limit the increase in network cost
associated with large K, the network planner and the network
users may enter contractual agreements dictating that all net-
work users accept to reduce their demand, no matter whether
it is at peak value or not, by a given (small) percentage, which
varies with the number of current peak demands. In other
words, if, at a certain instant, few or none of the demands
are at peak value, the network functions normally and users
can communicate at the requested data rate. However, with a
growing number of peak demands, all users will transmit at
a slightly reduced rate. A reduction dened by a parameter
(typically {5%, 10%}) can be considered, and it is fully
enforced when the number of peak demands is exactly K. As
a result, total network throughput can be decreased articially
by reducing the volume of all demands, while, if all demands
are at average value, they are left unchanged.
The rationale behind this change in the uncertainty set S is
the need to reduce the cost of a network whose trafc demands
are, most of the time, all at average value. In the relatively rare
bursty periods, with K demands at peak value, it becomes
reasonable to decrease every demand for the (presumably
small) duration of the burst phase. If K
K
can be enforced.
This uncertainty set can be modeled with linear constraints.
Dene a set of binary variables
q
, for each q Q, indicating
whether demand q is at average value (
q
= 0) or peak value
(
q
= 1), and a variable Z equal to the ratio of the number of
demands at peak value to K. The uncertainty set is dened by
the set of vectors v R
|Q|
+
subject to the following constraints
(which will be replicated for all ij E):
Z =
q
/K (8)
v
q
(1 Z)v
avg
q
q Q (9)
v
q
(1 Z)v
avg
q
q Q (10)
v
q
(1 + ( 1)
q
)v
avg
q
q Q (11)
q
K (12)
q
{0, 1} q Q.
These constraints reduce to the simpler set of constraints of
the maximization model in (5) when = 0. Analogously to
the robust optimization problem discussed above, the dual of
the problem of maximizing
qQ
f
q
q
subject to the above
constraints gives a set of linear constraints that can replace the
nonlinear capacity constraint.
The continuous LP relaxation of the above problem is ob-
tained by replacing the last constraint with
q
[0, 1] q Q.
Let us use the set of dual variables
ij
,
q
ij
,
q
ij
,
q
ij
, and
ij
for
constraints (8)-(12) and
q
ij
for the upper bound constraint on
q
, i.e.,
q
1. As a consequence, in the robust optimization
model we must replace, for each ij E, the nonlinear
13
constraint (5) with the following set of constraints:
z
ij
qQ
v
avg
q
(
q
ij
+
q
ij
+
q
ij
) +K
ij
+
q
ij
ij E
ij
qQ
v
avg
q
q
ij
+
qQ
v
avg
q
q
ij
= 0 ij E
1
K
ij
+
ij
+
q
ij
v
avg
q
( 1)
q
ij
q
f
q
ij E, q Q
q
ij
+
q
ij
+
q
ij
= 0 ij E, q Q
q
ij
,
q
ij
,
q
ij
,
ij
,
q
ij
0 ij E, q Q.
Note that the larger set of constraints in problem P
ij
results
in a larger set of dual constraints and therefore a larger overall
robust optimization problem. This results in a MILP problem
that is similar in structure to that presented in Section III, but
more difcult to solve.
We have conducted some experiments using this model
as well, but only report a summary here for the sake of
conciseness. For = 0.1, i.e., an allowed reduction of 10%,
we have observed a decrease in the network cost between 13%
and 15% for the MPLS-only network, and a decrease of about
10% for the MPLS+OTN network. For = 0.05, instead, the
decrease is between 8% and 9% for the MPLS-only network
and 6% for the MPLS+OTN network.
F. Transponders and network cost
Even though we have so far considered node equipment
only, when factoring link costs in the model the comparison
becomes even more in favor of MPLS. In fact, one transponder
for each 10Gbps link has to be added to the network (see RFC
3031 [31]), both at the MPLS and at the OTN level.
Given that the cost of transponders is comparable to that
of 10 Gbps links and that there is no cost differential for
transponders used at either level, the effect will be that of a
smaller equivalent cost ratio between MPLS and OTN ports,
i.e., a smaller . As a consequence, the savings obtained from
an MPLS-only network or an optimized MPLS+OTN network
will be even larger than those discussed above.
V. CONCLUDING REMARKS
We have introduced a set of optimization models for the
allocation of capacity on networks with multiple layers. Tech-
nologies vary in cost and capability, and when more than one
are available it is difcult to choose one or a combination of
them that provides guaranteed service at a low cost.
Our models yield the most appropriate combination of
technologies and result in a network that serves multiple trafc
matrices. This class of models handles trafc uncertainty, and
computational experiments on a realistic network instance
show that they can provide a provably optimal solution in
reasonable computing times. Also, these models are able
to guarantee that all demands in a given uncertainty set,
characterized by simple parameters, are satised.
A. Open questions
There are several possible extensions to this work. First,
we have focused mostly on node equipment and considered
only node costs, but it might be of interest to investigate
further the effect of link costs on the network provisioning
process, for instance by explicitly taking transponder costs into
consideration.
Second, while OSPF weights are given as an input in our
problem, the network cost might benet from a scenario in
which the network operator that designs the network is also
allowed to set the OSPF weights. This would render the model
signicantly harder, but would also push optimization even
further. Previous attempts [32, 33] have shown that OSPF
weights have a signicant inuence on some network perfor-
mance indicators (congestion and routing cost respectively).
Third, it might be of interest to check whether relaxing
the requirement that all routing paths be shortest with respect
to OSPF weights further improves the network performance
(again, see [32]).
Partially related to this is the question whether, in networks
that have a high degree of ECMP (unlike the network in-
stance we have used), multiple shortest paths would make
a signicant difference in the network cost. In fact, in SP
networks, ECMP is very common, both for load balancing
and for resilience (if a link fails, having another path with the
same metric leads to less churn in the network). As a result,
every pair of edge routers has at least two paths, and often
many more.
Lastly, we have not considered the costs of adding fault
tolerance (or high-availability) in all models. Circuit networks
require end-to-end redundant conguration for managing fail-
ures (more than twice the cost of the non-redundant network).
MPLS networks allow for fast detection and reroute of trafc
during failure with discriminatory treatment for high priority
trafc, thus allowing for more efcient local link protection
and correspondingly lower costs.
REFERENCES
[1] D. Bienstock, S. Chopra, O. G unl uk, and C. Tsai,
Minimum cost capacity installation for multicommodity
network ows, Mathematical Programming, vol. 81, pp.
177199, 1998.
[2] L. S. Buriol, M. G. C. Resende, and M. Thorup, Surviv-
able IP network design with OSPF routing, Networks,
vol. 49, no. 1, pp. 5164, 2007.
[3] J. Kennington, E. Olinick, and G. Spiride, Basic math-
ematical programming models for capacity allocation in
mesh-based survivable networks, Omega, vol. 35, no. 6,
pp. 629644, 2007.
[4] T. Magnanti, P. Mirchandani, and R. Vachani, The
convex hull of two core capacitated network design prob-
lems, Mathematical Programming, vol. 60, pp. 233250,
1993.
[5] A. Ben-Tal, L. E. Ghaoui, and A. Nemirovski, Robust
Optimization. Princeton University Press, 2009.
[6] J. Birge and F. Louveaux, Introduction to stochastic
programming. New York: Springer Verlag, 1997.
[7] M. Dempster, E. Medova, and R. Thompson, A stochas-
tic programming approach to network planning, in the
15th International Teletrafc Congress (ITC), 1997, pp.
329339.
14
[8] A. Gaivoronski, Stochastic programming approach to
the network planning under uncertainty, in Optimization
in industry 3, A. Sciomachen, Ed. New York: John
Wiley and Sons, 1995, pp. 145163.
[9] S. Sen, R. Doverspike, and S. Cosares, Network plan-
ning with random demand, Telecommunication Systems,
vol. 3, no. 1, pp. 1130, 1994.
[10] J. Smith, A. Schaefer, and J. Yen, A stochastic integer
programming approach to solving a synchronous optical
network ring design problem, Networks, vol. 44, no. 1,
pp. 1226, 2004.
[11] S. Waller and A. Ziliaskopoulos, Stochastic dy-
namic network design problem, Transportation research
record, vol. 1771, pp. 106113, 2001.
[12] N. G. Dufeld, P. Goyal, A. Greenberg, P. Mishra, K. K.
Ramakrishnan, and J. van der Merive, A exible model
for resource management in virtual private networks,
in SIGCOMM 99: Proceedings of the conference on
Applications, technologies, architectures, and protocols
for computer communication, Cambridge, MA, 1999, pp.
95108.
[13] A. Gupta, J. Kleinberg, A. Kumar, R. Rastogi, and
B. Yener, Provisioning a virtual private network: A
network design problem for multicommodity ow, in
33rd ACM Symposium on Theory of Computing, 2001,
pp. 389398.
[14] F. Eisenbrand, F. Grandoni, F. Oriolo, and M. Skutella,
New approaches for virtual private network design,
SIAM J. Computing, vol. 37, no. 3, pp. 706721, 2007.
[15] A. Altn, E. Amaldi, P. Belotti, and M. C . Pnar, Provi-
sioning virtual private networks under trafc uncertainty,
Networks, vol. 49, no. 1, pp. 100115, 2007.
[16] W. Ben-Ameur and H. Kerivin, Routing of uncertain
trafc demands, Optimization and Engineering, vol. 6,
no. 3, pp. 283313, 2005.
[17] A. Ben-Tal and A. Nemirovski, Robust convex opti-
mization, Mathematics of Operations Research, vol. 23,
no. 4, pp. 769805, 1998.
[18] F. Alizadeh and D. Goldfarb, Second-order cone pro-
gramming, Mathematical Programming, vol. 95, no. 1,
pp. 351, 2003.
[19] D. Bertsimas and M. Sim, Robust discrete optimization
and network ows, Mathematical Programming, vol. 98,
no. 1, pp. 4971, 2003.
[20] P. Belotti, A. Capone, G. Carello, and F. Malucelli,
Multi-layer MPLS network design: The impact of sta-
tistical multiplexing, Computer Networks, vol. 52, no. 6,
pp. 12911307, 2008.
[21] M. Riis, A. Skriver, and S. Mller, Internet protocol
network design with uncertain demand, Journal of the
Operational Research Society, vol. 56, pp. 11841195,
2005.
[22] N. Springs, R. Mahajan, and D. Wetherall, Measuring
ISP topologies with Rocketfuel, IEEE/ACM Transac-
tions on Networking, vol. 12, no. 1, pp. 216, 2004.
[23] E. G. Coffman, Jr., M. R. Garey, and D. S. Johnson, Ap-
proximation algorithms for bin packing: a survey, in Ap-
proximation algorithms for NP-hard problems. Boston,
MA, USA: PWS Publishing Co., 1997, pp. 4693.
[24] M. R. Garey and D. S. Johnson, Computers and In-
tractability: A guide to the theory of NP-completeness.
W. H. Freeman and Co., 1979.
[25] G. L. Nemhauser and L. A. Wolsey, Integer and Combi-
natorial Optimization. John Wiley & Sons, 1988.
[26] L. N. Vicente and P. H. Calamai, Bilevel and multilevel
programming: A bibliography review, Journal of Global
Optimization, vol. 5, no. 3, pp. 291306, 1994.
[27] A. L. Soyster, Convex programming with set-inclusive
constraints and applications to inexact linear program-
ming, Operations Research, vol. 21, no. 5, pp. 1154
1157, 1973.
[28] V. Chv atal, Linear Programming. W. H. Freeman, 1983.
[29] G. Oriolo, Domination between trafc matrices, Mathe-
matics of Operations Research, vol. 33, no. 1, pp. 9196,
2008.
[30] R. Fourer, D. M. Gay, and B. Kernighan, AMPL: a
mathematical programming language, in Algorithms and
model formulations in mathematical programming. New
York, NY, USA: Springer-Verlag, 1989, pp. 150151.
[31] E. Rosen, A. Viswanathan, and R. Callon, RFC 3031:
Multiprotocol Label Switching Architecture, January
2001, available at http://www.ietf.org/rfc/rfc3031.txt.
[32] A. Altn, P. Belotti, and M. Pnar, OSPF routing
with optimal oblivious performance ratio under polyhe-
dral demand uncertainty, Optimization and Engineering,
vol. 11, no. 3, pp. 395422, 2010.
[33] B. Fortz and M. Thorup, Internet trafc engineering by
optimizing OSPF weights, in IEEE INFOCOM, vol. 2,
2000, pp. 519528.