Efficient Bufferless Routing on Leveled Networks Costas Busch Shailesh Kelkar Malik Magdon-Ismail Rensselaer Polytechnic Institute.

Slides:



Advertisements
Similar presentations
Ch. 12 Routing in Switched Networks
Advertisements

Chapter 5: Tree Constructions
1 Atomic Routing Games on Maximum Congestion Costas Busch Department of Computer Science Louisiana State University Collaborators: Rajgopal Kannan, LSU.
Routing and Congestion Problems in General Networks Presented by Jun Zou CAS 744.
Ch. 12 Routing in Switched Networks Routing in Packet Switched Networks Routing Algorithm Requirements –Correctness –Simplicity –Robustness--the.
Max- coloring in trees SRIRAM V.PEMMARAJU AND RAJIV RAMAN BY JAYATI JENNIFER LAW.
Routing in a Parallel Computer. A network of processors is represented by graph G=(V,E), where |V| = N. Each processor has unique ID between 1 and N.
Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
Queuing Network Models for Delay Analysis of Multihop Wireless Ad Hoc Networks Nabhendra Bisnik and Alhussein Abouzeid Rensselaer Polytechnic Institute.
1 A Deterministic Algorithm for Summarizing Asynchronous Streams over a Sliding Window Costas Busch Rensselaer Polytechnic Institute Srikanta Tirthapura.
Playback delay in p2p streaming systems with random packet forwarding Viktoria Fodor and Ilias Chatzidrossos Laboratory for Communication Networks School.
CWI PNA2, Reading Seminar, Presented by Yoni Nazarathy EURANDOM and the Dept. of Mechanical Engineering, TU/e Eindhoven September 17, 2009 An Assortment.
Rumor Routing in Sensor Networks David Braginsky and Deborah Estrin Presented By Tu Tran 1.
1 Complexity of Network Synchronization Raeda Naamnieh.
A Robust Interference Model for Wireless Ad-Hoc Networks Pascal von Rickenbach Stefan Schmid Roger Wattenhofer Aaron Zollinger.
Congestion Pricing Overlaid on Edge-to-Edge Congestion Control Murat Yuksel, Shivkumar Kalyanaraman and Anuj Goel Rensselaer Polytechnic Institute, Troy,
Parallel Routing Bruce, Chiu-Wing Sham. Overview Background Routing in parallel computers Routing in hypercube network –Bit-fixing routing algorithm –Randomized.
Teknik Routing Pertemuan 20 Matakuliah: H0484/Jaringan Komputer Tahun: 2007.
SMART: A Scan-based Movement- Assisted Sensor Deployment Method in Wireless Sensor Networks Jie Wu and Shuhui Yang Department of Computer Science and Engineering.
1 A Distributed Delay-Constrained Dynamic Multicast Routing Algorithm Quan Sun and Horst Langendorfer Telecommunication Systems Journal, vol.11, p.47~58,
1 Analysis of Link Reversal Routing Algorithms Srikanta Tirthapura (Iowa State University) and Costas Busch (Renssaeler Polytechnic Institute)
ECE669 L10: Graph Applications March 2, 2004 ECE 669 Parallel Computer Architecture Lecture 10 Graph Applications.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
1 Algorithms for Bandwidth Efficient Multicast Routing in Multi-channel Multi-radio Wireless Mesh Networks Hoang Lan Nguyen and Uyen Trang Nguyen Presenter:
Dragonfly Topology and Routing
Models and Techniques for Communication in Dynamic Networks Christian Scheideler Dept. of Computer Science Johns Hopkins University.
Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih Onus November
Routing Protocol Evaluation David Holmer
IEEE Globecom 2010 Tan Le Yong Liu Department of Electrical and Computer Engineering Polytechnic Institute of NYU Opportunistic Overlay Multicast in Wireless.
June 21, 2007 Minimum Interference Channel Assignment in Multi-Radio Wireless Mesh Networks Anand Prabhu Subramanian, Himanshu Gupta.
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.
1 Oblivious Routing in Wireless networks Costas Busch Rensselaer Polytechnic Institute Joint work with: Malik Magdon-Ismail and Jing Xi.
1 Optimal Oblivious Routing in Hole-Free Networks Costas Busch Louisiana State University Malik Magdon-Ismail Rensselaer Polytechnic Institute.
1 Oblivious Routing in Wireless networks Costas Busch Rensselaer Polytechnic Institute Joint work with: Malik Magdon-Ismail and Jing Xi.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
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.
50 th Annual Allerton Conference, 2012 On the Capacity of Bufferless Networks-on-Chip Alex Shpiner, Erez Kantor, Pu Li, Israel Cidon and Isaac Keslassy.
Analysis of Link Reversal Routing Algorithms for Mobile Ad Hoc Networks Costas Busch (RPI) Srikanth Surapaneni (RPI) Srikanta Tirthapura (Iowa State University)
InterConnection Network Topologies to Minimize graph diameter: Low Diameter Regular graphs and Physical Wire Length Constrained networks Nilesh Choudhury.
Off-Line AGV Routing on the 2D Mesh Topology with Partial Permutation
1 Near-Optimal Hot-Potato Routing on Trees Costas Busch Rensselaer Polytechnic Inst. Malik Magdon Ismail Rensselaer Polytechnic Inst. Marios Mavronicolas.
1 Costas Busch Õ(Congestion + Dilation) Hot-Potato Routing on Leveled Networks Costas Busch Rensselaer Polytechnic Institute.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Copyright © 2007 OPNET Technologies, Inc. CONFIDENTIAL - RESTRICTED ACCESS: This information may not be disclosed, copied, or transmitted in any format.
Vertex Coloring Distributed Algorithms for Multi-Agent Networks
Algorithms for Routing and Centralized Scheduling in IEEE Mesh Networks Harish Shetiya and Vinod Sharma Department of Electrical Communication Engineering.
1 Bottleneck Routing Games on Grids Costas Busch Rajgopal Kannan Alfred Samman Department of Computer Science Louisiana State University.
1 Routing without Flow Control Costas Busch Rensselaer Polytechnic Institute Maurice Herlihy Brown University Roger Wattenhofer Microsoft Research.
1 Low Latency Multimedia Broadcast in Multi-Rate Wireless Meshes Chun Tung Chou, Archan Misra Proc. 1st IEEE Workshop on Wireless Mesh Networks (WIMESH),
1 Quality of Routing Congestion Games in Wireless Sensor Networks Costas Busch Louisiana State University Rajgopal Kannan Louisiana State University Athanasios.
1 Distributed Vertex Coloring. 2 Vertex Coloring: each vertex is assigned a color.
Introduction to Multiple-multicast Routing Chu-Fu Wang.
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Designing Multi-hop Wireless Backhaul Networks with Delay Guarantees Girija Narlikar, Gordon Wilfong, and Lisa Zhang Bell Lab. Infocom 2006.
1 Hard-Potato Routing Costas Busch, Maurice Herlihy, and Roger Wattenhofer Brown University.
COMP8330/7330/7336 Advanced Parallel and Distributed Computing Communication Costs in Parallel Machines Dr. Xiao Qin Auburn University
Routing Protocols to Maximize Battery Efficiency
Graphs Lecture 19 CS2110 – Spring 2013.
CONNECTED-COMPONENTS ALGORITHMS FOR MESH-CONNECTED PARALLEL COMPUTERS
Multi-Node Broadcasting in Hypercube and Star Graphs
Analysis of Link Reversal Routing Algorithms
MST in Log-Star Rounds of Congested Clique
Routing Without Flow Control Hot-Potato Routing Simulation
Maximal Independent Set
Kevin Lee & Adam Piechowicz 10/10/2009
Introduction Wireless Ad-Hoc Network
Universal Bufferless Routing
Permutation routing in n-cube
Lecture 10 Graph Algorithms
Presentation transcript:

