CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

25
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

Transcript of CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

Page 1: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE 550Computer Network Design

Dr. Mohammed H. SqalliCOE, KFUPM

Spring 2007 (Term 062)

Page 2: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 2

Outline

Topology Design for Centralized Networks

Multipoint Line Topology

Terminal Assignment

Concentrator Location

Page 3: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 3

Centralized Network Design

Centralized network: is where all communication is to and from a single central site

The “central site” is capable of making routing decisions

→ Tree topology provides only one path through the center (For reliability, lines between other sites can be included)

Center

Concentrator Concentrator

Terminal Terminal Terminal Terminal

High speed lines

Low speed lines

Page 4: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 4

Centralized Network Design Problems

Multipoint line topology: selection of links connecting terminals to concentrators or directly to the center

Terminal assignment: association of terminals with specific concentrators

Concentrator location: deciding where to place concentrators, and whether or not to use them at all

Page 5: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

Multipoint Line Topology

Page 6: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 6

The Greedy Algorithm

At each stage, select the shortest edge possible (myopic or near-sighted): Start with empty solution s While elements exist

Find e, the best element not yet considered If adding e to s is feasible, add it; if not, discard it

May not find a feasible solution when one exists Efficient and simple to implement → widely used Basis of other more complex and effective algorithms A Minimum Spanning Tree (MST) is a tree of minimum total

cost In the case of MST, the greedy algorithm guarantees both

optimality and reasonable computational complexity

Page 7: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 7

Constrained/Capacitated MST (CMST)

CMST Problem: Given:

A central node N0 A set of other nodes (N1, N2, …, Nn) A set of weights (W1, W2, …, Wn) for each node The capacity of each link Wmax A cost matrix Cij = Cost(i,j)

Find a set of trees T1, T2, …, Tk such that: Each Ni belongs to exactly one Tj, and Each Tj contains N0

maxWWji TN i

Trees linksl

