• No se han encontrado resultados

The basic topology of a communication network can be modeled by an undirected graph of edges and nodes (vertices) and is referred to by the symbol G(V, E). The network design problem is to synthesize a network topology that will satisfy all of the requirements set forth as follows.

3.2.1 Minimize Cost

Each edge represents a set of communication lines that connect the two nodes. Each line type has a unit cost, uab, which is the cost per unit distance of line type b on edge a (which links the nodes (i, j)). The unit cost of a line is a function of the line’s capacity. For instance, a 6 Mbps line may cost $2 per mile; a 45 Mbps line, $5 per mile, etc. Communication line types are available in discrete capacities, set by the local telephone company or media carrier. Normally, telephone tariff charges follow an ‘economy of scale’ in which the unit cost decreases with increasing line capacity. Additionally, some tariffs may have a fixed charge per line type in addition to a cost per distance fee. In this case, both components of the line cost must be incorporated into one unit cost per line type, per edge (since each edge presumably has a unique length). The fixed cost is divided by the length of the line and added to the cost per unit distance to yield one unit cost per line type, per edge. If an undirected graph, G(V, E), has m edges, and each edge (i, j) has a distance dij and represents l line types, each with a unit cost uab, then the objective function of the optimization problem is:

∑∑

= = m

a l

b

ab ab iju x d

1 1

min (3.1)

where xab is the quantity of line type b’s selected for edge a. Note that each edge a has two other representations: (i, j), and (j, i). So, dij could also be referred to as da.

3.2.2 Maximize Flow

Since minimizing cost while maximizing flow are diametrically opposed objectives, the resolution of this conflict is to specify a requirements matrix, R, where rst represents the minimum amount of continuous capacity required between nodes s and t. The value rst is often referred to as the demand between s and t. Similarly, if the total flow between every

pair of nodes is given by a flow matrix, F, and fst is the flow in G(V, E) from source s to sink t, then the maximum flow requirement could be written as:

st st r

f > (3.2)

Note that, since R and F are symmetric matrices, fst = fts and rst = rts. Also, fii = 0 and rii = 0 along the major diagonal of F and R. The notion of undirected graphs and symmetric matrices here is supported by the fact that carrier lines are inherently bi-directional (for instance, a T-2 line simultaneously carries two signals at 6 Mbps in both directions).

3.2.3 Multi-commodity Flow

Simultaneous use of the network by multiple source-sink pairs is modeled by assigning a unique commodity to the flow between every pair of nodes in G(V, E). Thus, there are n(n!1)∋2 distinct flows, or commodities, in the network. Capacity restrictions limit the total flow on each edge to be at, or below, cij, the total capacity of edge (i, j). Let the term fijk represent the flow of commodity k in edge (i, j). This constraint is expressed as:

ij b

k

ijk c f

=1

(3.3)

where b is the number of commodities in edge (i, j). Note that fijk = fjik and fiik = 0.

3.2.4 Efficient Routing

Whatever the final topology G(V, E) may be, it is nec essary for a design algorithm to provide a way to route all concurrent flows from sources to sinks. This may take the form of one path assigned to a commodity (virtual path routing), or a set of paths assigned to a single commodity (bifurcated routing). In either case, the assignment of flow to each edge must be made explicit by any network synthesis method. Most methods use some form of shortest path routing (Dijkstra, 1959), with the only difference being how the “length” of an edge is defined. In some models, the length may denote physical distance. In others, it may indicate delay (in seconds) or unit cost. When the length of each edge is one, then the path with the minimum number of ‘hops’ is selected. Unless otherwise stated, shortest distance routing will be used by the methods presented in this chapter.

3.2.5 Sufficient Redundancy

In some instances of the network design problem, the goal of achieving minimum cost is realized by a graph of minimum connectivity. For instance, a tree is a graph which connects all nodes with a minimum number of edges. However, any single node (or edge) failure will disconnect the network. Two routes are said to be edge-disjoint if they connect the same source and sink and have no common edges. Similarly, two routes are said to be

node-disjoint if the only nodes they share are the source and sink. Since single point failures are common in networks, an acceptable design method must provide enough redundancy to survive single node failures. However, any redundancy increases the cost of the network. To balance these conflicting goals, a minimum of two node-disjoint paths must exist between every pair of nodes. In the case of a single point network failure, traffic can be sent along an alternate path, albeit at a much slower rate (which, most likely, will not continue to meet the minimum required capacity constraints in R).

3.2.6 Acceptable Delay

The average branch delay, T, is a network-wide metric which measures the average amount of time (in seconds) that a packet will wait before being transmitted along an edge in the network. Kleinrock (1964) has developed a widely accepted model for delay in communication networks, in which each edge is modeled as an independent M/M/1 queue in a network of queues. Each queue has an exponentially distributed mean service time, and an average arrival rate of new packets which follows a Poisson distribution. The packet lengths are exponentially distributed, with an average packet length of 1/Φ. According to Kleinrock, the average delay on edge i is:

i nothing specific can be known about the average packet length (it varies with application), set Φ = 1. Kleinrock defines T, the average delay on any edge in the network, as:

=

where is the total of all minimum flow requirements in the graph, and is defined as:

consider this delay model to be too limiting, because it ignores propagation and nodal delay.

Kleinrock (1970) defines a more comprehensive formula for delay as:

[ ]

where γi is the average packet rate on edge i, Pi is the propagation delay on edge i, and Ki is the nodal processing time at the node in which edge i terminates. The term Ti depends upon the nature of traffic on edge i and the packet length distribution. Since some of these values are application dependent, the more general delay model of equation 3.5 is used.

3.2.7 Conservation of Flow

At each node, the amount of flow into the node must equal the flow out of the node, unless the node is a source or sink of flow for a particular commodity. For a given commodity k, and a given node q, this requirement is expressed as:



where p and r are neighbors of q. Notice that fst represents the flow of one commodity in the network while fijk represents the amount of flow of commodity k in edge (i, j).