Network Design with Network Design with ConstraintsConstraints
Chapter 10 Chapter 10 Part 2Part 2
Node-Pair ConstraintsNode-Pair Constraints
• Traffic between certain node pairs must meet a hop constraint
• Two algorithms– Simply add cheapest link that meets
constraints• However this will also attract traffic from other
nodes
– Modify and use ISP algorithm in MENTOR• Re-optimize network by setting new link length to
minimize cost increase
Node-Pair ConstraintsNode-Pair Constraints
• If we add a new link it may end up carrying more traffic than we planned.
29
44
27
47
End1 End2 Cost
N29 N44 $5045
N29 N47 $4727
N27 N44 $3975
S1
S2
The Simple AlgorithmThe Simple Algorithm
To reduce the hop count from End1 to End2 to h:
1. Compute the current route R from End1 to End2
2. Find all node pairs P, (p1,p2) on the route between End1 and End2 such that
Hops(End1,p1) + Hops(End2,p2) < h
3. For each p є P, find all traffic that will flow over the (p1,p2) link if it is added with a length sp_dist[p1][p2] -1.
4. Among all candidates links in P, add the link with the smallest cost.
The Full AlgorithmThe Full Algorithm
To reduce the hop count from End1 to End2 to h:1. Compute the current route R from End1 to End2
2. Find all node pairs P, (p1,p2) on the route between End1 and End2 such that
Hops(End1,p1) + Hops(End2,p2) < h
3. For each p є P, find all possible link lengths for (p1,p2) less than or equal to sp_dist[p1][p2] -1. We will denote these link lengths as
lp,0 < lp,1 < … < lp,n = sp_dist[p1][p2] -1
4. For each link length lp,i compute Cp,i (cost of the link and reduction made by moving traffic off existing links)
5. Select min Cp,i. Add the link between p1 and p2 at length lp,i.
Multiple Node-Pair ConstraintsMultiple Node-Pair Constraints
• A-H 3-hop path required• B-G 1-hop path required
Equipment ConstraintsEquipment Constraints
• Equipment limitations may have significant effect on network design– Degree constraints– Processing constraints
Example:– Great Deal on small routers and somebody
bought them.– 2 slots & each slot can either have 4 64Kbps
or 2 T1 circuits.
Degree ConstraintsDegree Constraints
– Say each site sends and receives 0.75 Mbps and the routers can only handle four T1s.
– Clearly, each backbone node can have at most one access site attached
– If we have 30 sites, 15 of them should be in the backbone in order for MENTOR to work.
– We are trying to find a feasible solution
Degree ConstraintsDegree Constraints
Try to convince the organization to use different equipment or create a design!
Processing ConstraintsProcessing Constraints
• E.g., limitation on number of packets that can be processed per second, say pmax– Use a drop algorithm
• Build a complete graph• Do initial loading – node terminates more than
pmax/2, problem is infeasible• Order links by merit =
100*utilization + (1-cost/max_cost)
• Choose link with lowest merit, compute alternate path
• If alternate path shows feasible loads, drop the link, else set merit = infinity
You may end up with a very expensive network
Processing ConstraintsProcessing Constraints
– Build composite nodes• E.g., use two routers at each node• Linked by a high speed cable• Terminate half of the links on each box• By doubling the node cost, we loosen the
processing constraint
Cap = 1000 Cap = 1000167
167
333333 333 333
Link ConstraintsLink Constraints
• Generally involve either forbidden or required links– Use existing link capacity– To make people feel better– Backup (disaster recovery)– Unavailability (within reasonable timeframe)– Inaccurate tariff data– Unsuitable media (e.g., satellite, high delay)– Lack of confidence in carrier
Modifying MENTOR for Link Modifying MENTOR for Link ConstraintsConstraints
• During tree or tour-building phase, to forbid a link, simply assign a high-enough price that the algorithm would never choose it
• However, direct link addition phase will add a link if u > utilmin
– This has to be changed to add a link if
u > utilmin and cost < “high-enough price”
Modifying MENTOR for Link Modifying MENTOR for Link ConstraintsConstraints
• Required links may be included– During tree/tour building
• E.g., by assigning a low cost to the link, and culling the designs
• But remember the real cost is not the artificially low cost!
– During direct-link addition• Can add a table specifying links to be added directly
– During post-processing• Easy, but may introduce significant extra cost since link is not
taken account of during design phase
– In AMPL we can use a binary variable to turn on or off a link.
Performance ConstraintsPerformance Constraints
• Evaluating performance is not easy for large network designs– Blocking for voice networks– Delay for packet-switched networks
Problem Statement: Given a set of sites S and a traffic matrix Traf[i][j] , find the lowest-cost design such that the average delay encountered by the traffic in transiting the network is bounded by D.
Evaluating PerformanceEvaluating Performance
• Simulation– You decide the granularity at which you wish to model the
system– Create a model for each process
E.g., Modeling a switch
1. A message arrives at the input adapter
2. The message is put into shared memory on the planar board by the direct memory access controller
3. The address of the message is added to the routing layer queue
4. …
– Can be written from scratch or by Commercial network modeling packages
– You run it for a long period of time– Close to the real network if the model is built skillfully
Evaluating PerformanceEvaluating Performance
• Analysis – Analysis relies heavily on queuing theory
Average Delay on a link is:
– Propagation Delay:The delay it takes for the photons or electromagnetic waves to transit
the fiber, copper or atmosphere.
the utilization on link L
delaynpropagatioLCap
MD
LL
1
1
)(
L )(LCap
MService time for a Packet is
M is the average packet length
Total Network DelayTotal Network Delay
• Average delay through the node is
• The total network delay is
• All this can be calculated using Delite’s Delay Menu
Links
LNodes
N DD
DelayAdapternNCap
DN
22
2
)(
1
Capacity Assignment AlgorithmCapacity Assignment Algorithm
• Aims at improving performance of an existing network
• Keep topology fixed, add capacity to existing links to reduce delays
• List node and link options with associated cost – Compute contribution to total average end-to-end
delay– Compute cost per ms delay reduction compared to
current network
• Add capacity starting with lowest cost per delay reduction
Capacity Assignment ExampleCapacity Assignment Example
The cheapest design is NA-B1, LA-S1, NB-B1 $2400, 1100msAt least 750ms is required
Capacity Assignment AlgorithmCapacity Assignment Algorithm
• Algorithm may overkill on last step and add much more capacity than needed
• Problem is an example of the knapsack problem– Given a set of integers N = {N1, N2, …, Nk},
find a subset that add to exactly M– 2k possible combinations …
Reliability ConstraintsReliability Constraints
• Evaluating reliability not easy for large network designs– Must define failure
• Loss of connectivity vs. degradation of performance
– Here we will discuss simple failure of connectivity
– Simplest case is a tree – all nodes are connected if and only if all links and nodes are working
Reliability ConstraintsReliability Constraints
• Let tree have nodes N1, N2, …, Nn and links L1, L2, …Ln-1
• Let failure probabilities be pi and pj* respectively
• Probability network is working is then
If probabilities are uniform meaning all nodes have probability of failure p and all links have probability of failure p´, then
• Obviously tends to 0 when n is large
j
ji
i pp )1()1(
1)1()1( nn pp
Reliability ConstraintsReliability Constraints
• For graphs more complicated than trees, calculations can be complex
• Try to reduce to simpler networks– Series reduction
• Replace node and two edges with a single edge, probability of working = pn x pe1
x pe2
– Parallel reduction• If two nodes have 2 parallel edges between them• Replace two parallel edges with single edge, probability of
working = pe1 + pe2 - pe1 x pe2
Reducing a GraphReducing a Graph
A B C
FED
0.8 0.8
0.8 0.8
0.9 0.9 0.9
Assume nodes have reliability = 1.0
Reducing a GraphReducing a Graph
B C
FED
0.72
0.8
0.8 0.8
0.9 0.9
Apply series reduction to A
Reducing a GraphReducing a Graph
B
FED
0.720.72
0.8 0.8
0.9
Next, apply series reduction to C
Reducing a GraphReducing a Graph
B
E
0.576 0.5760.9
Next, apply series reduction to D and F
pe1 + pe2 - pe1 x pe2
Reducing a GraphReducing a Graph
B
E
0.982
Next, apply parallel reduction
Upper Bound On Network ReliabilityUpper Bound On Network Reliability
Upper bound of network reliability is
)1( n
np
ppn
Reliability ContinuedReliability Continued
• If we have a 2-connected backbone there is no need to formally compute reliability.
• In Delite: there is a REL column in the equipment table for reliability for each piece of equipment.
• In some cases we assume that nodes are perfect (p = 0) and we only calculate link failures. (battery backup, error-correcting code, hot-pluggable line cards)
Top Related