1 TCOM 541 Session 3. 2 MENTOR-II Last session, we talked about routing and how the limitations of routing algorithms introduce complications –They may.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

Conceptual Clustering
Types of Algorithms.
1 Traffic Engineering (TE). 2 Network Congestion Causes of congestion –Lack of network resources –Uneven distribution of traffic caused by current dynamic.
Quick Review of Apr 10 material B+-Tree File Organization –similar to B+-tree index –leaf nodes store records, not pointers to records stored in an original.
CP3397 Network Design and Security Lecture 4 WAN design - Principles and practice.
Optical Networks BM-UC Davis122 Part III Wide-Area (Wavelength-Routed) Optical Networks – 1.Virtual Topology Design 2.Wavelength Conversion 3.Control and.
Chapter 6 Maximum Flow Problems Flows and Cuts Augmenting Path Algorithm.
Quick Sort, Shell Sort, Counting Sort, Radix Sort AND Bucket Sort
1 EL736 Communications Networks II: Design and Algorithms Class8: Networks with Shortest-Path Routing Yong Liu 10/31/2007.
2-dimensional indexing structure
Resampling techniques Why resampling? Jacknife Cross-validation Bootstrap Examples of application of bootstrap.
Centrality and Prestige HCC Spring 2005 Wednesday, April 13, 2005 Aliseya Wright.
Clustering… in General In vector space, clusters are vectors found within  of a cluster vector, with different techniques for determining the cluster.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
MAE 552 – Heuristic Optimization Lecture 27 April 3, 2002
This material in not in your text (except as exercises) Sequence Comparisons –Problems in molecular biology involve finding the minimum number of edit.
Cluster Analysis (1).
R-Trees 2-dimensional indexing structure. R-trees 2-dimensional version of the B-tree: B-tree of maximum degree 8; degree between 3 and 8 Internal nodes.
TCOM 540/11 TCOM 540 Session 6. TCOM 540/12 Agenda Review Session 4 and 5 assignments Multicenter local access design.
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)
TRIP ASSIGNMENT.
Clustering Ram Akella Lecture 6 February 23, & 280I University of California Berkeley Silicon Valley Center/SC.
Backtracking.
CS4432: Database Systems II
Tree-Structured Indexes. Range Searches ``Find all students with gpa > 3.0’’ –If data is in sorted file, do binary search to find first such student,
Clustering Unsupervised learning Generating “classes”
Network Topologies.
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
Representing and Using Graphs
DLS on Star (Single-level tree) Networks Background: A simple network model for DLS is the star network with a master-worker platform. It consists of a.
Algorithms for Allocating Wavelength Converters in All-Optical Networks Authors: Goaxi Xiao and Yiu-Wing Leung Presented by: Douglas L. Potts CEG 790 Summer.
March 16 & 21, Csci 2111: Data and File Structures Week 9, Lectures 1 & 2 Indexed Sequential File Access and Prefix B+ Trees.
+ Simulation Design. + Types event-advance and unit-time advance. Both these designs are event-based but utilize different ways of advancing the time.
Slide 1 Chapter 9 Mesh Network Design - II. Slide 2 Mesh Network Design The design of backbone networks is governed by 3 goals: nDirect path between source.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Thursday, May 9 Heuristic Search: methods for solving difficult optimization problems Handouts: Lecture Notes See the introduction to the paper.
Network Design with Constraints Chapter 10 Part 2.
1 TCOM 541 Session 4. 2 Web Page OM htm.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
UNIT 5.  The related activities of sorting, searching and merging are central to many computer applications.  Sorting and merging provide us with a.
1 Presented by Sarbagya Buddhacharya. 2 Increasing bandwidth demand in telecommunication networks is satisfied by WDM networks. Dimensioning of WDM networks.
1 TCOM 541 Session 2. 2 Mesh Network Design Algorithms for access are not suitable for backbone design –Access designs generally are trees – sites connect.
Graphs A ‘Graph’ is a diagram that shows how things are connected together. It makes no attempt to draw actual paths or routes and scale is generally inconsequential.
FORS 8450 Advanced Forest Planning Lecture 6 Threshold Accepting.
Types of Algorithms. 2 Algorithm classification Algorithms that use a similar problem-solving approach can be grouped together We’ll talk about a classification.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
Data Structures - CSCI 102 Selection Sort Keep the list separated into sorted and unsorted sections Start by finding the minimum & put it at the front.
Prepared by:Ronnel P. Agulto, CpE Objectives Different types of topologies; Their advantages & disadvantages How to choose an appropriate topologies in.
1 Dynamic RWA Connection requests arrive sequentially. Setup a lightpath when a connection request arrives and teardown the lightpath when a connection.
1 TCOM 5143 Lecture 10 Centralized Networks: Time Delay and Cost Tradeoffs.
Balanced Billing Cycles and Vehicle Routing of Meter Readers by Chris Groër, Bruce Golden, Edward Wasil University of Maryland, College Park American University,
Network Topology Computer network topology is the way various components of a network (like nodes, links, peripherals, etc) are arranged. Network topologies.
1 R-Trees Guttman. 2 Introduction Range queries in multiple dimensions: Computer Aided Design (CAD) Geo-data applications Support special data objects.
ECE 544: Traffic engineering (supplement)
The minimum cost flow problem
What Are Routers? Routers are an intermediate system at the network layer that is used to connect networks together based on a common network layer protocol.
Routing in Packet Networks Shortest Path Routing
Dr. Arslan Ornek IMPROVING SEARCH
Physical Network Topology
3. Brute Force Selection sort Brute-Force string matching
Mesh Network Design Backbone network design goals:
3. Brute Force Selection sort Brute-Force string matching
CSE 550 Computer Network Design
3. Brute Force Selection sort Brute-Force string matching
Presentation transcript:

