• No results found

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing

N/A
N/A
Protected

Academic year: 2021

Share "Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing"

Copied!
29
0
0

Loading.... (view fulltext now)

Full text

(1)

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing

Pietro Belotti, Antonio Capone, Giuliana Carello, Federico Malucelli

Tepper School of Business, Carnegie Mellon University, Pittsburgh PA

Dipartimento di Elettronica e Informazione, Politecnico di Milano, Italy

Abstract

The possibility of adding MPLS support to transport networks is considered an important opportunity by telecom carriers that want to add packet services and applications to their networks. However, the question arises whether it is suitable to have MPLS nodes just at the edge of the network to collect packet traffic from users, or to introduce also MPLS facilities on a subset of the core nodes in order to exploit packet switching flexibility and multiplexing, thus inducing a better bandwidth allocation. In this paper we propose a mathematical programming model for the design of two-layer networks where MPLS is considered on top of transport networks (SDH or WDM depending on required link speed). Our models take into account the tradeoff between the cost of adding MPLS support in the core nodes and the savings in the link bandwidth allocation due to the statistical multiplexing and the traffic grooming effects induced by MPLS nodes. The traffic matrix specifies for each point-to-point request a pair of values: a mean traffic value and an additional one. Using this traffic model, the effect of statistical multiplexing on a link allows to allocate a capacity equal to the sum of all the mean values of the traffic demands routed on the link and only the highest additional one. We propose a path-based Mixed Integer Programming (MIP) model for the problem of optimizing the number and location of MPLS nodes in the network and the link capacities. We apply Lagrangian relaxation to this model and use the subgradient method to obtain a lower bound of the network cost. As the number of path variables used to model the routing grows exponentially with the graph size, we use an initially limited number of variables and a column generation approach. We also introduce a heuristic approach to get a good feasible solution. Computational results are reported for small size and real-world instances.

Keywords

Multi-layer Network Design, MPLS, Statistical Multiplexing, Traffic Grooming, Optimization Models, Heuristics, Lagrangian Relaxation.

Submitted to Computer Networks, May 15, 2007. This work has been partially supported by Alcatel-Lucent and by the European Network of Excellence EURO-NGI.

(2)

I. Introduction

With classical IP routing, packet forwarding is performed independently at each router in the network and is based only on the destination address carried in the packet. Classical IP routing policy selects the shortest path to the destination exploiting distributed routing protocols. Hence, when the resources available on the shortest path are not sufficient the quality degrades.

Recently, substantial effort has been spent to improve conventional IP routing architecture and protocols by providing them with additional functionalities using the Multi Protocol Label Switching (MPLS) [1]. One of the key aspects of MPLS is a new connectivity abstraction. In particular, explicitly routed point-to-point paths, named Label Switched Paths (LSP), can be established using label based forwarding mechanisms.

This allows a per flow path selection and Quality of Service (QoS) parameters to be taken into account by the routing algorithm [2]. The notion of QoS has been introduced to capture the quantitatively defined performance contract between the service provider and the user. The QoS requirement of a connection can be given as a set of link constraints, e.g. by requiring that there is enough bandwidth on the path selected for the connection of the requesting user [3].

The capacity needed at MPLS layer is provided by the underlying transport network which may be based on Synchronous Digital Hierarchy (SDH) or Wavelength Division Multiplexing (WDM), depending on the link speed. The transport network can be devoted to MPLS services only, or, more often, shared with circuit switched services such as the phone service. In this network architecture some or all nodes must support both transport network technology and MPLS. Hence, a telecom carrier that wants to offer MPLS based packet switched services must add label switching capabilities to some nodes of the transport network. A node supporting MPLS is named Label Switched Router (LSR). Edge nodes must necessarily support MPLS in order to collect packet switched traffic from users. Core nodes may or may not support MPLS. LSRs and virtual links connecting them define a logical network topology on top of the physical topology of the transport network (Figure 1). Virtual links in the logical topology are mapped into paths of physical links in the physical topology. These paths between LSRs are circuits (or light-paths) and may cross several nodes of the transport network not supporting MPLS. Circuits must be dimensioned according to bandwidth requirements and then the capacity of each physical link must be selected based on the circuits crossing it and the discrete set of possible values defined by the transport technology.

In this context we have to take into account jointly the transport network layer and the MPLS layer when designing the network. This means that we have to decide which core nodes must support MPLS, how to connect LSRs within the transport network, and the bandwidth reserved on each link. A simple solution could be that of adding MPLS support to edge nodes only. In this case we have to set up a circuit between each

(3)

Edge LSR

Transport Network node

Core LSR

Physical link Logical link

Fig. 1. MPLS over Transport Network: physical and logical topologies.

pair of edge LSRs and to dimension it according to the bandwidth required by the LSPs connecting them.

The advantage of this solution is that we save the costs of adding MPLS support to core nodes. However, we cannot exploit the multiplexing gain for traffic demands routed on the physical link since LSPs traversing different LSR pairs must use different circuits. On the other side, we could add MPLS support to all the core nodes. In this case, we can exploit at best the multiplexing gain saving bandwidth on the physical links.

Which of these opposite solutions is the more profitable depends on the relative costs of the nodes and the bandwidth and on how the multiplexing gain is modelled and exploited in the network. More in general, due to the tradeoff between multiplexing gain and cost of MPLS nodes, the best solution will be an intermediate one where only a subset of nodes are equipped with MPLS capabilities.

