8
IEEE TRANSACTIONS ON COMPUTERS, VOL. c-23, NO. 10, OCTOBER 1974 Optimal Routing in a Packet-Switched Computer Network DAVID G. CANTOR, SENIOR MEMBER, IEEE, AND MARIO GERLA Abstract-The problem of finding optimal routes in a packet- switched computer network can be formulated as a nonlinear multi- commodity flow problem. The application of traditional mathematical programming tech- niques to the solution of the routing problem for reasonably large networks is computationally inefficient. Satisfactory results have been recently obtained with various heuristic techniques; however, such techniques are nonoptimal and subject to several limitations. The purpose of this paper is to present a method, based on decom- position techniques, which is exact and, at the same time, compu- tationally very efficient. Such a method, originally developed for a computer network application, can be extended to a variety of convex multicommodity flow problems. Index Terms-Computer networks, decomposition method, mathematical programming, minimum cost flow, multicommodity flow, packet switching, routing. I. INTRODUCTION THE optimal routing problem in a computer network consists of the determination of the optimal routing policy, i.e., the set of routes on which packets have to be transmitted in order to optimize a well-defined objective function (e.g., delay, cost, throughput etc.).' Under appropriate assumptions, the optimal routing problem can be formulated as a nonlinear multicommodity flow problem [1]. General techniques for solving multicommodity prob- lems can be found in the mathematical programming literature [2], [3]; however,, the straightforward applica- tion of these techniques to the routing problem in com- puter networks proves to be computationally cumbersome. In fact, the algorithms for the determination of optimal topology and channel capacities in a computer network require hundreds of optimal routing computations; therefore, an extremely fast routing technique has to be used. For that reason, considerable effort has been spent in developing heuristic techniques [1], [4]. Quite satisfactory results have been obtained and computational efficiency has been greatly improved; however, all of these tech- niques are affected by various limitations. Manuscript received April 23, 1973; revised February 1, 1974. This work was supported in part by the Advanced Research Projects Agency of the Department of Defense under Contract DAHC15- 73-C-0368, and by the U. S. Atomic Energy Commission under Contract AT(1l-1) Gen 10 Project 14. D. G. Cantor is with the Department of Mathematics, University of California, Los Angeles, Calif. M. Gerla is with the Network Analysis Corporation, Glen Cove, N. Y. ' One can distinguish between routing policies which are deter- mined a priori and are time invariant (deterministic policies), and policies which vary in time, according to load and queue fluctuations (adaptive policies) [5]. Here we restrict the analysis to deterministic policies. In this paper the problem is approached via mathe- matical programming. The constraint equations are first investigated and some interesting properties are recog- nized. Taking advantage of these properties, a decomposi- tion method is applied, in a greatly simplified form, and an algorithm for the exact solution is presented. The algorithm is shown to be computationally competitive with the existing heuristic techniques. II. THE ROUTING PROBLEM Consider a packet-switched (also referred to as store- and-forward) computer communication network [5]. In such a network, messages are segmented into packets, and each packet traveling from source Ni to destination N, is "stored" in a queue at each intermediate node Nk, while awaiting tra-nsmission, and is sent "forward" to N1, the next node in the route from Ni to Nj, when channel (k,l) is free. Thus, at each node there are several queues, one for each output channel. Packet flow requirements between nodes arise at random times and packets are of random length; therefore, channel flows, queue lengths, and packet delay are random variables. Under appropriate assumptions,2 it is possible to relate the average delay T of a packet traveling from source to destination (the average is over time and over all pairs of nodes) to the average flows in the channels. The result of the analysis is [5] NA T = (1/y) fil/(Ci-fi) i=l (1) T total average delay per packet [seconds/packet]. NN number of nodes, NA = number of arcs. rij average packet rate from source i to destination j [packet/second]. y = Ei=INN EJ=__NN rij = total packet arrival rate from external sources (throughput) [packet/ second]. fi total bit rate3 on channel i [bits/second]. Ci capacity of channel i [bits/second]. The expression of T becomes more complicated when more details are included in the model [6], [7]; the method proposed here applies also to those more general models. 2 Assumptions: Poisson arrivals at nodes, exponential distribution of packet length, independence of arrival processes at different nodes, independence assumption of service times at successive nodes- [5]. 3fi is given by the conitributioni of all packets transmitted over channel i. 1062 Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

IEEE TRANSACTIONS ON COMPUTERS, VOL. c-23, NO. 10, OCTOBER 1974

Optimal Routing in a Packet-Switched Computer Network

DAVID G. CANTOR, SENIOR MEMBER, IEEE, AND MARIO GERLA

Abstract-The problem of finding optimal routes in a packet-switched computer network can be formulated as a nonlinear multi-commodity flow problem.The application of traditional mathematical programming tech-

niques to the solution of the routing problem for reasonably largenetworks is computationally inefficient. Satisfactory results havebeen recently obtained with various heuristic techniques; however,such techniques are nonoptimal and subject to several limitations.The purpose of this paper is to present a method, based on decom-

position techniques, which is exact and, at the same time, compu-tationally very efficient. Such a method, originally developed for acomputer network application, can be extended to a variety of convexmulticommodity flow problems.