Efficient Bufferless Routing on Leveled Networks Costas Busch Shailesh Kelkar Malik Magdon-Ismail Rensselaer Polytechnic Institute

Talk Outline Introduction Centralized Algorithm Distributed Algorithm Conclusion

Leveled Networks Level: 1 2 3 L-1 L

Examples of Leveled Networks 1 2 3 3 4 5 6 2 1 Butterfly Mesh

Network Model Synchronous network (time steps) Bi-directional links One packet per direction, per time step

Buffer-less nodes Time 0 Packets are always moving

Buffer-less nodes Time 1 Packets are always moving

Buffer-less nodes Time 2 Packets are always moving

Buffer-less nodes Time 3 Packets are always moving

Buffer-less nodes Time 4 Packets are always moving

Bufferless routing is interesting: Optical networks Simple hardware implementations Works well in practice: Bartzis et al.: EUROPAR 2000 Maxemchuck: INFOCOM 1989

Routing Time: the time until the last packet is absorbed Objective: Minimize Routing Time

Each packet has a pre-selected path source destination Packet path is from left to right

The packet follows the pre-selected path source destination

The packet follows the pre-selected path source destination

The packet follows the pre-selected path source destination

There are packets Each packet has its own path

Dilation D: The maximum length of any path Routing time:

