Algorithms for Precomputing Constrained Widest Paths and Multicast Trees Paper by Stavroula Siachalou and Leonidas Georgiadis Presented by Jeremy Witmer.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

Great Theoretical Ideas in Computer Science
Routing and Congestion Problems in General Networks Presented by Jun Zou CAS 744.
Single Source Shortest Paths
Some Graph Algorithms.
§3 Shortest Path Algorithms Given a digraph G = ( V, E ), and a cost function c( e ) for e  E( G ). The length of a path P from source to destination.
Heaps1 Part-D2 Heaps Heaps2 Recall Priority Queue ADT (§ 7.1.3) A priority queue stores a collection of entries Each entry is a pair (key, value)
Great Theoretical Ideas in Computer Science for Some.
Approximation, Chance and Networks Lecture Notes BISS 2005, Bertinoro March Alessandro Panconesi University La Sapienza of Rome.
Certification of Computational Results Greg Bronevetsky.
Generated Waypoint Efficiency: The efficiency considered here is defined as follows: As can be seen from the graph, for the obstruction radius values (200,
1 Sensor Relocation in Mobile Sensor Networks Guiling Wang, Guohong Cao, Tom La Porta, and Wensheng Zhang Department of Computer Science & Engineering.
Great Theoretical Ideas in Computer Science.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
The Cache Location Problem IEEE/ACM Transactions on Networking, Vol. 8, No. 5, October 2000 P. Krishnan, Danny Raz, Member, IEEE, and Yuval Shavitt, Member,
1 Complexity of Network Synchronization Raeda Naamnieh.
Branch and Bound Similar to backtracking in generating a search tree and looking for one or more solutions Different in that the “objective” is constrained.
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.
WiOpt’03: Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks March 3-5, 2003, INRIA Sophia-Antipolis, France Session : Energy Efficiency.
Algorithms for Precomputing Constrained Widest Paths and Multicast Trees Paper by Stavroula Siachalou and Leonidas Georgiadis Presented by Jeremy Witmer.
Using Search in Problem Solving
Spring 2010CS 2251 Graphs Chapter 10. Spring 2010CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs.
Graphs & Graph Algorithms 2 Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
CS541 Advanced Networking 1 Routing and Shortest Path Algorithms Neil Tang 2/18/2009.
Fall 2007CS 2251 Graphs Chapter 12. Fall 2007CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs To.
Heuristic Algorithms for Multiconstrained Quality-of-Service Routing Xin Yuan, Member, IEEE IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 10, VO. 2, APRIL.
CS401 presentation1 Effective Replica Allocation in Ad Hoc Networks for Improving Data Accessibility Takahiro Hara Presented by Mingsheng Peng (Proc. IEEE.
Distributed Quality-of-Service Routing of Best Constrained Shortest Paths. Abdelhamid MELLOUK, Said HOCEINI, Farid BAGUENINE, Mustapha CHEURFA Computers.
Heapsort Based off slides by: David Matuszek
Compiled by: Dr. Mohammad Alhawarat BST, Priority Queue, Heaps - Heapsort CHAPTER 07.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
Mehdi Kargar Aijun An York University, Toronto, Canada Discovering Top-k Teams of Experts with/without a Leader in Social Networks.
Fundamentals, Terminology, Traversal, Algorithms Graph Algorithms Telerik Algo Academy
Lecture 10 Trees –Definiton of trees –Uses of trees –Operations on a tree.
Optimization of Wavelength Assignment for QoS Multicast in WDM Networks Xiao-Hua Jia, Ding-Zhu Du, Xiao-Dong Hu, Man-Kei Lee, and Jun Gu, IEEE TRANSACTIONS.
Network and Communications Ju Wang Chapter 5 Routing Algorithm Adopted from Choi’s notes Virginia Commonwealth University.
Computer Sciences Department1. Sorting algorithm 3 Chapter 6 3Computer Sciences Department Sorting algorithm 1  insertion sort Sorting algorithm 2.
Optimization of Wavelength Assignment for QoS Multicast in WDM Networks Xiao-Hua Jia, Ding-Zhu Du, Xiao-Dong Hu, Man-Kei Lee, and Jun Gu, IEEE TRANSACTIONS.
On Reducing Broadcast Redundancy in Wireless Ad Hoc Network Author: Wei Lou, Student Member, IEEE, and Jie Wu, Senior Member, IEEE From IEEE transactions.
Union-find Algorithm Presented by Michael Cassarino.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
Queues, Stacks and Heaps. Queue List structure using the FIFO process Nodes are removed form the front and added to the back ABDC FrontBack.
COSC 5341 High-Performance Computer Networks Presentation for By Linghai Zhang ID:
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
به نام خدا سيد عليرضا كارداني مجتبي اميرخاني Path Set Selection in Mobile Ad Hoc Networks زمستان 1382.
Minimum- Spanning Trees
AVL Trees and Heaps. AVL Trees So far balancing the tree was done globally Basically every node was involved in the balance operation Tree balancing can.
Graphs Upon completion you will be able to:
Priority Queues CS 110: Data Structures and Algorithms First Semester,
Suppose G = (V, E) is a directed network. Each edge (i,j) in E has an associated ‘length’ c ij (cost, time, distance, …). Determine a path of shortest.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. Fast.
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network You-Chiun Wang, Chun-Chi Hu, and Yu-Chee Tseng IEEE Transactions on Mobile Computing.
Priority Queues CS /02/05 L7: PQs Slide 2 Copyright 2005, by the authors of these slides, and Ateneo de Manila University. All rights reserved.
1 Minimum Interference Algorithm for Integrated Topology Control and Routing in Wireless Optical Backbone Networks Fangting Sun Mark Shayman University.
1 GRAPHS – Definitions A graph G = (V, E) consists of –a set of vertices, V, and –a set of edges, E, where each edge is a pair (v,w) s.t. v,w  V Vertices.
Heaps (8.3) CSE 2011 Winter May 2018.
Heap Sort Example Qamar Abbas.
CS223 Advanced Data Structures and Algorithms
Discrete Mathematics for Computer Science
Minimum Spanning Tree.
Finding Fastest Paths on A Road Network with Speed Patterns
CSE 373 Data Structures and Algorithms
3.5 Minimum Cuts in Undirected Graphs
Lectures on Graph Algorithms: searching, testing and sorting
Minimum Spanning Tree.
Minimum Spanning Trees
Lecture 14 Shortest Path (cont’d) Minimum Spanning Tree
Lecture 13 Shortest Path (cont’d) Minimum Spanning Tree
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Algorithms for Precomputing Constrained Widest Paths and Multicast Trees Paper by Stavroula Siachalou and Leonidas Georgiadis Presented by Jeremy Witmer CS 622 Fall 2007

Precomputing Multicast Trees - CS622 2 Overview 1.Large Multicast Trees 2.Proposed Solution for adding nodes 3.Network Model 4.Precomputation Algorithms 5.Time and Space Requirements 6.Multicast Tree Algorithm 7.Simulated Results 8.Conclusion

Precomputing Multicast Trees - CS622 3 Multicast Trees

Precomputing Multicast Trees - CS622 4 Large Multicast Trees In large networks, adding nodes becomes inefficient Wish to add nodes on a widest-bandwidth path Wish to add nodes with QoS constraints

Precomputing Multicast Trees - CS622 5 Definitions Constrained Widest Path: the path that provides the most leftover bandwidth, after bandwidth requirements are satisfied and delay constraints are guaranteed to be met

Precomputing Multicast Trees - CS622 6 Proposed Solution Precompute as many of the links in the tree as possible When adding a node, calculate delay and bandwidth for the links it has to other nodes in the network When a node is added to the multicast tree, choose the path with the highest available bandwidth while obeying QoS delay constraints

Precomputing Multicast Trees - CS622 7 Proposed Solution Solution defined as solutions to two separate problems First, compute the delay and width data for the links in the network, and when nodes are added to the network Second, selection of a new path from the precomputed data when a new node subscribes to the multicast tree

Precomputing Multicast Trees - CS622 8 Network Model Given a directed graph G = (V, E) V is the set of nodes in the graph E is the set of edges in the graph N = |V| M = |E|

Precomputing Multicast Trees - CS622 9 Network Model Each edge in E has a corresponding delay and width, (d,W), where width is the available bandwidth in a link A path from source node s to another node u in the network with delay no greater than d is represented as Pu(d) The optimal path is represented as Pu*(d) A path is defined in terms of the overall delay D(p) and minimum width W(p)

Precomputing Multicast Trees - CS Network Model

Precomputing Multicast Trees - CS Network Model

Precomputing Multicast Trees - CS Problem 1 Definition Find the path Pu*(d) that has the greatest width of all the paths from s to u, meeting the bandwidth requirement W(pu*) > W(p) for all paths Pu(d)

Precomputing Multicast Trees - CS Dominated Pairs Pair (D(p1), W(p1)) dominates pair (D(p2), W(p2)) or path p1 dominates path p2 iff W(p1) > W(p2) and D(p1) < D(p2) OR W(p1) > W(p2) and D(p1) < D(p2)

Precomputing Multicast Trees - CS Algorithm 1 Create a heap P to store all possible discontinuities For each node u in G, except for the source node s: 1.Initialize queue D’(u) 2.Create all possible successor discontinuities to u 3.Store the discontinuities (d, W, u) in P for each u in V Note: (d, W, u) is actually stored as (d, W, u, prev_link)

Precomputing Multicast Trees - CS Algorithm 1 4.Take the discontinuity in the minimum lexicographic order off of P, in the form (d, W, u). 5.If the current discontinuity pair isn’t dominated by any pair currently on D’(u), add the current pair to D’(u), otherwise, discard the pair. 6.Do this for all discontinuities in P

Precomputing Multicast Trees - CS Algorithm 1

Precomputing Multicast Trees - CS Algorithm 1 This will result in a set of queues D’(u), one for each node u in G. Each queue is then sorted in lexicographical order, so the optimal discontinuity for each node u is at the head of the queue Because each discontinuity except for the source s has a predecessor discontinuity (d, W, v), the path can be found by keeping track of these predecessor discontinuities

Precomputing Multicast Trees - CS Algorithm 2 P is an array A[u,k] where 1 < k < K, K < M where k is a function of the width w of a link Initialize H[k] heaps, one for each k Initialize D’(u) queues, one for each node u

Precomputing Multicast Trees - CS Algorithm 2 1.For each node u, generate all discontinuities (d, k, u) 2.Add or replace the discontinuity at A[u,k] only if d is < the discontinuity at A[u,k], and add the discontinuity to H[k] 3.Starting at the last column in A (largest width discontinuities), find the first non-empty heap H[k] 4.Find the lexicographically smallest discontinuity (d, k, u) in H[k]. 5.If d is < the smallest discontinuity (dmin, kmin, u) currently on D’(u), add (d, k, u) to D’(u) 6.Set A[u,k] to null 7.Repeat until all entries in A[u,k] are null or all H[k] are empty

Precomputing Multicast Trees - CS Algorithm 2

Precomputing Multicast Trees - CS Algorithm 2 Since the algorithm works from largest to smallest widths k in A, and only adds links that have delay < the current delay on D’(u), D’(u) is guaranteed to have the best possible links

Precomputing Multicast Trees - CS Algorithm 3 Given the same graph G = (V, E) 1.Find the widest-shortest path from s to each u node in G 2.Let W* be the minimum among the widths of the paths from step 1 3.For all nodes, if W(pu) > W* then add (d, w, u) to the appropriate queue D’(u) 4.Remove from G all links with width < W* 5.If s has no more outgoing links, then stop, else repeat

Precomputing Multicast Trees - CS Algorithm 3 The widest-shortest paths in step 1 are found by Dijkstra’s Algorithm

Precomputing Multicast Trees - CS Time and Space Requirements Worst Case Requirements Running TimeSpace Requirements Algorithm 1O(MNlogN + M 2 logN)Space: O(MN) Algorithm 2O(KNlogN + K 2 )Space: O(KN) Algorithm 3O(MNlogN + M 2 )Space: O(MN)

Precomputing Multicast Trees - CS Current Multicast Tree Design The optimization problem to conserve resources is known to be NP complete. Existing multicast tree-calculation protocols do not rely on trees that solely optimize resources Problem aggravated by the need to satisfy QoS restraints

Precomputing Multicast Trees - CS Problem 2 Given a source node s, a destination node set U, and delay requirement dmax, find a multicast tree T that satisfies a width requirement Wmin 1.Path width W(p) will be > Wmin 2.Path delay D(p) will be < dmax

Precomputing Multicast Trees - CS Computation of Constrained Trees Assume that we need to create a multicast tree T T is a subset U of the nodes V in G Where D(T) < QoS constraint dmax And W(T) is the width of the narrowest link in T

Precomputing Multicast Trees - CS Computation of Constrained Trees Any calculated tree T must satisfy Property 1: The delay d of discontinuity (d, W, u) is the smallest one among the delays of the discontinuities in D’(u) whose width is larger than or equal to Wmin

Precomputing Multicast Trees - CS Algorithm 4 Assuming that D’(u) is an array 1.For all nodes in U, determine the minimum width Wmin that has a delay still less than dmin 2.For each (d, W, u) in each of the arrays D’, determine the discontinuity having property 1, and mark that discontinuity as belonging to the tree 3.Construct T using the predecessor node information stored in D’(u)

Precomputing Multicast Trees - CS Algorithm 4 Performance Running Time: O(max{|U|logN, N}) Space Requirements: O(U)

Precomputing Multicast Trees - CS Simulation Results Simulations were run on two different networks Power Law Networks: a network with N nodes and M links, where M=άN, ά > 1 Real Internet Networks: observed internet topologies from 9/20/1998, 1/1/2000, and 2/1/2000

Precomputing Multicast Trees - CS Simulation Results The delays of the links in both network types were picked randomly in the interval [1,100]. Width 1 networks: width of each link chosen at random from the interval [1,100] Width 2 networks: link width is a function of link delay, based on w = β(101 – d), where β is random from the interval [1,10]

Precomputing Multicast Trees - CS Simulation Results Power Law networks generated with 400, 800, and 1200 nodes and ratios ά = 4, 8, 16 Real networks selected with M = 9360, 16568, and N = 2107, 4120, 6474

Precomputing Multicast Trees - CS Simulation Results

Precomputing Multicast Trees - CS Simulation Results

Precomputing Multicast Trees - CS Simulation Results

Precomputing Multicast Trees - CS Simulation Results

Precomputing Multicast Trees - CS Simulation Results Running times are increased using Width 2 method, as there are more available discontinuities Algorithm 2 has the best running time, Algorithm 3 the worst Algorithm 1 takes up to 1.6 times as long as Algorithm 2 Algorithm 3 takes up to 14 times as long as Algorithm 2 Algorithm 2 performs the best, especially on larger networks

Precomputing Multicast Trees - CS Simulation Results Algorithm 3 has the smallest memory requirements, followed closely by Algorithm 1. Algorithm 2 requires significantly more space than either of Algorithms 1 and 3, due to the memory requirements of the two-dimensional array A[u, k]

Precomputing Multicast Trees - CS Conclusions The performance of all algorithms decreases rapidly as u increases Algorithm 1 presents the best trade-off between time and space requirements for precomputing tree paths. Algorithm 4 is simple by comparison, picking the multicast tree T is fairly quick, no matter the number of subscriber nodes

Precomputing Multicast Trees - CS References [1] S. Siachalou and L. Georgiadis. “Algorithms for Precomputing Constrained Widest Paths and Multicast Trees”. IEEE/ACM Transactions on Networking. Vol. 13, No. 5. pp October [2] S. Siachalou and L. Georgiadis. “Efficient QoS Routing”. INFOCOM nd Annual Joint Conference of the IEEE Computer and Communications Societies. Vol. 2. pp March-3 April 2003.