The effect of multiplexing on the bandwidth required to support a set of LSPs is twofold. Since the capacity provided by the transport layer is available with discrete values, multiplexing allows to reduce the quantization effect. In some cases where the minimum available capacity is quite high, as in WDM, this effect is remarkable and multiplexing allows to fill up link capacities even with small flows. Moreover, with packet switching techniques like MPLS, statistical multiplexing triggers another relevant bandwidth reduction effect.

Packet flows are characterized by an average and a peak rate. Depending on QoS requirements, like delay, and on the statistical multiplexing effect, the bandwidth that must be allocated for the flow is a value between the average and the peak rate. If only a few flows are multiplexed together, the bandwidth needed for each of them is closer to the peak rate, while if many flows share the same resources it is closer to the average rate [4]. It is worth pointing out here that we focus on the network design problem only, i.e. on the problem

(4)

of dimensioning network links and nodes, based on traffic estimates, while QoS provisioning during network operation is out of the scope of the present paper. Obviously, once the network is dimensioned according to bandwidth requirements calculated considering also the statistical multiplexing effect, standard techniques (bandwidth reservation, traffic classification, scheduling, etc.) can be adopted for dynamic QoS provisioning to traffic flows.

In this paper we propose a new mathematical programming model for network design and routing of MPLS networks that take into account the statistical multiplexing effect. We consider a simple traffic model where each traffic demand is described by a pair of values (mean and additional). With such traffic description, the link capacity can be modelled by a bottleneck constraint, thus limiting the model complexity. In fact, if a set of traffic demands is multiplexed on a link, its capacity must be greater than the sum of all the mean values and of the highest additional one. It is easy to show that such a traffic model describes accurately the case of Poisson traffic with a delay requirement on the bottleneck link (see Section III). However, we can extend the scope of the model by considering the mean plus the additional value as a measure of the traffic peak rate. If we assume that peaks are non-simultaneous, only the highest one must be guaranteed on the traversed links. Moreover, the model and the algorithms proposed in this paper can be easily adapted to other traffic models, as for example those based on Gaussian assumptions [4]. Note that, even if we refer to MPLS technology throughout the paper, the proposed network design approach can be applied to Generalized MPLS (GMPLS) as well, since the considered multi-layer models can be adopted regardless of the specific multiplexing technology.

After reviewing related works (Section II), we first describe the traffic model (Section III), and then we propose a path-based formulation of the problem of MPLS node location and network dimensioning (Sec- tion IV), which involves an exponential number of variables, one for each path. Then, in Section V we present a Lagrangian relaxation that yields a lower bound. Due to the huge number of variables, a column generation approach is needed to solve the continuous relaxation of the Lagrangian relaxation of the problem. We also propose a heuristic approach to obtain feasible solutions (Section VI), based on a local search exploring two different neighborhoods. The local search can start from two different initial solutions. The first initial solu- tion is derived by rounding the solution of the Lagrangian relaxation. The second one is computed by means of a greedy algorithm. Tests have been run on a small size network to get more insights on the proposed approaches, and on realistic instances (Section VII). Finally, we give some concluding remarks (Section VIII).

(5)

II. Related work

Many papers have been published on network design problems (surveys on these problems can be found in [5], [6], [7]). Generally speaking, classical network design models consider a graph with n nodes describing the network and a (n × n)-matrix providing the amount of traffic to be delivered for each pair of nodes. The problem is to select link and node capacities in order to find the minimum cost network able to route all traffic from source to destination. This classic approach to network design assumes that all nodes can route traffic flows, and it is usually referred to as single layer design. However, the multiplexing effect described above requires to consider more complex models where some nodes (possibly not all nodes) can aggregate traffic flows and there is a cost associated with this multiplexing operation. The most appropriate approach in this case is based on multi-layer network description where in the upper logical layer nodes can switch traffic flows between aggregated flows, while in the lower physical layer nodes can only switch aggregated flows. Two graphs can be used to represent the network, a physical graph and a logical one. Links in the logical graph are mapped into paths of physical links. The problem here is not only dimensioning the physical graph but also designing the topology of the logical graph [8].

Most of the previous works on two-layer models focus on the optimization of flow aggregation and routing [9]

and in particular on Wavelength Division Multiplexing (WDM) networks [10]. In this context, the problem considered is usually referred to as grooming problem since the main goal is to aggregate flows in order to better exploit the large capacity available on each wavelength [11], [12], [13], [14]. In order to define the logical topology of the WDM network, also wavelengths must be assigned to light paths and converters located where needed [15]. Different variants of the problem can be considered including hierarchical flow aggregation [16], but it has been shown that even for simple network topologies where the routing is trivial, the grooming problem is inherently difficult [17].

In WDM networks, resilience to failures is also an important feature and protection and restoration tech- niques at different layers can be jointly applied and optimized [18], [19]. From the network technology perspective, the integration of the optical layer with electronic layers within a converged data-optical infras- tructure, based on classical IP or modern GMPLS (Generalized MPLS) architectures, is a key element in the current trend in broadband network evolution [20], [21].

Two-layer network design problems, where also link and node dimensioning is included in the model, have been considered only quite recently [22]–[29]. Some works specifically consider MPLS technology [21] and some of them address the problem of MPLS node location [30], [31]. Given the complexity of the optimization models, several authors rely on path formulations and column generation coupled with branch&bound [28], joint column and row generation methods [22], [26], branch&cut with cut-set inequalities [27] or LP-based

(6)

