UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing...

26
UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Traffic Matrices Chun Zhang a , Yong Liu a , Weibo Gong b , Jim Kurose a , Robert Moll a , and Don Towsley a a Dept. of Computer Science b Dept. of Electrical & Computer Engineering University of Massachusetts University of Massachussetts Amherst, MA 01003 Amherst, MA 01003 {czhang, yongliu, kurose, moll, towsley}@cs.umass.edu [email protected] Abstract Routing optimization is used to find a set of routes that minimizes cost (delay, utilization). Previous work has addressed this problem for the case of a known, static end-to-end traffic matrix. In the Internet, it is difficult to accurately estimate a traffic matrix, and the constantly changing nature of Internet traffic makes it costly to maintain optimal routing by responding to traffic changes. Thus, it is of interest to maintain a set of routes that are “good” for a number of different possible traffic scenarios. In this paper, we explore ways to find an optimal set of routes with multiple traffic matrices to minimize expected cost. We focus on two general approaches, source-destination routing and destination routing. In the case of source-destination routing, we extend existing methods with a single traffic matrix to solve the optimization problem with multiple traffic matrices: we extend the convex optimization solution methods for a single traffic matrix to the multiple traffic matrix case; we also extend the gradient-based solution methods for a single traffic matrix to the multiple traffic matrix case. However, the multiple traffic matrix case requires many more control variables. In the case of destination routing, we encounter many more differences from the single traffic matrix case. The loop-free property, which is valid for the single traffic matrix case, is no longer valid for the multiple traffic matrix case, and it is difficult to extend existing methods for a single traffic matrix to solve the optimization problem with multiple traffic matrices. We show that it is NP-complete even to determine the feasibility of multiple traffic matrices. We thus propose and evaluate a heuristic algorithm for this case. I. I NTRODUCTION Routing optimization is used to find a set of routes, i.e., the set of paths along which packets are forwarded in order to optimize a well-defined objective function (such as delay or utilization). Routing approaches are generally divided into source-destination routing (henceforth referred to as flow routing) and destination routing. As a packet travels through a network, a flow routing approach such as MPLS [1] forwards it based on its source and destination addresses. A destination routing approach such as OSPF [2] forwards it only on the basis of its destination address. Destination routing is unable to provide as fine control on routing as flow routing because it uses less information. A traffic matrix (TM) specifies the data rate between every pair of ingress and egress points. A number of works [3] [4] [5] have focused on calculating an optimal set of routes for a single TM. For a given TM, those works consider minimizing the sum of link costs, each of which is an increasing convex function of link data rate. The problem is then formalized and solved as an optimization problem. With a single TM, methods to solve the problem for flow routing and destination routing are similar, and the optimal costs are identical. In [3], Cantor et al. proposed a centralized algorithm. In [4], Gallager proposed a distributed algorithm. To solve the problem more efficiently, the link costs can be approximated as piece-wise linear functions [5], and the problem then formalized and solved by linear programming (LP). For a large-scale Internet with changing traffic, optimization with multiple TMs is an important problem for several reasons. First, accurate TM estimation is hard to achieve due to scale, as well as due to the inherent challenges in estimating a TM [6] [7]. Without an accurate TM, optimization over multiple TM candidates calculates a set of routes that is more robust to estimation errors. Second, even if the current TM is known, the changing nature of Internet traffic makes it costly to continually maintain optimal routing by responding to traffic changes (Routing convergence normally take seconds, during which packets may be lost, or arrive out of order. Frequent routing updates can make the situation even worse). As routing updates are performed at a slower rate than the change in traffic, it is preferable to implement a set of routes that can perform well for all TMs between routing updates. In this paper, we explore ways to obtain an optimal set of routes with multiple TMs so as to minimize expected cost. We focus on both flow routing and destination routing. In the case of flow routing, we extend existing solution methods

Transcript of UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing...

Page 1: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 1

On Optimal Routing with Multiple Traffic MatricesChun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert Molla, and Don Towsleya

aDept. of Computer Science bDept. of Electrical & Computer EngineeringUniversity of Massachusetts University of Massachussetts

Amherst, MA 01003 Amherst, MA 01003czhang, yongliu, kurose, moll, [email protected] [email protected]

Abstract

Routing optimization is used to find a set of routes that minimizes cost (delay, utilization). Previous work hasaddressed this problem for the case of a known, static end-to-end traffic matrix. In the Internet, it is difficult toaccurately estimate a traffic matrix, and the constantly changing nature of Internet traffic makes it costly to maintainoptimal routing by responding to traffic changes. Thus, it is of interest to maintain a set of routes that are “good” fora number of different possible traffic scenarios. In this paper, we explore ways to find an optimal set of routes withmultiple traffic matrices to minimize expected cost. We focus on two general approaches, source-destination routingand destination routing. In the case of source-destination routing, we extend existing methods with a single trafficmatrix to solve the optimization problem with multiple traffic matrices: we extend the convex optimization solutionmethods for a single traffic matrix to the multiple traffic matrix case; we also extend the gradient-based solutionmethods for a single traffic matrix to the multiple traffic matrix case. However, the multiple traffic matrix case requiresmany more control variables. In the case of destination routing, we encounter many more differences from the singletraffic matrix case. The loop-free property, which is valid for the single traffic matrix case, is no longer valid forthe multiple traffic matrix case, and it is difficult to extend existing methods for a single traffic matrix to solve theoptimization problem with multiple traffic matrices. We show that it is NP-complete even to determine the feasibilityof multiple traffic matrices. We thus propose and evaluate a heuristic algorithm for this case.

I. INTRODUCTION

Routing optimization is used to find a set of routes, i.e., the set of paths along which packets are forwarded in order tooptimize a well-defined objective function (such as delay or utilization). Routing approaches are generally divided intosource-destination routing (henceforth referred to as flow routing) and destination routing. As a packet travels througha network, a flow routing approach such as MPLS [1] forwards it based on its source and destination addresses. Adestination routing approach such as OSPF [2] forwards it only on the basis of its destination address. Destinationrouting is unable to provide as fine control on routing as flow routing because it uses less information.

A traffic matrix (TM) specifies the data rate between every pair of ingress and egress points. A number of works[3] [4] [5] have focused on calculating an optimal set of routes for a single TM. For a given TM, those works considerminimizing the sum of link costs, each of which is an increasing convex function of link data rate. The problem is thenformalized and solved as an optimization problem. With a single TM, methods to solve the problem for flow routingand destination routing are similar, and the optimal costs are identical. In [3], Cantor et al. proposed a centralizedalgorithm. In [4], Gallager proposed a distributed algorithm. To solve the problem more efficiently, the link costs canbe approximated as piece-wise linear functions [5], and the problem then formalized and solved by linear programming(LP).

For a large-scale Internet with changing traffic, optimization with multiple TMs is an important problem for severalreasons. First, accurate TM estimation is hard to achieve due to scale, as well as due to the inherent challenges inestimating a TM [6] [7]. Without an accurate TM, optimization over multiple TM candidates calculates a set of routesthat is more robust to estimation errors. Second, even if the current TM is known, the changing nature of Internettraffic makes it costly to continually maintain optimal routing by responding to traffic changes (Routing convergencenormally take seconds, during which packets may be lost, or arrive out of order. Frequent routing updates can makethe situation even worse). As routing updates are performed at a slower rate than the change in traffic, it is preferableto implement a set of routes that can perform well for all TMs between routing updates.

In this paper, we explore ways to obtain an optimal set of routes with multiple TMs so as to minimize expected cost.We focus on both flow routing and destination routing. In the case of flow routing, we extend existing solution methods

Page 2: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 2

for a single TM to solve the optimization problem with multiple TMs: we show that the optimization problem can stillbe formalized and solved as a convex optimization problem (as in the single TM case). We also extend Gallager’s workwith a single TM to solve the problem with multiple TMs using gradient-based methods. However, the multiple TMcase requires many more control variables. In the case of destination routing, we encounter many more differencesfrom the single TM case. We find that the loop-free property, which is valid for the single TM case, is no longer validfor the multiple TM case. It is difficult to extend the solution methods used with a single TM to solve the problem withmultiple TMs. We show that it is NP-complete even to determine the feasibility of multiple TMs. Thus, we proposeand evaluate a heuristic algorithm for this case.

The remainder of this paper is organized as follows. In Section 2, we review related work. In Section 3, we formulatethe multiple TM routing optimization problem. In Section 4, for flow routing, we first compute an optimal set of flowroutes using convex optimization techniques, and then extend Gallager’s work to solve the problem using gradient-based methods. In Section 5, for destination routing, we demonstrate the inherent difficulty of solving the optimizationproblem, and then propose and evaluate a heuristic algorithm. Section 6 concludes the paper.

II. CONTEXT AND RELATED WORK

Internet routing protocols are generally classified into two categories: flow routing and destination routing. MPLS,a flexible routing protocol, is normally considered a flow routing protocol [5] [6][8]; OSPF, a commonly used intra-domain Internet routing protocol, falls into the category of destination routing. Specifically, a relaxed version of OSPF,which allows arbitrary routing fractions on the shortest paths to the destination, is a loop-free destination routingprotocol [9].

Routing fractions are useful for describing a set of routes along which packets are forwarded. In flow routing, foreach source and destination pair, a router maintains a routing fraction for each of its out-going links. Specifically,φkl(i, j) denotes the fraction of traffic originating from router i destined to router j at router k forwarded over link(k, l). In Figure 1, router 3 forwards 100% of the traffic originating from router 1 destined to router 6 over outgoinglink (3, 4) and 100% of the traffic originating from router 2 destined to router 6 over link (3, 5). In contrast, destinationrouting only maintains a routing fraction for each destination. Specifically, φkl(j) denotes the fraction of traffic des-tined to router j at router k forwarded over outgoing link (k, l). In Figure 2, router 3 forwards traffic destined to router6 evenly over two out-going links: 50% over link (3, 4), and 50% over link (3, 5). Destination routing can be viewed asa special case of flow routing where the routing fractions to a common destination are identical for all sources. Given aTM, routing fractions determine packet forwarding, the link data rates, and thus the cost. In our optimization problem,we refer to routing fractions as routing variables.

1

3

4

5

6

2

10

10

10

1010

10

! #"$