lCost )( is minimized

Page 8: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 8

CMST Objective: Find a tree of minimum cost and which satisfies a

number of constraints such as: Flow over a link Number of ports

The CMST problem is NP-hard (i.e., cannot be solved in polynomial time)→ Resort to heuristics (approximate algorithms)

These heuristics will attempt to find a good feasible solution, not necessarily the best, that: Minimizes the cost Satisfies all the constraints

Well-known heuristics: Kruskal Prim Esau-Williams

Page 9: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 9

Kruskal’s Algorithm for CMST

Example: Given a network with five nodes, labelled 1 to 5, and characterized by the following cost matrix

Node 1 is the central backbone node

fmax=5, f1=0, f2=2, f3=3, f4=2, f5=1

Page 10: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 10

Prim’s Algorithm for CMST

Page 11: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 11

Esau-Williams Algorithm for CMST

Node 1 is the central node. tij: is the tradeoff of connecting i to j or i directly to the root

If (tij < 0) → better to connect i to j If (tij ≥ 0) → better to connect i directly to the root

Algorithm:

Page 12: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

Terminal Assignment

Page 13: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 13

Problem Statement Terminal Assignment: Association of terminals with specific concentrators Given:

T terminals (stations) i = 1, 2, …, T C concentrators (hubs/switches)j = 1, 2, …, C Cij: cost of connecting terminal i to concentrator j Wj: capacity of concentrator j Assume that terminal i requires Wi units of a concentrator capacity Assume that the cost of all concentrators is the same xij = 1; if terminal i is assigned to concentrator j xij = 0; otherwise

Objective: Minimize:

Subject to: i = 1, 2, …, T (Each terminal associated with one Concentrator)

j = 1, 2, …, C (Capacity of concentrators is not exceeded)

C

j

T

iijijxcZ

1 1

11

C

jijx

j

T

iiji wxw

1

}1,0{ijx

Page 14: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 14

Assignment Problem

Given a cost matrix: One column per concentrator One row per terminal

Assume that: Weight of each terminal is 1 (i.e., each terminal

consumes exactly one unit of concentrator capacity) A concentrator has a capacity of W terminals (e.g.,

number of ports)

A feasible solution exists iff T ≤ W * C

C1 C2

T1

T2

T3

Page 15: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 15

Augmenting Path Algorithm

It is based on the following observations:

Ideally, every terminal is assigned to the nearest concentrator

Terminals on concentrators that are full are moved only to make room for another terminal that would cause a higher overall cost if assigned to another concentrator

An optimal partial solution with k+1 terminals can be found by finding the least expensive way of adding the (k+1)th terminal to the k terminal solution

Page 16: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 16

Augmenting Path Algorithm

Initially, try to associate each terminal to its nearest concentrator

If successful in assigning all terminals without violating capacity constraints, then stop (i.e., an optimal solution is found)

Else, Repeat

Build a compressed auxiliary graph Find an optimal augmentation

Until all terminals are assigned

Page 17: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 17

Building a Compressed Auxiliary Graph

U: set of unassociated terminals T(Y): set of terminals associated with Y

Page 18: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 18

Building a Compressed Auxiliary Graph

Page 19: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 19

Example

Cost Matrix:

W = 2 (capacity of each concentrator) Solution: (a, H) (b, I), (c, H), (d, G), (e, I), (f, G) Cost = 15

G H I

a 6 3 8

b 2 9 4

c 3 1 4

d 2 5 9

e 1 6 3

f 2 7 9

Page 20: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

Concentrator Location

Page 21: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 21

Problem Statement Concentrator location: deciding where to place concentrators, and whether or not to use

them at all Given:

T terminals (stations) i = 1, 2, …, T C concentrators (hubs/switches) j = 1, 2, …, C Cij: cost of connecting terminal i to concentrator j dj: cost of placing a concentrator at location j (i.e., cost of opening a location j) Kj: maximum capacity (of terminals) that can be handled at possible location j Assume that terminal i requires Wi units of a concentrator capacity xij = 1; if terminal i is assigned to concentrator j; 0, otherwise yj = 1; if a concentrator is decided to be located at site j; 0, otherwise

Objective: Minimize:

Subject to:

i = 1, 2, …, T (Each terminal associated with one Concentrator)

j = 1, 2, …, C (Capacity of concentrators is not exceeded)

C

jjj

C

j

T

iijij ydxcZ

11 1

11

C

jijx

jj

T

iiji yKxw

1

}1,0{, jij yx

Page 22: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 22

Add Algorithm

Greedy Algorithm Start with all terminals connected directly to

the center Evaluate the savings obtainable by adding a

concentrator at each site Greedily select the concentrator which saves

the most money

Page 23: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 23

Add Algorithm

Initialization: M: set of locations Select an initial location m Assume all terminals are connected to m Set L0 = {m} Set k = 0 (iteration count) c'i = cim, i= 1, 2, …, N

Compute:

1. For , do where2. Determine a new m such that:

If there is no such m, go to step 4.3. Update: and for

Set and k:= k+1, and go to Step 1.4. No more improvement possible; stop.

jIi

jiijkk

j dccZZ )(1kLMj \ 0 iijj cciI

kkj

LMj

km ZZZ

k

1

\

1 min

}{1 mLL kk imi cc mIi11 k

mk ZZ

N

iicZ

1

0

Page 24: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 24

Example

Cost Matrix:

Kj = 3, j = 1, 2, 3, 4 (capacity of each concentrator) d1 = 0, d2 = d3 = d4 = 2 Solution: S2 (1, 2, 3), S1 (4), S4 (5, 6) Cost = 9

S1 S2 S3 S4

1 2 1 2 4

2 1 0 1 2

3 4 1 2 2

4 1 2 1 2

5 2 3 2 0

6 4 4 3 2

Page 25: CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)

CSE-550-T062 Lecture Notes - 5 25

References

A. Kershenbaum, “Telecommunications Network Design Algorithms”, McGraw-Hill,1993

M. Pióro and D. Medhi, “Routing, Flow, and Capacity Design in Communication and Computer Networks”, Morgan Kaufmann Publishers, Inc., 2004