decomposition approaches [24]. For mid-to-large networks, the solution of choice remains heuristic algorithms [29], which provide a feasible solution in limited time. However, to the best of our knowledge, the effect of statistical multiplexing has not been previously considered in such network design and routing models.

III. Traffic Description

The traffic model adopted here considers each traffic flow q described by a mean rate fq0 and an additional rate fq00. Considering several flows {1, 2, . . . , r}, statistical multiplexing affects the capacity required by the aggregated flow.

We assume that, if the flows are not aggregated, then the total needed capacity is:

Xr q=1

fq0+ Xr q=1

fq00. (1)

On the other hand, if the flows are aggregated, we can take advantage of the statistical multiplexing and the capacity requirement decreases. Indeed it must meet QoS requirements of all demands. Since only one demand q is assumed to take its highest value fq0 + fq00 at a time the capacity needed on the logical link is:

Xr q=1

fq0 + max

q=1,...,rfq00. (2)

Logical links are mapped on physical paths and then on circuits connecting MPLS nodes. On a single physical link multiple circuits can be routed. The minimum capacity of a physical link can be obtained considering the above expressions for all circuits traversing it. Then the actual capacity of the physical link must be selected considering the discrete set of values provided by the transport technology.

The above simple model can be explained in an accurate way considering Poisson flows. Consider a specific logical link of the network. Let λ denote the packet arrival rate and µ the link service rate. Then the expected delay time E[d] is:

E[d] = 1

µ − λ. (3)

Let us denote with f the total number of bits per second routed on the link, with U the amount of capacity on the considered link and with L the average packet length. We recall that µ = UL and that λ = Lf. Then

E[d] = 1

UL fL = L

U − f. (4)

Suppose that, for the considered traffic flow, a constraint on the maximum delay time is given: τ denotes this limit. Thus the capacity needed to fulfill the constraint on the delay time is

U ≥ L + τ f

τ = f +L

τ. (5)

(7)

where Lτ represents the additional traffic value.

If several flows are routed along the given link, each associated with a maximum delay τq, with q = 1, . . . , r, we can set the additional value fq00 of flow q equal to τLq. Since the aggregated flow is still a Poisson one, it is easy to observe that the capacity required on the link to fulfill the maximum delay constraint for all flows is given by (2).

It is worth noting that, even if the problem formulation presented in the next section is based on the above traffic model, it can be easily extended to other models. From the solution approach point of view also the greedy algorithm and the local search procedure presented in Section VI can be easily extended.

IV. MPLS node location and network design problem

The problem is specified by a set of nodes, a set of potential physical links, and a set of traffic demands between pairs of nodes to be routed, each described by a mean and an additional value. Two types of demands can be present: the MPLS ones, that can exploit statistical multiplexing, and the SDH ones, which cannot be multiplexed and have no additional value. The problem is to define the routing of all the traffic demands, which cannot be split on different paths, the network topology (physical and logical) and the capacity to be installed on each physical link. Moreover, the presence of multiplexing devices in some core nodes may allow to exploit the gain of statistical multiplexing. Therefore another level of decision concerns in which nodes multiplexing devices have to be located. Both MPLS and transport nodes are capacitated: the capacity to be installed on each node must to be optimized, as well. The goal is to minimize the total network installation cost, which is determined by the MPLS devices installed on core nodes, the transport node devices and the physical link capacity.

The problem is NP-hard as it generalizes the Fixed Charge Network Design Problem [34]. Even in a simpler version where all nodes are equipped with multiplexing devices, all the flows routed on one link are multiplexed and all the capacity variables are continuous, the problem is NP-hard [32].

The design problem can be formulated as a network design and dimensioning problem with bottleneck constraints. In [33] a similar flexible capacity sharing model is proposed, representing capacity requirements occurring in survivable network design. The network can be represented as an undirected graph G = (V, E), where V is the set of nodes and E is the set of links, as shown in Figure 2. The subset of nodes with multiplexing capability VM ⊆ V must be decided by the design problem. The set of edges E is partitioned into two subsets:

ET is the subset of physical links, while S is the subset of potential logical links: it represents the logical topology, which must be decided by the design problem solution. The network graph can be divided into two graphs, one, denoted by G0 = (V, ET), representing the physical layer, the other, G00 = (VM, S) representing

(8)

i

i

j

j

l

k