Congestion C: The maximum number of packets traversing any edge Routing time:

Lower bound on Routing Time: Congestion Dilation We want algorithms with Routing Time close to:

Our Contributions Centralized Algorithm: Distributed Algorithm: Both algorithms are randomized Results hold with high probability : number of packets

Related Work Networks with buffers Leveled networks: Leighton, Maggs, Ranade, Rao: J. Algorithms 1992 Arbitrary networks: [Leighton - Maggs - Rao, Combinatorica 94] [BS99, LMR99, MV99, OR97, RT96]

Bufferless networks Mesh [BRST93, BES97, BHS98, BU96, BHW00] Hypercube [BH85, BC95, FR92, H91] Trees [BMMW04, RSW00, BMMW] Leveled [BBPRRS96, B02] Vertex-symmetric [MS95] Arbitrary networks [BMM04]

Most related work Arbitrary networks: Leveled Networks: Busch, Magdon-Ismail, Mavronicolas WAOA’04 Leveled Networks: Busch TCS’04 Leveled networks in different routing model: Bhatt, Bilardi, Pucci, Ranade, Rosenberg, Scwabe TC’96

Talk Outline Introduction Centralized Algorithm Distributed Algorithm Conclusion

Centralized Algorithm A central node knows all the parameters of the problem and computes a packet schedule

Packet Grouping A Packet Grouping B Group 1 Group 2 Group 3 Group 4

Send packets of Grouping A Send packets of Grouping B Increases routing time by only a factor of 2 Packet Grouping A Group 1 Group 2 Group 3 Packets in different groups can be sent simultaneously Group 1 We focus only in one group

Group 1 set of packets Congestion Dilation

Partition the packets randomly and uniformly into sets #of packets

Benefit: congestion drops packets New Congestion w.h.p.

Before partitioning Edge Congestion

After partitioning Expected one packet from each packet set

Expected Congestion 1 (Congestion w.h.p.)

We partition the levels into frames # number of frames:

We send packets from frame to frame Wave

We send packets from frame to frame Wave Duration: Wave

We send packets from frame to frame Wave

We send packets from frame to frame Wave

We send packets from frame to frame Wave

A packet follows its path from source to Destination along the wave Injection wave A packet follows its path from source to Destination along the wave

A packet follows its path from source to Destination along the wave

A packet follows its path from source to Destination along the wave

A packet follows its path from source to Destination along the wave Absorption wave A packet follows its path from source to Destination along the wave

A packet follows its path from source to Destination along the wave Absorption wave A packet follows its path from source to Destination along the wave

Sending packets of different packet sets simultaneously Wave 1

Sending packets of different packet sets simultaneously Wave 1

Sending packets of different packet sets simultaneously Wave 2 Wave 1

Sending packets of different packet sets simultaneously Wave 2 Wave 1

Sending packets of different packet sets simultaneously Wave 3 Wave 2 Wave 1

Sending packets of different packet sets simultaneously Wave 3 Wave 2 Wave 1

Sending packets of different packet sets simultaneously Wave C Wave 3 Wave 2

Sending packets of different packet sets simultaneously Wave C Wave 3 Wave 2

Sending packets of different packet sets simultaneously Wave C Wave 3

