1 / 35

Switching Hardware

Switching Hardware. Switch Design. Chicago. Bloomington. Champaign. Indianapolis. How should we design Champaign to accommodate traffic flows?. Springfield. Effingham. St. Louis. Contention. Bridges: same collision domain

pearly
Download Presentation

Switching Hardware

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. Switching Hardware CS/ECE 438 - UIUC, Fall 2006

  2. Switch Design Chicago Bloomington Champaign Indianapolis How should we design Champaign to accommodate traffic flows? Springfield Effingham St. Louis CS/ECE 438 - UIUC, Fall 2006

  3. Contention • Bridges: same collision domain • If an output port is busy when forwarding packet from input port, cause collision • Switches: different collision domain • Use CSMA/CD before sending packet onward • Buffer packets • When output port is busy • When multiple packets are destined for same output port CS/ECE 438 - UIUC, Fall 2006

  4. Switch Design Input Port Output Port Switch Fabric Input Port Output Port Input Port Output Port Input Port Output Port Input Port Output Port Input Port Output Port CS/ECE 438 - UIUC, Fall 2006

  5. Contention – Output Port Buffering standard checkout lines customer service B A trying to buy food you irate Bob writing complaint letter in triplicate Alice waiting to return penny given in error 1x6 switch CS/ECE 438 - UIUC, Fall 2006

  6. Contention – Input Port Buffering standard checkout lines customer service cashiers are standing by! cashiers are standing by! cashiers are standing by! B Alice waiting to return penny given in error A irate Bob writing complaint letter in triplicate trying to buy food head-of-line blocking you 1x6 switch CS/ECE 438 - UIUC, Fall 2006

  7. Contention – Output Port Contention standard checkout lines customer service B irate Bob writing complaint letter in triplicate A Alice waiting to return penny given in error you waiting to complain about head-of-line blocking 1x6 switch CS/ECE 438 - UIUC, Fall 2006

  8. Contention – Buffering Capacity standard checkout lines customer service B A buffering capacity per output is finite angry mob eagerly awaiting opportunity to address underpaid customer service representative angry mob eagerly awaiting opportunity to address underpaid customer service representative angry mob eagerly awaiting opportunity to address underpaid customer service representative you 1x6 switch (others turned away at door) CS/ECE 438 - UIUC, Fall 2006

  9. switch 1 switch 2 “no more, please” Contention – Back Pressure • Let the receiver tell the sender to slow down • Propagation delay requires that the receiver react before the buffer is full • Typically used in networks with small propagation delay CS/ECE 438 - UIUC, Fall 2006

  10. 2 1 3 2 1 1 4 3 2 2 1 5 4 3 3 2 1 6 5 4 4 3 2 1 7 6 5 6 5 4 3 2 1 stop stop stop 5 4 3 2 1 8 7 6 7 9 8 Discard: Discard: Discard: 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1 9 8 6 5 4 3 2 1 9 Contention – Back Pressure • NOTE • Propagation delay requires that switch 2 exert backpressure at high-water mark rather when buffer completely full. Backpressure is thus typically only used in networks with small propagation delays (e.g., switch fabrics). Switch Switch 1 CS/ECE 438 - UIUC, Fall 2006

  11. Switch Design Goals • Throughput • Number of packets a switch can forward per second • Scalability • How many input/output ports can it connect • Cost • Per port monetary costs CS/ECE 438 - UIUC, Fall 2006

  12. Special Purpose Switches • Problem • Connect N inputs to M outputs • NxM (“N by M”) switch • Often N = M • Goals • High throughput • Best is MIN(sum of inputs, sum of outputs) • Avoid contention • Good scalability • Linear size/cost growth CS/ECE 438 - UIUC, Fall 2006

  13. Switch Design • Ports handle complexity • Forwarding decisions • Buffering • Simple fabric • Move packets from inputs to outputs • May have a small amount of internal buffering CS/ECE 438 - UIUC, Fall 2006

  14. Switch Design Goals • Throughput • Main problem is contention • Need a good traffic model • Arrival time • Destination port • Packet length • Telephony modeling is well understood • Until faxes and modems • Modeling of data traffic is new • Not well understood • Will good models help? CS/ECE 438 - UIUC, Fall 2006

  15. Switch Design Goals • Contention • Avoid contention through intelligent buffering • Use output buffering when possible • Apply back pressure through switch fabric • Improve input buffering through non-FIFO buffers • Reduces head-of-line blocking • Drop packets if input buffers overflow CS/ECE 438 - UIUC, Fall 2006

  16. Switch Design Goals • Scalability • O(N) ports • Port design complexity O(N) gives O(N2) for entire switch • Port design complexity of O(1) gives O(N) for entire switch CS/ECE 438 - UIUC, Fall 2006

  17. Switch Design • Crossbar switches • Banyan Networks • Batcher Networks • Sunshine Switch CS/ECE 438 - UIUC, Fall 2006

  18. Crossbar Switch • Every input port is connected to every output port • NxN • Output ports • Complexity scales as O(N2) CS/ECE 438 - UIUC, Fall 2006

  19. Crossbar Switch Output Port Output Port Output Port Output Port CS/ECE 438 - UIUC, Fall 2006

  20. Knockout Switch • Assumption: • It is unlikely that N inputs will have packets destined for the same output port • Pick L from N packets at a port • Output port maintains L cyclic buffers • Shifter places up to L packets in one cycle • Each buffer gets only one packet • Output port uses round-robin between buffers • Arrival order is maintained • Problem • Hot spots • Output ports scale as O(N) CS/ECE 438 - UIUC, Fall 2006

  21. Knockout Switch • Output port design • Packet filters • Recognize packets destined for a specific port • Concentrator • Selects up to L packets from those destined for this port • Discards excess packets • Queue • Length L CS/ECE 438 - UIUC, Fall 2006

  22. 1 2 3 4 1 4 3 2 2 Discard 4 3 1 3 Discard Choice 1 Choice 2 4 1 Knockout Switch Choose L of N Ex: 2 of 4 R R 2x2 random selector R R R What happens if more than L arrive? D R Delay unit D CS/ECE 438 - UIUC, Fall 2006

  23. Self-Routing Fabrics • Idea • Use source routing on “network” in switch • Input port attaches output port number as header • Fabric routes packet based on output port • Types • Banyan Network • Batcher-Banyan Network • Sunshine Switch CS/ECE 438 - UIUC, Fall 2006

  24. Banyan Network • A network of 2x2 switches • Each element routes to output 0 or 1 based on packet header • A switch at stage i looks at bit i in the header 0 00100 1 CS/ECE 438 - UIUC, Fall 2006

  25. 001 001 001 001 001 011 110 011 011 011 011 111 110 110 110 111 111 111 110 111 Banyan Network CS/ECE 438 - UIUC, Fall 2006

  26. Banyan Network • Perfect Shuffle • N inputs requires log2N stages of N/2 switching elements • Complexity on order of N log2N • Collisions • If two packets arrive at the same switch destined for the same output port, a collision will occur • If all packets are sorted in ascending order upon arrival to a banyan network, no collisions will occur! CS/ECE 438 - UIUC, Fall 2006

  27. Batcher Network • Performs merge sort • A network of 2x2 switches • Each element routes to output 0 or 1 based on packet header • A switch at stage i looks at the whole header • Two types of switches • Up switch • Sends higher number to top output (0) • Down switch • Sends higher number to bottom output (1) CS/ECE 438 - UIUC, Fall 2006

  28. 7 3 3 3 3 1 3 6 6 1 3 7 6 7 1 6 6 6 1 1 1 7 7 7 Merge Merge Batcher Network D D D U D D Sort CS/ECE 438 - UIUC, Fall 2006

  29. D D D D D D U D D D D D D U U D D D U U U D D D Batcher Network CS/ECE 438 - UIUC, Fall 2006

  30. Batcher Network • How it really works • Merger is presented with a pair of sorted lists, one in ascending order, one in descending order • First stage of merger sends packets to the correct half of the network • Second stage sends them to the correct quarter • Size • N/2 switches per stage • log2N x (1 + log2N)/2 stages • Complexity = N log22N CS/ECE 438 - UIUC, Fall 2006

  31. Batcher-Banyan Network • Idea • Attach a batcher network back-to-back with a banyan network • Arbitrary unique permutations can be routed without contention • Two packets destined for same output port still collide! • Sunshine Switch • Like a knockout switch • Can handle up to L packets per output port • Recirculates overflow packets • If more than L packets arrive for any output port in one cycle CS/ECE 438 - UIUC, Fall 2006

  32. Sunshine Switch • Elements • Multiple Banyan networks • Enables multiple packets per output port • Delay Box • Excess (K) packets are recirculated and resubmitted to the switch • Batcher network • N new packets • K delayed packets • Trap • Identifies packets destined for banyan • Identifies excess packets • Selector • Routes multiple packets for same output on separate banyans CS/ECE 438 - UIUC, Fall 2006

  33. Sunshine Switch Delay k k Batcher Trap Selector Inputs n n L Banyans n n n n+k n+k n n CS/ECE 438 - UIUC, Fall 2006

  34. Invariants • Batcher • All packets are sorted by destination • Trap • Compares line i with line i+L, marks i+L for recirculation if address equal • Selector • Another batcher network, sorting based on the recirculation bit • Banyan • Alternate every L lines to each Banyan CS/ECE 438 - UIUC, Fall 2006

  35. Sunshine Switch • Can packets circulate for ever? • Priority bit is used to favor older packets • Priority bit also ensure packet order is preserved through the switch CS/ECE 438 - UIUC, Fall 2006

More Related