Logical graph ) , (

'' V S

G = M

Physical graph ) , (

' V ET

G=

Edge nodes Core nodes

Core nodes with MPLS capab.

i

i

j

j

l

k

Logical graph ) , (

'' V S

G = M

Physical graph ) , (

' V ET

G=

Edge nodes Core nodes

Core nodes with MPLS capab.

Fig. 2. Physical and logical graphs representing the network.

the logical layer. For each node i ∈ V , I(i) and F (i) are the sets of virtual links that start and end in i, respectively. Analogously, we denote with I(i) and F (i) the sets of physical links incident in i. Denote with Q the set of traffic demands to be routed. Each traffic demand q ∈ Q is defined by an origin node sq, a destination tq node (with sq, tqedge nodes), a mean flow fq0 (in Mbit/s) and an additional one fq00 (in Mbit/s).

Let F denote the maximum value of fq00 for each q ∈ Q, namely F = maxq∈Qfq00.

Different flows can be aggregated to exploit statistical multiplexing gain: once they are aggregated, they are routed as a single flow on a link of the logical layer s ∈ S. Each logical link s ∈ S is mapped into a physical path at the end of which the flows are disaggregated. For instance, in Figure 2, the virtual link (i, j) corresponds to the physical path i − k − l − j. If a set of flows is aggregated at node i and disaggregated at node j, multiplexing devices are needed only at the endpoints i and j of the considered physical path. As the aggregated flows behave as a single one on the considered virtual link, no flow can be multiplexed at any intermediate node.

As mentioned above, not only MPLS traffic but also SDH traffic can be served by the network. Let QSDH ⊂ Q be the subset of the SDH traffic demands that has to be routed on the transport layer. The set QSDH cannot take advantage of statistical multiplexing. Each q ∈ QSDH cannot utilize the MPLS layer of the nodes it traverses. We manage these traffic demands as special cases of the MPLS ones. Each q ∈ QSDH can be seen as an MPLS demand with peak rate equal to zero with the additional constraint that it cannot be multiplexed with the other demands. Consider the traffic demand q ∈ QSDH, with source node sq and destination node tq. To deal with q as if it is a MPLS demand, we introduce two auxiliary nodes, s0q and t0q in the network topology, which become the source and destination of q. The auxiliary nodes are linked to the

(9)

source and destination nodes, sq and tq, of the traffic demand through two arcs with null cost. Thus traffic demand q must be routed on the two auxiliary links (s0q, sq) and (tq, t0q). Then we route this demand q on an LSP composed only by one single virtual link (the shortest path on the SDH topology between these two auxiliary nodes). This way, every SDH demand is not multiplexed with the other demands.

A complete mathematical representation of the devices that can be installed on each node would be very complicated and worthless. However, we need to model the cost scheme and the relationship between cost, capacity and traffic flow. Thus we have chosen a general multi-facility model by defining a set of available devices that can be installed on each transport node, corresponding to discrete capacity values. A different cost is associated with each device. Let HN be the set of device types that can be installed on each transport node. For each h ∈ HN let µh and θh be the capacity (in Mbit/s) and the cost of a device of type h. We adopted the same approach to model the upper level (MPLS) node scheme. The set of available MPLS node device types is denoted with HM. For each h ∈ HM, ψh and γh denote the capacity (in Mbit/s) and the cost of device of type h1. Finally, HL denote the set of available transport channels, that can be installed to a transport link e ∈ ET. For each e ∈ ET and h ∈ HL, che is the cost of installing one channel of type h on e, and λh is its capacity. This cost depends not only on the type of channel installed but also on the length of the considered physical link. An unavoidable quantization effect is present due to the granularity of the installed capacity, as the capacity on nodes and arcs is provided by selecting node device and link channel types. Costs associated with available device and circuit types increase less than linearly with respect to the capacity. An example of capacities and costs of node and link devices will be presented in Section VII.

We present a path based formulation where P denotes the set of all the paths between pairs of nodes of V . Given a traffic demand q, Pq denotes the set of paths connecting sq and tq. Each path is a LSP set up by a sequence of virtual links.

We have chosen to model routing paths with path variables instead of flow variables. Path formulations have a potentially very large number of variables (exponential in |V |) but are more flexible in that, in general, only a subset of these variables is needed. We define a binary variable xp for each path p ∈ P connecting node sq to tq such that:

xp =







1 if traffic demand q is routed on path p, 0 otherwise.

These variables are subject to routing constraints guaranteeing that each demand is served by one path.

Besides, they are involved in capacity setting constraints, together with variables representing the capacity

1We assume that at most one device can be installed on each node of both layers. The different devices represent the different capacities which can be provided on a node. Their cost can include, when necessary, also the platform cost.

(10)

needed on each virtual link and the one installed on each physical link. For each virtual link s ∈ S and h ∈ HL, variable ysh represents the number of transport circuits of type h to be provided for virtual link s, to deal with the traffic routed on s. These circuits are not installed on s, but they are provided by installing circuit on the physical links belonging to the path to which s corresponds. Let yeh be the number of transport channels of type h to be installed on link e to provide the capacity needed by the logical links routed on e.

Note that if for a given s ∈ S ysh is equal zero for all h ∈ HLthen virtual link s does not belong to the virtual topology. The total flow on a virtual link according to the traffic model described in Section III is given by

X

q∈Q

X

p∈Pq:s⊂p

fq0xp+ max

q∈Q

X

p∈Pq:s⊂p

fq00xp.

To linearize the above quantity, we introduce variables zs. Let s endpoints be i and j. Then s0 denotes s with respect to the direction from i to j, while s00 denotes s in the opposite direction, from j to i. For each s ∈ S, variables zs0 and zs00 represent the maximum additional rate among the demands routed on s in both directions, from i to j and from j to i, respectively.

Finally, we have to introduce dimensioning variables for both layer of each node, which are involved both in node dimensioning and in node capacity constraints. For each i ∈ V and h ∈ HN we define the binary variable wih such that:

wih=







1 if node i is equipped with a transport device of type h, 0 otherwise.

In the same way, for each i ∈ V and h ∈ HM we define the following binary variable:

mhi =







1 if i is equipped with MPLS device of type h, 0 otherwise.

Note that if variable mhi is equal to zero for all h ∈ HM, then the node is not a MPLS one.

Using the variables described above, the model of the problem can be formulated as ILP problem. Let us first describe the structure of the model and the constraint sets, which will be described in detail later.

Objective function: minimization of the total network cost s.t.

Routing constraints - C1

Virtual link required capacity setting - C2

Virtual link highest additional value computing - C3 Maximum additional value - C4

(11)

Transport link capacity dimensioning - C5

MPLS and transport node device dimensioning - C6 Single node device selection - C7

Variables domain - C8

The objective function asks to minimize the total network costs (eq.(6)), i.e., the capacity installation cost, given by the sum of three components: MPLS node device costs, transport node device costs and transport link capacity costs.

minX

i∈V

X

h∈HM

γhmhi +X

i∈V

X

h∈HN

θhwhi + X

e∈ET

X

h∈HL

cheyhe (6)

Routing constraint: routing constraints (eq.(7)) impose that each traffic demand is routed on at least one path. As xp are binary variables, the demands are not split among several paths2.

X

p∈Pq

xp ≥ 1 ∀q ∈ Q (7)

Virtual link required capacity setting: the constraints (eq. (8) and (9)) set the amount of capacity needed by each virtual link, which must provided through the transport channels installed on the lower layer.

For each of the two directions, the required capacity must fulfill the sum of the mean values of the demands routed on it and of the maximum of the additional rates (given by zs variable).

X

q∈Q

X

p∈Pq:s0⊂p

fq0xp+ zs0 X

h∈HL

λhysh ∀s ∈ S (8)

X

q∈Q

X

p∈Pq:s00⊂p

fq0xp+ zs00 X

h∈HL

λhysh ∀s ∈ S (9)

Virtual link highest additional value computing: the maximum value of the peak rates on each virtual link is stated by bottleneck constraints (eq.(10) and (11)): it must be greater or equal to the additional value of each demand routed on the considered link.

fq00

 X

p∈Pq:s0⊂p

xp

 ≤ zs0 ∀q ∈ Q, ∀s ∈ S (10)

fq00

 X

p∈Pq:s00⊂p

xp

 ≤ zs00 ∀q ∈ Q, ∀s ∈ S (11)

2The problem requires a path for each demand, while in the constraint at least one path for each demand is required. However, in the following constraints all the amount of traffic is assumed to be routed on a path p such that xp= 1. Therefore, assigning value one to more that one path variable would increase the amount of needed capacity and thus the costs.

(12)

Maximum additional value: redundant constraints (eq.(12) and (13)), setting the maximum value of the additional traffic on any link, are added to bound the value of zs0 and zs00: they are useful in solving the relaxation proposed in the next section.

zs0 ≤ F ∀s ∈ S (12)

zs00 ≤ F ∀s ∈ S (13)

Transport link capacity dimensioning: constraints on the transport link capacity (eq.(14)) guarantee that physical links have sufficient installed capacity to support the traffic of virtual links routed on them.

X

h∈HL

X

s∈S:e⊂s

λhysh X

h∈HL

λhyeh ∀e ∈ ET (14)

MPLS and transport node dimensioning: node-dimensioning constraints (eq.(15) and eq.(16)) impose that the amount of capacity of each layer of a node, provided by the choice of the device to be installed, is not exceeded by the amount of traffic routed through the node. On the other hand, these constraints force the choice of the suitable node devices to be installed on each node layer to deal with the overall traffic rate of the incoming links.

X

h∈HL

λh

 X

s∈I(i)∪F (i)

ysh

 ≤ X

h∈HM

ψhmhi ∀i ∈ V (15)

X

h∈HL

λh

 X

e∈I(i)∪F (i)

yeh

 ≤ X

h∈HN

µhwhi ∀i ∈ V (16)

Single node device selection: constraints (17) and (18) impose to install at most one type of device on each layer of a node.

X

h∈HM

mhi ≤ 1 ∀i ∈ V (17)

X

h∈HN

wih ≤ 1 ∀i ∈ V (18)

Variables domain: last constraints (eq. (19) - (25)) impose variable domains: they are integrality and nonnegativity constraints.

(13)

xp ∈ {0, 1} ∀p ∈ P (19)

wih ∈ {0, 1} ∀i ∈ V, ∀h ∈ HN (20)

mhi ∈ {0, 1} ∀i ∈ V, ∀h ∈ HM (21)

ysh ∈ N ∀s ∈ S, ∀h ∈ HL (22)

yeh ∈ N ∀e ∈ ET, ∀h ∈ HL (23)

zs0 ≥ 0 ∀s ∈ S (24)

zs00 ≥ 0 ∀s ∈ S (25)

As mentioned before, the above problem formulation is based on the simple traffic described in Section III.

In particular, variables zs0 and zs00 represent the capacity that must be allocated in addition to the mean traffic value. In the presented formulation the values of the maximum flow in the two directions are assigned to these variables by imposing constraints (10) and (11). Different formulations can be adopted to represent different traffic models by modifying these two sets of constraints. In case of Gaussian traffic the additional required capacity is given by a constant multiplied by the standard deviation of the aggregated flow [4].

V. Lagrangian relaxation

The problem, beside being NP-hard, is also out of the reach of state-of-the-art integer linear programming solvers even for small size instances. Intending to deal with practical instances, our aim is to compute a good feasible solution that can be implemented in real life, and a lower bound of the problem to which we compare the feasible solution. To compute the lower bound we propose a Lagrangian relaxation, solved with the subgradient method [36]. Moreover, as the number of paths connecting pairs of nodes of the network grows exponentially with the network size, approaching the model with all possible path variables is impracticable.

Therefore we use a column generation approach [37] to solve the continuous relaxation of the relaxed problem.

This method allows us to consider only a subset of variables and new variables are added dynamically if needed. In order to identify such variables we solve a subproblem called pricing based on a shortest path computation.

Lagrangian relaxation removes some of the constraints of the problem, in this way generating a relaxed problem, easier to solve than the original one. However, to take into account the relaxed constraints a linear combination of them is added to the objective function. We relax the constraints setting the capacity required on each virtual link together with those dimensioning the peak values, namely C2 and C3. They are combined through lagrangian multipliers π, τ , σ and ρ, and their combination is added to the objective function. The

(14)

resulting relaxed problem L(π, τ , σ, ρ) is:

Relaxed objective function s.t.

C1 - Eq.(7) involving routing variables xp

C4 - Eq.(12) and (13) involving variables zs0 and zs00 C5 - Eq.(14) involving variables yhs and yhe

C6 - Eq.(15) and (16) involving device variables, mhi and whi, and link dimensioning variables, yhs and yhe C7 - Eq.(17) and (18) involving mhi and whi variables

C9 - relaxed variable domain constraints The relaxed objective function is:

min



 X

i∈V

X

h∈HM

γhmhi +X

i∈V

X

h∈HN

θhwih+X

e∈E

X

h∈HL

cheyeh+

+X

s∈S

πs

X

q∈Q

X

p∈Pq:s0⊂p

fq0xp+ zs0 X

h∈HL

λhyhs

 +

+X

s∈S

τs

X

q∈Q

X

p∈Pq:s00⊂p

fq0xp+ zs00 X

h∈HL

λhysh

 +

+X

s∈S

X

q∈Q

σsq

fq00 X

p∈Pq:s0⊂p

xp− zs0

 +

+X

s∈S

X

q∈Q

ρqs

fq00 X

p∈Pq:s00⊂p

xp− zs00



(26)

Note that routing variables xp and dimensioning variables, zs0, zs00, ye, ys, mhi, whi, do not appear together in the same constraint, in the relaxed problem. Besides, the relaxed objective function can be rewritten in two parts, one involving only routing variables, the other involving only dimensioning variables.

Thus the relaxed problem decomposes into |Q|+1 independent sub-problems, one L0, involving dimensioning variables, and one Lq problem for each demand, involving only routing variables,:

L(π, τ , σ, ρ) = L0(π, τ , σ, ρ) +X

q∈Q

Lq(π, τ , σ, ρ) (27)

The first sub-problem is:

L0(π, τ , σ, ρ) = min X

h∈HL

"

X

e∈E

cheyeh− λhX

s∈S

yshs+ τs)

