High Performance Router Architectures for Network-based Computing By Dr. Timothy Mark Pinkston University of South Califor...
Outline <ul><li>Introduction </li></ul><ul><li>Topology </li></ul><ul><li>Routing </li></ul><ul><li>Deadlock </li></ul><ul...
Introduction <ul><li>High-Performance Router Architectures for Network-based Computing </li></ul><ul><ul><li>Multiprocesso...
Introduction <ul><li>Four major areas of concern of network design </li></ul><ul><ul><li>Topology </li></ul></ul><ul><ul><...
Topology <ul><li>Bisection width </li></ul><ul><ul><li>Number of links that needed to be removed when dividing the network...
Routing-Oblivious vs. Adaptive <ul><li>Oblivious routing </li></ul><ul><ul><li>Path selection in regardless of load </li><...
Routing Oblivious vs. Adaptive <ul><li>Adaptive routing </li></ul><ul><ul><li>Path selection based on network status </li>...
Routing – Minimal vs. Non-minimal <ul><li>Minimal routing </li></ul><ul><ul><li>Packets consume less bandwidth </li></ul><...
Routing - Deadlock <ul><li>Cause </li></ul><ul><ul><li>Congestion lead to cyclic waits for resources </li></ul></ul><ul><l...
Deadlock – Avoidance based <ul><li>Path-based </li></ul><ul><ul><li>Observation </li></ul></ul><ul><ul><ul><li>Deadlocks o...
Path-based Example <ul><li>Dimension Order Routing </li></ul><ul><li>Turn Model </li></ul>
Deadlock – Avoidance based <ul><li>Path-based </li></ul><ul><ul><li>Pro: </li></ul></ul><ul><ul><ul><li>Does not depend on...
Deadlock – Avoidance based <ul><li>Channel based </li></ul><ul><ul><li>Observation </li></ul></ul><ul><ul><ul><li>Deadlock...
Deadlock – Avoidance based <ul><li>Channel based </li></ul><ul><ul><li>Pro: </li></ul></ul><ul><ul><ul><li>No need for rep...
Network Reconfiguration <ul><li>Why? </li></ul><ul><ul><li>To restore or make more efficient the network connectivity when...
Static Reconfiguration <ul><li>Three steps </li></ul><ul><ul><li>Stop all network traffic and discard all existing packets...
Dynamic Reconfiguration <ul><li>Problem </li></ul><ul><ul><li>Reconfiguration-dependent deadlocks due to ghost dependencie...
Dynamic Reconfiguration <ul><li>Application of Duato’s theory </li></ul><ul><ul><li>Escape channel resources doubled durin...
Upcoming SlideShare
Loading in …5
×

High Performance Router Architectures for Network-based Computing

500 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
500
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

