490 likes | 577 Vues
TCOM 541. Session 5. Network Redesign. In the preceding sessions, we have covered a number of techniques for designing networks from scratch However, a more common situation involves adding capacity to an existing network Growth, reorganization, mergers, …. Network Redesign (2).
E N D
TCOM 541 Session 5
Network Redesign • In the preceding sessions, we have covered a number of techniques for designing networks from scratch • However, a more common situation involves adding capacity to an existing network • Growth, reorganization, mergers, …
Network Redesign (2) • Regrettably, the current network design constrains the future • Incremental growth likely will result in a network that is more expensive than one designed specifically for the new traffic level
Example of Relative Costs • Traffic Upgraded Network Optimal Network • (kbps) $k/Mo. $k Init. $k/Mo. $k Init. • 500 50 0 50 0 • 650 51.2 5 50.6 85 • 850 63.6 18 56.8 97 • 1000 78.3 41 67.2 124 • 1250 93.5 71 78.3 136
Redesign Decision • How do you make the decision about when to redesign vs. upgrade? • This starts to deal with financial modeling issues • Subject of a different course (TCOM 546) in the Fall • Simple approach is to look at payback period • How long does it take the monthly savings of the redesigned network to pay for the higher initiation cost?
Analysis of Example • In the example, redesigning for the 650k network is probably not a good idea • Incremental initiation cost is $80k • Savings $600/month • Payback period of 133 months • Not a good idea • Return on investment far too low • Requirements will change again long before this has paid off
Analysis of Example (2) • However, for the 1250k network, the situation is quite different • Incremental initiation cost is $65k • Savings $15,200/month • Payback period = 4.3 months • Somewhere between 650k and 1250k, redesign becomes preferable
Analysis of Example (3) 650 kbps 850 kbps 1000 kbps 1250 kbps
Information Needs • Exactly where redesign becomes preferable depends on many factors • Economic conditions, cost of capital, projected requirements growth • However, decision maker needs to know relative costs of incremental change vs. redesign
Information Needs • Cost of redesigned network can be developed using the techniques covered earlier • Now we talk about adding capacity • Call this the incremental design problem (DDP)
DDP Introduction • Three basic approaches to incremental design • Routing changes • Link resizing • Link addition
Routing Changes • Cheap, quick to implement • But only work with certain routing algorithms and small changes in the traffic • E.g., if minimum hop routing is used there is no point in even considering the idea • The greater the ability of the network to control the flow, the more attractive rerouting becomes
Rerouting Example 2 2 2 A B C D 2 1 2 1 E F G H 2 2 2 Suppose routers can bifurcate (split) traffic Each link has capacity 4 AH traffic is 2, traffic between adjacent nodes is 1 Obvious choice is to split AH traffic between top and bottom Yields 8 links with load 2, and 2 links with load 1
Rerouting Example (2) Now suppose that traffic grows to BC = 3, AH = 3 Initial routing not feasible – saturates BC link with 4.5 units Move AH traffic onto alternative routes: 0.5 via BC and 2.5 via FG 1.5 1.5 3.5 A B C D 1.5 1.0 3.5 1.0 E F G H 3.5 3.5 3.5
Rerouting Example (3) • The (BC FG) cut is close to saturation • Carries 7 units of traffic over links with capacity 8 • Suppose AC grows to 2 units • (BC FG) cut must carry BC = 3, AH = 3, FG = 1, AC = 2 for total of 9 over links with capacity 8 • Then there is no feasible solution • Must add capacity to (BC FG) • E.g., double the BC link • Etc., etc.
Rerouting Algorithm • Set a trigger level for redesign • When a link utilization exceeds u* • Or link blocking exceeds b* • Algorithm aims to reduce utilization on all links below utarg • If it can’t do this, must use other approaches • Use ISP approach from MENTOR-II
Utilization Balancing Algorithm • Denote initial network as a directed graph N • Each link is represented as two directed edges, one in each direction • Each link must be in one of three states • Uncongested in both directions • Congested one way but not the other • Congested both ways
Utilization Balancing Algorithm (2) • Divide links into mesh links and tree links • Consider the reduced network N^ consisting of only mesh links • Collapse traffic onto N^ • Divide directed links into three categories • u > utarg • u < autarg where a is a parameter we set < 1 • autarg < u < utarg • Compute number of over-utilized links, n
Utilization Balancing Algorithm (3) • Change lengths of over- and under-utilized links to reroute traffic • Sort over-utilized links in descending order of utilization • Loop over over-utilized links: • Use ISP algorithm to develop candidate (longer) lengths • At each new length, some traffic moves to alternate routes • Loop over candidate lengths • Setting length to each new length in turn, compute new number of over-utilized links, n* • If n* < n, set n = n* and break from inner loop (stop if n* = 0)
Utilization Balancing Algorithm (4) • (Continued) Now loop over under-utilized links • Use ISP to compute (shorter) lengths that will attract traffic to the link • Loop over candidate lengths • Setting length to each new length in turn, compute new number of over-utilized links, n* • If n* < n, set n = n* and break from inner loop (stop if n* = 0) • If n < previous round, loop through links again • If we reach this point, the algorithm has failed
Effectiveness of the Balancing Algorithm • Works well if congested links are sparse • Also depends on the quantum (smallest amount) of traffic that can be moved • Won’t work if this is too large relative to link capacity
Redesigning by Adding Capacity • We have previously discussed capacity assignment • Ignores total cost • This can be fixed by stopping when we reach our budget limit … • May also stop when we have modified a preset number of links
Redesigning by Adding Capacity (2) • More flexible than balancing, but does not allow network to grow in natural way • At each stage of growth, if we designed the best network we would • Start with a sparse network of lower-capacity links • Add direct links as traffic grows • Eventually move back to a sparser network with higher-capacity links
Capacity Addition Example Consider a simple linear network with 10 nodes N10 N1 Assume tariff = A + B*dist for 64 kbps links 2A + 2B*dist for 256 kbps links Assume traffic between all node pairs is 1 kbps If there are n nodes on one side of a link and 10-n on the other, the traffic in each direction is n(10-n) Heaviest link is between N5 and N6, with n = 5 and traffic = 25
Capacity Addition Example • Assume traffic grows to 1.5 kbps • Now center link is loaded to 37.5 kbps • Higher than desirable, but probably acceptable at 59% • However, if traffic doubles, center link is at 78% and adjacent two links are at 75% • If we hold to 50% utilization, must upgrade 5 links • Added cost = 5A + B*dist(N3,N8)
Capacity Addition Example (2) • Better to add a link from N3 to N8 • Carries traffic between N1, N2, N3 and N8, N9, N10 = 18 kbps = 28% utilization • At a additional cost = A + B*dist(N3,N8) • Traffic on heaviest link now 32 kbps
Redesigning by Adding Links • Algorithm for adding links to accommodate traffic growth is called IncreMENTOR • Makes one pass through the node pairs and decides at each step whether or not to add a link • Relies on ISP code, complexity O(n4) • May designate some nodes as backbone and run only on those so as to reduce run time • Other links will merely be enlarged as necessary
IncreMENTOR • Define any node that terminates a congested outbound link as a special node • Create three lists • All pairs where both endpoints are special nodes • All pairs where one endpoint is a special node • All pairs where neither endpoint is a special node
IncreMENTOR (2) • Within the three lists, rank pairs in order of decreasing distance within the network • Use ISP code • Consider each candidate link in turn • Compute credit = value we wish to give to traffic moving over this link
IncreMENTOR (3) • Three cases to consider in computing credit • Traffic traverses one or more congested links • Gets “extra credit” • Traffic does not traverse any congested links, but new path is significantly more direct • Credit = size of traffic • New path will draw traffic from an acceptable route to a slightly shorter one • No credit
Example of Extra Credit $1500 $500 $350 $400 $600 Assume traffic = 5 kbps Credit = 5000*(1+ (500+350+600+400)/1500) = 11167 Arbitrary but reasonable ….
Example of Extra Credit (2) • Only give credit if length of new path is significantly shorter than old path • E.g., (new length)/(old length) < R • Choose R = 0.85 • Arbitrary value that seems to work well • Significantly higher value (say 0.95) can cause multiple rerouting of traffic
Example of Extra Credit (3) • Decide whether to add new link based on credit • Credit/capacity > creditmin • Where credit is higher of each direction for the candidate link • Recall MENTOR decision to add capacity was based on utilization • Algorithm terminates when utilization of all links < max desired utilization • If links still congested, then add capacity to existing links
Example of Extra Credit (4) • If creditmin is too small (close to 0), links will be added liberally and we will probably end up with a dense network • If creditmin is too high, few or no links will be added – we will merely add capacity to existing links • Best values for creditmin must be determined experimentally
Choosing Parameters • IncreMENTOR has only 3 parameters • The problem is O(n2), so this clearly does not span the decision space • The quality of the output of the algorithm – the expanded network design – must be carefully evaluated • Judgment plays an important part
Some Considerations in Choosing Parameters • At one extreme, the algorithm will add capacity to congested links, but leave topology unchanged • Increases performance but not reliability • At other extreme, algorithm will add many links • May not utilize links very well • Best designs lie between the extremes
Adding New Sites • This is a typical network growth situation • Equates to homing the new node to an existing node • Simple algorithm is possible; for each existing node N compute and sum cost of • Link from new node to N • Any upgrade necessary at N • Any additional backbone capacity needed to carry new traffic
Adding New Sites (2) • Simply choose cheapest option • Complexity is low, since only n possible sites to consider • Homing decision may also depend upon • Life-cycle stage of network • Plans for future expansion/site addition • Timeframe?
Adding Large New Sites • May want to attach a large new site to two existing sites • Complexity now considerably higher, as O(n2) pairs must be considered • Also multiple ways of splitting traffic between existing sites
Algorithm for Adding Large New Sites • For each pair of existing nodes, N1 and N2, compute cost of adding two links, (New,N1) and (New,N2) • Make length(New,N1)+length(New,N2) > sp_dist(N1,N2) • This ensures existing traffic flow is undisturbed • Different lengths will split new traffic differently • Suppose new traffic goes to sites (S1, S2, …Sm) • Compute Di = dist(N1,Si) - dist(N2,Si) • Order values Di1 < Di2 < … < Dij < …< Dim
Algorithm for Adding Large New Sites (2) • Let D = “diameter” of network = longest sp_dist between two sites • Set len(New,N1) = D, len(New,N2) = D-Dij-1 • Splits traffic between new links • Compute additional costs for node upgrades and added backbone capacity • Choose cheapest pair of lengths • Complete loop over all pairs (N1,N2)
Comment on Adding New Nodes • If several nodes are being added, may be desirable to redesign network and compute payback period
Merging Networks • All situations are likely to be unique and individual • Distinguish three cases • No overlap • Some overlap • Significant overlap
Case 1 – No Overlap • Establish gateways and direct link(s) Network A Network B
Algorithm For Merging Two Networks With No Overlap • Situation analogous to adding a single site, except we’re adding a network • Select site GA in network A and GB in network B • Loop over all nA*nB pairs • Compute and sum cost of link plus costs of augmenting networks to carry extra traffic • Requires costly redesign of each network, use DDP • Limit attention to “natural” gateways
Characteristics of Natural Gateways • Larger rather than smaller • Cheaper link to other network • Central rather than at the edge • Note: preceding two criteria pull in opposite directions • Optimum location likely to be a compromise
Case 2 – Some Overlap • Examine common sites to select natural gateways • Otherwise, treat like Case 1
Case 3: Lots of Overlap • Look for common sites • May entail redesign of all or large parts of one or both networks • Probably many common sites, parallel links
Assignment • Consider the 10-node example (Cahn, Section 11.3) • Add the link (N3,N8) • If each existing link has length 1, what length should be assigned to this new link to get the desired traffic flows? • Assume shortest path routing, non-bifurcated traffic