1 / 25

Advanced Networking Technologies Overview

Learn about multi-stage networks, Omega and Benes networks, with examples and routing algorithms. Understand concepts like scalability, bisection width, and fault tolerance.

arturoc
Download Presentation

Advanced Networking Technologies Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture on NetworksMoon Jung Chung CSE838 Lecture notes copy right: Moon Jung Chung

  2. Network Multi-stage network Direct Network CSE838 Lecture notes copy right: Moon Jung Chung

  3. Multi-Stage Network Overview Major Types Banyan and Banyan-Like • Omega, Butterfly • Self routing • May not realize all permutations • Clos and Benes • Batcher Sorter • Miscellaneous Butterfly network 1 2 3 4 5 6 7 8 Omega network CSE838 Lecture notes copy right: Moon Jung Chung

  4. Omega Network Self Routing 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 001 000 001 010 101 110 111 110 111 011 110 010 101 001 100 000 011 001 111 101 010 000 110 100 111 110 101 100 011 010 001 000 At each stage, adjust corresponding bit in the highest order Cannot realize all permutation CSE838 Lecture notes copy right: Moon Jung Chung

  5. Clos and Benes • Cost more than Banyans • Difficult to route • Can support all permutation connection assignments • Types: • Blocking: Benes -- If a permutation changes, a new routing start an assignment all over again. • Non Blocking: Clos -- Adjust the routing only for pairs of the permutation that change their value CSE838 Lecture notes copy right: Moon Jung Chung

  6. r-1 dim Benes r-1 dim Benes Benes Network Recursive construction of r-dimension Benes-network r=0 dimension Two state of switch CSE838 Lecture notes copy right: Moon Jung Chung

  7. Benes Network Can realize any permutation Theorem: Given any permutation  of 2r+1 inputs to 2r+1 on an r-dimensional Benes Network, there is a set of edge-disjoint path from the input to the output connecting input i to output (i) for all i. Proof: By induction on r. Basis (r=1) Trivial (Inductive step) Let us prove the claim for r. It is suffice to show that inputs can be divided into two parts I1 and I2 such that for each level 0 switch, either (2i-1)I1 and 2i I2 or (2i-1)I2 and 2i I1 for each level 2r switch, either -1(2i-1)I1 and -1(2i) I2 or -1(2i-1)I2 and -1(2i) I1 CSE838 Lecture notes copy right: Moon Jung Chung

  8. Example: Benes Network for r=2 I1 1 2 3 4 5 6 7 8 I2 level 2r switches level 0 switches CSE838 Lecture notes copy right: Moon Jung Chung

  9. Example ( ) 1 2 3 4 5 6 7 8 4 5 6 8 1 2 3 7 I1 1 2 3 4 5 6 7 8 I2 level 2r switches level 0 switches CSE838 Lecture notes copy right: Moon Jung Chung

  10. Greedy Partitioning for Routing on Benes Network How to partition to I1 and I2? Assign 1 -> (1) using upper. Each line has an mate. (x1’s mate is x2, x3 has mates x4) Suppose that we are doing xi -> yj, and using the upper box (I1). Then the mate of yj must use lower box (I2). This in turn limit which box to use for the mate of xk, where (xk -> yj) Repeat until you have completed. After you obtain I1 and I2, apply the algorithm recursively CSE838 Lecture notes copy right: Moon Jung Chung

  11. Example ( ) 1 2 3 4 5 6 7 8 4 5 6 8 1 2 3 7 I1 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 I2 level 2r switches level 0 switches CSE838 Lecture notes copy right: Moon Jung Chung

  12. Network Graph Properties • Diameter: the longest path from one node to another node • Bisection width min |E(V1; V2)| E(V1, V2): # of edges crossing between V1 and V2 # of nodes V1 and V2 have n/2 vertices each • Cost: # of edges in the network • Scalability: amount of resources necessary to add/drop nodes • mesh: scalable • Butterfly scalable • Hypercube • Fault Tolerance CSE838 Lecture notes copy right: Moon Jung Chung

  13. Bisection Algorithm on a Tree Simple Divide and Conquer Algorithm Let Select (T,k) be a function which select k nodes from a tree T Bi-partition of T is: Select(T, |T|/2), where |T| is the number of nodes of T Select(T, k) { if (k = 0 ) return (); // need not to select any nodes // Let LT be the left subtree of T and RT be the right subtree of T if ( |LT| <= k ) then return (Select(LT, k)) ; if ( |RT| <= k ) then return (Select(RT, k)) ; // else we must select all nodes of LT and root of T and (k-|LT|-1) from RT return (LT  {R}  Select(RT, k -|LT|-1) ) // R is the root of T ; Depth of recursion: log2n CSE838 Lecture notes copy right: Moon Jung Chung

  14. Topologically Equivalent • G1 and G2 are topologically equivalent iff there is an graph isomorphism between them. Note that input and out put pins can be re-ordered. • Example Butterfly network, Omega Network, Shuffle Exchange network, Baseline Network are all topologically equivalent CSE838 Lecture notes copy right: Moon Jung Chung

  15. Bisection Partition of a Tree Example Select (9) 1 Select (9) Edges crossing between two bi-partitions 2 14 Select (9) 16 Nodes selected 15 3 Select (2) 10 4 17 Select (2) 8 12 5 11 13 9 7 6 CSE838 Lecture notes copy right: Moon Jung Chung

  16. Examples Hypercube of dimension n. (N=2n) • d = n = log2N • BW: N/2 • Cost/node: log n • Scalability: no • reliability: yes • There are many redundant paths but may not be easy to use Cube Connected Cycles • d: log n • BW: N/2 • Cost: 3 • Scalability: medium • Reliability : low CSE838 Lecture notes copy right: Moon Jung Chung

  17. Graph Embedding Source Graph G and Target Graph H Mapping G  H (VG, EG)  (VH, EH) • f: VG  VH • g: EG  path of H • (u, v)  (x1, x2,... xk) • x1=f(u), xk = f(v) • (xi, xi+1)  EH • Expansion factor |VH|/|VG| • Load factor maxx|{f(v)=x| v  VG}| • dilation max{l(g(e))| e  LG} • l:path length of g(e) • congestion: • congestion (e): maximum number of edges in G that go through e • Congestion : max congestion (e) = Max eEH |{e;|e’  EG, and e  g(e’)}| CSE838 Lecture notes copy right: Moon Jung Chung

  18. Drawing (embedding) of a graph on a mesh Embedding on a mesh Tree: O(N) Area Complete binary tree: use H-tree layout General tree: Still O(N) area Hypercube:O(N2) Shuffle exchange: O(N2/log2 N) CCC: Same as S.E. MNXN  Hn : Use Gray Code (x,y)  Gray (x) Gray(y) where : bit concatenations dilation: 1 load factor: 1 congestion: 1 expansion: 1 CSE838 Lecture notes copy right: Moon Jung Chung

  19. Embedding a complete binary tree into a hypercube 2n -1 nodes into 2n nodes hypercube dilation : almost 1 load factor: 1 congestion: 1 expansion: 1 Is expansion 1, dilation 1 possible? ==> Not possible Even Parity 1 Odd Parity 2 Even Parity 3 Odd Parity 4 Even parity nodes are connected to odd parity nodes in a hypercube. Even parity nodes in a hypercube: 2n-1 Suppose root has even parity, and leaves are even parity, total nodes mapped to even parity = 1 + 4 + ... + 2n-1 > 2n-1 If leaves are odd parity: odd parity = 2 + 8 + ... + 2n-1 > 2n-1 Both cases: contradiction! CSE838 Lecture notes copy right: Moon Jung Chung

  20. Embedding 2N-1 nodes tree into N nodes Hypercube 000 • load factor : log n • Dilation: 1 • Congestion : 1 000 100 000 010 100 110 100 111 010 011 101 001 110 000 CSE838 Lecture notes copy right: Moon Jung Chung

  21. Double Rooted Complete Binary Tree CSE838 Lecture notes copy right: Moon Jung Chung

  22. Embedding a double rooted complete binary tree onto a hypercube Approach: Induction 100 000 Possible 10 00 101 010 11 01 111 001 110 011 Basis N = 4 110 N = 8 CSE838 Lecture notes copy right: Moon Jung Chung

  23. Inductive Step one copy another copy (reflection) • Suppose that embedding N node is done. • How to embed 2N nodes into a hypercube? 100 000 000 100 C1 010 010 exchange 1st, 2nd bit 000 010 100 CSE838 Lecture notes copy right: Moon Jung Chung

  24. Inductive Step (continue) 1010 0100 1000 0000 0010 1100 C1 with leading 0 C2 (after exchanging bits)with leading 1 CSE838 Lecture notes copy right: Moon Jung Chung

  25. 0100 0000 1000 1010 0010 1100 CSE838 Lecture notes copy right: Moon Jung Chung

More Related