1 TCOM 541 Session 3

2 MENTOR-II Last session, we talked about routing and how the limitations of routing algorithms introduce complications –They may not be smart enough to find a feasible routing for our beautiful network design MENTOR-II improves the design algorithm to account for the limitations of routing algorithms –Also increases the complexity of the design process

3 Incremental Shortest Path (ISP) Goal of ISP algorithm is to identify all pairs that could use a link in place of the current path –Initially all paths pass through the tree –As direct links are added, the situation becomes more complex

4 ISP (2) Maintain two nxn matrices –Shortest-path distances (sp_dist) nxn –Matrix of node pointers (sp_pred) nxn Maintains all shortest paths through the network simultaneously –Update matrices after each link addition

5 sp_pred sp_pred(i,j) = m contains the next-to-last node on the shortest path from i to j Can trace back the shortest path from i to j by next looking at sp_pred(i,m), etc.

6 ISP in MENTOR II Each link must be assigned a length greater than its cost –Do not want to give links artificially short lengths Consider a source node s, and a destination node d

7 ISP in MENTOR II (2) ISP algorithm builds s_list and d_list For a proposed link of proposed length L –Node added to s_list if sp_dist [node][s] + L < sp_dist[node][d] –Node added to d_list if sp_dist[node][d] + L < sp_dist[node][s]

8 ISP in MENTOR II (3) Now work through all pairs of ni in s_list and nj in d_list If sp_dist[ni][s] + L + sp_dist[d][nj] < sp_dist[ni][nj] Then (ni,nj) traffic will shift to the proposed link Maximum permissible L for (ni,nj) traffic to shift is maxL = sp_dist[ni][nj] – sp_dist[d][nj] – sp_dist[ni][s]

9 ISP in MENTOR II (4) We can sort pairs by maxL and get a sequence – for example maxL(P1) = 2000 maxL(P2) = 1800 maxL(P3) = 1800 maxL(P4) = 1700 Do not want to set L = 2000 or 1800 or 1700 – creates equal length paths which will probably confuse the routers …

10 Commodity Links MENTOR-II has a weakness when the clustering algorithm chooses too few backbone sites –Recall in last week’s example that best costs were achieved with a high number of backbone nodes –Backbone node choice determined by parameters WPARM and RPARM

