Switching hardware
This presentation is the property of its rightful owner.
Sponsored Links
1 / 35

Switching Hardware PowerPoint PPT Presentation


  • 30 Views
  • Uploaded on
  • Presentation posted in: General

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

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Switching hardware

Switching Hardware

CS/ECE 438 - UIUC, Fall 2006


Switch design

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


Contention

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


Switch design1

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


Contention output port buffering

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


Contention input port buffering

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


Contention output port contention

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


Contention buffering capacity

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


Contention back pressure

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


Contention back pressure1

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


Switch design goals

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


Special purpose switches

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


Switch design2

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


Switch design goals1

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


Switch design goals2

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


Switch design goals3

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


Switch design3

Switch Design

  • Crossbar switches

  • Banyan Networks

  • Batcher Networks

  • Sunshine Switch

CS/ECE 438 - UIUC, Fall 2006


Crossbar switch

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


Crossbar switch1

Crossbar Switch

Output Port

Output Port

Output Port

Output Port

CS/ECE 438 - UIUC, Fall 2006


Knockout switch

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


Knockout switch1

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


Knockout switch2

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


Self routing fabrics

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


Banyan network

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


Banyan network1

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


Banyan network2

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


Batcher network

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


Batcher network1

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


Batcher network2

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


Batcher network3

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


Batcher banyan network

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


Sunshine switch

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


Sunshine switch1

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


Invariants

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


Sunshine switch2

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


  • Login