Australia. {irena,richard}@catt.rmit.edu.au http://www.rmit.edu.au. Abstract: - The ... Keywords: - Multiservice IP Networks, Network Design, Integer Programming, ...
LP-based Algorithm for Optimization in Multiservice IP Networks Irena Atov and Richard J. Harris School of Electrical and Computer Engineering Royal Melbourne Institute of Technology GPO Box 2476V, Vic. 3001 Australia {irena,richard}@catt.rmit.edu.au http://www.rmit.edu.au
Abstract: - The network design problem considered in this paper provides the basis for the solution of many interesting and practical engineering problems, of which one notable example is the link capacity expansion problem of existing communication networks. We are particularly interested in the possibility of using this problem as a subproblem when solving the planning and design problem of multiservice IP networks (e.g., DiffServ/MPLS). After discussing its application as part of a solution method for multiservice IP network planning problem, an integer multicommodity optimization problem is formulated. For its solution an LP-based algorithm was developed, that uses the optimization tool ILOGTM CPLEX 7.1 LP for finding the exact optimal solution of the considered problem. Computational tests on problems of various sizes lead to the conclusion that the algorithm is quite powerful both with respect to problem size and solution time. Keywords: - Multiservice IP Networks, Network Design, Integer Programming, CPLEX.
1
Introduction
The network design problem considered in this paper is a multicommodity minimal cost network flow problem where it is required to send flows that follow static, nonbifurcated routes to satisfy demands given links with existing capacities, or to install, in discrete amounts additional facilities (i.e., line types) with fixed capacities. The set of available line types for each link along with the set of candidate routes for each OD pair is given. In addition, only design costs of the links are considered in the problem. Similar network design problems, in which the flow costs are also included have been studied in the literature, for example see [1, 2] and references therein. The problem addressed in this paper provides the basis for the solution of many interesting and practical engineering problems, of which one notable example is the link capacity expansion problem of existing communication networks. However, in this paper we describe its application as part of the recently proposed network design methodology for multiservice
IP networks (i.e., DiffServ/MPLS) [5]. In Section 2, a brief overview of the main steps and algortihms employed in the network design tool, described in [5], is provided. This outlines the application of the considered network design problem in this paper as part of a solution method for multiservice IP network planning problem. The mathematical model for the considered problem is defined in Section 3. Discussion on the scalability issue of the proposed LP-based algorithm is provided in Section 4 and, finally, Section 5 concludes the paper.
2 Framework for Capacity Planning In our recent work [5], we proposed a framework for a capacity planning tool for multiservice IP core networks (i.e., DiffServ/MPLS [3, 4]). The tool takes account of the new QoS technologies and mechanisms in IP networks and achieves guaranteed end-to-end delay and jitter performance for each of the traffic classes.
Step 1: Determine primary routes and link QoS partitions for all classes
Class 1
OPQR-G Algorithm
text
Class 2
Step 2:
Step 3:
Determine class-based bandwidth allocations and total capacities on links
Perform optimization to account for the discrete set of link capacities
OPQR-G Algorithm CA Algorithm
Class n
TM Algorithm
OPQR-G Algorithm
Figure 1: Capacity planning framework The multiservice IP network planning problem can be generally stated as follows (for details see [5]): Given: network topology, link cost/delay functions, set of available link capacities, their corresponding tarrifs, traffic demands, end-to-end delay QoS constraints, and set of candidate routes for each service class and OD pair, respectively; Minimize: total queueing cost, total capacity cost; Over the design variables: link capacities and for each service class delay QoS partitions (allocations) on the links and primary routes; Subject to: all OD pair traffic demands and end-toend delay QoS constraints for the traffic classes are satisfied. The considered optimization problem involves the interaction of three significant factors: the routing information, the delay allocation for the classes on the links, and the capacity allocation on the links. For example, determining the capacities on the links depends on the amount of traffic to be carried on the links, which on the other hand depends on the routing information. Also, determining the capacities on the links depends on the maximum delay that can be tolerated by each class of traffic on the links. Finally, the way the end-to-end delay constraints are partitioned (allocated) on the links in the network depends also on the routing information. For a network of any reasonable size, determining all three factors simultaneously represents a nearly impossible problem. Therefore, we choose a heuristic approach in which these factors are considered sequentially. This approach exploits a novel framework in which capacity planning is based on the partition of the end-toend delay QoS constraints of each class-based traffic demand into local QoS constraints at each link in the
network. More precisely, a heuristic solution method to the original problem is devised by performing disaggregation of the problem into the following three optimization problems(Fig. 1): 1. Optimal QoS Partition and Routing (OPQR-G) First, for each delay-sensitive class, determine the primary routes between the OD pairs and the partitions of end-to-end QoS constraints into local QoS constraints, by solving a combined QoS partition and routing optimization problem. 2. Capacity Allocation (CA) Then, based on the local delay QoS constraints and the total amount of traffic for each class routed on each link, determine bandwidth allocations for the delay-sensitive traffic classes, as well as, total continuous capacities of the links by solving a CA problem. 3. Tariff Minimization (TM) Finally, once the links are sized in terms of continuous values for the link capacities, perform another cost optimization to resctrict capacities to discrete set of values and achieve minimum cost routing for the best-effort traffic class on the existing capacitated links. In this approach, we first interpolate the discrete link capacity costs with continuous costs and thus we simplify the model in favor of one with fewer decision variables. That is, we first determine the primary routes and delay QoS partitions for each delaysensitive traffic class, by applying an algorithm for the solution of Problem OPQR-G. This provides the required input for the CA algorithm, which determines the required bandwidth for the delay-sensitive traffic classes on the links. The continuous link capacities, obtained as a linear sum of the bandwidth allocations for the delay-sensitive classes, are then transformed to the higher (feasible) discrete values of the
link capacities. Once the links are sized for capacity, a new cost optimization (or tariff minimization) is performed, where we concentrate on a flow assignment optimization problem for the best-effort (BE) service class only. That is, we want to achieve a minimum cost placement of all OD pair BE traffic demands on the existing capacitated links and/or to install additional link capacities in the network if required. The optimization subproblems, although more manageable than the original CFA problem, also pose significant modelling and algorithmic challenges. Problem OPQR-G is N P-complete and for its solution we have devised several efficient heuristic algorithms; specifically, one greedy and two LP-based heuristic algorithms. For details on these algorithms see [6]. The CA problem poses the challenge of performing appropriate link dimensioning in order to balance quality of service against costly overprovisioning. For this problem, an accurate model for describing the characteristics of both the external real IP traffic and the internal (on the links) is required. The proposed CA algorithms incorporate traffic characterisation procedures that allow burstiness and correlations of multi-class IP traffic to be effectively modelled in both instances [7, 8]. Finally, the TM problem presents some unique challenges, as well, as it deals with minimization of a discrete capacity/cost objective function and has two sets of integer decision variables (i.e., the flow variables for the BE traffic and the line type selectors). For its solution we devise an efficient LP-based algorithm, which is discussed next.
pacity required on a link l, as determined from the CA algorithm, is bl , and BL and BU are the discrete capacity levels that bracket bl . In order to achieve tarrif minimization (or cost optimization), here we concentrate on a flow assignment optimization problem for the BE service class only. That is, we want to achieve a minimum cost placement of all OD pair BE traffic demands on the existing capacitated links and/or to install additional link capacities in the network if required. In the following, the network is represented as a directed graph G(V, E), where |V | is the number of nodes and |E| is the number of links (edges) in the network. For each link l, l ∈ E, there is an available set of line types Il . These line types have different capacities, θlk (k = 1, 2, . . . , N ), starting from θl1 = θlsetup the existing or setup capacity for the link. In the context of the multiservice IP network planning problem these setup capacities are computed in the CA procedure as θlsetup = moddbl e where modd·e is a ceiling function i.e., it is the smallest value of all available capacities on the link, which is greater than or equal to the argument value. The interval between two available capacities for the link (θlk , θlk+1 ] is associated with a fixed cost (or tariff), γlk+1 (k = 1, 2, . . . , N ), starting from γl1 = γlsetup i.e., the setup cost for the link, which is the cost associated with θlsetup . Accordingly, we define a fixed setup cost for the network, as the sum of all link setup costs: X setup γl (1) K= l∈E
3
The mathematical model
In the following, we give a formal definition of the Problem TM (tariff minimization problem) as an LP problem. We will use a path-based formulation for the underlying multicommodity network flow model. This modelling approach has been widely used in problems, which prescribe the flow between any OD pair to follow a single path. In the context of the multiservice IP network planning problem, tarrif minimization is performed after the links are sized for capacity based on the total bandwidth requirements for the delay-sensitive traffic classes (determined by the CA algorithm), since, in practice capacities of the links in the network are restricted to a discrete set of values. Suppose that the ca-
Furthermore, the total average traffic demand for the best-effort service class of OD pair (u, v) is defined as λuv . We assume that there is a given set of candidate routes Ruv for each OD pair (u, v ∈ V ) and a binary decision variable xuv j is introduced that has value 1 if the j-th route is chosen from the given set of routes for the OD pair (u, v) and 0 otherwise. The total bandwidth required for the delay-sensitive traffic classes on a given link l is defined as bl . In network planning procedures, the maximum link utilization is specified at input and must also be satisfied. Its value is never greater than one, and it is often in the 0.7 to 0.8 range. These link utilization constraints allow for variations in the load, not accounted for at the network planning level, to occur without affecting the performance of the network. The maximum link uti-
lization which must be satisfied, is defined as the ratio of the carried traffic load on a given link and the link capacity and is denoted as ρ. The allocation of the best-effort traffic flows on the links should be done in such a way, so that, the network cost is minimized while the maximum utilization constraint for the links is still satisfied. From these definitions, we may now formulate the basic constraints of the problem as: For all OD pairs u, v ∈ V : X xuv (2) j =1 j∈Ruv
As xuv j = {0, 1}, this constraint defines the fixed routing assumption and states that only one route is to be used per OD pair. The next constraint specifies how the best-effort traffic is accumulated on each link to give the total mean carried traffic λl on link l: X X uv uv auv = λl (3) lj xj λ u,v∈V j∈Ruv
where the symbol auv lj is an indicator parameter with value 1 if link l lies on j-th route from the set Ruv and is zero otherwise. The following constraint specifies a maximum allowable best-effort traffic that can be carried on a link sized with the initial setup capacity θlsetup without satisfying the link utilization constraint, denoted as sl : sl ≤ θlsetup − bl
(4)
After the best-effort flows are assigned in the network the actual capacities required for the links, which we denote as Cl (for l ∈ E) can be computed as follows: X X uv uv Cl = θlsetup − sl + xuv (5) j alj λ j∈Ruv u,v∈V
Next, we introduce a set of linking constraints, which help us select one capacity from the vector of available capacities for the link based on its required capacity. The selection should be such, that the smallest available capacity from the given set which satisfies the requirement is chosen. First, a binary decision variable is introduced, ylk (l ∈ E, k ∈ N ), which is defined as follows: if Cl ≤ ρθlk =⇒ ylk = 1 and yli = 0 (i 6= k) (6)
The following constraint states that only one capacity from the given set of capacities should be chosen: X ylk = 1 (7) k∈N
Finally, the following constraint ensures that the required capacity is less than or equal to the chosen capacity for the link: Cl ≤ ρθlk ylk + (1 − ylk )θlN
(8)
The cost function which we need to minimize may be written as the sum of the fixed setup cost of the network and the costs of all links in the network which require installment of additional capacity in order to accommodate the BE traffic demands: XX z=K+ ylk γlk (9) l∈E k∈N
Accordingly, the considered tariff minimization problem can be stated as follows: Problem TM: Given a network G(V, E), a set of available capacities for each link {θlk }k∈N, l∈E , their corresponding tariffs {γlk }k∈N, l∈E , traffic demands for best-effort service class for all OD pairs {λuv }u,v∈V , and set of routes for all OD pairs in the network {Ruv }u,v∈V . Find a set of routes for the BE traffic r = {ruv }u,v∈V , and a set of link capacities θ ∗ = {θl∗ }l∈E in the network, such that the corresponding network cost is minimized while all OD pair traffic demands and utilization constraints for the links are satisfied. Mathematically, the Problem TM can be formuk lated as finding the xuv j , yl values that satisfy the following: XX Minimize: K + ylk γlk Subject to:
l∈E k∈N Cl ≤ ρθlk ylk +
X
(1 − ylk )θlN
xuv j = 1 ∀u, v ∈ V
∀l ∈ E (1) (2)
j∈Ruv
X
ylk = 1 ∀l ∈ E
k∈N xuv j = {0, 1} ylk = {0, 1}
(3)
∀j ∈ Ruv , ∀u, v ∈ V (4) ∀k ∈ N, ∀l ∈ E
(5)
We have developed an LP-based algorithm that uses the optimization tool ILOGTM CPLEX 7.1 LP
[9], which provides an optimal solution for the Problem TM. The optimal solution to our tariff minimization problem consists of a set of routes (one for each OD pair) and a set of capacities for the links in the network. The routes, for which xuv j = 1, determine the optimal set of routes for the BE class r = {ruv }u,v∈V in the network. The capacities on the links, for which ylk = 1, determine the optimal set of link capacities θ ∗ = {θl∗ }l∈E in the network. These, on the other hand, determine the optimal set of best-effort traffic flows on the links {λl }l∈E in the network i.e., λl = ρθl∗ − bl . Note that, by minimizing the objective cost function we ensure that the minimal available capacities are chosen for the links (as we assume that the cost of the available capacities increases with an increase in capacity) which is not explicitly specified in the constraints above. Furthermore, in this way load balancing is achieved in the network as this cost optimization step will maximize the utilization of the capacitated links before installing additional units of capacity. Finally, note that the design cost can be reduced if instead of a single large capacity line, two or more smaller capacity ones are assigned to a link. This situation can be modelled as a special case within the model considered here. For any set of single capacity lines Il , the set Iˆl of all possible line groups that can be obtained based on these capacities can be constructed. Then the problem is reduced to choosing one line type of the generalized set Iˆl .
4
Discussion
The LP-based algorithm presented in Section 3 was implemented in C + + using the Graph Template Library [10]. We have performed tests for various problem sizes in order to analyze the scalability of the LP algorithm and answer the question as to what size problem we could hope to solve using the standard solver ILOGTM CPLEX 7.1 [9]. Specifically, networks of varying size between 15 and 120 nodes were randomly generated and also different structures (e.g., flat or hierarchical) were considered for these networks. Various instances of problem size for each network were generated by changing the number of considered OD pairs. The number of OD pairs was selected according to a specified percentage value p (0 < p ≤ 1) of the total number of OD pairs i.e.,
p |V |(|V | − 1). In addition, varying number of line types for each link was considered, with values starting from 10 to 20, where the step size (granularity) of the available capacities was adjusted such as to decrease with the increase of the number of line types. Finally, the sizes of the demands were also randomly generated from various given ranges. The considered LP problem is defined with |E||I| binary line type variables (ylk ) and |V |(|V | − 1)|R| binary flow variables (xuv j ). The set of flow constraints (2) is defined for each OD pair, thus resulting in |V |(|V | − 1) constraints. The total set of constraints (1) and (3) is determined from the number of links in the network |E|. In addition, there is a total of |V |(|V | − 1)|R| + |E||I| defining constraints (4-5) in the model. To see the scale of this problem, consider a typically sized problem with, say, 100 nodes and 300 links, set of 10 candidate routes for each OD pair and 20 available line types for each link. This is a large (non-hierarchical) network of a scale as large as many backbone ISPs [11]. Suppose that we have a separate commodity for each OD pair (as is typical in communication settings for which each node sends traffic to every other node). Then we have 100(99) = 9, 900 commodities. Since each commodity can flow on each route from the given candidate set of routes, the model has 99, 000 flow variables. In addition, there are 6, 000 line type selectors. The number of forcing constraints is then 9, 900 + 2(300) = 10, 500, and the number of defining constraints is 99, 000 + 6, 000 = 105, 000. The number of constraints and flow variables depend very much on the type of the formulation. If we use a link-based formulation for the same problem the total number of flow variables would amount to 9, 900 × 300 = 2, 970, 000, as each commodity can flow on each link. Also, in this case, each commodity requires a flow balance constraint at each node, resulting in 9, 900 × 50 = 495, 000 flow constraints among the other type of constraints. In order to tackle larger problems one need to use path-based formulation and restrict the number of allowed routes per flow. We tested the algorithm with the test networks and the settings as described above on a Pentium 1.7 GHz PC with 512 MB RAM and the results showed that the algorithm is quite powerful both with respect to problem size and solution time. Networks of various
structures and size between 15 and 25 nodes even with p = 1 (i.e., 100 % of the OD pairs were considered) were solved in around 30 seconds. A sample network of 50 nodes and 176 links took less than 5 minutes to solve. At the point of infeasibility (the worst case) the run time was 45 minutes. This was a problem instance from a 120 node network and 347 links with a set of 20 available line types for the links. These computational results demonstrate that realistic size problems can be solved with the proposed LP model very efficiently.
5
Conclusions
In this paper we have discussed a multicommodity minimal cost network flow model to be used as an optimization step in a recently proposed network design tool for multiservice IP networks (e.g., DiffServ/MPLS). The considered problem has been mathematically formulated as an integer program and for finding the exact optimal solution of this problem an LP-based algorithm was developed that uses the optimization tool CPLEX. Computational tests on problems of various sizes lead to the conclusion that the devised LP algorithm is quite powerful both with respect to problem size and solution time. Network sizes of up to 120 nodes (larger than the size of a standard ISP backbone), were handled in a reasonable time with the worst-case scenario of run time of 45 minutes for the 120 node network. Our ongoing work is on development of an efficient heurisic algorithm for the considered LP problem in order to develop a fast method that can generate near-optimal solutions for larger problems, as well as, to break the dependence to a commercial LP solver, such as CPLEX.
6
Acknowledgement
Sanso and P. Soriano (eds), Telecommunications Network Planning, pp. 1-19, Kluwer Academic Publishers, Norwell, MA, 1999. [2] D. Bienstock and O. G¨unl¨uck, “Capacitated Network Design - Polyhedral Structure and Computation”, INFORMS Journal on Computing, vol. 8, no. 3, pp. 243-259, 1996. [3] S. Blake, D. Black, E. Carlson, E. Davies, Z. Wang, W. Weiss, An Architecture for Differentiated Services. IETF RFC 2475, 1999. [4] E. Rosen, A. Viswanathan and R. Collon, Multiprotocol Label Switching Architecture, IETF RFC 3031, 2001. [5] I. Atov, R.J. Harris, “Framework for Capacity Planning of Multiservice IP Networks”, Proc. of 4th International Conference on Information, Communications and Signal Processing and Fourth Pacific-Rim Conference on Multimedia (ICICS-PCM 2003), Singapore, December 15-18, 2003. [6] I. Atov, H.T. Tran, R.J. Harris, “Efficient QoS Partition and Routing in Multiservice IP Networks”, Proc. of 22nd IEEE International Performance, Computing and Communications Conference (IPCCC 2003), Phoenix, US, April 2003. [7] I. Atov, R.J. Harris, “Dimensioning Method for Multiservice IP Networks to Satisfy Delay QoS Constraints”, Proceedigns of IFIP-TC6 Interworking 2002 Symposium, Perth, Australia, October 2002. [8] I. Atov, Dimensioning Methodology for Multiservice IP Networks with Correlated Traffic Inputs, Centre for Advanced Technology in Communications Technical Report, RMIT University, Melbourne, May 2003.
The authors wish to acknowledge Hieu T. Tran for his help with CPLEX and the implementation of the algorithm.
[9] ILOG, CPLEX Documentation, CPLEX Optimization, Inc. 2001.
References
[10] M. Forester, et al., Gtl - Graph Template Library. http://www.infosun.fmi.uni-passau.de/GTL/
[1] B. Gendron, T.G. Crainic, A. Frangoni, “Multicommodity Capacitated Network Design”, In B.
[11] X. Xiao and L.M. Ni, “Internet QoS: A Big Picture”, IEEE Network, Vol. 13, April 1999.