11 Recap: Threshold Clustering Weight of a site is sum of all traffic into and out of the site Normalized weight of site i is NW(i) = W(i)/C Sites with NW(i) > WPARM are made into backbone sites –Where WPARM is a parameter

12 Recap -Threshold Clustering (2) All sites that do not meet the weight criterion and are close to a backbone site are made into end sites –“Close” is defined as when the link cost from the end site e to the backbone site is less than a predefined fraction of the maximum link cost MAXCOST = max i,j cost(N i,N j ): cost(e,N i ) < MAXCOST*RPARM

13 Wrong Parameter Choices Wrong choice of parameters can lead to problems –E.g., WPARM = 100, RPARM = 1 –Most likely, no site will be chosen in the initial pass as a backbone node because WPARM is so high –Computation of merit will choose a first backbone site

14 Recap: Merit Define dc n = [(x n -xctr) 2 + (y n -yctr) 2 ] 0.5 maxdc = max(dc n ) maxW = max(W n ) Then merit n = 0.5(maxdc–dcn)/maxdc + 0.5(W n /maxW) That is, “merit” gives equal value to a node’s proximity to the center and to its weight

15 Wrong Parameter Choices (2) Then no other nodes will will be chosen as backbone nodes because of RPARM With only one backbone node, no direct links will be added End result is a star network

16 Fixing the Problem Define a new class of links called 1- commodity links that link endpoints –Carry only traffic between the endpoints linked Insert a new step into the MENTOR algorithm to add 1-commodity links where appropriate

17 1-Commodity Links - Example D A I F G E B H C Links have capacity 2 We want load < 1 T(A,H) = 1.8 T(H,I) = 2.4 T(C,I) = 1.4

18 Recap – Adding Links For each pair (N1,N2), execute the following algorithm: 1.If capacity of a link is C, compute n = ceil[T(N1,N2)/C] 2.Compute utilization u = T(N1,N2)/(n*C) 3.Add link if u > umin, otherwise move traffic 1 hop through the network I.e., add T(N1,N2) to both T(N1,H) and T(H,N2) And do same for T(N2,N1) Note – there is a special case when (N1,N2) belongs to the original tree In this case just add the link (N1,N2) to the design Added note: Define slack = 1 - umin

19 1-Commodity Links – Example (2) D A I F G E B H C Links have nominal capacity 64 We want < 32 T(A,H) = 38 T(H,I) = 77 T(C,I) = 45 If slack = 0.1, we add 2 parallel links between A and H If slack = 0.2, also add 3 links between H and I If slack = 0.3, also add 2 links between C and I

20 1-Commodity Links – Example (3) Adding the A-to-H links, etc., may or may not be a good idea, depending on the rest of the traffic matrix Also, must not add these requirements to the backbone, since they are carried separately

21 Setting 1-Commodity Backbone Link Lengths Need to set 1-commodity link lengths so that they only carry traffic between the two end nodes Assume all links have length > 1 With shortest-path routing, set 1-commodity link lengths = sp_dist tree - 1

22 MENTOR II Overview 1.Divide sites into backbone and edge sites 2.Select the median 3.Build a Prim-Dijkstra tree rooted at median, link length = cost 4.Compute distance through the tree between each node pair – put information in sp_dist and sp_pred

23 MENTOR II Overview (2) 5.Add 1-commodity links between pairs not considered for direct-link addition if traffic on the link will exceed umin 6.Collapse requirements onto backbone 7.Sequence backbone node pairs in decreasing order of shortest-path distance 8.Consider each pair using ISP algorithm, add link if desired, choosing appropriate length

24 MENTOR II Overview (3) 9.Set 1-commodity links lengths to carry only traffic between edge nodes, if possible 10.Do final link re-sizing

25 MENTOR-II Difficulty It is not always possible to add 1- commodity links with lengths that will only carry the desired traffic Then there are three possibilities 1.Do not add 1-commodity links 2.Extend direct-link addition from backbone pairs to all pairs 3.Add links and check routing