#

+X

i∈V

 X

h∈HM

γhmhi + X

h∈HN

θhwih

 +

+X

s∈S

zs0

πsX

q∈Q

σqs

 +X

s∈S

zs00

τsX

q∈Q

ρqs

(28)

(15)

s.t.

Maximum additional value - C4

Transport link capacity dimensioning - C5

MPLS and transport node device dimensioning - C6 Single node device selection - C7

Relaxed variable domain constraint - C9

In this sub-problem, the z variables are not related with the y, the m and the w ones. To decide the value to assign to each z variable we check its coefficient in the objective function: if it is negative, the z value will take value F , otherwise it will be set to 0. Constraints (12) and (13) limit the value each z variable can assume: without these constraints z variable would go to infinity. Once the z variables have been fixed to their optimal value the problem can be solved efficiently, being a Linear Programming problem.

Each sub-problem Lq(π, τ , σ, ρ), q ∈ Q, has the following form:

Lq(π, τ , σ, ρ) = minX

s∈S

X

p∈Pq:s0⊂p

xpsfq0+ σsqfq00)+

+X

s∈S

X

p∈Pq:s00⊂p

xpsfq0 + ρqsfq00)

(29)

X

p∈Pq

xp ≥ 1 ∀q ∈ Q (30)

0 ≤ xp ≤ 1 ∀p ∈ P (31)