%&(')+*-,.!/#02134576(89;:<>=?

@BA+C7DFEHGJIKMLNEOBP+QSRUTVJWXZY\[

]_^+`7abcJdeMfhgikj+l7monqpJrsutwv

Fig. 1. Flow Routing : traffic originating from different source addresses is forwarded by different sets of routes

1

3

4

5

6

2

10

10

5

5

5

5 5

5

5

5xzy|F~B

#!kZ

o;SH¡ ¢£#¤o¥J¦¨§©ªS«¬®­¯ °

±B²o³´¶µ¡·(¸H¹º¼»½ ¾¿ÁÀUÂ;ÃÄSÅÆHÇÈÉ¡Ê Ë

Fig. 2. Destination Routing : traffic originating from different source addresses is forwarded by single set of routes

An alternative way to describe a set of routes is through so-called traffic ratios. For each source and destination pair,Bkl(i, j) denotes the ratio of the traffic originating from router i destined to router j over link (k, l) to the overall traffic

Page 3: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 3

originating from router i destined to router j. In Figure 1, link (4, 6) carries 100% of the traffic originating from router1 destined to router 6; in Figure 2, link (4, 6) carries 50% of the traffic originating from router 1 destined to router6. Given a TM, traffic ratios determine packet forwarding, the link data rates, and thus the cost. In our optimizationproblem, we refer to such traffic ratios as ratio variables.

A number of efforts [3][4][5] have investigated the routing optimization problem in the case of a single TM. Themethods used for flow routing and destination routing are similar. In general, the problem is formalized and solved asan optimization problem. Using ratio variables as control variables, Cantor et al. [3] solved the problem using convexoptimization techniques. To increase efficiency, [5] approximates the link costs as piece-wise linear functions, andsolves the problem using LP. In [4], Gallager proposed a distributed gradient-based algorithm to solve the problemusing routing variables as control variables.

The route optimization problem is relatively new in the case of multiple TMs. While researchers have recentlyidentified the importance of the route optimization problem in the presence of multiple TMs [7][8], they have yet toinvestigate techniques for solving the problem.

An optimal set of routes is necessarily feasible. With multiple TMs, the set of feasible route-sets fundamentallydiffers from that with a single TM. A set of TMs is feasible if there exists a set of routes so that the resulting link datarates are always less than or equal to link capacity for each TM. The set of routes is then called a feasible set of routesfor the set of TMs. With a single TM, [3][4] find an optimal set of routes out of the set of feasible route-sets. Thecost of an optimal set of flow routes, an optimal set of destination routes, and an optimal set of loop-free destinationroutes are identical. With multiple TMs, the set of feasible route-sets is the intersection of the sets of feasible route-setsfor each individual TM. As a result, a set of TMs may be infeasible even though each TM in the set is individuallyfeasible. Moreover, the cost of an optimal set of flow routes may be lower than that of an optimal set of destinationroutes; also, the cost of an optimal set of destination routes with loops may be lower than that of an optimal set ofloop-free destination routes.

We will see that, with multiple TMs, the hardness of the optimization problem is closely related to the routingapproach. In the case of flow routing, we can extend the solution methods of a single TM to the case of multipleTMs. Using ratio variables as control variables, we extend [3] to solve the route optimization problem using convexoptimization techniques, and thus solve the problem using LP when link costs are approximated as piece-wise linearfunctions. Using routing variables as control variables, we extend [4] to solve the flow routing problem with multipleTMs using gradient-based methods. However, the multiple TM case requires many more control variables comparedto the single TM case. In the case of destination routing, we demonstrate the inherent difficulties to solve the problemwith multiple TMs. The set of feasible route-sets is not convex when we use ratio variables as control variables.As a result, we cannot solve the problem with multiple TMs as a convex optimization problem. Furthermore, whenusing routing variables as control variables, we find local minima — making it difficult to solve the problem usinggradient-based methods. Finally, we show that it is NP-complete even to determine the feasibility of a set of multipleTMs.

III. PROBLEM FORMULATION

In this section, we formulate the optimal routing problem with multiple TMs. We first introduce the necessarynotation, and then formalize the problem. Finally, we describe the difference between route optimization with a singleTM and with multiple TMs.

A. Notation

We first introduce the notation for flow routing, and then the notation needed for destination routing.Notation for flow routing:Network topology: G = (V, E) is a strongly connected graph.1 The network G is composed of a set of nodes V

and a set of directed links E. The nodes in V are represented by the integers 1, 2, . . . , |V |. The directed links in E arerepresented by (k, l) ∈ V 2.

Link capacity : C = ckl, where ckl > 0 denotes the capacity of link (k, l) ∈ E.

1In some cases, we relax this assumption for ease of exposition, and note this relaxation when used.

Page 4: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 4

Traffic Matrices : R = R1, R2, . . . , Rn is a set of n traffic matrices with associated positive weights w =w1, w2, . . . , wn,

y wy = 1. In TM Ry = [Ry(i, j)], i, j ∈ V , y ∈ 1, . . . , n, Ry(i, j) denotes the rate ofexogenous traffic, in bits/s, originating from node i destined to node j; wy is the weight of TM Ry.

Routing variables : Φ = φkl(i, j), i, j ∈ V , (k, l) ∈ E, where φkl(i, j) denotes the fraction of traffic rate fromnode i to node j at node k forwarded over link (k, l). When Φ are used as control variables in optimization problemformulation, the constraints are,

1) φkl(i, j) ≥ 0, i, j ∈ V , (k, l) ∈ E,2) φkl(i, j) = 0 if k = j,3)∑

l φkl(i, j) = 1 if k 6= j,4) ∀i, j, k(k 6= j) ∈ V , for traffic from i destined to j at node k, there exists at least one path between k and j:

there is a sequence of nodes, k, l, p, . . . , q, j such that φkl(i, j) > 0, φlp(i, j) > 0, . . ., φqj(i, j) > 0.Ratio variables : B = Bkl(i, j), i, j ∈ V , (k, l) ∈ E, where Bkl(i, j) denotes the ratio of the traffic rate

originating from i destined to j that is forwarded over link (k, l) to the overall traffic rate originating from i destinedto j. When B are used as control variables in optimization problem formulation, the constraints are,

1) Bkl(i, j) ≥ 0, i, j ∈ V , (k, l) ∈ E,2) Bkl(i, j) = 0 if k = j,3)

m

Bmk(i, j) −∑

l

Bkl(i, j) =

1 k = j−1 k = i0 otherwise.

(1)

4) if Bkl(i, j) > 0, then for traffic from i destined to j at node k, there exists at least one path between k and j:there is a sequence of nodes, k, l, p, . . . , q, j such that Bkl(i, j) > 0, Blp(i, j) > 0, . . ., Bqj(i, j) > 0.

The equivalence of routing variables (Φ) and ratio variables (B) is indicated by [4]. For completeness, we explicitlyexpress it as Theorem III.1 (see below). A set of routes is said to be loop-free if the corresponding set of ratio variablesB is loop-free. i.e., there is no sequence of nodes, i, j, k, l, p, . . . , q ∈ V such that Bkl(i, j) > 0, Blp(i, j) > 0, . . .,Bqk(i, j) > 0.

Theorem III.1: In a strongly connected graph G = (V, E), a set of flow routing variables Φ determines a set of flowratio variables B; a set of flow ratio variables B can be implemented by a set of flow routing variables Φ.

Proof: Given a set of routing variables Φ, we can compute a set of ratio variables B as follows. Let bk(i, j) denotethe ratio of the traffic rate originating from node i destined to node j at node k to the overall traffic rate originatingfrom node i destined to node j, we have

bk(i, j) = 1(k = i) +∑

m

bm(i, j)φmk(i, j) (2)

Here, 1(P ) is 1 if the predicate P is true and 0 otherwise. [4] shows that equations (2) must have a unique solution ofb. After solving b, we compute B from b,

Bkl(i, j) = bk(i, j)φkl(i, j) (3)

Given a set of ratio variables B, we can construct a set of routing variables Φ to implement B as follows. For eachnode j ∈ V , we construct a shortest path tree to j. For i, j ∈ V , (k, l) ∈ E, if

m Bkm(i, j) > 0, we set

φkl(i, j) =Bkl(i, j)

m Bkm(i, j)(4)

If∑

m Bkm(i, j) = 0, we set φkl(i, j) = 1 if link (k, l) is on the shortest path tree to node j, and φkl(i, j) = 0otherwise.

Node data rates : Ty = ty,k(i, j), k, i, j ∈ V , y ∈ 1, . . . , n, where ty,k(i, j) denotes the data rate at node kfrom node i destined to node j under TM Ry. We have,

ty,k(i, j) = 1(k = i)Ry(i, j) +∑

m

ty,m(i, j)φmk(i, j) (5)

ty,k(i, j) = Ry(i, j)

(

m

Bmk(i, j) + 1(k = i)

)

(6)

Page 5: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 5

Link data rates : Fy = fy,kl, (k, l) ∈ E, y ∈ 1, . . . , n, where fy,kl denotes the link data rate over link (k, l)under TM Ry. We have,

fy,kl =∑

i,j

ty,k(i, j)φkl(i, j) (7)

fy,kl =∑

i,j

Ry(i, j)Bkl(i, j) (8)

Feasibility : Given a set of n TMs, if there exists a set of routing variables Φ (or ratio variables B) such that theresulting link data rates are always less than or equal to the link capacity for each of the n TMs, then the set of n TMsis feasible, and Φ (or B) is feasible for the set of n TMs. Specifically, given n TMs, we use Ψ (or B) to denote the setof feasible route-sets described by Φ (or B).

Link cost function: D = Dkl, (k, l) ∈ E, where Dkl denotes the cost function of link (k, l). We assume that thelink cost is a convex, increasing function of link data rate. While our analysis can be applied to any function with suchproperties, we will use,

Dkl(x) =x

ckl − x(9)

This M/M/1-like link cost can be approximated by piece-wise linear functions. Specifically, Let (ki, bi), i ∈

1, . . . , 6 be (24i−2,−24i−2 + 5 ∗ 22i−2 − 1). We have,

Dkl(x) = max1≤i≤6

(kix

ckl+ bi) (10)

Network Cost : Let Ay denote the cost of TM Ry, y ∈ 1, . . . , n and A the expected cost; we have,

Ay =∑

(k,l)∈E

Dkl(fy,kl) (11)

A =n∑

y=1

wyAy (12)

The following notation differs in the case of destination routing:Routing variables : Φ = φkl(j), j ∈ V , (k, l) ∈ E, where φkl(j) denotes the fraction of traffic rate to node

j at node k forwarded over link (k, l). Destination routing variables can be viewed as a special case of flow routingvariables with the additional constraints,

φkl(i1, j) = φkl(i2, j), i1, i2, j ∈ V, (k, l) ∈ E (13)

Ratio variables : Similar to routing variables, combining equations (4) and (13), the destination ratio variables Bmust satisfy the additional constraints,

Bkl(i1, j)∑

m Bkm(i1, j)=

Bkl(i2, j)∑

m Bkm(i2, j)i1, i2, j ∈ V, (k, l) ∈ E (14)

where∑

m Bkm(i1, j) > 0 and∑

m Bkm(i2, j) > 0.All other definitions, theorems for flow routing are the same in the case of destination routing. Theorem III.2 shows

that destination routing variables (Φ) and destination ratio variables (B) are equivalent.Theorem III.2: In a strongly connected graph G = (V,E), a set of destination routing variables Φ determines a

set of destination ratio variables B; a set of destination ratio variables B can be implemented by a set of destinationrouting variables Φ. (Following the same proof of Theorem III.1)

B. The Single TM Problem

With a single TM, the routing optimization problem has several important properties. It was known that, for a singleTM, the link data rates implemented by a set of flow routes can also be implemented by a set of destination routes

Page 6: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 6

[10]. This, plus the loop-free property (see Theorem III.3), state that with a single TM, the optimal set of flow routes,destination routes and loop-free destination routes yield the same cost.

Theorem III.3: Loop-free property: in a strongly connected graph G = (V, E), given a feasible TM R1, the flowroute optimization problem always has an optimal solution as a set of loop-free flow routes, and the destination routeoptimization problem always has an optimal solution as a set of loop-free destination routes. [3][4]

With a single TM, in order to solve the optimal routing problem in a distributed or centralized manner, the problemhas been formulated using either routing variables Φ or ratio variables B as control variables.

[4] formulated the problem using routing variables Φ as control variables in the case of destination routing.Problem Formulation over Φ:

Given: network G = (V, E), link capacity C, a single TM R1.Minimize: cost A.Constraints:1) Route constraints. F1 is implemented by a set of destination routes Φ.2) Feasibility constraints. F1 ≤ C. i.e., ∀(k, l) ∈ E, f1,kl ≤ ckl.

[3] formulated the problem as a convex optimization problem. The problem was formalized using ratio variables Bas control variables in the case of flow routing.

Problem Formulation over B:

Given: network G = (V, E), link capacity C, a single TM R1.Minimize: cost A.Constraints:1) Route constraints. F1 is implemented by a set of flow routes B.2) Feasibility constraints. F1 ≤ C.

With a single TM, the route optimization problem can also be formulated using a smaller number of control variableswhen destination-based link data rates F D (introduced next) are used as control variables [10].

Destination-based link data rates: F Dy = fD

y,kl(j), y ∈ 1, . . . , n, (k, l) ∈ E, j ∈ V , where fDy,kl(j) denotes

the data rate of the traffic destined to j over link (k, l) under TM Ry. When F Dy are used as control variables, the

constraints are,1) fD

y,kl(j) ≥ 0, y ∈ 1, . . . , n, j ∈ V , (k, l) ∈ E,

2) fDy,kl(j) = 0 if k = j,

3)∑

m

fDy,mk(j) −

l

fDy,kl(j) =

i Ry(i, j) k = j−Ry(i, j) k = i0 otherwise.

(15)

The link data rates Fy are expressed by destination-based link data rates F Dy as follows.

fy,kl =∑

j

fDy,kl(j), y ∈ 1, . . . , n, (k, l) ∈ E, j ∈ V (16)

Problem Formulation over F D1 :

Given: network G = (V, E), link capacity C, a single TM R1.Minimize: cost A.Constraints:1) Flow conservation constraints. F1 is expressed by F D

1 .2) Feasibility constraints. F1 ≤ C.

With a single TM, the set of destination routing variables Φ can be expressed in terms of F D1 ,

φkl(j) =fD1,kl(j)

m fD1,km(j)

(17)

Page 7: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 7

where∑

m fD1,km(j) > 0.

C. The Multiple TM Problem Formulation

We now generalize the problem statement for a single TM to the case of multiple TMs. We use either ratio variablesB or routing variables Φ as control variables.

Given: network G = (V, E), link capacity C, n TMs.Minimize: cost A.Constraints:For each TM Ry, y ∈ 1, . . . , n,1) Route constraints. Fy is implemented by a set of routes Φ or B.2) Feasibility constraints. Fy ≤ C.

When link costs are approximated by piece-wise linear functions, they can be expressed as additional constraints.

3) Piece-wise constraints. For y ∈ 1, . . . , n,

Dkl(fy,kl) ≥ kify,kl

ckl+ bi, (k, l) ∈ E, i ∈ 1, . . . , 6

However, the formulation with destination-based link data rates F D cannot be easily extended to the case of multipleTMs. Flow conservation (15) only guarantees that for each individual TM in isolation, the demand can be satisfiedby some set of destination routes (17). It does not guarantee that a single set of destination routes be used to forwardpackets for all TMs.

D. Route Optimization with Multiple TMs: differences from the Single TM case

Properties that hold for a single TM do not necessarily hold for multiple TMs. In particular, with multiple TMs,the cost of an optimal set of flow routes may be lower than that of destination routes, and the cost of an optimal setof destination routes with loops may be lower than that of destination loop-free routes. We demonstrate this throughthree counter-examples. We show that a set of TMs is not feasible even though each TM in the set is individuallyfeasible; we also show that a set of TMs that is feasible with respect to flow routing may not be feasible with respectto destination routing. Finally, we also show that a set of TMs that is feasible with respect to destination routing maynot be feasible with respect to loop-free destination routing. All examples are based on a network2 G shown in Figure3. In all cases, traffic is only destined to node 3.

190

2

190 3

1450

450

Fig. 3. A topology to illustrate the difference of route optimization between single TM and multiple TMs

First, we present a set of two TMs where each TM is individually feasible but not feasible under flow routing whenconsidered as a set,

R1 =

0 0 6000 0 2000 0 0

R2 =

0 0 2000 0 6000 0 0

(18)

In TM R1, as R1(1, 3) = 600 and c13 = 450, a feasible set of routes of R1 (φ13(3) = 0.7, φ23(3) = 1, φ12(3) = 0.3,φ21(3) = 0) must forward at least 1/4 of the traffic originating from 1 over link (2, 3). i.e., B23(1, 3) ≥ 0.25. This

2We use directed graph for ease of exposition.

Page 8: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 8

results in that, in TM R2, the rate of the traffic originating from 1 that is forwarded over link (2, 3) must be at least 50bits/s, and the remaining capacity of link (2, 3) for the traffic originating from 2 is at most 400. As c21+400 ≤ R2(2, 3),the set of the two TMs is not feasible.

Second, we present a set of two TMs that is feasible under flow routing but not under destination routing,

R1 =

0 0 6000 0 00 0 0

R2 =

0 0 00 0 6000 0 0

(19)

In TM R1, traffic only originates from node 1, and in TM R2, traffic only originates from node 2. Since TM R1

and TM R2 are individually feasible (with the same feasible set of routes as in the previous example), and with flowrouting, the traffic of TM R1 and TM R2 are forwarded using routes based on different source and destination pairs,the set of the two TMs is still feasible in the case of flow routing. However, in the case of destination routing, trafficis forwarded without differentiating the source address of the packets. Using similar arguments as in the previousexample, we know that when TM R1 is feasible, the rate of the traffic originating from 1 forwarded over link (2, 3)

must be at least 150 bits/s under TM R1. Thus, φ23(3) ≥150190 where 190 is the capacity of link (1, 2). This results in,

that in TM R2, the rate of the traffic originating from 2 that is forwarded over link (2, 3), R2(2, 3)φ23(3), is at least900019 , and thus exceeds the capacity of link (2, 3). Consequently, the set of the two TMs is not feasible in the case of

destination routing.Third, we present a set of two TMs that is feasible under destination routing but not under loop-free destination

routing,

R1 =

0 0 5000 0 00 0 0

R2 =

0 0 00 0 5000 0 0

(20)

In TM R1, as the traffic rate originating from node 1 exceeds the capacity of link (1, 3), a feasible set of routes forTM R1 must forward part of that traffic through node 2. Similarly, a feasible set of routes for TM R2 must forwardpart of the traffic originating from node 2 through node 1. Thus, a feasible set of destination routes for the set of thetwo TMs must include a loop between node 1 and 2. In fact, we can see that the set of destination routes with loops(φ13(3) = φ23(3) = 0.7, φ12(3) = φ21(3) = 0.3) is feasible for the set of the two TMs. The resulting link data ratesfor TM R1 are (f1,12 ' 165, f1,21 ' 50, f1,13 ' 385, f1,23 ' 115).

With multiple TMs, the costs of the optimal set of flow routes and destination routes may differ. Therefore, weconsider the flow routing and destination routing problems separately in the following two sections.

IV. OPTIMAL FLOW ROUTING WITH MULTIPLE TMS

In the previous section, we formulated the routing optimization problem, and discussed the differences in optimizingroutes with a single TM and with multiple TMs. In this section, we explore ways of computing an optimal set of flowroutes for multiple TMs. We first solve the problem with routing variables as control variables. Then we solve theproblem with ratio variables as control variables.

Using routing variables as control variables, we now extend [4] to the case of flow routing with multiple TMs, andsolve the problem using a gradient-based algorithm. Assume that Φ is the set of routing variables used by a set of nTMs. In order to obtain derivative information ∂A/∂φkl(i, j), (k, l) ∈ E, i, j ∈ V , we introduce a set of dummyvariables ry = ry,k(i, j), y ∈ 1, . . . , n, k, i, j ∈ V , where ry,k(i, j) can be understood as the rate of the dummytraffic injected at node k destined to node j under TM Ry using the same routing fractions Φ as the traffic originatingfrom i destined to j.

For TM Ry, y ∈ 1, . . . , n, similar to [4], we have,

∂Ay

∂ry,k(i, j)=

l

φkl(i, j)

[

D′

kl(fy,kl) +∂Ay

∂ry,l(i, j)

]

(21)

∂Ay

∂φkl(i, j)= ty,k(i, j)

[

D′

kl(fy,kl) +∂Ay

∂ry,l(i, j)

]

(22)

Page 9: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 9

where D′

kl(fy,kl) =dDkl(fy,kl)

dfy,kl.

Combined with equations (6) and (12), we have,

∂A

∂ry,k(i, j)=

l

φkl(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

(23)

∂A

∂φkl(i, j)=

y

ty,k(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

(24)

=

(

m

Bmk(i, j) + 1(k = i)

)

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

(25)

The existence and uniqueness of ∂A/∂ry,k(i, j) and ∂A/∂φkl(i, j) is given by the following theorem.Theorem IV.1: Let a network G have n TMs and routing variables Φ, and let each marginal link cost D

kl(fy,kl) becontinuous in fy,kl, (k, l) ∈ E. Then the set of equations (23), k 6= j, has a unique (and correct) set of solutionsfor ∂A/∂ry,k(i, j). Furthermore, (24) is valid and both ∂A/∂ry,k(i, j) and ∂A/∂φkl(i, j) for k 6= j, (k, l) ∈ E arecontinuous in r and Φ.

Proof: See Appendix A.Using Lagrange multipliers for the constraint

l φkl(i, j) = 1, and taking into account the constraint φkl(i, j) ≥ 0,the necessary conditions for a minimum of A with respect to Φ are, for all k 6= j, (k, l) ∈ E,

∂A

∂φkl(i, j)

= λkij φkl(i, j) > 0> λkij φkl(i, j) = 0.

(26)

This states that for given i, j, k, all links (k, l) for which φkl(i, j) > 0 must have the same marginal cost∂A/∂φkl(i, j), and that this marginal cost must be less than or equal to ∂A/∂φkl(i, j) for the links on whichφkl(i, j) = 0. However, as shown by [4], even for a single TM, (26) is not a sufficient condition to minimize A.

Given i, j, k in (24), if∑

m Bmk(i, j)+1(k = i) = 0, then ∀l, we have ∂A/∂φkl(i, j) = 0. This means that, if nodek is not on any route carrying the traffic from i destined to j, the above conditions would be automatically satisfied.Thus, we hypothesize that (26) would be sufficient to minimize A if the factor

m Bmk(i, j)+1(k = i) were removedfrom the condition.

Theorem IV.2: For each (k, l) ∈ E, assume that Dkl(fy,kl) is convex and continuously differentiable for 0 ≤ fy,kl <

ckl. Let Υ be the set of Φ for which the link data rates satisfy fy,kl < ckl, y ∈ 1, . . . , n, (k, l) ∈ E. Then (26) isnecessary for Φ to minimize A over Υ and (27), for all k 6= j, (k, l) ∈ E, is sufficient.

n∑

y=1

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

≥n∑

y=1

Ry(i, j)∂A

∂ry,k(i, j)(27)

Proof: See Appendix B.Based on the above sufficient condition, we developed a gradient-based algorithm for multiple TMs as an

extension of [4]. At node k, the algorithm reduces the routing variables φkl(i, j) for which the quantity∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

]

is large, and increases them for which the above quantity is small. The al-gorithm is described in Appendix C. Furthermore, in Appendix D, we proved that our algorithm converges to anoptimal set of flow routes.

Using ratio variables as control variables, we now extend [3] to the multiple TM case by showing that the optimiza-tion problem is a convex optimization problem, and then solve it using convex optimization techniques.

With multiple TMs, link data rates Fy are linear combinations of B (see (8)). As a result, B is a convex polyhedron.As a simple extension from [3], the loop-free property remains valid with multiple TMs for the case of flow routing.When we restrict our consideration to loop-free B, the set of feasible loop-free route-sets is a convex, closed, andbounded set. From (8) and (12), we can see that cost A is a convex function of B. Thus, the problem is a convexoptimization problem in the case of multiple TMs. Furthermore, when the link cost functions are approximated bypiece-wise linear functions, the problem becomes a LP problem.

Page 10: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 10

Note that with multiple TMs, we require many more control variables (|V |(|V | − 1)|E|) compared to the single TMcase (|V ||E| when using destination-based link data rates as control variables).

V. OPTIMAL DESTINATION ROUTING WITH MULTIPLE TMS

In this section, we explore ways of computing an optimal set of destination routes for multiple TMs. It is difficult toextend the existing gradient-based method [4] and convex optimization method [3], from the case of single TM to thecase of multiple TMs. We show that it is NP-complete even to determine the feasibility of a set of multiple TMs. Thuswe propose and evaluate a heuristic algorithm for computing routes.

Let us begin by considering the case where routing variables Φ are used as control variables. With a single TM, fromany feasible set of loop-free routes, the gradient-based algorithm [4] converges to an optimal set of routes. However,with multiple TMs, we find local minima, which makes it hard to solve the problem using gradient-based methods.The following example demonstrates the existence of local minima. The example is based on network3 G (shown inFigure 4) and two TMs R1, R2 (associated with weights w1 = w2 = 0.5),

100

202

1 4

31000

1000

20ÌÍoÎS϶СÑ

ÒkÓwÔzÕ+Ö¡×oØÙ

ÚÛ+ÜSݶޡß

à#áãâåäæç¨èé

Fig. 4. A topology to illustrate the local-minima and non-convexity

R1 =

0 0 0 80 0 0 00 0 0 830 0 0 0

R2 =

0 0 0 00 0 0 50 0 0 00 0 0 0

(28)

Note that routing variables (φ14(4), φ23(4)) completely determine the set of routes, and thus the cost. With a singleTM R1 (R2), Figure 5 shows cost A1 (A2), as a function of (φ14(4), φ23(4)). We can see that there are no local minima.Thus, gradient-based methods can be used to solve the problem. However, with two TMs, we find local minima. Figure6 shows A as a function of (φ14(4), φ23(4)). We can see that the global optimal is at (φ14(4) = 1, φ23(4) = 1) andlocal minima is around (φ14(4) ≈ 0.5, φ23(4) = 0). Hence, a gradient-based method gets stuck at this local minimapoint. Additionally, in Appendix E, we show that the ratio between the cost of local minima and that of global optimacan be arbitrarily large.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

φ14

(4)

φ 23(4

)

5.45.45 5.455.5

5.5 5.55.55

5.55

5.55

5.55

5.555.

6

5.6

5.6

5.6

5.6

5.65

5.65

5.65

5.65

5.7

5.7

5.7

5.7

5.75

5.75

5.75

5.75

5.8

5.8

5.8

5.8

5.85

5.85

5.85

5.85

5.9

5.9

5.9

5.9

5.95

5.95

5.95

5.95

6

6

6

6

6.1

6.1

6.1

6.2

6.2

6.2

6.3

6.3

6.3

6.4

6.4

6.4

6.5

6.5

6.5

6.6

6.6

6.6

6.7

6.7

6.7

6.8

6.8

6.9

6.9

7

7

7.1

7.1

7.2

7.2

7.3

7.3

7.4

7.4

7.6

7.6

7.8

7.8

8

8

8.2

8.4

8.6

8.899.29.49.6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

φ14

(4)

φ 23(4

)

0.06 0.06 0.06

0.08 0.08 0.08

0.1 0.1 0.1

0.12 0.12 0.12

0.14 0.14 0.14

0.16 0.16 0.16

0.18 0.18 0.18

0.2 0.2 0.2

0.22 0.22 0.22

0.24 0.24 0.24

0.26 0.26 0.26

0.28 0.28 0.28

0.3 0.3 0.3

0.32 0.32 0.32

Fig. 5. A1 (left), A2 (right) as a function of routing variables

An alternative formulation of the optimization problem is to use ratio variables B as control variables. In the caseof destination routing, although the cost A is a convex function of B, we find that the set of feasible route-sets Bis not convex. To demonstrate a counter-example, note that (B14(1, 4), B12(1, 4), B23(1, 4), B23(2, 4)) completely

3We use directed graph for ease of exposition.

Page 11: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 11

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

φ14

(4)

φ 23(4

)2.822.832.842.85

2.86

2.87

2.872.87

2.88

2.88

2.88

2.88

2.89

2.89

2.89

2.89

2.9

2.9

2.9

2.9

2.9

2.91

2.91

2.91

2.91

2.91

2.92

2.92

2.92

2.92

2.922.94

2.94

2.94

2.942.

96

2.96

2.96

2.96

2.98

2.98

2.98

2.98

3

3

3

3

3.02

3.02

3.02

3.02

3.04

3.04

3.04

3.04

3.06

3.06

3.06

3.06

3.08

3.08

3.08

3.1

3.1

3.1

3.15

3.15

3.15

3.2

3.2

3.2

3.25

3.25

3.25

3.3

3.3

3.3

3.35

3.35

3.35

3.4

3.4

3.4

3.45

3.45

3.5

3.5

3.6

3.6

3.7

3.7

3.8

3.8

3.9

3.9

4

4

4.1

4.2

4.34.4

4.54.64.74.8

5

Fig. 6. A = 0.5A1 + 0.5A2 as a function of routing variables

determines the set of routes, and thus the cost. (1, 0, 0, 0) and (0, 1, 1, 1) are two feasible sets of destination ratiovariables. However, the average of the two vectors, (0.5, 0.5, 0.5, 0.5), is not a set of destination ratio variables. SinceB is not convex, we cannot solve the problem as a convex optimization problem.

With multiple TMs, we next prove that it is NP-complete to determine whether the set of feasible destination route-sets Ψ (or B) is empty or not. Our proof is given for the case of a set of two TMs.Problem Description: Feasibility of a set of Two TMs in the case of Destination Routing (F2TDR).Instance: Network4 G, Integer-valued link capacity C, Integer-valued TM R1, R2.Question: Is there a set of destination routes Φ (or B) of rational numbers in the set of feasible route-sets Ψ (or B).

Theorem V.1: F2TDR is NP-complete.Proof: As Ψ and B are equivalent (see Theorem III.2), and the relationship between Φ and B is rational (see (4)),

we only prove the theorem for the case of Φ.For TM R1, R2, given a set of destination routing variables Φ, we can calculate link data rates Fy, y ∈ 1, 2 using

equations (5) and (7), and check the feasibility in polynomial time. Thus, F2TDR belongs to NP. Next, it suffices toshow: 3SAT ∝ F2TDR.

Let the clauses of the 3SAT problem be U1, . . ., Ul and x1, . . ., xk, x1, . . ., xk be the literals, where l, k ≥ 1.Network G is constructed as follows. For each variable xi, we construct a lobe shown in Figure 7. For each clauseUj , we create two nodes (sj and tj). sj is connected to vi

j , and vij+1 to tj if and only if xi appears in sj . Also, sj is

connected to vij , and vi

j+1 to tj if and only if xi appears in sj . The capacity of each link is 1.

êëìíÁîï ð>ñò

ó>ô

õö÷ø ùúûü ýþ!ÿ

! "

Fig. 7. Lobe for each variable xi

Next, we construct two TMs R1 and R2. In R1, R1(sj , tj) = 1, j ∈ 1, . . . , l, and R1(vi0, h

i) = 1, R1(ui, hi) = 1,

i ∈ 1, . . . , k. In R2, R2(sj , tj) = 1, j ∈ 1, . . . , l, and R2(vi0, h

i) = 1, R2(ui, hi) = 1, i ∈ 1, . . . , k.

(a) Assume that there is a feasible set of destination routing variables Φ satisfying the two TMs. Let xi =

dφgiui(hi)e. In Φ, assume traffic from sj to tj flows through lobe i. If it flows through link (vij , v

ij+1), then φgiui(hi)

4We use directed graph for ease of exposition.

Page 12: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 12

must be 1, otherwise routing Φ is not feasible for R1. Thus Uj is satisfied. If it flows through link (vij , v

ij+1), a similar

argument holds. This completes the proof that the expression is satisfiable.(b) If the expression is satisfiable, we set (φvi

0gi(hi), φvi0gi(hi), φgiui(hi)) to be (1, 0, 1) if xi is 1 and (0, 1, 0)

otherwise. Since each clause Uj contains at least one literal xi or xi which is 1, traffic from sj to tj must be forwardedthrough either link (vi

j , vij+1) or link (vi

j , vij+1) of lobe i depending on whether xi or xi is 1. Φ is then a feasible set of

destination routing variables.Thus, the 3SAT problem is satisfied if and only if there is a feasible set of destination routes Φ (or B) of rational

numbers.We have proved that F2TDR is NP-complete. The routing optimization problem is even harder. Consequently, we

propose a heuristic algorithm to solve the problem.As a guideline for our heuristic algorithm, we first obtain the following upper and lower bounds on the optimal cost

in the case of a feasible set of n TMs.Theorem V.2: Let R =

y wyRy and R = maxy Ry where the max is element-wise. If R is feasible, then the set

of n TMs R = R1, . . . , Rn is feasible, and R is feasible. Let AOy , y ∈ 1, . . . , n, AO, AO be the optimal cost for

TM Ry, R and R respectively, we have,

AO ≤n∑

y=1

wyAOy ≤ AFO ≤ ADO ≤ AO (29)

where AFO and ADO are the optimal cost of the n TMs for flow routing and destination routing respectively.Proof: First, we prove that AO ≤

y wyAOy . Let By be a set of flow routes for TM Ry, y ∈ 1, . . . , n. We

can construct a set of flow routes B for TM R,

Bkl(i, j) =

y wyRy(i, j)By,kl(i, j)∑

y wyRy(i, j)(30)

Let fy,kl(By) denote the link data rate for TM Ry given By, and let fkl(B) denote the link data rate for TM R givenB. Combined with equation (8), we have

fkl(B) =n∑

y=1

wyfy,kl(By) (k, l) ∈ E (31)

Because of the convexity of cost A as a function of link data rates, we have,

AO ≤n∑

y=1

wyAOy (32)

Second, we prove that∑

y wyAOy ≤ AFO ≤ ADO. Given any set of flow routes B, we have AO

y ≤ Ay, y ∈

1, . . . , n, thus∑

y wyAOy ≤ A. As a result,

n∑

y=1

wyAOy ≤ AFO (33)

As the set of destination route-sets is a subset of the set of flow route-sets. we have,

AFO ≤ ADO (34)

Finally, we prove ADO ≤ AO. Given any set of destination route B, from (8), we have fy,kl ≤ fkl. Thus,

ADO ≤ AO (35)

Combining the above steps yields (29).

Page 13: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 13

In our heuristic algorithm, we compute an “expected TM” as the element-wise expectation of the TMs based onthe perturbed weights. We then compute an optimal set of routes for this single “expected TM” and use this as oursolution for the n TM problem. From theorem V.2, we see that the optimal cost of R provides an upper bound tothe problem. To ensure that the solution of our heuristic algorithm is also upper bounded by AO, we incorporateR as an extra perturbation dimension when we calculate the “expected TM”. Formally, a perturbed weight vector isrepresented by ω = (ω1, ω2, . . . , ωn, ωn+1), ωy ∈ [0, 1], y ∈ 1, . . . , n+1,

∑n+1y=1 ωy = 1, where ωy, y ∈ 1, . . . , n

is the perturbed weight of TM Ry, and ωn+1 is the perturbed weight for R = maxy Ry. We use Ω to representthe set of perturbed weight vectors. Given a perturbed weight vector ω ∈ Ω, a) we calculate the “expected TM”R =

∑ny=1 ωyRy +ωn+1R, b) and then find an optimal set of destination routes for the “expected TM” R (Note, there

may be more than one optimal set of destination routes for R; we randomly select one of them). c) Finally, we evaluatethe cost A for the set of n TMs given the set of routes derived in step b.

Let g denote the mapping from Ω to the cost A as described by the above procedure. Our heuristic algorithm findsthe perturbed weight vector ω ∈ Ω with the minimum cost AO(Ω). The set of destination routes achieving AO(Ω) isthen the “good” set of routes for the set of n TMs returned by our heuristic algorithm.

Because of the contribution of R to R, we have,

AO(Ω) ≤ AO, if R is feasible (36)

Our heuristic algorithm consists of two stages: a global stage and a local stage. The global stage examines theperturbed weight vector space Ω and identifies promising perturbed weight vectors. The local stage focuses on thepromising perturbed weight vectors and attempts to quickly improve the quality. Similar methods are used in [5] and[11] to solve OSPF routing optimization problems.

In the global stage, uniform searching effectively identifies promising perturbed weight vectors [11]. For functiong(ω), ω ∈ Ω with a range of [AO(Ω), AM(Ω)], the distribution function of g is defined as:

γΩ(A) =m(ω ∈ Ω | g(ω) ≤ A)

m(Ω)(37)

where A ∈ [AO(Ω), AM(Ω)] and m(·) denotes Lebesgue measure, a measure of the size of a set. Assuming A(r) ∈

[AO(Ω), AM(Ω)] such that γΩ(A(r)) = r, r ∈ [0, 1], an r-percentile set in Ω is defined as:

τΩ(r) = ω ∈ Ω | g(ω) ≤ A(r) (38)

Consider l randomly generated perturbed weight vectors ω1, ω2, . . ., ωl, and let ω1, ω2, . . ., ωl be the correspondingperturbed weight vectors ranked in increasing order of g. According to [12], the probability of wk in τΩ(r) is,

P (ωk ∈ τΩ(r)) =

∫ r

0

l!

(k − 1)!(l − k)!xk−1(1 − x)l−kdx (39)

It takes 183 samples for the 10th top ranked sample, ω10, to reach 0.1 − percentile with a probability of 99%.During the global stage, we uniformly sample 183 independent perturbed weight vectors through a method given in

[13]. The most promising 10 samples are then passed to the local stage to improve the quality.During the local stage, we use an iterative procedure to make improvement. The perturbed weight vector space Ω is

discretized and a neighborhood structure N (ω) is defined on it. Starting from a promising perturbed weight vector ω,at each iteration, the neighbor perturbed weight vector with the lowest cost is chosen for the next iteration. In order thatour algorithm not become trapped in a local minimal, it allows non-improvement moves so that the search proceeds ina larger neighborhood. The search stops when the number of iteration reaches certain threshold (100 is used for eachpromising weight vector in the results of this paper) or the quality of result is satisfactory.

We define the neighborhood structure N (ω) as follows. First, ω is discretized so that ωi can only take a value from0, 1/δ, 2/δ, . . . , 1. Second, ω′ is a neighbor of ω if they differ in 2 dimensions. The maximum number of neighborsfor a perturbed weight vector is thus n(n + 1).

Page 14: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 14

We present our results obtained using a synthetic network (50 nodes and 156 links). The synthetic network isproduced using the generator GT-ITM [14], based on a model of Calvert et al. [15] [16]. This model places nodes ina unit square, thus generating a distance between each pair of nodes. Links are divided into two classes: local accesslinks and long distance links. The capacity is 200 for a local access link and 1000 for a long distance link. We generateTMs using the methods in [5]. For each node v ∈ V , we pick two random numbers Ov, Qv ∈ [0, 1]. Furthermore, foreach node pair (vi, vj), we pick a random number Z(vi,vj) ∈ [0, 1]. For vi and vj with Euclidean distance l, the ratetraffic between vi and vj is

αOviQvjZ(vi,vj)e−l/2L (40)

where α is scale parameter and L is the largest Euclidean distance among all pair of nodes. The values Ov, Qv modelsthe degree to which a node generates or attracts traffic. The distance l models the traffic locality. In this model, thereis more traffic between close pairs of nodes.

With n = 3 TMs associated with weights w1 = w2 = w3 = 1/3, we compare the results of our heuristic algorithmwith the lower bound (

y wyAOy ), the upper bound (AO), and a baseline algorithm SINGLE, which chooses the best

set of routes out of the n sets of routes, that optimize for each TM. In our heuristic algorithm, we choose differentprecisions (δ = 1, and δ = 10). When δ = 1, we choose between the set of routes optimized for R and the setof routes given by SINGLE. Thus, we call it SINGLE + MAX . When δ = 10, we are searching a “good” set ofroutes by mixing the n TMs and R. We call the resulting heuristic MIX (SINGLE + MAX ). In our experiments, weuse piece-wise linear functions (approximation of M/M/1) as link cost functions, and we use AMPL/CPLEX [17] tocompute the optimal set of destination routes for a single “expected TM”.

0

100

200

300

400

500

600

1 2 3 4 5 6 7 8 9 10 11 12 13 14

cost

demand

UPPER

SINGLE

SINGLE+MAX

MIX(SINGLE+MAX)

LOWER

Fig. 8. Experiment results with a synthetic network (50 nodes, 156 links) and 3 TMs

The results of our experiments are presented in Figure 8 with different scalings of the TMs. In the experiments, wesee that the cost rises as demand increases. All curves start off flat, and then, start increasing rapidly. And the demandbecomes too large to be feasible as link capacity constraints are reached. This behavior is somewhat similar to that ofa single link.

We can see that the curve of SINGLE, SINGLE+MAX and MIX(SINGLE+MAX) are upper-bounded by the curve ofUPPER and lower-bounded by the curve of LOWER. We also see that our heuristic algorithm MIX(SINGLE+MAX)does very well, always falling within 11% of LOWER.

When R = maxyRy is feasible (scaled up to 8.8), we can see that the cost generated by SINGLE+MAX is mostlylower than SINGLE, and is close to MIX(SINGLE+MAX). This indicates that the optimal set of routes for the element-wise max TM R can be a “good” solution to the problem. When R is no longer feasible, the cost returned by SINGLEis the same as the cost returned by SINGLE+MAX, as expected. As demand increases (scaled between 8.9 and 12.2),we can see that SINGLE may return high cost solution (70% more than the cost of MIX(SINGLE+MAX)) or cannoteven find a feasible set of destination routes. When demand approaches the limit that the network can carry (scaledbetween 12.2 and 13.6), SINGLE cannot find a feasible set of destination routes while MIX(SINGLE+MAX) can.

VI. CONCLUSION AND DISCUSSIONS

The key contributions are summarized as follows:

Page 15: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 15

1. We extended the formulation of the route optimization problem from the case of a single TM to the case ofmultiple TMs. Specifically, we extended the formulation in [4] that uses routing variables as control variables, and weextended the formulation in [3] that uses ratio variables as control variables.

2. We identified the fundamental difference in the route optimization problem between the case of a single TM andthe case of multiple TMs. We showed that unlike the single TM case, with multiple TMs, the optimal cost of flowrouting may be lower than that of destination routing, and the optimal cost of destination route-sets with loops may belower than that of loop-free destination route-sets.

3. In the case of flow routing, we extended the solution methods for a single TM to the case of multiple TMs. Withrouting variables as control variables, we extended [4] to solve the problem with multiple TMs using gradient-basedmethods; with ratio variables as control variables, we extended [3] to solve the problem using convex optimizationtechniques, and thus solve the problem using LP when link costs are piece-wise linear functions.

4. In the case of destination routing, we demonstrated the inherent difficulties of the problem with multiple TMs.We identified local minima when routing variables are used as control variables. Local minima make it difficult tosolve the problem using gradient-based methods. We also demonstrated that the set of feasible route-sets is not convexwhen ratio variables are used as control variables. i.e., the optimization problem is not a convex optimization problem.Finally, we proved that it is NP-complete even to determine the feasibility of a set of multiple TMs.

5. In the case of destination routing, we proposed and evaluated a heuristic algorithm.With multiple TMs in the case of flow routing, although we have shown that the problem can be solved by extending

existing methods, the extremely large number of control variables can hardly be handled by a single computer (Wehave 3 million control variables for a 100-node network with 300 links). As a result, distributed computation might bedesirable to solve the problem. The extension of Gallager’s work may be a useful starting point although it is necessaryfor all routers to get derivative information for all TMs.

REFERENCES

[1] D. Awduche, J. Malcolm, J. Agogbua, M. O’Dell, and J. McManus/IETF, “Requirements for traffic engineering over MPLS (RFC 2702),”1999.

[2] J. Moy/IETF, “OSPF version 2 (RFC 2328),” 1998.[3] David G. Cantor and Mario Gerla, “Optimal routing in a packet-switched computer network,” IEEE Transactions on Computer, vol. C-23,

no. 10, pp. 1062–1069, 1974.[4] Robert G. Gallager, “A minimum delay routing algorithm using distributed computation,” in IEEE Transaction on Communications,

January 1977, pp. 73–85.[5] Bernard Fortz and Mikkel Thorup, “Internet traffic engineering by optimizing OSPF weights,” in INFOCOM, 2000.[6] David Applegate and Edith Cohen, “Making intra-domain routing robust to changing and uncertain traffic demands: Understanding

fundamental tradeoffs,” in ACM SIGCOMM, 2003.[7] M. Roughan, M. Thorup, and Y. Zhang, “Traffic engineering with estimated traffic matrices,” in Internet Measurement Conference, 2003.[8] Bernard Fortz and Mikkel Thorup, “Optimizing OSPF/IS-IS weights in a changing world,” in IEEE Journal on Selected Areas in

Communications, 2002, pp. 756–767.[9] Yufei Wang, Zheng Wang, and Leah Zhang, “Internet traffic engineering without full mesh overlaying,” in INFOCOM, 2001.

[10] Ashwin Sridharan, Roch Guerin, and Christophe Diot, “Achieving near-optimal traffic engineering solutions for current OSPF/IS-ISnetworks,” in INFOCOM, 2003.

[11] Tao Ye and Shivkumar Kalyanaraman, “A recursive random search algorithm for large-scale network parameter configuration,” in ACMSigmetrics, 2003.

[12] George Casella and Roger L. Berger, Statistical Inference, Duxbury, 2 edition, 2002.[13] JR. Marshall Hall, Combinatorial Theory, John Wiley & Sons, 2 edition, 1986.[14] E.W. Zegura, “GT-ITM: Georgia tech internetwork topology models (software),” .[15] E.W. Zegura, K.L. Calvert, and S. Bhattacharjee, “How to model an internetwork,” in Proc. 15th IEEE Conf. on Computer Commnications,

1996.[16] K. Calvert, M. Doar, and E.W. Zegura, “Modeling internet topology,” in IEEE Communication Magazine, 1997, vol. 35, pp. 160–163.[17] “AMPL/CPLEX,” http://www.ilog.com.[18] David G. Luenberger, Linear and Nonlinear Programming, Kluwer Academic Publishers, 2003.

VII. APPENDIX A

Proof of Theorem IV.1:As we introduce the set of dummy variables ry, y ∈ 1, . . . , n, (5) becomes,

ty,k(i, j) = 1(k = i)Ry(i, j) + ry,k(i, j) +∑

m

ty,m(i, j)φmk(i, j) (41)

Page 16: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 16

Without loss of generality, for source-destination pair (i, j), take the source node i to be the 1st of the |V | nodes,take the destination node j to be the |V |th of the |V | nodes, and drop the argument (i, j), we thus rewrite (41) as

ty,k = 1(k = 1)Ry + ry,k +

|V |−1∑

m=1

ty,mφmk (42)

Let Ty = (ty,1, . . . , ty,|V |−1), Ry = (Ry + ry,1, ry,2, . . . , ry,|V |−1), and let ϕ be the |V | − 1 × |V | − 1 matrix withcomponents φkl (1 ≤ k, l ≤ |V |− 1). Equation (42) for 1 ≤ k ≤ |V |− 1 is then Ty(I −ϕ) = Ry. From [4], we knowthat I − ϕ must have an inverse. Following the same procedure as [4], we have,

Ty = Ry(I − ϕ)−1 (43)∂ty,k

∂Ry,m= [(I − ϕ)−1]mk (44)

ty,k =∑

m

∂ty,k

∂Ry,mRy,m (45)

∂ty,k

∂φmq=

∂ty,k

∂Ry,qty,m (46)

Take into account that r is a set of dummy variables. i.e., only derivative information when ry = 0, . . . , 0 isuseful. For fixed Ry, equation (44), (45) and (46) become,

∂ty,k

∂ry,m=

∂ty,k

∂Ry,m= [(I − ϕ)−1]mk (47)

ty,k =∂ty,k

∂ry,1Ry,1 (48)

∂ty,k

∂φmq=

∂ty,k

∂ry,qty,m =

∂ty,k

∂ry,q

∂ty,m

∂ry,1Ry,1 (49)

Next, we show that (23), repeated below with the source node and destination node again taken to be 1 and |V |, hasa unique solution.

∂A

∂ry,k=

l

φkl

[

wyD′

kl(fy,kl) +∂A

∂ry,l

]

(50)

Following the same proof as in [4], we solve the above equations and get ∂A∂ry,k

as a continuous function in Φ,

∂A

∂ry,k=

m

∂ty,m

∂ry,k

q

wyφmqD′mq(fy,mq) =

m,q

wy∂fy,mq

∂ry,kD′

mq(fy,mq) (51)

Differentiating A directly with (7), (11) and (12), we get the same unique solution.Finally we calculate ∂A

∂φy,kdirectly using (7), (11) and (12),

∂A

∂φkl=

y,m,q

wyD′mq(fy,mq)φmq

∂ty,m

∂φkl+∑

y

wyD′kl(fy,kl)ty,k (52)

=∑

y

ty,k

[

m,q

wyD′mq(fy,mq)φmq

∂ty,m

∂ry,l

]

+ wyD′kl(fy,kl)

(53)

=∑

y

ty,k

[

∂A

∂ry,l+ wyD

′kl(fy,kl)

]

(54)

We have used (49) and (51) to derive (54), which is the same as (24). This is clearly continuous in Φ given thecontinuity of ty,k and ∂A

∂ry,l, and the proof is complete.

Page 17: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 17

VIII. APPENDIX B

Proof of Theorem IV.2:First we show that (26) is a necessary condition to minimize A by assuming that Φ does not satisfy (26). This means

that there is some i, j, k, l, and m such that

φkl(i, j) > 0,∂A

∂φkl(i, j)>

∂A

∂φkm(i, j)(55)

Since these derivatives are continuous, a sufficiently small increase in φkm(i, j) and corresponding decrease in∂φkl(i, j) will decrease A, thus establishing that Φ does not minimize A.

Next we show that (27), repeated below, is a sufficient condition to minimize A.

n∑

y=1

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

≥n∑

y=1

Ry(i, j)∂A

∂ry,k(i, j)(56)

Suppose that Φ satisfies (56) and has link data rates Fy and node data rates Ty, y ∈ 1, . . . , n. Let Φ∗ be any otherset of routing variables with link data rates F ∗

y and node data rates T ∗y , y ∈ 1, . . . , n. Define

fy,kl(λ) = (1 − λ)fy,kl + λf∗y,kl (57)

A(λ) =n∑

y=1

wy

(k,l)∈E

Dkl(fy,kl(λ)) (58)

Since each link cost Dkl is a convex, non-decreasing function of the link data rate, therefore A, is convex in λ, andhence

dA

λ=0≤ A(Φ∗) − A(Φ) (59)

Since Φ∗ is arbitrary, proving that dA/dλ ≥ 0 at λ = 0 will complete the proof. From (57) and (58),

dA

λ=0=

y,(k,l)

wyD′

kl(fy,kl)

(

f∗y,kl − fy,kl

)

(60)

We now show that∑

y,(k,l)

wyD′

kl(fy,kl)f∗y,kl ≥

y,i,j

Ry(i, j)∂A

∂ry,i(i, j)(61)

Note from (56) that

y,l

wyRy(i, j)D′

kl(fy,kl)φ∗kl(i, j) ≥

y

Ry(i, j)

[

∂A

∂ry,k(i, j)−∑

l

∂A

∂ry,l(i, j)φ∗

kl(i, j)

]

(62)

From Theorem III.1 and equation (6), we know that for source routes Φ∗, ∃B∗, so that

t∗y,k(i, j) = Ry(i, j)

[

m

B∗mk(i, j) + 1(k = i)

]

(63)

Multiplying both sides of (62) by (∑

m B∗mk(i, j) + 1(k = i)), summing over i, j, k and recalling that f ∗

y,kl =∑

i,j t∗y,k(i, j)φ∗kl(i, j) (see (7)) , we obtain

y,k,l

wyD′

kl(fkl)f∗kl ≥

y,i,j,k

t∗y,k(i, j)∂A

∂ry,k(i, j)−

y,i,j,k,l

t∗y,k(i, j)φ∗kl(i, j)

∂A

∂ry,l(i, j)(64)

Page 18: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 18

From (5),∑

k t∗y,k(i, j)φ∗kl(i, j) = t∗y,l(i, j) − 1(i = l)Ry(i, j). Substituting this into the rightmost term of (64)

and canceling, we get (61). Note that the only inequality used here was (62), and that if Φ is substituted for Φ∗, thisbecomes an equality for the equation (23). Thus

y,(k,l)

wyD′

kl(fy,kl)fy,kl =∑

y,i,j

Ry(i, j)∂A

∂ry,i(i, j)(65)

Substituting (61) and (65) into (60), we see that dA/dλ ≥ 0 at λ = 0, completing the proof.

IX. APPENDIX C

We present a distributed gradient-based algorithm to minimize cost A. In our algorithm, a node k is implementedby a process k. All processes have a copy of TMs Ry and weights wy, y ∈ 1, . . . , n. Besides, process k maintainsa set of local routing variables φkl(i, j), (k, l) ∈ E, i, j ∈ V . Next, we use the term “node” and “process”interchangeably.

The algorithm breaks into two parts: a protocol between processes to calculate the∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

]

and an algorithm for modifying the local routing variables. We discussthe protocol part first.

In order to see how process k can calculate∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

]

, for traffic originating from i toj, define node m be the downstream from node q if there is a routing path from q to j through m (i.e., a path withpositive routing variables on each link). Similarly, we define q as the upstream from m if m is downstream from q. Inour algorithm, we focus on the set of loop-free route-sets.

The protocol used to calculate the∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

]

is further divided into two rounds: inthe forward round, for each source and destination pair i, j, each process k waits until it has received the valuety,m(i, j)φmk(i, j), y ∈ 1, . . . , n from each of its upstream neighbor processes m. Then process k calculatesthe node traffic rate ty,k(i, j) using (5) and broadcasts this to all of its downstream neighbor processes; in thebackward round, for each source and destination pair i, j, each process k waits until it has received the value

∂A∂ry,l(i,j)

, y ∈ 1, . . . , n from each of its downstream neighbors l. Then process k calculates the ∂A∂ry,k(i,j)

and the∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

]

using (7) and using (23). and broadcasts the former to all of its upstreamneighbor processes. It is easy to see that the protocol is free of deadlocks because Φ is loop-free.

The algorithm Γ, on each iteration, maps the current routing variable set Φ into a new set Φ1 = Γ(Φ). In order tomaintain loop-free property, for traffic originating from i destined to j and each node k, the algorithm maintains a setHk(i, j) of blocked nodes k for which φkl(i, j) = 0 and the algorithm is not permitted to increase φkl(i, j) from 0. Fornotation convenience we include l such that (k, l) /∈ E in the set Hk(i, j). We first define and discuss the algorithmand then define the sets Hk(i, j).

The algorithm is described as follows. For l ∈ Hk(i, j),

φ1kl(i, j) = 0, ∆kl(i, j) = 0. (66)

For l /∈ Hk(i, j), define

a′kl(i, j) =∑

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

− minm/∈Hk(i,j)

y

Ry(i, j)

[

wyD′

km(fy,km) +∂A

∂ry,m(i, j)

]

(67)

akl(i, j) =a′kl(i, j)

y wyRy(i, j)(68)

∆kl(i, j) = minφkl(i, j),ηakl(i, j)

y wyty,k(i, j) (69)

Page 19: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 19

where η is a scale parameter of Γ to be discussed later. Let lMk (i, j) be a value of m that achieves the minimization in(69). Then

φ1kl(i, j) =

φkl(i, j) − ∆kl(i, j) l 6= lMk (i, j)φkl(i, j) +

l 6=lMk

(i,j) ∆kl(i, j) otherwise.(70)

The algorithm reduces the fraction of traffic sent on non-optimal links and increases the fraction on the best link.The amount of reduction, given by ∆kl(i, j), is proportional to akl(i, j), with the restriction that φ1

kl(i, j) cannot benegative. In turn akl(i, j) is the difference between the marginal cost of the traffic originating from node i to node j atnode k using link (k, l) and using the best link. Note that as the sufficient condition (27) is approached, the changes getsmall, as desired. The amount of reduction is also inversely proportional to

y wyty,k(i, j). The reason for this is thatthe change in link traffic under TM Ry is related to wy∆kl(i, j)ty,k(i, j). Thus when

y wyty,k(i, j) is small, ∆kl(i, j)

can be changed by a large amount without greatly affecting the marginal link cost. Finally the changes depend on thescale factor η. For η very small, convergence of the algorithm is guaranteed, as shown in Theorem IX.2, but ratherslow. As η increases, the speed of convergences increases but the danger of no convergence increases.

We now complete the definition of algorithm Γ by defining the sets Hk(i, j). First define a routing variable φkl(i, j)to be improper if φkl(i, j) > 0 and

y Ry(i, j)∂A/∂ry,k(i, j) ≤∑

y Ry(i, j)∂A/∂ry,l(i, j). We have already saidthat Hk(i, j) includes only k for which φkl(i, j) = 0, and thus, from (23),

minl /∈Hk(i,j)

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

≤∑

y

Ry(i, j)∂A

∂ry,k(i, j)(71)

Assuming weighted positive marginal link costs,∑

y Ry(i, j)∂A/∂ry,k(i, j) <∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A/∂ry,l(i, j)]

if φkl(i, j) is improper, and we see that the algorithm always re-

duces improper routing variables. In fact, since∑

y Ry(i, j)∂A

∂ry,k(i,j) is the weighted marginal cost for the trafficoriginating from i to j at node k, we would expect weighted marginal cost to decrease as we move downstream, andimproper routing variables should be rather atypical.

For a given source and destination pair (i, j), the set of weighted marginal costs∑

y Ry(i, j)∂A

∂ry,k(i,j) forms anordering of the nodes k. Note that if there are no improper routing variables, this ordering is consistent with thedownstreaming partial ordering.

Similar to [4], if Φ is loop-free and Φ1 = Γ(φ) contains a loop for some source destination pair i, j, then thefollowing two conditions must hold.

1) The loop contains some link (k, l) for which φkl(i, j) = 0, φ1kl(i, j) > 0, and

y Ry(i, j)∂A/∂ry,k(i, j) >∑

y Ry(i, j)∂A/∂ry,l(i, j).2) The loop contains some link (l, m) for which φlm(i, j) is improper and for which φ1

lm(i, j) > 0.The first condition reiterates that some routing variables must be increased from 0 to form a loop and that the

algorithm only increases routing variables on links to nodes with smaller marginal cost. The second make use of thefact that if nodes are ranked by marginal cost,

y Ry(i, j)∂A/∂ry,k(i, j), then it is impossible to move around a loopof nodes and have marginal cost monotonically decrease.

Definition: The set Hk(i, j) is the set of nodes l for which either φkl(i, j) = 0 and l is blocked relative to (i, j) or(k, l) /∈ L. A node l is blocked relative to (i, j) if for traffic originating from i destined to j, node l has a routing pathto j containing some link (m, q) for which φmq(i, j) is improper and

φmq(i, j) ≥ η

y Ry(i, j)[wyD′

mq(fy,mq) + ∂A∂ry,q(i,j) −

∂A∂ry,m(i,j) ]

[∑

y wyty,m(i, j)][∑

y wyRy(i, j)](72)

The reason for (72) can be seen from (69) and (71). ∆mq(i, j) = φmq(i, j) and φ1mq(i, j) = 0, so that (m, q) can

not be part of a loop for traffic originating from i destined to j.Theorem IX.1: If the marginal link costs D

kl are positive and Φ is loop-free, then Φ1 = Γ(Φ) is loop-free.Proof: Following similar proof in [4].

Page 20: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 20

The protocol required for a process k to determine the set Hk(i, j) is as follows. Each process k, when it calculates∂A/∂ry,k, determines, for each downstream l, if φkl is improper and satisfies (72). If any downstream neighborsatisfies these conditions, node k adds a special tag to its broadcast of ∂A/∂ry,k. The node k also adds the special tagif the received value ∂A/∂ry,l from any downstream l contained a tag. In this way all nodes upstream of k also sendthe tag. The set Hk(i, j) is then the set of nodes l for with either (k, l) /∈ E or the received ∂A/∂ry,l was tagged.

Theorem IX.2: Assume that for all (k, l) ∈ E, Dkl(fy,kl) has a positive first derivative and nonnegative secondderivative for 0 ≤ fy,kl < ckl and that limfy,kl→ckl

= ∞. For every positive number A0 there exists a scale factor η

for Γ such that if Φ0 satisfies A(Φ0) ≤ A0, then

limm→∞

A(Φm) = minΦ

(A(Φ)) (73)

This is proved in Appendix D. Note that η depends on some upper bound A0 to A; this is natural, since when thelink data rates are very close to capacity, small changes in the link data rates cause large changes in marginal cost.The proof use a ridiculously small value of η to guarantee convergence under all conditions and experimental work isnecessary to determine practical values for η.

X. APPENDIX D

Proof of Theorem IX.2:We prove Theorem IX.2 through a sequence of seven lemmas. The first five establish the descent properties of the

algorithm, the sixth establishes a type of continuity condition, showing that if Φ does not minimize A, the for any Φ∗

in a neighborhood of Φ, A(Γm(Φ∗)) < A(Φ) for some m. The seventh lemma is a new global convergence theoremwhich does not require continuity in the algorithm Γ; Lemmas X.6 and X.7 together establish Theorem IX.2.

Let Φ be an arbitrary set of routing variables satisfying A(Φ) < A0 for some A0. Let Φ1 = Γ(Φ) and letTy, Fy, T

1y , F 1

y , y ∈ 1, . . . , n be the node and link data rates corresponding to Φ and Φ1, respectively. Let F λy ,

(0 ≤ λ ≤ 1),y ∈ 1, . . . , n be defined by fλy,kl = (1 − λ)fy,kl + λf1

y,kl, and let

A(λ) =∑

y,k,l

wyDy,kl(fλy,kl) (74)

From the Taylor remainder theorem,

A(Φ1) − A(Φ) =dA(λ)

λ=0+

1

2

d2A(λ)

dλ2

λ=λ∗

(75)

where λ∗ is some number between 0 and 1. The continuity of the second derivative above will be obvious from theproof of Lemma X.4, which upper bounds that term. The first three lemmas deal with dA(λ)

dλ |λ=0.Lemma X.1:

dA(λ)

λ=0=∑

i,j,k,l

−∆kl(i, j)akl(i, j)∑

y

wyt1y,k(i, j) (76)

Proof: Using the definitions of akl(i, j) and ∆kl(i, j) in (68) and (69),

l

∆kl(i, j)akl(i, j) =1

ywyRy(i, j)

l6=lMk

(i,j)

[φkl(i, j) − φ1kl(i, j)]

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

− minm/∈Hk(i,j)

y

Ry(i, j)

[

wyD′

km(fy,km) +∂A

∂ry,m(i, j)

]

=1

ywyRy(i, j)

l

[φkl(i, j) − φ1kl(i, j)]

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

(77)

=1

ywyRy(i, j)

y

Ry(i, j)∂A

∂ry,k(i, j)−

l,y

φ1kl(i, j)Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

(78)

Page 21: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 21

In (77), we have used (70) to extend the sum over all l and in (78), we have used (23). Multiplying both sides of (78)by∑

y wyt1y,k(i, j), summing over i, j, k, and using (5), (6) and (7), we get

y,i,j,k,l

∆kl(i, j)akl(i, j)wyt1y,k(i, j) =

y,i,j,k

t1y,k(i, j)∂A

∂ry,k(i, j)−∑

y,k,l

f1y,klwyD

kl(fy,kl)

−∑

y,i,j,l

(

t1y,l(i, j) − 1(l = i)Ry(i, j)) ∂A

∂ry,l(i, j)

= −∑

y,k,l

f1y,klwyD

kl(fy,kl) +∑

y,i,j

Ry(i, j)∂A

∂ry,i(i, j)(79)

=∑

y,k,l

(fy,kl − f1y,kl)wyD

kl(fy,kl) (80)

= −dA(λ)

λ=0(81)

We have used (65) to get (80), and (81) from (74), completing the proof.Lemma X.2:

dA(λ)

λ=0≤ −

1

η(|V | − 1)3

i,j,k

∆2k(i, j)

[

y

wyty,k(i, j)

]2

≤ −1

η(|V | − 1)3

y,i,j,k

w2y∆

2k(i, j)t

2y,k(i, j) (82)

where∆k(i, j) =

l

∆kl(i, j) (83)

Proof: From the definition of ∆ in (69), −akl(i, j) ≤ −∑

y wyty,k(i, j)∆kl(i, j)/η. Substituting this into (76)yields

dA(λ)

λ=0≤ −

1

η

i,j,k,l

∆2kl(i, j)

y

wyty,k(i, j)∑

y

wyt1y,k(i, j)

≤ −1

(|V | − 1)η

i,j,k

∆2k(i, j)

y

wyty,k(i, j)∑

y

wyt1y,k(i, j) (84)

where (84) follows from Cauchy’s inequality, (∑

l αlβl)2 ≤ (

α2l )(∑

β2l ), with αl = 1, βl = ∆kl(i, j), and the sum

over l 6= k.Now define t∗y,k(i, j) as the node traffic rate originating from i destined to j at node k if the routing variables φkl(i, j)

(for l 6= lMk (i, j)) are reduced by ∆kl(i, j) but φkl(i, j) for l = lMk (i, j) is not increased. Mathematically t∗y,k(i, j)

satisfiest∗y,k(i, j) =

l

t∗y,l(i, j)[φlk(i, j) − ∆lk(i, j)] + 1(k = i)Ry(i, j) (85)

This has a unique solution because of the loop-freedom of Φ. Subtracting (85) from (5) results in

ty,k(i, j) − t∗y,k(i, j) =∑

l

[ty,l(i, j) − t∗y,l(i, j)]φlk(i, j) +∑

l

t∗y,l(i, j)∆lk(i, j) (86)

From (45), using∑

l t∗y,l(i, j)∆lk(i, j) for Ry,m(i, j), and from (47),

ty,k(i, j) − t∗y,k(i, j) =∑

l

∂ty,k(i, j)

∂ry,l(i, j)

m

t∗y,m(i, j)∆ml(i, j) (87)

Since Φ is loop-free, ∂ty,k(i, j)/∂ry,l(i, j) ≤ 1. Also if ∂ty,k(i, j)/∂ry,l(i, j) > 0, then l is upstream of k for trafficoriginating from i destined to j and φkl(i, j) (and hence ∆kl(i, j)) is zero. Thus

ty,k(i, j) − t∗y,k(i, j) ≤∑

l

m6=k

t∗y,m(i, j)∆ml(i, j) =∑

m6=k

t∗y,m(i, j)∆m(i, j) (88)

Page 22: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 22

Multiplying the left side by ∆k(i, j) ≤ 1 preserves the inequality, yielding

ty,k(i, j)∆k(i, j) ≤∑

m

t∗y,m(i, j)∆m(i, j) (89)

Multiplying wy and summing up over y,∑

y

wyty,k(i, j)∆k(i, j) ≤∑

m

y

wyt∗y,m(i, j)∆m(i, j) (90)

Since the right-hand side of (87) is nonnegative, we also have ty,k(i, j) ≥ t∗y,k(i, j). Multiplying wy and summingup over y,

y

wyty,k(i, j) ≥∑

y

wyt∗y,k(i, j) (91)

The following lemma proved by [4] will be used for further proof.Lemma X.3: Let αk, βk(1 ≤ k ≤ m) be nonnegative numbers satisfying αk ≤

l βl; αk ≥ βk for 1 ≤ k ≤ m.Then

m∑

k=1

αkβk ≥1

m2

k

α2k (92)

Now let αk =∑

y wyty,k(i, j)∆k(i, j) and βk =∑

y wyt∗y,k(i, j)∆k(i, j). Since these terms are nonzero only for

k 6= j, we can take m = |V | − 1. Since the conditions of the lemma are satisfied for this choice,

k

∆2k(i, j)

y

wyty,k(i, j)∑

y

wyt∗y,k(i, j) ≥

1

(|V | − 1)2

k

∆2k(i, j)

[

y

wyty,k(i, j)

]2

. (93)

Since t1y,k(i, j) ≥ t∗y,k(i, j), we can substitute (93) into (84), and proved the first inequality of Lemma 2.

dA(λ)

λ=0≤ −

1

η(|V | − 1)3

i,j,k

∆2k(i, j)

[

y

wyty,k(i, j)

]2

(94)

Additionally, since wyty,k(i, j) ≥ 0, we have[

y

wyty,k(i, j)

]2

≥∑

y

w2yt

2y,k(i, j) (95)

The second inequality of Lemma X.2 is derived by substituting (95) into (94). Proof is then completed.Lemma X.4: Let M be an upper bound of D

′′

kl(fλy,kl) over all y, k, l and over 0 ≤ λ ≤ 1. Then for any λ, 0 ≤ λ ≤ 1,

d2A(λ)

dλ2≤ M(|V | + 2)(|V | − 1)2|V |

y,i,j,k

wy∆2k(i, j)t

2y,k(i, j) (96)

Proof: The bound M must exist because D′′

kl(fλy,kl) is a continuous function of λ over the compact region

0 ≤ λ ≤ 1. Taking the second derivative, we get

d2A(λ)

dλ2=∑

y,k,l

wyD′′

kl(fλy,kl)[f

1y,kl − fy,kl]

2 ≤∑

y,k,l

wyM [f1y,kl − fy,kl]

2 (97)

We now upper bound |f 1y,kl − fy,kl| by first upper bounding |t1y,k(i, j) − ty,k(i, j)|. As in the proof of Lemma X.2,

we have

t1y,k(i, j) − ty,k(i, j) =∑

l

[t1y,l(i, j) − ty,l(i, j)]φ1lk(i, j) +

l

ty,l(i, j)[φ1lk(i, j) − φlk(i, j)]

=∑

l

∂t1y,k(i, j)

∂ry,l(i, j)

m

ty,m(i, j)[φ1ml(i, j) − φml(i, j)] (98)

Page 23: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 23

Since 0 ≤ ∂t1y,k(i, j)/∂ry,l(i, j) ≤ 1, we can upper bound this by

t1y,k(i, j) − ty,k(i, j) ≤∑

m

ty,m(i, j)∆m(i, j) (99)

We can lower bound (99) in the same way, considering only terms in which φ1ml(i, j)−φml(i, j) < 0, and this leads

to|t1y,k(i, j) − ty,k(i, j)| ≤

m

ty,m(i, j)∆m(i, j) (100)

f1y,kl − fy,kl =

i,j

[t1y,k(i, j) − ty,k(i, j)]φ1kl(i, j) + ty,k(i, j)[φ

1kl(i, j) − φkl(i, j)]

|f1y,kl − fy,kl| ≤

i,j

m

ty,m(i, j)∆m(i, j)φ1kl(i, j) +

i,j

ty,k(i, j)|φ1kl(i, j) − φkl(i, j)| (101)

The double sum in (101) has at most (|V | − 1)3 nonzero terms (i 6= j, k 6= j, m 6= j) and the second sum at most(|V | − 1)2 terms. Using Cauchy’s inequality on both terms together, we get

|f1y,kl − fy,kl|

2 ≤ |V |(|V | − 1)2

i,j,m

t2y,m(i, j)∆2m(i, j)[φ1

kl(i, j)]2 +

i,j

t2y,k(i, j)[φ1kl(i, j) − φkl(i, j)]

2

l

|f1y,kl − fy,kl|

2 ≤ |V |(|V | − 1)2

i,j,m

t2y,m(i, j)∆2m(i, j) + 2

i,j

t2y,k(i, j)∆2k(i, j)

(102)

Summing over k, we get∑

k,l

|f1y,kl − fy,kl|

2 ≤ |V |(|V | − 1)2(|V | + 2)∑

i,j,k

t2y,k(i, j)∆2k(i, j) (103)

Multiplying by wy, summing over y, and substituting the result in (97),we get (96) completing the proof.Lemma X.5: For given A0, define

M = maxk,l

maxf :Dkl(f)≤A0/ min wy

D′′

y,kl(f) (104)

η = [M |V |7]−1 miny

wy. (105)

Then for all Φ such that A ≤ A0,

A(Φ1) − A(Φ) ≤ −M |V |7

2(|V | − 1)3

y,i,j,k

wy∆2k(i, j)t

2y,k(i, j). (106)

Proof: Temporarily let M be as defined in Lemma X.4. Combining Lemma X.2 and Lemma X.4,

A(Φ1) − A(Φ) ≤

[

−M |V |7

(|V | − 1)3+

M(|V | + 2)(|V | − 1)2|V |

2

]

y,i,j,k

wy∆2k(i, j)t

2y,k(i, j). (107)

The second term in brackets above is less than half the magnitude of the first term, yielding (106). It follows thatA(Φ1) ≤ A(Φ) ≤ A0. By convexity then Dkl(f

λy,kl) ≤ A0/wy ≤ A0/ min wy for 0 ≤ λ ≤ 1. Thus M as given in

(104) satisfies the condition on M in Lemma X.4, completing the proof.Lemma X.6: Let the scale factor η satisfy (105) for a given A0 and let Φ be an arbitrary set of routing variables that

does not minimize A and satisfies A(Φ) ≤ A0. Given this Φ, ∃ε > 0 and an m, 1 ≤ m ≤ |V |, such that for all Φ∗

satisfying |Φ − Φ∗| < ε,A(Γm(Φ∗)) < A(Φ) (108)

Page 24: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 24

Proof: We consider three cases. The first is the typical case in which no blocking occurs and A(Γ(Φ)) < A(Φ),the second is the case in which blocking occurs, and the third is the case in which A(Γ(Φ)) = A(Φ).

Case 1: No blocking; ∆k(i, j)tk(i, j) > 0 for some y, i, j, k. If no nodes are blocked for Φ, then by definition ofblocking (72), there is a neighborhood of Φ∗ around Φ for which no blocking occurs. In this neighborhood,

a′

kl(i, j) =∑

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)

]

− minm/∈Hk(i,j)

y

Ry(i, j)

[

wyD′

km(fy,km) +∂A

∂ry,m(i, j)

]

(109)

which is continuous in Φ. It follows from (68) and (69) that ∆kl(i, j) is continuous in Φ, and the upper bound toA(Γ(Φ)) − A(Φ) in (106) is continuous in Φ. Since by assumption the bound in (106) is strictly negative, there is aneighborhood of Φ∗ around Φ for which

A(Γ(Φ∗)) − A(Φ∗) < −M |V |7

4(|V | − 1)3

y,i,j,k

wy∆2k(i, j)t

2y,k(i, j) (110)

where ∆k(i, j) and ty,k(i, j) correspond to the given Φ. Choose ε small enough so that (110) is satisfied for |Φ−Φ∗| <ε and also so that

|A(Φ∗) − A(Φ)| <M |V |7

4(|V | − 1)3

y,i,j,k

wy∆2k(i, j)t

2y,k(i, j) (111)

Combining this with (110), we have (108) for m = 1.Case 2: Blocking occurs. For any Φ, we can use (23) to lower bound a′

kl(i, j) by

a′kl(i, j) ≥∑

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A

∂ry,l(i, j)−

∂A

∂ry,k(i, j)

]

(112)

∆kl(i, j)∑

y

wyty,k(i, j) ≥ min

φkl(i, j)∑

y

wyty,k(i, j),η∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

− ∂A∂ry,k(i,j)

]

y wyRy(i, j)

(113)

The lower bounds above are continuous functions of Φ. Since blocking occurs in Φ, there is some i, j, k, l such thatboth

y

Ry(i, j)

[

∂A

∂ry,l(i, j)−

∂A

∂ry,k(i, j)

]

≥ 0 (114)

and

φkl(i, j)∑

y

wyty,k(i, j) ≥η∑

y Ry(i, j)[

wyD′

kl(fy,kl) + ∂A∂ry,l(i,j)

− ∂A∂ry,k(i,j)

]

y wyRy(i, j)(115)

Combining (113) to (115)

∆kl(i, j)∑

y

wyty,k(i, j) ≥η∑

y Ry(i, j)wyD′

kl(fy,kl)∑

y wyRy(i, j)(116)

Since the right-hand side of (113) is continuous in Φ, there is a neighborhood of Φ∗ around Φ for which

∆∗kl(i, j)

y

wyt∗y,k(i, j) ≥

η

2

y Ry(i, j)wyD′

kl(fy,kl)∑

y wyRy(i, j)(117)

And thus, for some y,

∆∗kl(i, j)t

∗y,k(i, j) ≥

η

2

y Ry(i, j)wyD′

kl(fy,kl)∑

y wyRy(i, j)(118)

Equation (108), for m = 1, now follows in the same way as in case 1.

Page 25: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 25

Case 3: ∆kl(i, j)ty,k(i, j) = 0 for all y, i, j, k, l. Let Φ3 be the set of Φ for which ∆kl(i, j)ty,k(i, j) = 0 for alli, j, k, l. Let Φ(l) = Γl(Φ) for the given Φ and let m ≥ 2 be the smallest integer such that Φ(m−1) /∈ Φ3. We first showthat m ≤ |V |. Note first that for any Φ ∈ Φ3, Γ changes φkl(i, j) only for y, i, j, k such that ty,k(i, j) = 0 and thus thenode data rates and link data rates cannot change.

y Ry(i, j)∂A/∂ry,k(i, j) can change, however, and as we shallsee later, must change for some y, i, j, k if Φ does not minimize A.

Now consider Φ(q) (0 ≤ q ≤ m − 2), where Φ(0) denotes the original Φ. Since Φ(q) ∈ Φ3, ∆(q)kl (i, j) > 0 implies

that ty,k(i, j) = 0. From (69), φ(q)kl (i, j) = ∆

(q)kl (i, j) and φ

(q+1)kl (i, j) = 0. For a given i, j, k, all φ

(q)kl (i, j) are reduced

to 0 except for the l which minimizes∑

y Ry(i, j)[wyD′

kl(fy,kl) + ∂A/∂ry,l(i, j)]. Thus, using (23),

y

Ry(i, j)∂A(Φ(q+1))

∂ry,k(i, j)= min

l

(

y

Ry(i, j)

[

wyD′

kl(fy,kl) +∂A(Φ(q))

∂ry,l(i, j)

]

)

≤∑

y

Ry(i, j)∂A(Φ(q))

∂ry,k(i, j)(119)

Since this equation is satisfied for all q, 0 ≤ q ≤ m − 2, we see that∑

y Ry(i, j)∂A(Φ(q))/∂ry,k(i, j) can be

reduced on iteration q only if∑

y Ry(i, j)∂A(Φ(q−1))/∂ry,l(i, j) is reduced on iteration q − 1 for some l such that∑

y Ry(i, j)∂A(Φ(q−1))/∂ry,l(i, j) <∑

y Ry(i, j)∂A(Φ(q))/∂ry,k(i, j). This reduction at node l however implies areduction at some node l′ of smaller differential cost at iteration q − 2 and so forth. Since this sequence of differentialcost is decreasing with decreasing q and since (from (119)) the differential cost at a given node is nondecreasingwith decreasing q, each node in the sequence must be distinct. Since there are |V | − 1 nodes other than the givendestination available for such a sequence, the initial q in such a sequence satisfies q ≤ |V | − 2. On the other hand,if∑

y Ry(i, j)∂A(Φ(q))/∂ry,k(i, j) is unchanged for all y, i, j, k, we see from (119) that Φ(q) satisfies the sufficientconditions to minimize A and then Φ also minimizes A contrary to our hypothesis; thus we must have m ≤ |V |.

Now observe that the middle expression in (119), for q = 0, is a continuous function of Φ and consequently∂A(Φ(1))/∂ry,k(i, j) is a continuous function of Φ for all y, i, j, k. It follows by induction that ∂A(Φ(l))/∂ry,k(i, j)

is a continuous function of Φ for all y, i, j, k and for l ≤ m − 1. Finally Φ(m−1) /∈ Φ3, so it must satisfy theconditions of case 1 or 2; it will be observed that the analysis there apply equally to Φ(m−1) because of the continuityof ∂A(Φ(m−1))/∂ry,k(i, j) as a function of Φ. This completes the proof.

Our last lemma will be stated in greater generality than required since it is a global convergence theorem for algo-rithms that avoids the usual continuity constraint on the algorithm. (See Luenberger [18]) for a good discussion ofglobal convergence).

Lemma X.7: Let Υ be a compact region of Euclidean N space. Let Γ be a mapping from Υ into Υ and let A be acontinuous real valued function in Υ. Assume that A(Γ(Φ)) ≤ A(Φ) for all Φ ∈ Υ. Let AO be the minimum of A

over Υ and let ΥO be the set of Φ ∈ Υ such that A(Φ) = AO. Assume that for every Φ ∈ Υ − ΥO, there is an ε > 0and an integer m ≥ 1 such that for all Φ∗ ∈ Υ satisfying |Φ − Φ∗| ≤ ε, we have A(Γm(Φ∗)) ≤ A(Φ). Then for allΦ ∈ Υ,

limm→∞

A(Γm(Φ)) = AO. (120)

Proof: See [4].Proof of Theorem IX.2: Let Υ be the set of loop-free routing variable Φ such that A(Φ) ≤ A0. We have verified

that Γ maps loop-free routing variables into loop-free routing variables, and from Lemma X.5, A(Γ(Φ)) ≤ A(Φ) forΦ ∈ Υ. Thus Γ is mapping from Υ into Υ. It is obvious that Υ is bounded and easy to verify that any limit of loop-freevariables with A(Φ) ≤ A0 is also loop-free with A(Φ) ≤ A0. Thus Υ is compact. The final assumption of LemmaX.7 is established by Lemma X.6. Thus Lemma X.7 asserts the conclusion of Theorem IX.2.

XI. APPENDIX E

We show an example where the ratio between the cost of local minima and the cost of global optima can be arbitrarilylarge.

Page 26: UMASS CMPSCI TR#04-60 1 On Optimal Routing with ......UMASS CMPSCI TR#04-60 1 On Optimal Routing with Multiple Trafc Matrices Chun Zhanga, Yong Liua, Weibo Gongb, Jim Kurosea, Robert

UMASS CMPSCI TR#04-60 26

100

202

1 4

31000

1000

k#%$'&)(+*,

-/.102435'687

9:4;)<+=>

?A@CBEDGFIHKJML

Fig. 9. A topology to illustrate the arbitrary ratio between local minima and global optima

Given integer k ≥ 100, Figure 9 shows a network G. There are two TMs R1 and R2 with weights w1 = w2 = 0.5,

R1 =

0 0 0 k − (100k)−0.5

0 0 0 00 0 0 100 − k−1

0 0 0 0

R2 =

0 0 0 00 0 0 10 0 0 00 0 0 0

(121)

Note that φ14(4) and φ23(4) determine packet forwarding, thus determine cost A. Given (φ14(4), φ23(4)), the linkdata rate fy,kl is,

f1,12 = R1(1, 4)(1 − φ14(4))

f1,14 = R1(1, 4)φ14(4)

f1,23 = R1(1, 4)(1 − φ14(4))φ23(4)

f1,24 = R1(1, 4)(1 − φ14(4))(1 − φ24(4))

f1,34 = R1(1, 4)(1 − φ14(4))φ23(4) + R1(3, 4)

f2,12 = f2,14 = 0

f2,23 = f2,34 = R2(2, 4)φ23(4)

f2,24 = R2(2, 4)(1 − φ23(4)) (122)

When φ14(4) = 1, φ23(4) = 1, we have ∂A∂φ14(4) > 0, ∂A

∂φ23(4) > 0. Therefore, (φ14(4) = 1, φ23(4) = 1) is a local

minimal. The cost of the relative minimal (φ14(4) = 1, φ23(4) = 1), AREL, satisfies

AREL > p2D14(f1,14) = 5k1.5 − 0.5 (123)

When φ14(4) = 1k−(100k)−0.5 , φ23(4) = 0, we have

f1,12, f2,12 ≤ 1

f1,14, f2,14 < k − 1

f1,23, f2,23 = 0

f1,24, f2,24 = 1

f1,34, f2,34 ≤ 100 − k−1

Therefore,

A < D12(1) + D14(k − 1) + D23(0) + D24(1) + D34(100 − k−1)

= 1/999 + (k − 1) + 0 + 1/19 + (100k − 1) < 101k − 2 (124)

Combining (123) and (124),

limk→∞

AREL

AOPT= ∞ (125)