Sending packets of different packet sets simultaneously Wave C Wave 3

Sending packets of different packet sets simultaneously Wave C

Sending packets of different packet sets simultaneously Wave C

Sending packets of different packet sets simultaneously Wave C

All packets have been absorbed!

Routing Time = Time until last wave C leaves the network Time when duration Wave duration #frames Time when wave C enters the network Time that wave C needs to traverse the network

Oscilation Simulates buffering Frame Time

Oscilation Simulates buffering Frame Time

Oscilation Simulates buffering Frame Time

Oscilation Simulates buffering Frame Time

Packet propagation during a wave Frame Frame Wave

Packet propagation during a wave Frame Frame Wave

Conflict Graph Each node is a packet Two packets are adjacent if their paths use a common edge in the frames and

Example Frame Frame Share edge Conflict graph

Thus the conflict graph can be colored with The degree of any node is bounded by 1 3 (A consequence of packet partitioning) 2 2 1 1 3 2 2 1 Thus the conflict graph can be colored with colors

We send packets of each color seperately Frame Frame 3 3 1 2 2 2 1 1 1 2 1 3 Wave

First send packets of color 1 Frame Frame 3 3 1 1 1 2 2 2 1 1 1 1 1 2 1 3 1 Wave Packet paths don’t conflict Time needed:

Similarly, send packets of color 2 Frame Frame 3 3 2 1 2 1 2 2 2 1 2 1 2 2 3 1 Wave Packet paths don’t conflict

Similarly, send packets of color 3 Frame Frame 2 1 2 1 3 1 2 1 2 3 3 1 Wave Packet paths don’t conflict

All packets have been delivered Frame Frame 3 2 1 2 1 3 1 2 1 2 3 1 Wave

Wave time: Colors X 2 Frame size We can speed up the process by pipelining different colors:

Pipelining using Boats Frame Frame 3 3 1 2 2 2 1 1 1 2 1 3 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 3 3 1 2 2 2 1 1 1 2 1 3 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 3 3 1 2 2 2 1 1 1 2 1 3 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 3 3 1 2 2 2 1 1 1 2 3 1 Boat 1 deflected Packets of color follow boat

Pipelining using Boats Frame Frame 3 3 1 2 2 2 1 1 1 2 3 1 Back In position Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 3 1 3 2 2 1 2 1 2 1 3 1 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 1 3 3 2 2 2 2 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 1 3 2 3 2 2 2 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 1 3 2 3 2 2 2 3 Boat 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 1 3 3 2 2 2 3 2 Boat 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 2 1 3 3 3 Boat 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 2 1 3 3 3 Boat 3 Boat 2 Boat 1 Packets of color follow boat

Pipelining using Boats Frame Frame 2 3 1 3 3 Boat 3 Boat 2 Packets of color follow boat

Pipelining using Boats Frame Frame 2 1 3 3 3 Boat 3 Boat 2 Packets of color follow boat

Pipelining using Boats Frame Frame 3 Boat 3 1 2 2 2 2 Packets of color follow boat

Pipelining using Boats Frame Frame 3 Boat 3 1 2 2 2 2 Packets of color follow boat

Pipelining using Boats Frame Frame 1 3 2 2 3 2 3 2 Packets of color follow boat

Wave time: Time until last boat reaches target level Number of colors Frame size

Talk Outline Introduction Centralized Algorithm Distributed Algorithm Conclusion

In the distributed version, we assume that every node knows parameters Nodes do not know the packet paths, except for the packets in them.

The distributed algorithm is the same with the centralized, except for one thing: The conflict graph is colored in a distributed manner

Distributed coloring – Basic Idea During a wave: each packet chooses a random color Between 0 and 2log(DN) 2. each packet assumes the color is correct and follows the respective boat 3. For packets that conflict, the process repeats

This process repeats a logarithmic number of times, thus it gives an extra logarithmic factor in the performance

Talk Outline Introduction Centralized Algorithm Distributed Algorithm Conclusion

Conclusion Centralized algorithm Uses conflict graph coloring Distributed Algorithm Worse by a logarithmic factor Implements distributed coloring