Title: A1262322901gVFwj
1Chapter 6 Multispeed Access Designs
2One-speed One-Center Design
Review
Problem Connecting sites to a backbone node, all
links with the same capacity
3Capacitated Minimum Spanning Tree Problem(CMST)
- CMST problem Given a central node N0 and a set
of other nodes (N1, , Nn), a set of
weights(w1,,wn) for each node, the capacity of a
link, W, and a cost matrix Cost(i,j), find a set
of trees T1, , Tk such that each Ni belongs to
exactly one Tj and each Tj contains N0.
4The Esau-William Algorithm
- Heuristic Algorithm but guarantees the tree meets
the capacity constraint - Each node starts off in a tree with 1 node.
- Compute the tradeoff function for each node
- Tradeoff(Nk)minj Cost(Nk, Nj)-Cost(Comp(Nk),Cente
r) - If the tradeoff is negative, a merge is
attractive - Merge is allowed if
- Tradeoff for merging components A and B computes
the potential savings of going to a neighbor
instead of going to the center node.
5Overview
- We need to introduce designs with multiple link
types, because networks are built of a variety of
different links. - The cost of links is set by the market or
government regulations, not any law of nature. - Assume we have 3 different sorts of access links
6Multispeed Access Designs
- Assume the weight of the access sites is in the
range of 2,400 bps to 36 Kbps, what happens if we
are allowed multiple link types and still use
either the Esau-Williams or Sharmas algorithm? - If we use 9.6 Kbps or 56 Kbps links, both
algorithms fail because its impossible to fit 36
Kbps of flow on a single line and still keep the
utilization under 50. - If we use 128 Kbps links, we will massively
overdesign the networks for the smaller nodes.
We need an algorithm that builds a tree with
links of different capacity.
7Continued
- Well replace the capacitated MST problem with a
multispeed MST problem. - Intuitively, the tree should have small-capacity
links at the ends and should become fatter as
we move toward the center of the networks, like
the structure of a real tree.
To define this type of tree we need a
bit more notation.
8Predecessor Function (definition 6.1)
Pred(Root)Root
Root
Pred(2)Root
2
1
?Pred(2) Pred(Pred(5))Pred2(5)Root
3
4
5
Pred(5)2
- A tree T rooted at a node Root can be represented
uniquely by a predecessor function pred V
V on the set of vertices. The predecessor
function moves 1 step closer to the root. - Requirement
- pred(Root) Root
- pred(N) ?N for any other node N
- For any node N, ? n gt 0 such that pred n(N)
Root
A tree is defined by the set of vertices V and
edges (N, pred(N)) for all N ?Root
9Ancestors (definition 6.2)
4
Pred(6)4
6
5
7
8
9
Pred2(9)4
- Given a tree T and the associated predecessor
function, the ancestors of N are all the nodes N
such that -
- pred n (N) N for some
n gt 0 -
Node 5 through 9 are ancestors of node 4. A
misnomer?
10Given the following notations
- A set of nodes N0, N1, N2, , Nn.
- A set of weights (w1, w2, , wn) for each node
- A set of link types L1, L2, , Lm
- Capacities W1, W2, , Wm
- A cost matrix C(i, j, k) that gives the cost of a
link of type Lk between Ni and Nj
11Multispeed CMST (definition 6.3)
4
6
5
7
8
9
- The multispeed CMST problem is to find the tree
rooted at N0 and the link assignments such that - (i)
- (ii)
If N is node 4, then w(4)w(5)w(6)w(7)w(8)w(9)
lt Wlink(4,pred(4))
is a minimum
- A set of link types L1, L2, , Lm
- Clearly if m1, this problem becomes the CMST
problem
12Multispeed Local Access Algorithm(MSLA)
Assume the center is node 0
- Assign each node the smallest link l possible to
connect it to the center. For each node n,
compute spare_capacity(n)Wl -wn and set
pred(n)0 - Calculate trade-offs (savings from linking site n
to site i rather than linking directly to the
center). And upgrade links to carry additional
traffic - Tradeoffn(i) c(n,i, l )
Upgrade(i,wn) c(n,0, l ) - Tradeoff(n) mini Tradeoffn(i)
- Add the edges as long as the tradeoffs are less
than or equal to zero. Terminate when the tree is
built and each edge is assigned to its link type.
- - Upgrade(i,wn) is the cost of adding wn units to
the links that connect i and 0.
13MSLA Example
Table 6.1
- Use the links shown in Table 6.1 at a 50
utilization - Define D96 as link type L0
- Define D56 as link type L1
- Define F128 as link type L2
L0 L1 L2
Figure 6.1
L0
L0
- Assume N0 is center.
- We have 4 access nodes and their weights in
Figure 6.1
L1
L1
- Initial State (Utilization0.5)
- spare_capacity(1)0.556000-200008000
- spare_capacity(2)0.59600-24002400
- spare_capacity(3)0.556000-960018400
- spare_capacity(4)0.59600-48000
Initial state
14L0
Initial state
L0
L0L1L2
L1
L1
- State 2 N2 is furthest away from N0. It is
closer to N4. For N2 to go through N4, require
(4,0) to upgrade from 9.6 Kbps to 56 Kbps. - Upgrade(4,2400) c(4,0,1) c(4,0,0)
- Tradeoff2(4)c(2,4,0)(c(4,0,1)c(4,0,0))
c(2,0,0) - Positive, not pick.
- Let N4 goes through N3,no upgrade is needed.
- Its the best tradeoff. w3w3w49600480014400
- spare_capacity(3)18400-480013600
L0
L0
State 2
L1
L1
L0
- State 3 Next, the most attractive tradeoff is
route N2 through N3. Again no upgrade is needed. - w3w3 w2 14400 2400 16800
- spare_capacity(3)13600-240011200
L0
State 3
L1
L1
15L0
L0
State 3
L0L1L2
L1
- spare_capacity(3)13600-240011200
- spare_capacity(1)8000 (initial)
L1
- Finally, connect N3 to N1 and increase (1,0) to
128 Kbps link. - Spare_capacity(1)0.5128000-16800-2000027200
L0
L0
Final design
L1
- My question why not use state 3 ?
L2
- Reason Final design might make good use of
the economy of scale offered by the higher speed
links.
16A realistic example of MSLA Algorithm
- We have 20 nodes in Squareworld and the weights
of the nodes are generated according to the above
TABLE TRAFDIST. - Weights of nodes are shown in the TABLE SITES.
Note that the weight of N0 is normalized so that
it sums to the traffic from all the other sites. - To simplify the mathematics, we assume that every
line can be used to 100 of capacity.
17Esau Williams 20 nodes with 9.6Kbps links
Cost 26,963 Only 9 sites share links to N0,
more like a star.
18Esau Williams 20 nodes with 56Kbps links
Cost 30,160 A nice tree structure, but the
cost is higher because out on the periphery of
the network there is too much capacity.
19MSLA 20 nodes with multispeed links
Cost 22,760 the best There is a central
D56 tree and a peripheral D96 tree
20Chapter 7MultiCenter Local-Access Design
21 What happens if there are multiple centers?
Must build a forest instead of a tree. So what
is a forest?
- Definition 7.1
- A forest F ( V,E ) is a simple graph without
cycles. - Note a forest need not be connected.
22Notations
- A set of backbone sites (B0, , Bm) B
- A set of access nodes (N1, , Nn) N
- A set of weights (w1, , wn) for each access
node - A upper limit of weight, W.
- A cost matrix Cost(i,j) giving the costs between
each backbone/access pair of sites.
23MultiCenter Local Access Problem(MCLA)
- Definition 4.2 The multicenter local access
problem is to find a set of trees T1, , Tk such
that - (1) Exactly 1 backbone site belongs to
each tree - (2)
- (3)
is a minimum
24An example
- Circle ? 3 backbone nodes
- X, Y and Z
- Square ? 17 access nodes
- A, B, C and D, etc
25Comments
- This problem is a bit more complex than the
single-center one - Suppose we have n access nodes that we want to
partition into 3 sets. The number of possible
partitions is - Each partition of the access sites results in 3
capacitated MST problems each of which can be
attacked by the Esau-Williams algorithm
Even for the modest number 17, the complexity is
daunting!
26Nearest-Neighbor Esau-Williams(NNEW)
- For each b in B, let Sb n?N Cost(n,b) lt
Cost(n,b) ?b?BIf n is equidistant between
several backbone nodes, add n to one Sb at
random. - Use Esau-Williams to construct a capacitated MST
on each set b?Sb. - Example
-
-
A definitely belongs to X
(since X is not
only the closest backbone node to A it is almost
the closest node to A)
B, C and D not
clear
27Creditability Test
- Test reattach the leaves to a different tree and
see if it reduces the cost. - The creditability of NNEW is not good
Let us look at two failed examples.
28Example 1 a 10-site bad design
29Example 2 another 10-site bad design
30What do we deduce from the 2 examples?
- Design Principle 7.1
- In local-access design with multiple centers,
the location of the other access nodes cannot be
ignored when deciding which access nodes should
home to which center.
31MultiCenter Esau-Williams algorithm(MCEW or
Kershenbaum-Chou)
- A variant of the original Esau-Williams algorithm
- Recall that, in Esau-Williams algorithm, we
calculate the tradeoff as the saving by linking
Ni to Nj instead of linking it directly to the
center. -
- Tradeoff(Ni)minjCost(Ni, Nj) -
Cost(Comp(Ni),Center) -
- MCEW algorithm replaces the tradeoff
function as Tradeoff(Ni)minjCost(Ni, Nj) -
Cost(Comp(Ni),Center(Ni)) - Initially, we set Center(Ni) to be the closest
center. - As node Ni is merged with node Nj, update
Center(Ni)Center(Nj).
32NNEW vs. MCEW
- Only a slight cost advantage of using MCEW as
opposed to NNEW. - MCEW is far more creditable than NNEW.
33Practical Suggestions
From GÖdels theorem Given any set of
algorithms, it is always possible to formulate a
problem for which they provide no good solution.
- Design Principle 7.2
- The designer needs to be inventive and agile
when dealing with unusual constraints.
34Some access trees contain too many nodes.
- EW tests only if the combined weight of the two
components doesnt exceed the upper bound
weight_limit. - Solution add additional size_limit constraints
that prohibit the merge of two components with
too many nodes.
35Some access trees contain too many hops.
- Solution add depth checking constraint,
- i.e., depth-limit the
- tree built by EW
- Each site maintains a value depthni
- Initially set to 1, update when we evaluate the
tradeoff between n1 and n2, - Depthn2 max (depthn2, depthn1 1)
- and compare against threshold.
36Some site in the access tree has too many links
- Solution add degree constraint, or a valence
constraint. - Initialize the valence of each site to 1, when we
accept the merge from n1 to n2 then we increase
the valence of n2 by 1. Do not accept merges that
violates the constraint.
37A central site has too many links
- Solution 1 Modify the tradeoff function as
- Tradeoff(Ni)minj Cost(Ni,Nj)-aCost(Comp(Ni)
,Center)) - where a gt 1. By adjusting a we limit the
links that connect to a center. - Solution 2 If we have multiple centers and EW
has overloaded a given site, use NNEW or MCEW
with initial assignment of centers overridden to
low utilization center.
38Some site fails too often
- If a given site is known to have availability
problems, it shouldnt be an interior point. - Solution Mark it as not being able to be set as
a predecessor of other sites.
39To overcome such constraints without the ability
to rewrite programs is hopeless!
- Design Principle 7.3
- Designers need to be able to modify
algorithms to deal with unusual constraints. This
may necessitate adding a programmer to the design
team but it will be well worth the effort and
expense. The programmer needs to know the code
and to understand the idea that is being carried
out in the algorithm. This requires a deeper
understanding than can be obtained from reading
the comments in the existing code.
40HW 7 Due Date July 04
Design a connected topology that connects nodes
1, , 4 to center 0. The link types are listed
below. Cost tables are listed on the next slide.
41Â Link
0
Â
Link 1
Â
Link 2
Cost Tables
42THE END