Index Terms-Computer networks, decomposition method,mathematical programming, minimum cost flow, multicommodityflow, packet switching, routing.

I. INTRODUCTION

THE optimal routing problem in a computer networkconsists of the determination of the optimal routing

policy, i.e., the set of routes on which packets have to betransmitted in order to optimize a well-defined objectivefunction (e.g., delay, cost, throughput etc.).' Underappropriate assumptions, the optimal routing problemcan be formulated as a nonlinear multicommodity flowproblem [1].

General techniques for solving multicommodity prob-lems can be found in the mathematical programmingliterature [2], [3]; however,, the straightforward applica-tion of these techniques to the routing problem in com-puter networks proves to be computationally cumbersome.In fact, the algorithms for the determination of optimaltopology and channel capacities in a computer networkrequire hundreds of optimal routing computations;therefore, an extremely fast routing technique has to beused. For that reason, considerable effort has been spent indeveloping heuristic techniques [1], [4]. Quite satisfactoryresults have been obtained and computational efficiencyhas been greatly improved; however, all of these tech-niques are affected by various limitations.

Manuscript received April 23, 1973; revised February 1, 1974.This work was supported in part by the Advanced Research ProjectsAgency of the Department of Defense under Contract DAHC15-73-C-0368, and by the U. S. Atomic Energy Commission underContract AT(1l-1) Gen 10 Project 14.D. G. Cantor is with the Department of Mathematics, University

of California, Los Angeles, Calif.M. Gerla is with the Network Analysis Corporation, Glen Cove,

N. Y.' One can distinguish between routing policies which are deter-

mined a priori and are time invariant (deterministic policies), andpolicies which vary in time, according to load and queue fluctuations(adaptive policies) [5]. Here we restrict the analysis to deterministicpolicies.

In this paper the problem is approached via mathe-matical programming. The constraint equations are firstinvestigated and some interesting properties are recog-nized. Taking advantage of these properties, a decomposi-tion method is applied, in a greatly simplified form, and analgorithm for the exact solution is presented. The algorithmis shown to be computationally competitive with theexisting heuristic techniques.

II. THE ROUTING PROBLEM

Consider a packet-switched (also referred to as store-and-forward) computer communication network [5].In such a network, messages are segmented into packets,and each packet traveling from source Ni to destination N,is "stored" in a queue at each intermediate node Nk,while awaiting tra-nsmission, and is sent "forward" to N1,the next node in the route from Ni to Nj, when channel(k,l) is free. Thus, at each node there are several queues,one for each output channel. Packet flow requirementsbetween nodes arise at random times and packets are ofrandom length; therefore, channel flows, queue lengths,and packet delay are random variables.Under appropriate assumptions,2 it is possible to relate

the average delay T of a packet traveling from source todestination (the average is over time and over all pairs ofnodes) to the average flows in the channels. The result ofthe analysis is [5]

NA

T = (1/y) fil/(Ci-fi)i=l

(1)

T total average delay per packet [seconds/packet].NN number of nodes, NA = number of arcs.rij average packet rate from source i to destination

j [packet/second].y = Ei=INN EJ=__NN rij = total packet arrival rate

from external sources (throughput) [packet/second].

fi total bit rate3 on channel i [bits/second].Ci capacity of channel i [bits/second].

The expression of T becomes more complicated when moredetails are included in the model [6], [7]; the methodproposed here applies also to those more general models.

2 Assumptions: Poisson arrivals at nodes, exponential distributionof packet length, independence of arrival processes at differentnodes, independence assumption of service times at successivenodes- [5].

3fi is given by the conitributioni of all packets transmitted overchannel i.

1062

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 2: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

CANTOR AND GERLA: OPTIMAL ROUTING

The routing problem for a packet-switched communica-tion network is formulated as follows:

Given: a directed network of NN nodes and NA arcs,an NN X NN matrix R = [rif], called the require-ment matrix, whose entries are nonnegative.

Minimize (over f): T = (1/7y) E_lNAfl (C - fi)where f = ( fsf2,. *,fNA) v

Constraints: 1) f is a multicommodity flow satisfyingthe requirement matrix R. 2) f < C where C =(C1,C2,*,CNA).

(2)

We next investigate the properties of the set of feasibleflows F, defined by constraints 1) and 2).

III. THE SET OF FEASIBLE FLOW PATTERNS

A. Routing Policy RepresentationThe most general routing policy can be described by