26 MENTOR-II Difficulty (2) 1.Without the 1-commodity links, the algorithm is too dependent upon the initial choice of backbone – that’s why we started adding them 2.Extending link addition to all node pairs is too expensive – raises algorithm complexity to O(n 4 ) 3.Adding links and checking routing is only reasonable possibility – not ideal, but better than using OSPF routers on original MENTOR design

27 We Are Still Not Done With MENTOR Backbone link addition algorithm in MENTOR can go astray – example: A B Y Z Assume 64 kbps links, slack set to add if a link attracts between 25 and 32 kbps Traf(A,Z) = 5 kbps Traf(B,Y) = 25 kbps

28 MENTOR Goes Astray A B Y Z Assume 64 kbps links, slack set to add if a link attracts between 25 and 32 kbps Traf(A,Z) = 5 kbps Traf(B,Y) = 25 kbps sp_dist(A,Z) > sp_dist(B,Y), so consider adding (A,Z) first. This will attract 30 kbps; but adding it would detour traffic from the larger pair through the smaller pair.

29 Improving MENTOR To avoid this error, we reorder as follows For pair P, create the requirement list (P 1, P 2, …P k ) Check if any pairs P i in this list 1.Have not yet been processed by the direct-link addition algorithm 2.Have more than 2x traffic between P i than between P If so, exchange order of processing P and P i

30 Multispeed MENTOR Initial MENTOR assumption was that only one link speed was available Now generalize to multispeed links

31 Multispeed MENTOR (2) In considering whether to replace multiple lower speed links with one higher speed link, there are three cases: 1.Cost of multiple lower speed links > cost of higher speed link 2.Cost of multiple lower speed links = cost of higher speed link 3.Cost of multiple lower speed links < cost of higher speed link

32 Multispeed MENTOR (3) In case 1, it’s clearly advantageous to use the higher speed link In case 2, it’s still advantageous – still improves performance and allows for growth In case 3, we have to balance the extra cost now against the improved performance now and cost savings as traffic grows (future) –Avoid termination charges/installation charges/higher rates in future –Decision depends on expected growth rate

33 Multispeed MENTOR (4) We will not add time-dependencies to MENTOR Will merely find the cheapest set of homogenous parallel circuits that will carry the traffic with acceptable utilization –Homogeneous because routing algorithms can do stupid things with inhomogeneous circuit combinations

34 Link Sizing Steps For each link capacity CAP i, compute n i, the number of circuits needed to carry the traffic with utilization < u max If n j *Cost j is smallest, configure as n j circuits of type j Break ties in favor of configuration with higher total capacity

35 Complexity of MENTOR-II MENTOR-II has same complexity as MENTOR, except for direct-link addition –That is, O(n 2 ) Direct-link addition step –Incremental shortest path step is O(b 2 ), where b is number of backbone nodes –Number of backbone node pairs is O(b 2 ) –Overall complexity of direct-link addition is O(b 4 ) MENTOR-II complexity is O(n 2 ) + O(b 4 )

36 Complexity of MENTOR-II (2) O(n 2 ) + O(b 4 ) is viable so long as b << n –For instance, if b = O(n 0.5 ) then complexity of MENTOR-II is O(n 2 ) + O(n 2 ) = O(n 2 ) Often reasonable to cluster many nodes to concentrators in large networks If b is large relative to n, the algorithm slows down a lot

37 Comparing MENTOR and MENTOR-II Compare performance of MENTOR and MENTOR-II –Network with 20 sites (Cahn figs 8.23.and 8.24) –MENTOR produces infeasible design Some links have 118% utilization

38 MENTOR-II Design MENTOR-II initial design with  = 0 Slack = 0 WPARM = 5 RPARM = 0.2 MENTOR-II design is a feasible tree costing $102k Alternate mesh network design costs $122k

39 MENTOR-II Design (2) Mesh increases cost by 20% Increases reliability from to Reduces average hops from to 2.826