Each of these |Q| sub-problems is a shortest path problem. We have to find the shortest path on an oriented graph where the set of the arcs is the set of virtual links S and to each arc is assigned a cost given by the

following sums: 





πs· fq0 + σsq· fq00 for the arc oriented from i to j, τs· fq0+ ρqs· fq00 for the arc oriented from j to i.

Note that variable xp here is continuous, not binary. However, solving each of the |Q| sub-problems with Dijkstra’s algorithm we know that only one path will be selected for each origin-destination pair, and the corresponding path variable xp will be set to 1.

As the cardinality of S is exponential, we first solve the continuous relaxation of problem L0(π, τ , σ, ρ) over a subset of virtual links S0⊆ S (Restricted Master Problem RMP). The initial subset of virtual links is obtained by considering all the physical links and the virtual links traversing at most two physical links on the transport network. Then we apply a column generation procedure to compute the continuous optimum. We iteratively solve the reduced problem L0(π, τ , σ, ρ) and we update S0 by adding the variables with negative

(16)

reduced costs, i.e., the variables whose related dual constraint is violated, until no such variables are found.

We recall that, given a solution of a linear programming (LP) problem, if the dual variables related to such solution are feasible for the dual problem then the given solution is optimal. Besides, each variable (constraint) of the primal problem is associated with a constraint (variable) of the dual problem. Consider a violated dual constraint: the corresponding primal variable has a negative reduced cost and therefore it can produce an improvement in the objective function if it is added to the set of the considered variables. Thus the aim of the pricing procedure is to verify whether the dual variables associated with the primal solution found are feasible for the dual problem and, if they are not, to generate a primal variable corresponding to a violated dual constraint. Then, the new variable is added to the considered set and the RMP is solved again. The continuous relaxation optimum is reached when no primal variable can be found such that the related dual constraint is violated.