High Performance Router Architectures for Network-based Computing

  1. 1. High Performance Router Architectures for Network-based Computing By Dr. Timothy Mark Pinkston University of South California Computer Engineering Division Dept. of Electrical Engineering-Systems
  2. 2. Outline <ul><li>Introduction </li></ul><ul><li>Topology </li></ul><ul><li>Routing </li></ul><ul><li>Deadlock </li></ul><ul><li>Network Reconfiguration </li></ul>
  3. 3. Introduction <ul><li>High-Performance Router Architectures for Network-based Computing </li></ul><ul><ul><li>Multiprocessor system </li></ul></ul><ul><ul><li>Cluster computing environment </li></ul></ul><ul><ul><li>Core components within the switch/router </li></ul></ul><ul><li>Network Latency as a function of </li></ul><ul><ul><li>time for transmission of packet </li></ul></ul><ul><ul><li>propagation delay </li></ul></ul><ul><ul><li>switching delay </li></ul></ul><ul><ul><li>Time required for contention handling </li></ul></ul>
  4. 4. Introduction <ul><li>Four major areas of concern of network design </li></ul><ul><ul><li>Topology </li></ul></ul><ul><ul><ul><li>Defines the network architecture </li></ul></ul></ul><ul><ul><li>Routing </li></ul></ul><ul><ul><ul><li>Path selection, deadlock handling, congestion & load balancing </li></ul></ul></ul><ul><ul><li>Switching </li></ul></ul><ul><ul><ul><li>Path set-up, degree of pipelining, channel sharing </li></ul></ul></ul><ul><ul><li>Flow control </li></ul></ul><ul><ul><ul><li>Resource allocation, contention resolution, channel sharing,scheduling </li></ul></ul></ul>
  5. 5. Topology <ul><li>Bisection width </li></ul><ul><ul><li>Number of links that needed to be removed when dividing the network into 2 nearly equal half </li></ul></ul><ul><ul><li>Larger width </li></ul></ul><ul><ul><ul><li>Latency is lower </li></ul></ul></ul><ul><ul><ul><li>May not be scalable </li></ul></ul></ul>
  6. 6. Routing-Oblivious vs. Adaptive <ul><li>Oblivious routing </li></ul><ul><ul><li>Path selection in regardless of load </li></ul></ul><ul><ul><li>Pro: Simple routing function result in lower switching delay </li></ul></ul><ul><ul><li>Con: Unable to adapt to network condition result in higher contention delay </li></ul></ul>
  7. 7. Routing Oblivious vs. Adaptive <ul><li>Adaptive routing </li></ul><ul><ul><li>Path selection based on network status </li></ul></ul><ul><ul><li>Pro: Distribute load more evenly result in lower contention delay </li></ul></ul><ul><ul><li>Con: </li></ul></ul><ul><ul><ul><li>Decision based on local information can cause congestion </li></ul></ul></ul><ul><ul><ul><li>More complex decision logic can increase the switching delay </li></ul></ul></ul>
  8. 8. Routing – Minimal vs. Non-minimal <ul><li>Minimal routing </li></ul><ul><ul><li>Packets consume less bandwidth </li></ul></ul><ul><ul><li>Minimal path may consists congested/faulty node </li></ul></ul><ul><li>Non-minimal routing </li></ul><ul><ul><li>Packets can route around congestion </li></ul></ul><ul><ul><li>Provide better worst case performance </li></ul></ul>
  9. 9. Routing - Deadlock <ul><li>Cause </li></ul><ul><ul><li>Congestion lead to cyclic waits for resources </li></ul></ul><ul><li>Theorem </li></ul><ul><ul><li>If no cycles appear in directed graph or connected sub-graph, then it is deadlock-free </li></ul></ul><ul><li>Solutions </li></ul><ul><ul><li>Avoidance based </li></ul></ul><ul><ul><li>Recovery based </li></ul></ul>
  10. 10. Deadlock – Avoidance based <ul><li>Path-based </li></ul><ul><ul><li>Observation </li></ul></ul><ul><ul><ul><li>Deadlocks occur when packet change their direction in the network </li></ul></ul></ul><ul><ul><li>Idea </li></ul></ul><ul><ul><ul><li>Prohibit certain turns so as to eliminate cycles </li></ul></ul></ul><ul><ul><li>Examples </li></ul></ul><ul><ul><ul><li>Direction Order Routing </li></ul></ul></ul><ul><ul><ul><li>Turn Model </li></ul></ul></ul><ul><ul><ul><li>Up/Down Model </li></ul></ul></ul>
  11. 11. Path-based Example <ul><li>Dimension Order Routing </li></ul><ul><li>Turn Model </li></ul>
  12. 12. Deadlock – Avoidance based <ul><li>Path-based </li></ul><ul><ul><li>Pro: </li></ul></ul><ul><ul><ul><li>Does not depend on virtual circuits for deadlock-freedom </li></ul></ul></ul><ul><ul><li>Con: </li></ul></ul><ul><ul><ul><li>Routing flexibility is sacrificed in general case </li></ul></ul></ul>
  13. 13. Deadlock – Avoidance based <ul><li>Channel based </li></ul><ul><ul><li>Observation </li></ul></ul><ul><ul><ul><li>Deadlocks occur when packet cannot escape from cyclic resource dependency </li></ul></ul></ul><ul><ul><li>Idea </li></ul></ul><ul><ul><ul><li>Explicitly impose an ordering on the use of virtual circuit resources </li></ul></ul></ul><ul><ul><li>Examples </li></ul></ul><ul><ul><ul><li>Entire channel set </li></ul></ul></ul><ul><ul><ul><li>Escape channel set </li></ul></ul></ul>
  14. 14. Deadlock – Avoidance based <ul><li>Channel based </li></ul><ul><ul><li>Pro: </li></ul></ul><ul><ul><ul><li>No need for replication of physical channels </li></ul></ul></ul><ul><ul><li>Con: </li></ul></ul><ul><ul><ul><li>Additional control needed for channel selection </li></ul></ul></ul>
  15. 15. Network Reconfiguration <ul><li>Why? </li></ul><ul><ul><li>To restore or make more efficient the network connectivity when nodes fail/are added </li></ul></ul><ul><li>Goal </li></ul><ul><ul><li>Keep network up and running during reconfiguration </li></ul></ul><ul><ul><li>Discard as few packets as possible </li></ul></ul><ul><li>How? </li></ul><ul><ul><li>Static Reconfiguration </li></ul></ul><ul><ul><li>Dynamic Reconfiguration </li></ul></ul>
  16. 16. Static Reconfiguration <ul><li>Three steps </li></ul><ul><ul><li>Stop all network traffic and discard all existing packets </li></ul></ul><ul><ul><li>Update the routing function </li></ul></ul><ul><ul><li>Reactivate the network </li></ul></ul><ul><li>Problem </li></ul><ul><ul><li>Poor reliability, availability, performance and predictability </li></ul></ul>
  17. 17. Dynamic Reconfiguration <ul><li>Problem </li></ul><ul><ul><li>Reconfiguration-dependent deadlocks due to ghost dependencies: interaction of old and new routing functions </li></ul></ul><ul><li>Duato’s Theory </li></ul><ul><ul><li>Only need to ensure that the escape path (particular VC) remains cycle-free during reconfiguration </li></ul></ul>
  18. 18. Dynamic Reconfiguration <ul><li>Application of Duato’s theory </li></ul><ul><ul><li>Escape channel resources doubled during reconfiguration </li></ul></ul><ul><ul><ul><li>One of the normal channels is drained and configures as the new escape resource </li></ul></ul></ul><ul><ul><ul><li>Reconfiguration done with 2 escape channels </li></ul></ul></ul><ul><ul><ul><li>Old escape resource is used as a new adaptive resource </li></ul></ul></ul>

×