network design with constraints
DESCRIPTION
Network Design with Constraints. Chapter 10 Part 1. Overview. Build a network connecting 75 stores to a HQ Each store generates 500bps of traffic & receives about 1500bps of traffic. An MST or CMST will be the correct solution - PowerPoint PPT PresentationTRANSCRIPT
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
11
Network Design with ConstraintsNetwork Design with Constraints
Chapter 10 Chapter 10 Part 1Part 1
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
22
OverviewOverview
Build a network connecting 75 stores to a Build a network connecting 75 stores to a HQHQ
Each store generates 500bps of traffic & Each store generates 500bps of traffic & receives about 1500bps of traffic.receives about 1500bps of traffic.
An MST or CMST will be the correct An MST or CMST will be the correct solutionsolution
But you are told that each store needs But you are told that each store needs 64Kbps access & 3 hops maximum.64Kbps access & 3 hops maximum.
Or the lowest cost network where the Or the lowest cost network where the average end-to-end delay is 300 ms or average end-to-end delay is 300 ms or less.less.
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
33
Designs Constraints Designs Constraints
Cheapest design may not be Cheapest design may not be acceptable for reasons of acceptable for reasons of reliability, performance, … or reliability, performance, … or organizational or political organizational or political reasonsreasons
May have to modify algorithms May have to modify algorithms or write problem-specific code to or write problem-specific code to produce an acceptable design.produce an acceptable design.
Manual Design?Manual Design?
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
44
Types of ConstraintsTypes of Constraints
Hop constraintsHop constraints Worst caseWorst case AverageAverage Node-pairNode-pair
Equipment Equipment constraintsconstraints DegreeDegree ThroughputThroughput
Link constraintsLink constraints Required or Required or
forbiddenforbidden
Performance constraintsPerformance constraints Worst caseWorst case AverageAverage Node-pairNode-pair
Reliability constraintsReliability constraints Entire networkEntire network BackboneBackbone Node-pairNode-pair
MiscellaneousMiscellaneous High & Low Security NodesHigh & Low Security Nodes
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
55
Over-Constrained ProblemOver-Constrained Problem
It is possible to specify so many or It is possible to specify so many or so severe constraints that there is no so severe constraints that there is no feasible network designfeasible network design
War Story 10.1: each node must be War Story 10.1: each node must be of degree three, for example if n = 7. of degree three, for example if n = 7. There is no solutionThere is no solution
Suppose each site has equipment Suppose each site has equipment that can only terminate a LAN and that can only terminate a LAN and two leased lines - Can only build a two leased lines - Can only build a ring.ring.
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
66
Over-Constrained ProblemOver-Constrained Problem
In any network, the total amount of In any network, the total amount of capacity used by all of the traffic is capacity used by all of the traffic is bounded from below bybounded from below by
Capacity of a leased line is C and Capacity of a leased line is C and capacity of the ring is (n-1)C.capacity of the ring is (n-1)C.
As network grows, link capacity will As network grows, link capacity will be overloaded at some pointbe overloaded at some point
jiji
ji hopsTrafS ,,
, Tnn
S8
)1( 2
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
77
Hop-Limited DesignsHop-Limited Designs
Problem Statement 10.1: Given a set Problem Statement 10.1: Given a set of traffic Trafof traffic Traf i,j, i,j, find the lowest cost find the lowest cost
design such that if Trafdesign such that if Traf i,j i,j > 0> 0 then the then the
path chosen by the routing algorithm path chosen by the routing algorithm through the network has less than h through the network has less than h hops.hops.
If h is very large, first solve the If h is very large, first solve the unconstrained problem maybe a unconstrained problem maybe a cost-optimized network is sufficient.cost-optimized network is sufficient.
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
88
AMPL and Hop-Limited DesignAMPL and Hop-Limited Design
Arc-Path ModelArc-Path Model Set P : set of pathsSet P : set of paths Only paths with 3 hops are in the data Only paths with 3 hops are in the data
modelmodel A-BA-B A-D-B A-D-E-B A-D-B A-D-E-B
A separate program can be written to A separate program can be written to find these pathsfind these paths
A
E
B
D
C
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
99
AMPL and Hop-Limited DesignAMPL and Hop-Limited Design
Node-Arc ModelNode-Arc Model Only links and nodes no paths are Only links and nodes no paths are
givengiven The hop limit is 3 and each The hop limit is 3 and each
demand must be satisfied by a demand must be satisfied by a single path.single path.
Giray’s Solution:Giray’s Solution:Subject to HopLimit {c in N, n in {N diff {c}}:Subject to HopLimit {c in N, n in {N diff {c}}:
sum{e in E} (-yi[c,e,n] - xi[c,e,n]) >= 3 * rhs[c,n];sum{e in E} (-yi[c,e,n] - xi[c,e,n]) >= 3 * rhs[c,n];
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1010
Badly Posed ExamplesBadly Posed Examples
1.1. MUX network : The path that a MUX network : The path that a requirement takes depends on requirement takes depends on the loading sequence.the loading sequence.
A B
DCAssume each link can load 2 circuits
Network appears to be a 2-hop designLoading pattern 1 : { AB, AB, CB}Loading pattern 2 : { AB, CB, AB}
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1111
Badly Posed ExamplesBadly Posed Examples
2.2. Boundary of the NetworkBoundary of the Network 6 Hop Design:6 Hop Design:
NY - Philadelphia - Detroit - Chicago - Denver - LA - San DiegoNY - Philadelphia - Detroit - Chicago - Denver - LA - San Diego
6 Hops or 12 hops?6 Hops or 12 hops?
BBBBNY NY – Building – 14 Floor – Workstation– Building – 14 Floor – Workstation
Generally, we don’t cost optimize building Generally, we don’t cost optimize building networksnetworks
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1212
Approach I : CullingApproach I : Culling
Generate a lot of designs with varying Generate a lot of designs with varying parametersparameters If Mentor is used try different values for alpha, If Mentor is used try different values for alpha,
slack, nclst, seedslack, nclst, seed Throw away all that do not meet hop Throw away all that do not meet hop
constraintsconstraints Select best remaining designSelect best remaining design Brute force method may be quite Brute force method may be quite
acceptable if it avoids writing problem-acceptable if it avoids writing problem-specific codespecific code
May not work if constraints are too severe May not work if constraints are too severe Frequency of feasible designs may be too low to Frequency of feasible designs may be too low to
be practicablebe practicable
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1313
Culling ContinuedCulling Continued
Cost Optimized design with 11 hopsCost Optimized design with 11 hops
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1414
Culling ContinuedCulling Continued
The best 9-hop design culled from a runThe best 9-hop design culled from a run Out of 325 trial, only 28 of them had 9 hopsOut of 325 trial, only 28 of them had 9 hops
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1515
Culling ContinuedCulling Continued
More than 150 different networks only one More than 150 different networks only one of them had 7 hopsof them had 7 hops
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1616
Culling ContinuedCulling Continued If Culling fails to find 6-hop designsIf Culling fails to find 6-hop designs
Reduce the diameter of the backboneReduce the diameter of the backbone Reduce the depth of the access treesReduce the depth of the access trees
A tree centered on N45
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1717
Approach II : AugmentationApproach II : Augmentation
5 pairs of nodes 8 hops apart, 7 hop design 5 pairs of nodes 8 hops apart, 7 hop design requiredrequired
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1818
An Algorithm To Compute Hops In The An Algorithm To Compute Hops In The Access TopologyAccess Topology
1.1. For each backbone node b compute la(b) : max For each backbone node b compute la(b) : max depth of the local access tree at b.depth of the local access tree at b.
2.2. Loop until done. Compute diameter of the network:Loop until done. Compute diameter of the network:
If d > h, return failIf d > h, return fail For each backbone site b, computeFor each backbone site b, compute
e(b) gives the number of extra hops we can expand e(b) gives the number of extra hops we can expand la(b) and still meet the h hop constraint la(b) and still meet the h hop constraint
If any e(b) greater than 0, select a node b and If any e(b) greater than 0, select a node b and increase la(b) by 1. Otherwise break loopincrease la(b) by 1. Otherwise break loop
3.3. Return the values la(b)Return the values la(b)
)()(),(max , blablabbhopsd Backbonebb
)()(),(max)( blablabbhopsdbe Backboneb
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
1919
Algorithm ContinuedAlgorithm Continued
)()(),(max , blablabbhopsd Backbonebb
)()(),(max)( blablabbhopsdbe Backboneb
SiteSite la(b)la(b) e(b)e(b)
N20N20 11 00
N41N41 11 11
N42N42 11 11
N43N43 11 00
N44N44 11 00
N45N45 11 22
N46N46 11 11
N47N47 11 00
N48N48 11 00
N49N49 11 11
N50N50 00 XX
h = 6
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2020
Algorithm ContinuedAlgorithm Continued
SiteSite la(b)la(b) e(b)e(b)
N20N20 11 00
N41N41 11 11
N42N42 11 11
N43N43 11 00
N44N44 11 00
N45N45 33 00
N46N46 11 11
N47N47 11 00
N48N48 11 00
N49N49 11 11
N50N50 00 XXThe design with a 3 hop cluster at N45
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2121
Average Hop ConstraintsAverage Hop Constraints
Average number of hops is a far easier Average number of hops is a far easier constraint to meet than a constraint on the constraint to meet than a constraint on the maximum number of hopsmaximum number of hops
Three approaches for MENTORThree approaches for MENTOR Increase alphaIncrease alpha
Builds more star-like networksBuilds more star-like networks Increase slackIncrease slack
Introduces more links Introduces more links If slack = 1, we will build a network where there is If slack = 1, we will build a network where there is
a link between any 2 sites that have traffica link between any 2 sites that have traffic
Use lower-speed linksUse lower-speed links Introduces more links – because of utilizationIntroduces more links – because of utilization
1hops
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2222
Average Hop ConstraintsAverage Hop Constraints
trafTotalTrafvolTrafhopshops
meanSecond
tTrafhopshops
meanFirst
tkTraf
kk
k
kk
k
_/)()(
/)(
,...,1,
2
1
First mean tends to equalize performance among large & small sites
Second makes most people happy at the cost of a minority of users with lower grade of service
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2323
Meeting hops ConstraintsMeeting hops Constraints
SlackSlack CostCost hopshops22
00 88,56088,560 3.6153.615
0.050.05 91,97591,975 3.3373.337
0.100.10 92,16192,161 3.3913.391
0.150.15 102,732102,732 2.8882.888
0.200.20 110,237110,237 2.7592.759
0.250.25 112,334112,334 2.7302.730
0.300.30 107,996107,996 2.8312.831
0.350.35 110,097110,097 2.7802.780
0.400.40 112,761112,761 2.6592.659
SlackSlack Cost/hopCost/hop
0.050.05 19,47819,478
0.150.15 22,24522,245
0.200.20 27,66027,660
0.250.25 29,12329,123
0.300.30 27,35427,354
0.350.35 26,59526,595
0.400.40 27,40627,406
Hops & cost for variousValues of slack
The cost of improving hopshops22
slackslack CostCost hopshops22
0.050.05 91,97591,975 3.3373.337
0.150.15 102,732102,732 2.8882.888
0.350.35 110,097110,097 2.7802.780
The interesting choices for slack
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2424
Meeting hops ConstraintsMeeting hops Constraints
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2525
Homework 12Homework 12
Using node-arc model from homework 8 Using node-arc model from homework 8 solve the following mesh design problem.solve the following mesh design problem.
Use one model fileUse one model file
First, Minimize the number of average hops First, Minimize the number of average hops Then, Minimize the total costThen, Minimize the total cost Trunk types:Trunk types:
96K bps - $50 per trunk96K bps - $50 per trunk 128K bps - $60 per trunk128K bps - $60 per trunk 256K bps - $105 per trunk256K bps - $105 per trunk
Each demand must be satisfied by a single path.Each demand must be satisfied by a single path. The utilization should be no more than 50%.The utilization should be no more than 50%.
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2626
Homework 12Homework 12
B
A
E
D
G
F
C
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2727
Homework 12Homework 12
A B C D E F G
A - 25 10 - 96 15 50
B 22 - 82 25 18 16 28
C 60 45 - - 15 - 32
D 70 56 88 - 20 27 -
E - - 86 96 - 81 25
F 20 28 15 45 - - 61
G - 36 23 - 32 85 -
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2828
AMPL & Multiple Objective AMPL & Multiple Objective FunctionsFunctions
You can define several problems in one model fileYou can define several problems in one model file You can solve a problem then fix some variables and solve You can solve a problem then fix some variables and solve
another problemanother problem
#---first problem-----#---first problem-----problem DefineBIG:problem DefineBIG: # objective# objective segmentlength,segmentlength, # variables# variables X, Y, A, B, BIG,X, Y, A, B, BIG, # constraints# constraints flowbalance, flowbalance2 ,linkbetweenXandA, linkbetweenYandB, linkbetweenAandB,flowbalance, flowbalance2 ,linkbetweenXandA, linkbetweenYandB, linkbetweenAandB, linkbetweenBIGandX, lastAMP, firstAMP;linkbetweenBIGandX, lastAMP, firstAMP;
solve DefineBIG;solve DefineBIG;#---second problem-----#---second problem-----problem ReduceAMPS:problem ReduceAMPS: # objective# objective amps,amps, # variables# variables X, Y, A, B, BIG,X, Y, A, B, BIG, # constraints# constraints flowbalance, flowbalance2, linkbetweenXandA, linkbetweenYandB, linkbetweenAandB,flowbalance, flowbalance2, linkbetweenXandA, linkbetweenYandB, linkbetweenAandB, linkbetweenBIGandX, lastAMP, firstAMP, BIGfix;linkbetweenBIGandX, lastAMP, firstAMP, BIGfix;
solve ReduceAMPS;solve ReduceAMPS;
Prepared by Giray Birkan [email protected] by Giray Birkan [email protected]
2929
GRINGRIN
http://http://www.geocities.com/pechv_ru/main.htmlwww.geocities.com/pechv_ru/main.html