Denote with ηi, βe, νs and χs the dual variables related to the constraints (15), (14), (12) and (13) of L0(π, τ , σ, ρ), respectively. Let us denote with T (s) the two endpoints of virtual link s. The dual constraints related to the variables yhs, zs0 and zs00 for a given virtual link s are

X

i∈T (s)

ηi+ X

e∈E:e⊂s

βe ≥ πs+ τs (32)

νs X

q∈Q

σsq− πs (33)

χs X

q∈Q

ρqs− τs (34)

A crucial question consists in the fact that the multiplier values are not defined for the virtual links not yet generated, therefore we cannot identify which constraints are actually violated. For this reason we evaluate the missing multiplier values heuristically. The variables to be added to S0 are such that (32), (33) or (34) are violated. Finding an s such that the related constraint (32) is violated is equivalent to solve a shortest path problem for each pairs of nodes. We consider a graph where there is an arc for each virtual link considered so far (S0 denoting the set of virtual links considered so far) and where each arc e has a cost βe. Once we find the shortest path for a traffic demand q – connecting oq to tq – we sum the length of the shortest path to the dual variables corresponding to its source and destination nodes, ηoq and ηtq. If this value violates constraint (32) then the shortest path found between the two considered nodes is added as a new virtual link to S0. Otherwise we check constraints (33) and (34). If at least one of them is violated the path is added to S0. If none of these constraints is violated, we do not have to search for another path between the considered pair of nodes.

(17)

VI. Heuristic approach

To find a good feasible solution we propose a heuristic algorithm based on a local search framework. The local search can start from different initial solutions, obtained in two different ways, thus generating two different versions of the local search based approach. The first initial solution is obtained by dimensioning the node and link capacity according to the routing provided by the solution of the |Q| shortest path problems Lq and it can be applied at each iteration of the subgradient procedure, thus generating a population of solutions. It considers the routing obtained from the solution of the |Q| shortest path problems and allocates the resources on node and links according to such routing. If the obtained solution does not violate the capacity constraints, it is added to the population of initial solutions. The local search is then applied to the set of K best solutions obtained from such procedure. In the computational test the value of K has been set to three, as good tradeoff between quality of results and needed computational time. The second algorithm builds from scratch the initial solution through a greedy algorithm. It first builds a set of virtual links S: all the physical links and the virtual links that cross at most two lower layer links belong to such set. Then the greedy algorithm routes each traffic demand on the path with the minimum number of virtual links between the origin and the destination.

The local search we propose is based on two neighborhoods, which are alternately visited, starting from the chosen initial solution. When an improving solution is found, it becomes the new current one and the search continues with the currently explored neighborhood. Instead, if no improving solution is found and a local minimum of the current neighborhood is reached, the local search swaps to the other neighborhood and the search goes on until a new local minimum is reached and the neighborhood has to be changed again. The local search procedure stops when no improving solution can be found exploring both the neighborhoods.

Two key features of the problem solution are the routing of each traffic demand and the routing of each virtual link on the lower layer network. The two neighborhoods are generated by modifying such features of a given solution.

The first neighborhood is generated by routing each traffic demand on all possible LSPs connecting its source to its destination. Given a current solution, a neighbor is generated by changing the path on which a given demand is routed. As the number of possible LSPs connecting the origin and the destination node of a given traffic demand is huge, visiting the whole neighborhood, and therefore searching the best neighbor solution, would be expensive from a computational viewpoint. We propose a heuristic way to visit such neighborhood based on the approach proposed in [35]. To visit the neighborhood and find the best neighbor solution, we should look for the best routing of each traffic demand. Instead of enumerating all possible alternative routing, we look heuristically for the routing providing the best improvement of the objective

(18)

function. For each demand we build a path such that an improving solution is obtained if the considered demand is routed on the built path. An auxiliary graph is built for each traffic demand. In the auxiliary graph, the cost associated with each arc represents the incremental cost, positive (or negative), of routing (removing) the considered traffic demand on (from) the arc itself. Consider a demand q and an arc e. If q is routed on the arc e in the current solution, then e is assigned a negative cost equal to the capacity cost saved by removing demand q from arc e. If no transport circuit can be removed the incremental cost is zero.

Suppose now that q is not routed on e. The incremental cost of routing demand q on e is given by the cost of adding the needed capacity. If q can exploit the available capacity on e the incremental cost is zero. A new routing of a given demand is then associated with a cycle: it represents the moving of the given traffic demand from the current routing (negative cost arcs) to a new one (positive cost arcs). If the total cost of the cycle is negative, the balance between the new costs and the saving associated with the move is negative and therefore the new routing would improve the objective function. Thus, looking for the best neighbor solution turns out to be a minimum negative cost cycle problem, which is an NP-hard problem that can be solved heuristically as proposed in [35]. However, due to the peculiar characteristics of our problem cost functions, devising the auxiliary graph costs is computationally expensive as it requires to evaluate the link capacity to add or remove at the lower layer and the node capacity to add or remove at both layers. To show the behavior of the first neighborhood, consider the network design problem described in Figure 3 and an initial routing.

Fig. 3. Initial routing.

In the auxiliary graph related to demand D, arc (6, 3) has a negative cost, as the demand can be removed from the arc, providing a capacity saving, while positive costs are associated to arcs (6, 7) and (7, 3), as the demand can be added on such arcs. Incremental costs of such arcs are represented in bold in Fig 4. For each