providing, for each (i, j) commodity,4 a set of routes7rij(') k = 1, ,Kij from node i to node j, associatedwith some weights aij(k), k = 1,..*,Kj, (aij(k) > 0,Ek=lKiiai,(k) = 1); by that we mean that commodity(i,j) is transferred from i to j along Kij routes, androute 7rij(k) carries a fraction aij(k) of commodity (i]j).A routing policy can also be expressed by a set of

routing tables RTi, i = 1,.7 ,NN [4]. The routing tablefor node i, RTi is an li X NN matrix where li is the numberof nodes adjacent to node i; the entry RTi (kI,d) of such amatrix represents what fraction of the traffic that hasarrived at node i and has destination d must be transmittedto neighboring node k.The entries of a routing table satisfy the following

conditions:

0 < RTi(k,d) < 1, E RTi(k,d) = 1.IC=1

The practical importance of routing tables follovs fromthe fact that each table contains all the informationrequired by the corresponding node for the routing of theincoming traffic.5A very important case of routing policy is the shortest

route policy, which transmits packets along shortest routescomputed according to a well-defined assignment oflengths to the arcs. Such a policy is simply described by theshortest route matrix RM, an NN X NN matrix whoseentry RM (i,j) is the label of the next node on the shortestroute to node j, starting from node i [3].Another representation of a multicommodity flow con-

sists of the vector f of the flows in all channels (recall thatfi is the total flow in channel i, the sum of all commodities

4Commodity (i, j) consists of the ensemble of packets generatedin node i and directed to node j.

I The routing table representation is less general thani the pathrepresentation previously introduced, as it implies that the routingpolicy is memoryless, i.e., it distinguishes packets only on the basisof their destination, regardless of where in the network they orig-inated. However, it can be shown [8] that optimal policies arememory'less.

flowing through i). It can be easily seen that f does notcompletely characterize a multicommodity flow. Forinstance, two different sets of routes might yield thesame f; in the-solution of problem (2), however, such setsof routes can be considered equivalent because they givethe same value of the objective T. It is of interest, there-fore, to investigate the properties of the feasible setF = Fa n Fb where Fa = {f f satisfies multicommodityconstraint 1) }, and Fb = if f satisfies capacity con-straint 2) }.

B. Multicommodity Constraints

Let sij(m,n) be the flow in arc (i,j) due to commodity(m,n). For the conservation of the flow at each node wehave

r-rmn, if i = m

NN NN

sI(mn,) - s(mn) 0 if i # m,n (3)

= +rmn, if i = n

for i = 1,.* ,NN. For nonnegativity of the ilows we have

Sij(m,n) > 0 for all i,j. (4)

Let S(m,n) (51(mn)182(m,n), .,SNA(m,n)) where , (m n) isthe flow due to commodity (m,n) in the arc labeled i, andlet S(mnn) = {S(m.n) S(m,n) satisfy (3) and (4) 1. ThenS(m,n), defined by linear equations (3) and inequalities (4),is a convex polyhedron [2]. If we restrict our considerationto those flows S(mn) that can be represented as a convexcombination of loopless paths,6 then the set S(m,n) is alsoclosed and bounded.By definition, any multicommodity flow f satisfying

requirement matrix R = (rm,n) can be expressed asfollows:

NN NN

f = E E s(m n).mn=l n=1

(5)

Therefore, the set of multicommodity flows Fa is also aconvex, closed, and bounded polyhedron. The flows cor-responding to the extreme points of Fa have the followinginteresting property: they are shortest route flows7 [9].Conversely, one can easily show that all shortest routeflows correspond to extreme points of Fa. In the sequel werefer to such flows as extremal flows (see Fig. 1) .

Since Fa is a convex polyhedron, any f E Fa can beexpressed as a convex combination of extremal flowsso(i), i = 1,. ,r where r is the total number of extremalflows in Fa:

i= 1,.,r. (6)r r

f= E, xi(pi,7 E xi = 1 Xi> 07i=l i-=

6 It can be shown that an optimal routing policy does not allowloops [8].

I A shortest route flow is a multicommodity flow whose routescan be described by a shortest route matrix, computed for a well-defined assignment of lengths 4li to the arcs. It can be shown thatsuch a flow minimizes the linear objective Vlfi [3].

1063

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 3: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

IEEE TRANSACTIONS ON COMPUTERS, OCTOBER 1974

0 (1)

(3)

+ (k)

Fig. 1. Feasible set F and extremal flows.

C. Capacity ConstraintsThe set Fb = If If < C} is a convex set; hence the

feasible set F = F0fn Fb is also convex.Notice that

lim T(f) =+oo,fi-Ci

i=1,*l,NA.

This corresponds to the existence of barriers that preventthe solution from approaching the boundary of Fb when Tis minimized. Using the mathematical programmingterminology, we can say that the objective function in-corporates the capacity constraints as interior penalty orbarrier functions.

This property is very important from a practical pointof view because it guarantees automatically the con-straint 2) -feasibility during the application of the usualnonlinear optimization techniques, once a feasible flow fois found; it allows disregarding constraint 2) and treatingthe routing problem as an unconstrained multicommodityflow problem.

IV. A DECOMPOSITION APPROACH

A. New FormulationThe objective function of (1) is strictly convex (as the

sum of convex functions) and the set F is closed, bounded,and convex: therefore, if F is not empty, one and only onelocal minimum exists, and it is also the global minimum[10]. In order to find the minimum, we apply the decompo-sition method [2] and reformulate problem (2) as fol-lows, using (6):

l NA r rmin T = U[ (k))/(Ci - E X[ko))]

iyi I -i k=1

subject to E = 1k=1

Xk 2 0, k = l,* V,r (7)where

X = (X12 X21 . . .I Xr) -

The constraint equations in (7) are much sim-pler thanthose in (2) ; on the other hand, the number of variables isenormous, and in principle, the knowledge of all extremalflows is required.

However, the effectiveness of the decomposition ap-proach is based on the following facts.