40 Controlling the Algorithm Changing the design parameters changes the characteristics of the resulting design –To make network more dense, increase slack, or increase number of backbone nodes –To make network more reliable, increase density, or use lower-speed links –To make network less dense, decrease slack, or use only higher-speed links

41 Controlling the Algorithm (2) –To decrease number of hops Decrease number of backbone nodes Increase slack Increase  –To increase performance Use higher-speed links Decrease utilization Increase 

42 Controlling the Algorithm (3) To minimize cost … no easy answer –Best approach is an thorough search of the design space –I.e., vary the values of , slack, RPARM and WPARM in a systematic fashion

43 Parameter Search Brute force method would simply assign a range of k possible values for , slack, RPARM and WPARM, and compute all possible designs This is O(k 4 ) Better approaches are possible

44 MENTOR Parameter Search Recall the main steps of the MENTOR algorithm –Backbone selection, governed by WPARM and RPARM –Tree building, governed by  –Direct-link addition, governed by slack

45 MENTOR Parameter Search (2) Parameter search in is, again, a heuristic process Search can be shortened –E., g., if new values of WPARM and RPARM give rise to the same set of backbone nodes –Then there is no need to reiterate on , because we will just get the same set of trees

46 MENTOR Parameter Search (3) Alternatively, can perform one-dimensional searches on the parameters (“fast search”) –Start with values (  0, slack 0, RPARM 0, WPARM 0 ) –Search along  axis for “best” (cheapest?) design – say at  1 Alternatively, search in direction of positive gradient until a local maximum is attained –Then search along the slack axis starting at (  1, slack 0, RPARM 0, WPARM 0 ) – find new best design at (  1, slack 1, RPARM 0, WPARM 0 )

47 MENTOR Parameter Search (4) Continue through RPARM and WPARM to design (  1, slack 1, RPARM 1, WPARM 1 ) Can repeat iterations until a satisfactory design (  n, slack n, RPARM n, WPARM n ) is produced Note there is no guarantee that this hill- climbing process will work, but it seems effective in practice

48 Example of Fast-Search Process Network of 20 cities and Mbps traffic –File ment23.gen on FTP site ParametersSearch OnIncrementCost ($k) 0, 0, 0.4, 1(initial values)-222 0, 0.15, 0.4, 1Slack , 0.15, 0.4, 1  , 0.15, 0.4, 4.5WPARM , 0.15, 0.4, 4.5RPARM , 0.15, 0.4, 4.5slack , 0.15, 0.4, 4.5 

49 Example of Fast-Search Process (2) Exhaustive search with 4000 network designs gave best cost of $165k with parameters (0.0, 0.1, 0.2, 5.5)

50 Other Clustering Procedures Threshold clustering fails when the network does not have natural centers (backbone nodes) Also insensitive individual sites access costs Various alternatives possible

51 Other Clustering Procedures - Pre-Select Types Pre-define certain sites as backbone or end before using the clustering algorithm Can take account of cost variations, user population …

52 Other Clustering Procedures – K- Means Clustering We want to choose K backbone sites from among a set s i of sites with coordinates = (x i, y i ) and weight W i Choose K random centers c j N = the set of indices of the subset of points in {s i } that are closer to c j than any other center Set c j * = (x av, y av ) where x av = (  n  N W n *x n )/(  n  N W n ) etc.

53 Other Clustering Procedures – K- Means Clustering (2) If c i * = c i then stop, else set c i * = c i and repeat This algorithm enables the analyst to choose explicitly the number of backbone nodes Variations allow for splitting clusters, predefining backbone nodes etc.

54 Other Clustering Procedures - Hybrid Combines threshold and K-means Parametrized by (nclst, n, seed) Selects first sites that pass weight threshold of n*cap – say m of them If m > nclst, stop Else select remaining (nclst – m) sites by K- means

55 Further Elaborations of MENTOR Access design algorithm is limited to stars –Can use access design algorithms such as Esau- Williams or MSLA to design better access networks

56 Assignment Cahn, 8.1and 8.9