(19)

arc two costs are reported, one for each direction in which the arc can be used. It is possible to find a negative cost cycle related to demand D shown in Figure 4, represented in bold. As an improving move is found, a new solution can be generated by moving demand D from its current routing to a new one, as shown in Figure 5.

Fig. 4. Negative cycle.

Fig. 5. Final solution.

The move is first applied to the set of SDH traffic demands, explored according to non-increasing values of the traffic amount, until no improving solution is found. Then the procedure considers MPLS demands, sorted according to non increasing sum of mean and peak values.

The second move builds a neighbor solution by removing all the traffic flows routed on a given virtual link. It tries to reroute them together on a new path on the transport layer. The dimension of the second neighborhood is huge as well, thus we use a heuristic approach to find an improving move. We generate an

(20)

auxiliary graph with incremental arc costs using the same criteria adopted to explore the first neighborhood.

Then we delete the only arc with a negative incremental cost (that represents the considered virtual link) and search the shortest path on the lower layer to connect the endpoints of the considered virtual link. If the length of this path is less than the cost of the deleted arc, considering the absolute value, a potentially improving solution is found. We explore the virtual links according to non decreasing value of the flow routed on it. When a new solution with a lesser cost is found we reorder the virtual links and we restart from the first one.

Note that the described local search procedure, as well as the greedy algorithm for obtaining the initial solution, can be applied also to different traffic models since the way in which we calculate the capacity for each virtual link is irrelevant. On the contrary, the Lagrangian relaxation and the heuristic used to obtain the set S of initial solutions from the column generation strictly depend on the assumptions made in the ILP model presented in Section IV.

VII. Computational results

We implemented our algorithms with MATLAB 7.0 and we ran them on an AMD Athlon 1.8 Ghz with 1 Gbyte RAM.

In order to get some insights on the model characteristics, we first present an example of the solutions obtained on a small network with 12 links, 3 edge nodes and 4 core nodes. On each link of the network is reported its physical length. Table I shows the mean and the peak rates of the traffic demands offered to the network. In Table II an example of available link and node devices is given. However, to evaluate the behavior of the approach, it has been tested on different kinds of costs of MPLS devices: much cheaper than the cost of links, comparable and much more expensive. Figure 6 reports solutions obtained after the local search. The figure shows the solution considering a cost for MPLS devices much cheaper than the cost of links in case a), comparable in case b) and much more expensive in case c). The used starting points derive from the lower bound resolution.

In case a), since the cost for multiplexing devices is small compared with bandwidth saving obtained with statistical multiplexing, two MPLS core nodes (grey nodes) have been installed. Traffic demand can be multiplexed and demultiplexed at node 6 and node 7: demands B and D are multiplexed at node 6, while demands A and C are multiplexed at node 7. The total link capacity cost is 60800. In case b), only a core node is equipped with multiplexing device since the corresponding cost is higher. As node 7 is not a LSR anymore, traffic demands cannot be multiplexed at such node. Thus demand C is routed from its origin to node 6 and there is multiplexed with demand A. The link capacity installation due to this different routing

(21)

a)

b)

c) Fig. 6. Example: effect of MPLS node costs on design and routing.

(22)

Traffic demand O D Medium rate Peak rate (Mbits/s) (Mbits/s)

A 1 2 50 20

B 3 1 75 25

C 3 2 75 25

D 2 1 50 20

TABLE I

Traffic demands offered to the small size network.

Device Capacity Cost (Mbit/s)

d1 155.5 70

Link device d2 622 230

d3 2488 640

d1 10000 8500

Transport d2 15000 11500

node device d3 20000 13800

d4 25000 15500

d1 10000 8500

MPLS node device d2 15000 11500

d3 20000 13800

TABLE II

Cost and capacity of available link and node devices.

is more expensive than the former one: the total link capacity cost is 61500. Finally, in case c), the cost of multiplexing devices is too high and none is installed in the core. As the traffic demands can be multiplexed only at edge nodes, demand A is routed from node 1 to node 6 and then to node 3 where it is multiplexed with demand C, while demand D is routed from node 2 to node 3 through node 7 and there is multiplexed with B. The link capacity installation cost arises up to 79200. In all cases, we observe that flows are routed only on few links in order to exploit statistical multiplexing and traffic grooming at best. For this reason nodes 4 and 5 are never equipped with multiplexing devices even if the nodes cost is very cheap.

We tested the formulation also on real life based instances (all instances have been derived from realistic cases provided by Alcatel-Lucent) with 25 (A instances) and 39 nodes (B instances) and 63 and 86 links,

References

Related documents

We illustrate the feasibility and utility of our framework using Arterial Spin Labeling data from a neuropharmacological study, with the aim of investigating multivariate

Speaking of his support for the event, Professor Tony Alabaster, Chair of the Digital Innovation Beacon and Associate Dean, Applied Sciences, said: “A key goal of the

In the past, a high caffeine intake was regarded as a risk factor for osteoporosis because of its effects on urinary mineral excretion but recent population-based studies have not

(15) The objective function (9) is the estimation of the equip- ment cost; constraint (10) provides the required productivity rate (note: T (P) is the cycle time for solution P

19.4 We propose firms be required to record telephone lines used for voice conversations that involve the receipt of client orders and the negotiating, agreeing and arranging

Indigenous festivals are journeys within a journey. In addition to providing an important opportunity to socialize, Indigenous festivals assert a political and cultural presence in