1) Any flow f can be represented by, at most, NA + 1extremal flows; thus, we have to consider no more thanNA + 1 variables Xk at a time.

2) There exists a procedure that sequentially generatesonly the p(k)'s that produce improvement of the objectivefunction.The fundamental steps of the decomposition method are

discussed in the following sections.

B. Maximum Number of Extremal FlowsFact: Any multicommodity flow f can be expressed as a

convex combination of < NA + 1 extremal flows (whereNA = number of arcs).

Proof: Recall from (6) that any f can be expressedas a convex combination of all extremal flows o('), i =1,.*** r

5p0(1)X1 + p1P(2)X2 + +=Pl(r) r fl

(p(02>.l + + °(r)2 = f2

(PNA(1) Xi + + (PNA(Xr = fNA

1XX1 ~+ *-+ X,=1

Xi2O, i=1, -,r. (8)

By assumption, there exists a feasible solution X to (8);therefore, there exists, from the theory of linear pro-gramming [2], a basic feasible solution, i.e., a solution inwhich at most m variables are nonzero, where m is therank of the system's matrix. In our case m < NA + 1;therefore, given any flow f, we can always find a solution Xwith < NA + 1 nonzero components, i.e., we can expressf as a convex combination of < NA + 1 extremal flows.

Q.E.D.

As a consequence, if f is expressed in terms of b >VA + 1 extremal flows, we can always eliminate b -(NA + 1) components from the convex combination. Inparticular, if b = NA + 2, we need to eliminate only oneextremal flow; such an elimination is obtained with thepivot step, a well-known operation in the theory of linearprogramming [2].

C. Conditions for Optimality8From the Kuhn-Tucker theorem [10], a solution X to

problem (7) is optimal if and only if

E X = 1, Xk > 0,k=1

=Tj=Yo if Xk > 0aXk j.o if Xk = 0

where ,uo is a constant.

(9a)

(9b)

8 Similar conditions were stated by Dafermos in [11].

1064

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 4: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

CANTOR AND GERLA: OPTIMAL ROUTING

Let

aT NA

Ik = - = E1i2 (klaXk1

where [- V,T'} is the ith component of -VAT' andwhere a, for nonnegativity of X, must satisfy the following

(10) inequality:

where

AT C_li =-=

Then Yk can be interpreted as the total cost of flow f(k),assuming cost 1i per unit of flow in are i; physically, ,u,represents the increment of delay T per unit incrementof Xk.We can rewrite (9b) as follows:

/O, if Xk > 0

k

I2/o, if Xk = O

Vk. (11)

Condition (11) has a very simple physical interpretation:all nonzero extremal flows must have the same cost /4o(i.e., the same incremental delay), and any extremal flowthat has cost >,Ao must be at zero level. Using (9a),an equivalent formulation of (11) is the following:

E Xk/Ak,=minukr k

or, using (6) and (10),NA NA

, lifi = min {I lj(pi(k)}.i=l k i=l

(12)

(13)

Recalling that the solution of a linear min cost flow prob-lem is always an extremal flow [3], we rewrite (13) asfollows:

NA NA

E lifj = m E livi. (14)i-i vcFa i=1

Condition (14) simply states that f is optimal if and onlyif there exists no flow v that provides a delay incrementless than f. In order to verify (14), only one shortest routecomputation is required.

D. Master ProblemSuppose that we have a restricted set of extremal flows

y(k), k = 1,.. ,b < r, and we want to minimize (7) overthe subset of variables {X1, X--,Xb (restricted masterproblem). This problem can be solved using the gradientprojection method [10], a constrained optimizationmethod in which the gradient VAT, given by [see (10)]

V) T = (I1,lIA2, -,ee b)

is projected on the hyperplane E - 1 = 0, and thecomponents of VxT that point towards unfeasible direc-tions are set to zero. In this way, a feasible downhilldirection -VxT' is obtained. At each iteration of thegradient projection method, the following one-dimensionalminimization over ca is performed:

b

mi T(, (X + a[-V1xT']i) i(i))a>O i=1

a < xi/[vjT']j, if [vxT']i > O, i=1,1*,b.As in the usual gradient method, the computation of

- V, T' and the one-dimensional optimization are repeateduntil 11 VxT'II = 0. When this happens, condition (11)for optimality is satisfied (at least over the restricted setof extremal flows), and therefore the restricted masterproblem is solved.9The next step consists of testing whether the optimal

solution to the restricted master problem is also the optimalsolution to the global problem.

E. The Flow Generating Subproblem

Suppose we have solved the restricted master problem,i.e., we have found a solution X = (X1,X2, * -,Xb) satisfying(11). In order to verify global optimality, we solve thefollowing linear min cost flow problem (the flow generatingsubproblem):

NA

mmin E liv.veFa i=1

Let j9' be the solution of (15) and letNA

t = E l$<p/.i=l

(15)

If ,u' > AO = E lifi, the solution X is a global optimumfrom condition (14). If, on the other hand, g' < ,go, X isnot a global optimum; improvement can be obtained bysolving a new restricted master problem, which includes p'.

V. THE EXTREMAL FLOWS (EF) METHODThe EF method consists of the repeated solution of the

master problem and the subproblem until the requiredaccuracy on the value of the delay T is obtained. Typi-cally, a new extremal flow is generated by the subproblemat each iteration; when several iterations are required, thenumber of current extremal flows is kept < NA + 1 bythe pivot operation. The following is an outline of the EFalgorithm.

EF Algorithm: (16)Step 0-Initialization:Let

b = NA + 1: number of current extremal flows.4)0= ( (1) ,0 ... (b)0) : initial set of extremal flows.O- (X10 -... ,40): initial basic solution.

f = k=1' (k)0.X°k: initial feasible flow.n=1

Step 1-Master Problem:

It should be mentioned that in some situations the straight-forward gradient projection method application does not convergeto an optimum solution; in such cases the method must be properlymodified so as to include antizigzagging precautions [20].

1065

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 5: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

IEEE TRANSACTIONS ON COMPUTERS, OCTOBER 1974

Minimize T(f) over the restricted set of extremal flowsc1n-1. At the end of such minimization, let

ki (Xln",X2",... Xben) optimal solution of the re-stricted master,

P = Zk=lb ((k),nf1.Xkn:optimal flow for the restrictedmaster,

In = (ln81l2n, .* ,lNAn) where li = [ET/lafi]n, vector ofequivalent lengths.

Step 2-Pivot Step:If b = NA + 1, let D4 -.n-' and go to Step 3. If

b = NA + 2, eliminate, with a pivot operation, one of theextremal flows. After the elimination, let

n = ( 1l,22 , . .. ,XNA+1n) new basic solution,Dn= new basis.

Step 3-Subproblem:Compute p"n, the shortest route flow corresponding to

the metric In.Step 4-Stopping Rule:Let

NA

on = E Jn ( fn - (in)i=1

If 0n < 6, where e is a positive tolerance, stop: f is optimalwithin such a tolerance.10 Otherwise go to Step 5.

Step 5: Letb = NA + 2b(=NA+2),n<pnXNA+2n = 0n = n + 1Go to Step 1.

At the end of the algorithm we have the optimal flow f,expressed as a convex combination of at most NA + 1extremal flows. To each extremal flow there is associateda routing matrix; from all such routing matrices, andfrom X, we can obtain the routing tables for f [8].

VI. CONVERGENCE OF THE EF ALGORITHMTheorem: The EF algorithm applied to problem (2)

generates a sequence fn which converges to the optimalsolution f*.

Proof: First notice that the constraint set F is closedand bounded; T(f) is strictly convex and bounded below[T > 0 from (1)]; OT/afi is continuous and C2T/cf 2is bounded above by a positive M < o, for all f EF. n Fb', where Fb' = {f If < c-E}, and e is > 0.11From the above properties, it follows that the delay im-provement obtained in Step 1 of the EF algorithm,AT(fP) = T(f+) - T(fP) 1, is bounded below by thefollowing expression'2 [8]:

10 It can be easily shown [8] that on is an upper bound on theabsolute delay error.

e is sufficiently small, so that fn < C - e, = 1, Co.,o.12 The bound is on the improvement of the first gradieiit method

iteration during the master problem solution; therefore, it appliesregardless of the number of gradient iterations performed (i.e., re-gardless of the accuracy of the master problem solution).

AT(f) >-mmn{(mi)n (17)

whereNA

qn = ME (f,n - in)2i1

NA

ona E J,n ( fn (,,n)i=1

pn = shortest route flow at interation n.

Now, since T(f") is decreasing, liMnb,, T(fP) = T> 0exists;hencelimnl oAT(f") = 0andby (17) limno-O= 0.From footnote 10 it follows that T is the solution to ourproblem and since F is compact and T is strictly convex,the P converge to a limit f*. Notice that the accuracy ofthe master problem solution is not critical to the con-vergence, although it clearly affects the rate of conver-gence. The exactness of the subproblem solution (i.e., micost flow), on the other hand, is essential to convergence.When selecting the number of gradient iterations to beperformed within each master problem optimization, onemust evaluate the delay improvement and the computa-tional effort of an additional gradient iteration, as com-pared to the delay improvement and the computationaleffort produced by a new shortest route computation. Inmost applications, satisfactory results are obtained whenexecution time is equally allocated to master problem andsubproblem.

VII. THE STARTING FEASIBLE FLOW

The technique used here for finding a starting feasibleflow consists of relaxing the capacity constraints and in-troducing penalty functions outside the feasible region.A modified objective function To is introduced (see

Fig. 2):1 NA

To(f) = - Toi( fi)

whereTi( fi), fi < fo

Toi( fi) =

Ti ( foi) + [dT/dfi]foi ( fi - foi), fi > foi

foi = (1 -a)Ci, a << 1.

After such a modification, the capacity constraint isrelaxed, the feasible region is enlarged to all Fa, and anyextremal flow is feasible. In particular, we can choose theextremal flow ((O) corresponding to the metric I lio where

io

Tl 1

Ci=Lfi fi=o =ectThe EF algorithm can be initiated, using the modifiedobjective function To (f ).

If the problem has a solution and if a is small enough,after a few iterations, say at iteration k, we have

1066

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 6: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

CANTOR AND GERLA: OPTIMAL ROUTING

.H

.0E-

00

[dT/df ] f1oi

f.

Fig. 2. Modified objective function for finding the starting feasibleflow.

f(f) < C.Then f(P) E F, and we can continue the application of thealgorithm using the original objective T(f).

VIII. EXTENSIONS

The EF method, here introduced in the context of apacket-switching computer communication problem, is,in fact, very general and can be used to determine theoptimal routing for a variety of network flow applications(communication, transportation [11], distribution prob-lems, etc.).

In particular, the EF method in the form presented inSection V can be applied to any min "cost" flow problemsuch that

1) P (f ) is convex,2) the cost P( f) depends only on the total flow in each

arc,3) aP/afi is continuous and nonnegative,'34) there are no additional constraints unless they may

be included in P( f ) as penalty functions.

More generally, slight modifications to the EF methodenable relaxation of condition 2) and application of themethod to problems in which there are n different classesof "customers," each class contributing differently to thetotal cost (i.e., P = P(f(l);f(2),... f(n)) where f(i) is theflow pattern corresponding to class i). Such classes couldrepresent, for example, different types of vehicles in atransportation network [12], or messages with differentpriorities in a computer communication network [13].Without discussing the details, we just mention that, inan EF algorithm properly modified to include multipleclasses,

1) for each class i we need a distinct basis 4(i), a basicsolution X(i), a flow f(i), i = 1, - * *,n;

2) at each EF iteration we perform n pivot steps, onefor each class;

3) at each EF iteration we solve n min cost flow sub-problems:

NA apmin vk(i, i =1, .. nv k=1afk

and perform n optimality test:NA

Ei l(i)(fk(i) - Ok) < E, i = 1,k=l

4) in the solution of the master problem, the downhilldirection -VP is defined as follows:

-,VP' - (_VP'('),-VP/(2),.. , _-vP'(n))

where - VP'(i) is the usual downhill direction for class i.Notice that the introduction of different classes pro-

duces a formal, rather than conceptual, complication of theEF algorithm. Next, considering condition 4), it is shownin [8] that the EF method can also be extended to convexmin cost flow problems with concave, nonnegative con-straints.

IX. APPLICATION: OPTIMAL ROUTING FORTHE ARPA COMPUTER NETWORK

The ARPA computer network is an experimental packet-switched network connecting several computer facilitiesin the United States. A detailed description of the networkis given in [15][18j], [6], [19]. One of the topologiesrecently proposed for the ARPA network is given inFig. 3; for this topology, the routing problem is solvedhere. The channel capacities are all 50 (kbits/second).The requirement matrix R is assumed uniform rij = r forall i,j $ i; r = 0. The efficiency of the system is meas-ured in terms of the average delay T where T now includesacknowledgment traffic and propagation delay [6]:

1 1. 5dibti'1+Ci -f + A )

(18)1 NA 1

T= - fi VA/ -

'Y i=i ci

where

1/u= average packet length withoutment (bits/packet)

1/y'= average packet length includingment (bits/packet)

di = length of the link (miles), = speed of light (miles/second).

acknowledg-

acknowledg-

The EF algorithm was used to determine the optimalthroughput14 TR = NN(NN - 1)r with the constraintT < Tmax>,. Table I shows the admissible values of trafficlevel r obtained after each EF iteration, with Tmax =

'3The nonnegativity of aP/afi excludes negative cycles, whichwould cause the failure of the shortest route computation, usingmetric 1i = aP/lfi. The nonnegativity assumption is very reason-able as, in general, the cost P(f) increases with the flow in each arc.

14 Notice that the EF algorithm, as formulated in (16), solvesthe min delay problem; however, a straightforward modificationallows solving also the max throughput problem for a given maxadmissible delay Tmax.

1067

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 7: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

IEEE TRANSACTIONS ON COMPUTERS, OCTOBER 1974

SRI UC DAV McL UTAH ILL MIT

UCLA SDC USC NCAR AFWS

Fig. 3. 26 node, 30 arc ARPA network.

TABLE ITHROUGHPUT VERSUS NUMBER OF EF ITERATIONS FOR Tmox =

0.200 S

Number of Iterations r (kbits/second)

1 0.6892 0.7053 0.7174 0.7215 0.7266 0.7277 0.7348 0.7359 0.73610 0.737co 0.745

0.200 s for the network of Fig. 3. Notice that, after teniterations, r is 2 percent within the optimum (number ofiterations = oo).The algorithm was coded in Fortran; each EF iteration

required approximately 0.250 s execution time on an IBM360/91.

X. EF ALGORITHM VERSUS HEURISTICS

Assuming that equal execution time is allocated to themaster problem and the flow generating subproblem inthe EF method, and observing that the heuristic tech-niques [1], [4] also require a shortest route computationand flow assignment at each iteration, we conclude that the

EF method and heuristic techniques are computationwisecomparable. Heuristic algorithms are, in general, easier tocode and require less memory space; furthermore, theygive, in most cases, results which are quite close to opti-mum [1]. However, it is very easy to construct examplesin which they perform very poorly. The EF algorithm,on the other hand, can always be driven to the requiredprecision, as we have upper and lower bounds available ateach iteration. Furthennore, the EF algorithm is veryflexible; it allows for very general objective function, andcan be extended to applications with various classes of"customers."

XI. CONCLUSION

We have presented the EF algorithm, an exact routingalgorithm for the determination of min cost, deterministicrouting policies.The EF algorithm was originally developed for a com-

puter network application; however, it can be extendedto a variety of convex multicommodity flow problems.The computational efficiency of the algorithm is com-

parable to that of the existing heuristics; the choice be-tween EF and heuristics should depend upon memoryavailability, precision requirements, execution time re-quirements, etc., relative to the specific application.Typically, the order of computation time required periteration is between (NN)2 and (NN)3 [22]; therefore,the cost becomes prohibitive for very large nets (NN >100). In such cases, the EF algorithm should be combinedwith appropriate decomposition [3], [21] or partitioning[8] techniques.

REFERENCES[11 H. Frank and W. Chou, "Routing in computer networks,"

Networks, vol. 1, pp. 99-122, 1971.[2] G. B. Danzig, Linear Programming and Extensions. Prince-

ton, N. J.: Princeton Univ. Press, 1963.[3] T. C. Hu, Integer Programming and Network Flows. Reading,

Mass.: Addison-Wesley, 1969.[4] G. L. Fultz, "Adaptive routing techniques for message switch-

ing computer-communication networks," School Eng. and Appl.Sci., Univ. California, Los Angeles, UCLA-ENG-7252, July1972.

[5] L. Kleinrock, Communication Nets: Stochastic Message Flow andDelay. New York: McGraw-Hill, 1964.

[6] , "Analytic and simulation methods in computer networkdesign," in 1970 Spring Joint Comput. Conf., AFIPS Conf.Proc., vol. 36. Montvale, N. J.: AFIPS Press, 1970, pp.569-579.

[7] B. Meister, H. R. Mueller, and H. R. Rudin, Jr., "On theoptimization of message-switching networks," IEEE Trans.Commun., vol. COM-20, pp. 8-14, Feb. 1972.

[8] M. Gerla, "The design of store-and-forward (S/F) networksfor computer communications," Ph.D. dissertation, Dep. Com-put. Sci., Univ. California, Los Angeles, 1973.

[9] L. R. Ford, Jr., and D. R. Fulkerson, Flows in Networks.Princeton, N. J.: Princeton Univ. Press, 1962.

[10] G. Hadley, Non Linear and Dynamic Programming. Reading,Mass.: Addison-Wesley, 1964.

[11] S. C. Dafermos and F. T. Sparrow, "The traffic assignmentproblem for a general network," J. Res. Nat. Bureau Stand-ards-B, vol. 73B, Apr. 1969.

[12] S. C. Dafernos, "The traffic assignment problem for multi-class-user transportation networks," Transportation Sci., vol. 6,pp. 73-87, Feb. 1972.

[13] G. C. Cole, "Computer network measurements: Techniquesand experiments," School Eng. and Appl. Sci., Univ. California,Los Angeles, UCLA-ENG-7165, 1971.

[14] B. Yaged, Jr., "Minimum cost routing for static networkmodels," Networks, vol. 1, pp. 139-172, 1971.

[15] S. Carr, S. Crocker, and V. Cerf, "HOST-HOST communica-tion protocol in the ARPA network," in 1970 Spring JointComput. Conf., AFIPS Conf. Proc., vol. 36. Montvale, N. J.:AFIPS Press, 1970, pp. 589-597.

[16] S. Crocker, J. Haefner, R. Metcalfe, and J. Postel, "Function-oriented protocols for the ARPA computer network," in 1972Spring Joint Comput. Conf., AFIPS Conf. Proc., vol. 40.Montvale, N. J.: AFIPS Press, 1972, pp. 270-279.

[17] H. Frank, I. T. Frisch, and W. Chou, "Topological considera-tions in the design of the ARPA computer network," in 1970Spring Joint Comput. Conf., AFIPS Conf. Proc., vol. 36.Montvale, N. J.: AFIPS Press, 1970, pp. 581-587.

[18] F. E. Heart, S. M. Ornstein, W. R. Crowther, and D. C. Walden,"The interface message processor for the ARPA computer net-work," in 1970 Spring Joint Comput. Conf., AFIPS Conf. Proc.,vol. 36. Montvale, N. J.: AFIPS Press, 1970, pp. 551-567.

[19] L. G. Roberts and B. D. Wessler, "Computer network develop-ment to achieve resource sharing," in 1970 Spring Joint Com-put. Conf., AFIPS Conf. Proc., vol. 36. Montvale, N. J.:AFIPS Press, 1970, pp. 543-599.

[20] P. Wolfe, "On the convergence of gradient methods underconstraint," IBM J. Res. Develop., July 16, 1972.

[21] M. Gerla, W. Chou, and H. Frank, "Computational considera-tions and routing problems for large computer communicationsnetworks," presented at the Nat. Telecommun. Conf., Atlanta,Ga., Nov. 1973.

[22] L. E. Hitchner, "A comparative study of the computationalefficiency of shortest path algorithms," Univ. California, Berke-ley, Oper. Res. Cen. Rep. ORC68-25, Nov. 1968.

1068

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.

Page 8: Optimal Routing in a Packet-Switched Computer Networkwons09.cs.ucla.edu/publication/download/656/74jnl...THEoptimal routing problem in a computer network consists of the determination

IEEE TRANSACTIONS ON COMPIUTERS, VOL. c-23, NO. 10, OCTOBER 1974

David G. Cantor (S'53-SM'70) was born inLondon, England, on April 12, 1935. Hereceived the B.S. degree in physics from theCalifornia Institute of Technology, Pasadena,in 1956, and the Ph.D. degree in mathe-matics from the University of California,Los Angeles, in 1960.From 1960 to 1962 he was an Instructor at

Princeton University, Princeton, N. J., andfrom 1962 to 1964 he was an Assistant Pro-fessor at the University of Washington,

Seattle. Since 1964 he has been a faculty member of the Universityof California, Los Angeles, where he is currently Professor of Mathe-matics and Computer Science. His interests include network theoryand switching networks.

Prof. Cantor is a member of the Association for Computing Ma-chinery, the Society for Industrial and Applied Mathematics, theMathematical Association of America, and the American Mathe-matical Society.

Mario Gerla was born in Milan, Italy, onFebruary 21, 1943. He received the Doctoratein Engineering from the Politecnico di Milano,Milan, Italy, in 1966, and the M.S. and Ph.D.degrees in engineering from the Universityof California, Los Angeles, in 1970 and 1973,

From 1966 to 1968 he was an Officer in theItalian Navy, and was involved in a NATOexperiment on Tactical Satellite Communi-cations. In 1969 he was with the Advanced

Systems Section of the GTE subsidiary in Milan. In September 1969he was awarded a Fulbright scholarship and came to the Universityof California, Los Angeles, as a graduate student, where he partici-pated in the ARPA Network Project and engaged in research oncomputer network design. Since January 1973 he has been with theNetwork Analysis Corporation, Glen Cove, N. Y., where he is in-volved in several computer network projects and presently is Mana-ger of Computer Networking.

Dr. Gerla is a member of the Institute of Management Science.

Procedures For Eliminating Static and DynamicHazards in Test Generation

MELVIN A. BREUER, SENIOR MEMBER, IEEE, AND R. LOYD HARRISON, MEMBER, IEEE

Abstract-One problem associated with test generation algorithmsfor sequential circuits is that they often produce tests which, whenapplied to the circuit under test, create static and/or dynamic hazardswhich may invalidate the test. Usually, for static hazards, but notdynamic hazards, these situations can be predicted using a logicsimulator. In this paper we present procedures which can be addedto path sensitization test generation algorithms so that the resultingprocedure will not produce tests which will be invalidated due tohazards. Incidental to this work is a new simulation technique forhandling both static and dynamic hazards. The principal conceptsbehind this work deal with detecting when hazards are created in acircuit; propagating hazard status information related to a signalline through a circuit; detecting those conditions at flip-flop inputswhich necessitate hazard free conditions; and finally, selecting testinputs so that all hazard free conditions are satisfied.

Index Terms-Dynamic hazards, fault detection, simulation,static hazards, test generation for sequential circuits.

I. INTRODUCTION

MOST computer programs which generate testsequences for sequential logic networks consist of a

Manuscript received August 4, 1973; revised February 1, 1974.This work was supported in part by the Office of Naval Researchunder Contract N00014-67-A-0269-0019 NR 048-299 and in part bythe National Science Foundation Grant GK 23886. Reproduction inwhole or in part is permitted for any purpose of the U. S. Govern-ment.M. A. Breuer is with the Department of Electrical Engineering,

University of Southern California, Los Angeles, Calif. 90007 andconsultant to Hughes Aircraft Company, Fullerton, Calif.

R. L. Harrison is with the Ground Systems Group, Hughes Air-craft Company, Fullerton, Calif. 92634.

few main program modules, one of which is a patterngenerator and another which is a logic simulator. The pat-tern generator determines test vector sequences basedupon one or more procedures such as random patterngeneration, the D-algorithm [1], [2], Boolean differ-ence [3], or the concept of equivalent normal form [4].These tests are then processed through a multi-valuedfault simulator which determines the set of all faultsdetected by the test as well as detecting race and hazardconditions [5], [6]. Tests are often found to be invalidsince they create races and hazards; hence, the faultssupposedly detected by these tests are in reality notdetected. Many simulators employ Eichelberger's tech-nique [7] for detecting hazards; and hence, do not detectthe existence of dynamic hazards.Once a pattern generator has attempted to construct a

test sequence for a fault, and has failed due to a hazardcondition, it typically has no direction on how to proceedto rectify this situation.

In this paper we present methods to be included in anexisting pattern generation procedure so that the resultingprocedure will not generate "harmful" hazards, i.e.,hazards which will invalidate the test.

II. BASIC CONCEPTS

So that the reader can better understand the context inwhich the procedure for generating hazard free tests is tobe applied, we will briefly discuss the mode of testing

1069

Authorized licensed use limited to: Univ of Calif Los Angeles. Downloaded on August 02,2010 at 17:59:22 UTC from IEEE Xplore. Restrictions apply.