Topology, Capacity and Flow Assignment
Computer Communication Networks: Analysis and Design (Klei. Vol. 2, Chap. 5)
Original Material Prepared by: Professor James S. Meditch Lecturer:Prof. Massimo Tornatore Typesetter: Dr. Anpeng Huang
1
Topology, Capacity and Flow Assignment Computer Communication - - PowerPoint PPT Presentation
Topology, Capacity and Flow Assignment Computer Communication Networks: Analysis and Design (Klei. Vol. 2, Chap. 5) Original Material Prepared by: Professor James S. Meditch Lecturer:Prof. Massimo Tornatore Typesetter: Dr. Anpeng Huang 1 A.
Computer Communication Networks: Analysis and Design (Klei. Vol. 2, Chap. 5)
Original Material Prepared by: Professor James S. Meditch Lecturer:Prof. Massimo Tornatore Typesetter: Dr. Anpeng Huang
1
A.a. Private/most expensive (star network)
2
A.b. Least cost/slowest (minimal spanning tree) Multidrop lines – polling or contention
3
A.c. Compromise/multiplexing or concentrating (statistical multiplexer)
4
A.d. Large network – combinations of (c)
5
M channels, N nodes Message or packet switching Assumptions: (i) Links and nodes perfectly reliable (combinatorial in nature) (ii) Nodal processing time negligible (for reading, error checking) (iii) Nodal storage infinite (iv) Fixed (or random) routing
6
total average flow entering in the system
jk
N j N k jk 1 1
k j
7
mean bits 1
M/M/1 queue Channel I ,
the network (≠ !)
i
i
i
i
8
M i i 1
9
M i i i C
1
fraction of traffic over j–k node pair
jk
Z
N j N k jk jk N j N k jk jk
1 1 1 1
10
C.1. Given: node locations, , traffic matrix {jk} C.2. Objective function T C.3. Parameters: Ci , i, topology τ C.4 Constraint 4 optimization problems can be defined that differ
1
11
D C d
M i i i
1
) (
Problem Given Minimize w.r.t. s.t. CA i, τ T Ci D FA Ci, τ T i CFA
T Ci, I D TCFA
Ci, I, τ D
i i
C
Increasing complexity
Swap D with T No dual for FA
12
D.1. Model for T Little’s result applied: : one-way or two-way message flow
First take-away: global T can be expressed as sum of local Ti
M i i iT
T N
1
M i i iT
T
1
1
i
13
D.2.a. Message lengths at nodes are independent at each node, and have exponentially distributed length b with p.d.f.
enters the network with a given length and retains that length from source to
messages passing through each node and (ii) the moderate connectivity of the network, which support the assumption that packet lengths can be approximated as independent, exponentially-distributed message lengths.
b
1
14
Poisson arrivals: messages/sec. Exponential service: sec/message
iT
i
i
i i
C x 1
i i i i i i i i i i i
C C C x x x T 1 1 1 1 1
15
sec : message C nb
i
It follows that Other results (easily obtainable):
M i i i i
C T
1
1
i i i i i i
C T N
i i qi
N 1
2
i i i i i
C C W
16
i i i
C
Cont’d:
Note: so far we neglected: 1. control traffic, 2.propagation and nodal processing delay D.2.c.1. Average data message delay when control traffic is present = avg. flow of data messages = avg. length of data message = avg. flow of all traffic = avg. length of all messages = avg. data message delay = avg. service time for data messages = avg. waiting time for all messages
i
1
' i
'
1
i
T
i
x
i
W
17
nb: all traffic = data + control
i i i
' ' ' ' i i i i i
C C W
i i
i i i i i i
C C C T 1
' ' ' '
i i i i i M i i
C C C T 1
' ' ' ' 1
18
The avg. system time (with control traffic) can be now easily calculated as
Pi = propagation delay [sec/msg]
Depends upon the medium and the length of the link, e.g., ground station to geosynchronous
satellite is on the order of 120 to 135 msec.
K = avg. nodal processing time [sec/msg]
K P C C C K T
i i i i i i M i i
1
' ' ' ' 1
19
20
Routing: all of via 1 of via and 5 of via all of via msg/sec msg/sec msec
12
1
C
23
13
3
C
2
1
C
13
3
C
4
1
2
2
5
3
10
23 13 12
5 9 5 2 6 2 4 12 4 10 1 1
3 1 i i i i
C T
225 T
13
21
Fixed or random routing D.2.d.1. Decrease such that for all i So, no queuing in the network, all delay is due to service time (i.e., transmission delay)
M i i i i
C T
1
1
i i
C
M i i i
C T
1
1
M i i i
1
22
For that channel , and, therefore so does . Let be the corresponding value
i i
C
i
T
T
*
23
= avg. path length
proceeding from its source to its destination averaged
24
But Hence, where
14 13 12
3 . 2 . 1 .
14 13 12
n
14 14 13 14 13 12
) ( ) (
14 13 12 1
14 13 2
14 3
3 1 3 2 1
i i
3 1 i i
25
In general, “path” from j to k
jk
jk
N j N k jk jkn
1 1
k j
jk
26
But, Since msg/sec will traverse links in passing through the network Hence, where Using this result, we get for the delay throughput characteristic.
N j N k jk jk M i i
n
1 1 1
jk
jk
n
n
M i i 1
M i i i
C n T
1
27
See formula at pp. 22
; , , So, Also, using either expression for , we have msec This is the avg. msg. delay when the network is very lightly loaded.
10
4
1
2
2
5
3
1 . 1 10 11 n
T
2 . 122
0
T
28
Given: node locations, , , , ; min w.r.t. s.t. Note: the actual problem requires selection of Ci from a finite set, e.g., Ci {300, 900, 1.2k, 1.8k, 3.6k, 4.8k, 9.6k, 19.2kbit/s}, but, to find closed form solution, we consider relax this requirement
jk
1
i
i
D C d
M i i i
1
29
and it can solve using the Lagrangian:
M , 1,2,...... ) ( i C d C d
i i i i
D C d C T
M i i i M i i i i
1 1
s.t. 1 min
M i i i
D C d T J
1
M i i i M i i i i
D C d C
1 1
1 M 1,2,... j C J
j
) (
2
j j j j j
d C C J
30
Let us assume: Then the opt. problem can be written as
j i j j
d C
2
j j j j
d C 1
M i i i M i i i M i i i
d d C d D
1 1 1
1
M i i i e M i i i M i i i
d D d d D
1 1 1
1
31
Solving the Lagrange’s equations: We can then find 𝜸 by «forming the constraint»:
«Excess dollars»
j = 1, 2,……, M (*) {min. required capacity to satisfy flow reqmnt.} + {sq. root allocation of normalized excess capacity} If we substitute Cj in the o.f. Note: from (*)
M i i i j j j e j j
d d d D C
1
j
C
M i i i i
1
M j j j i i i e i i
d d d D C
1
32
Cont’d:
M i M j j j i i i e i
d d d D T
1 1 min
1
M j j j M i i i e
d d D
1 1
1
33
Cont’d:
2 1 2 1
1
M i i i e M i i i e
d D d D
2 1 min
M i i i e
Note: De must be greater than 0!
Special case: for all i Hence, is the constraint Using the definition
1
i
d
C C D
M i i
1
34
Cont’d:
1
M i i e
M i i j e j j
D C
1
2 1 min
1
M i i e
D T
3
10 11 1 C De
11 1 1 2 3 2 2
6 1
i i
bps C
j j j
11 10 11 1000
3
kbps) (in
j j j
C
kbps C C C 6
4 2 1
kbps C 12
3
kbps C C 2
6 5
2 3 2 6 1 min
11 16 10 11 1 1000 1 1
i i e
D T
sec 5 . 687 sec 16 11 m
4
4 2 1
9
3
1
6 5
16
kbps C 34
23
35
FLOWS
CAPACITIES
Approximation of actual cost structures
a. Logarithmic cost (quantity discount) CA is proportional
Lagrange multiplier (iterative solution required)
M i i i
C d D
1
log
i i i i
a b C
M i i iC
d D
1
1
44 .
2 1
i i i i
C g C
2 1
i i i
d g
36
being “balanced” in some physically meaningful way E.3.a. All links in the network have the same avg. utilization Fix “a” by specifying the desired avg. utilization, e.g., Proportional CA
a Ci
i i
1 a
6 .
i
i
) 1 ( a Ma T
37
M i i i i
C T
1
1
E.3.b. All links in the network have the same link delay
Fix “ ” by specifying the desired avg. delay for each link, e.g., Ti msec
i i i
C T 1
i i
38
Require all to be the same and that msec
3
12
13
1
23
bits 200 1
4
1
2
2
5
3
i
T
110 T
1 . 1 n
sec 1 . sec 100 m n T
2000 1
kbps bps C 8 . 2 2800
1
kbps bps C 4 . 2 2400
2
kbps bps C . 3 3000
3
39
[msg/sec] [msg/sec]
F.1. Given τ and {Ci}, minimize T with respect to {i} subject to capacity constraints, 0 i Ci, external traffic requirements {jk}, and flow conservation
M i i i i
1
40
1. Multicommodity-flow non-linear optimization problem 2. Closed-form solution not possible 3. Use iterative computational algorithm 4. Solution shall give both the amount of flows {i} and the corresponding
5. T=T(1,2 …. M) is a convex function of the i’s 6. Capacity constraints, 0 i Ci, are convex 7. Fundamental theorem
1. Any minimum of a convex function over a convex set is the global minimum
8. Best known and most effective algorithm for solving this problem is the Flow Deviation (FD) algorithm 9. FD algorithm based on two basic notions:
0 a1
41
F.3.1. Link “length” , F.3.2. Problem statement subject to capacity, total flow, and commodity flow constraints (a) Linear programming problem (b) Many efficient algorithms available
i
i
C
i
2
i i i i i
C C T l
M i i i
l
i
1
min
i
42
F.4.1. FD algorithm n=iteration index f(n)=(1
n,2 n …. M n) = flow vector on nth iteration
f(0)=initial feasible flow (see Kleinrock vol. II, pp. 344-345) a. Set n=0 b. Solve shortest-path flow problem with weigths li and let c. Set and find such that is minimized
c. Any search method is ok, e.g, Fibonacci search
threshold, stop. Otherwise, set and return to Step 2.
n M n n n
,..., ,
2 1
n n n
a f a f
1
1
1 a
1 n
f T
1 n n
f T f T
1 n n
43
Test ( accuracy threshold) (A) (B)
1 n n
f T f T
1 n n
f T f T
44
F.5.1. Plausibility of FD algorithm Assume given and let Then, and Therefore, to minimize to within first
such that is minimized.
n
f
n n n
a f a f
1
1
n i n i M i n i n n
f f f T f T f T
1 1 1
n i n i M i n i n n
f l a f T f T
1 1
1 n
f T
n i
M i n i n i
l
1
45
Conservation of total avg. flow: If there were linearly independent, then the problem would be over.
4 1
1
i n i i n i n
C T
13 12
13 12 2 1
12 4 3 1
13 4 3 2
13 12 2 1
12 4 3 1
46
where subject to ( refers to ) and where for example
routing
4 1
min
i i i
l
i
2 i i i i
C C l
i
i
13 12 2 1
12 4 3 1
i i
C
99 .
i
min
T
47
Link 1: , Link 2: , Link 3: Link 4: Conservation of commodity flow: 6 eqns. of which 4 are linearly independent
12 12
u
13 12
u
12 13
u
12 32
u
13 23
u
13 13
u
13 12 12 12 1
u u
13 13 12 13 2
u u
13 23 3
u
12 32 4
u
12 12 13 12 12
u u
13 13 23 13 13
u u
13 13 13 13 12
u u
12 12 32 12 12
u u
13 23 13 12
u u
12 13 12 32
u u
48
Shortest path flow subproblem where Subject to and FD algorithm gives , ,
13 12 12 12 1
u u
13 13 12 13 2
u u
13 23 3
u
12 32 4
u
12 12 13 12 12
u u
13 13 23 13 13
u u
13 13 13 13 12
u u
12 12 32 12 12
u u
4 1
min
i i i
l
i
2 i i i i
C C l
i i
C
i
min
T
jk ab
49
G.1. Given τ, minimize T with respect to {Ci} and {i} subject to and 0 i Ci
where
Note: When we combine CA and FA, we are no longer able to give globally optimal solutions, but rather describe procedures that find local minima for T
M i i i
D C d
1
M i i i i
C T
1
1
50
shown that fixed routing is optimal.
– This implies setting a=1 in the FD algorithm
gives only local minima for T.
51
– This means that several initial feasible flows f(0) must be tried
52
a. Converges for each f(0) since the number of possible shortest-path flows is finite b. Since li≥0, there are no negative loops in the shortest- path flow algorithm c. The form of li that results from the “CA part” of algorithm is such that
– See Kleinrock’s Vol. 2, Eq. 5.45
– It implies that once i and Ci become zero, they remain there
d. Since only local minima are possible, one has to be clever in the f(0) that are used
i
l
i
lim
53
) / ( ) / (
2 / 1 1 2 / 1 1
M j i i e i i i e M j i i i
d D d d D n T l
H.1. Given node locations and {jk}, minimize
with respect to τ, {Ci} and {i} subject to and connectivity constraints.
Note: M = no. of links = variable! Note(2): in the slides µ is not reported (..normalized)
M i i i C
d D
1 MAX M i i i i
T C T
1
1
1)
M 1,2,...M i Ci
i
54
a. Real design requires selection of discrete capacities b. Heuristic solution procedure via iterative use of CFA and choices of τ c. Only local minima possible d. di(Ci)= termination cost + (line cost) x (length of line) expressed in $/month
i i i i i
C d a C d
55
CBE (Concave Branch Elimination) Algorithm a. Select τ(0), e.g., fully-connected b. For each channel, assume a power-law approximation and choose di and αi in c. Execute the CFA2 (minimize D subject to constraint T=TMAX). At each iteration in CFA2, use a linearized value for capacity about the current value of flow. If at any step in CFA2, the connectivity constraint is violated, proceed to Step (d) with the previous step CFA2 results; otherwise, let CFA2 run to completion d. Discretize the {Ci } to the nearest actual line capacities available such that i<Ci and T≤TMAX
M i i i
i
C d D
56
algorithm where and adjust the {Ci } accordingly so that i<Ci and T≤TMAX
i i MAX M j j j i i i
d T d d D l
1
1
57
a. jk 1kbps over all possible jk pairs gives =650kbps
d.
M i i i i
i
C d c D
1
58
59
1) 30 initial topologies studied 2) CBE algorithm required 1 to 2 seconds CPU time on 360/91 per topology 3) 0.8≤αi ≤ 1.0 provided good fit to capacity costs and CBE worked well for these values 4) Two best solutions on next slides
60
61
a. Distribution of capacities vs. link lengths b. τ(0) was a fully-connected topology c. Solution has 61 channels d. Cost = $89,580/month
62
63
channels
for medium and long distances; 230kbps for short distances
64
points in the set, the line joining those two points is also in the set
vectors x(1) and x(2) in S, the vector
is also in S for any number between 0 and 1
Examples: Figures A.1 and A.2 represent convex sets, while Figure A.3 is not a convex set.
2 1
65
Theorem 1 The set of all feasible solutions to a linear programming problem is a convex set Theorem 2 The intersection of convex sets is a convex set (Figure A.4) Theorem 3 The union of convex sets is not necessarily a convex set (Figure A.4) Theorem 4 A hyperplane is a convex set Theorem 5 A half-space is a convex set
66
a vector x such that
point in the set that cannot be expressed as the midpoint of any two points in the set. For example, consider the convex set . This set has four extreme points given by (0,0), (0,2), (2,0), and (2,2)
k kx
x x x
2 2 1 1
1
2 1
k
for
i
k i , , 2 , 1
2 , 2 ,
2 2 1
x x x x S
i
67
cx=z for a given vector c≠0 and a scalar z
– The vector c is called the normal to the hyperplane. – For example, is a hyperplane.
cxz or cx≥z for a given vector c≠0 and a scalar z
5 3 2 , ,
3 2 1 3 2 1
x x x x x x H
68
A function of n variables f(x) defined on a convex set D is said to be a convex function if and only if for any two points x(1) and x(2) D and 0 i 1,
2 1 2 1
1 1 x f x f x x f
The figure illustrates the definition of a convex function of a single variable.
69
a. The chord joining any two points on the curve always falls entirely on or above the curve between those two points b. The slope or first derivative of f(x) is increasing or at least non-decreasing as x increases c. The second derivative of f(x) is always non-negative for all x in the interval d. The linear approximation of f(x) at any point in the interval always underestimates the true function value e. For a convex function, a local minimum is always a global minimum
70
71
The linear approximation of f(x) at the point x0, denoted by , is obtained by ignoring the second and other higher
For a convex function, property 4 implies that for all x The gradient of a function f(x1,…xn) is given by The Hessian matrix of a function f(x1,…xn) is an nxn symmetric matrix given by
; ~ x x f
; ~ x x x f x f x x f
x x x f x f x f
n n
x f x f x f x x f ,..., , ,...,
2 1 1
f x x f x x H
j i n f 2 2 1,...,
72
73
Require all Ti to be the same and that msec
3
12
6
13
1
23
bits 200 1
4
1
2
2
5
3
110 T
74
[msg/sec] [msg/sec]
1 . 1 n
sec 1 . sec 100 m n T
2000 1
kbps bps C 8 . 2 2800
1
kbps bps C 4 . 2 2400
2
kbps bps C . 3 3000
3
Ground network and satellite system Determination of T includes 0.5 sec. Assumed propagation delay for each of the three satellite links.
3
42
C
2
34
C
2
32
C
3
24
C
5 . 2
13
C
3
12
C
51 . 1
12
17 .
42
66 .
34
83 .
32
51 . 1
24
49 .
13
51 . 1 T
75