Post on 19-Dec-2015
transcript
A Load-Balanced Switch with an Arbitrary Number of Linecards
Isaac Keslassy, Shang-Tse Chuang, Nick McKeown
Stanford 100Tb/s Internet Router
Goal: Study scalability Challenging, but not impossible Two orders of magnitude faster than deployed routers We will build components to show feasibility
40Gb/s
40Gb/s
40Gb/s
40Gb/s
OpticalOpticalSwitchSwitch
• Line termination
• IP packet processing
• Packet buffering
• Line termination• IP packet processing
• Packet buffering
Electronic
Linecard #1Electronic
Linecard #1ElectronicLinecard #625
ElectronicLinecard #625160-
320Gb/s
160Gb/s
160-320Gb/s
100Tb/s = 640 * 160Gb/s
Out
Out
Out
R
R
R
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
In
In
In
R
R
R
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
33 1
2
3
3333
The Load-Balanced Switch
Out
Out
Out
R
R
R
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
In
In
In
R
R
R
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N
R/N33
1
2
3
33
33
The Load-Balanced Switch
Needed Properties
Scalability
Flexibility
Each linecard spreads its data equally among all linecards.
First-Stage
GxGMiddleSwitch
Group 1
LxMLocal
Switch
Linecard 1
Linecard 2
Linecard L
Group 2
LxMLocal
Switch
Linecard 1
Linecard 2
Linecard L
LxMLocal
Switch
Linecard 1
Linecard 2
Linecard L
Group G
MxLLocal
Switch
Linecard 1
Linecard 2
Linecard L
Final-Stage
Group 1
MxLLocal
Switch
Linecard 1
Linecard 2
Linecard L
Group 2
MxLLocal
Switch
Linecard 1
Linecard 2
Linecard L
Group G
GxGMiddleSwitch
GxGMiddleSwitch
GxGMiddleSwitch
1
2
3
M
Middle-Stage
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
Hybrid Architecture: Logical View
Hybrid Electro-Optical ArchitectureFixedLasers
ElectronicSwitches
GxGMEMS
Group 1
LxMCrossbar
Linecard 1
Linecard 2
Linecard L
Group 2
LxMCrossbar
Linecard 1
Linecard 2
Linecard L
LxMCrossbar
Linecard 1
Linecard 2
Linecard L
Group G
MxLCrossbar
Linecard 1
Linecard 2
Linecard L
ElectronicSwitches
OpticalReceivers
Group 1
MxLCrossbar
Linecard 1
Linecard 2
Linecard L
Group 2
MxLCrossbar
Linecard 1
Linecard 2
Linecard L
Group G
GxGMEMS
GxGMEMS
GxGMEMS
1
2
3
M
StaticMEMS
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
1
2
3
M
Number of MEMS Switches
Linecard 1
Linecard 2
Linecard 3
Crossbar
Crossbar
Crossbar
Crossbar
Linecard 1
Linecard 2
Linecard 3
R
RR
R
Linecard 1
Linecard 2
Linecard 3
Crossbar
Crossbar
Crossbar
Crossbar
Linecard 1
Linecard 2
Linecard 3
StaticMEMS
Linecard 4 Linecard 4
Linecard 3 Linecard 4
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
Number of MEMS SwitchesLinecard 1
Linecard 2
Linecard 3
Crossbar
Crossbar
Crossbar
Crossbar
Linecard 1
Linecard 2
Linecard 3
4R/3
2R/32R/3
R/3
Linecard 1
Linecard 2
Linecard 3
Crossbar
Crossbar
Crossbar
Crossbar
Linecard 1
Linecard 2
Linecard 3
StaticMEMS
R
R/3
2R/3
R/3
2R/3
R
R
R
R
R
R
R
R
R
R
R
R
Number of MEMS needed for a schedule
Li: number of linecards in group i, 1 ≤ i ≤ G. Group i needs to send to group j:
G
iL1i
ji N where),
N
LR)( (L
Assume each group can send upto R to each MEMS. Number of MEMS needed between groups i and j:
N
LL
R
1)
N
LR)( (LA jij
iij
Number of MEMS needed for a schedule
The number of MEMS needed for group i to send to group j is Aij
The total number of MEMS needed for group i is the sum of the Aij’s
G
1ji
jiG
1j
jiG
1jij GL1
N
LL
N
LLAα
)max(LL where1,GLα i
Constraints for the TDM Schedule
1. Within any period of N, each transmitting linecard is connected to each receiving linecard exactly once.
2. (MEMS constraint) In any time-slot, there are at most Aij connections between transmitting group i and receiving group j, where:
N
LLA ji
ij
Example
Assume L1=3, L2=2, L3=1
Then
E.g., at most 2 packets from the first group to the first group at each time-slot
111
111
112
N
LL ji
ij
ijA
Bad TDM Linecard Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx LC 1 1 2 3 4 5 6
Tx LC 2 6 1 2 3 4 5
Tx LC 3 5 6 1 2 3 4
Tx LC 4 4 5 6 1 2 3
Tx LC 5 3 4 5 6 1 2
Tx LC 6 2 3 4 5 6 1
Good TDM Linecard Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx LC 1 1 2 3 4 5 6
Tx LC 2 5 1 2 3 6 4
Tx LC 3 6 5 4 1 2 3
Tx LC 4 2 3 1 6 4 5
Tx LC 5 4 6 5 2 3 1
Tx LC 6 3 4 6 5 1 2
Configuration Algorithm
1. Assign connections between groups, so MEMS constraint is satisfied.
2. Assign group connections to specific linecards, so there is exactly one connection per linecard pair in the schedule.
1. TDM Group Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx Group A (3 linecards)
BAC
Tx Group B
(2 linecards)AB
Tx Group C
(1 linecard)A
666
666
6612
A6 ,
111
111
112
A ,
123
246
369
sConnection
1. TDM Group Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx Group A BAC BAA
Tx Group B AB AC
Tx Group C A B
555
555
5510
A5 ,
111
111
112
A ,
122
235
258
sConnection
1. TDM Group Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx Group A BAC BAA BAA BAC BAA BAC
Tx Group B AB AC AB AC AB AB
Tx Group C A B C B A A
2. TDM Linecard-to-Group Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Group A
Tx LC 1 A A A B B C
Tx LC 2 B A A A C B
Tx LC 3 C B B A A A
Group BTx LC 4 A A A C B B
Tx LC 5 B C B A A A
Group C Tx LC 6 A B C B A A
2. TDM Linecard Schedule
T+1 T+2 T+3 T+4 T+5 T+6
Tx LC 1 1 2 3 4 5 6
Tx LC 2 5 1 2 3 6 4
Tx LC 3 6 5 4 1 2 3
Tx LC 4 2 3 1 6 4 5
Tx LC 5 4 6 5 2 3 1
Tx LC 6 3 4 6 5 1 2