320 likes | 403 Views
Spring 2011 A history of big routers (slides from Nick McKeown’s EE 384X presentation). EE384M Network Algorithms. Balaji Prabhakar. Outline. What is an Internet router? What limits performance: Memory access time The early days: Modified computers Programmable against uncertainty
E N D
Spring 2011A history of big routers (slides from Nick McKeown’s EE 384X presentation) EE384M Network Algorithms Balaji Prabhakar
Outline What is an Internet router? • What limits performance: Memory access time The early days: Modified computers • Programmable against uncertainty The middle years: Specialized for performance • Needed new architectures, theory, and practice • So how did we do? • Simple model breaking down
Definitions 1 N 2 3 … R … 4 … 5 6 8 7 N = number of linecards. Typically 8-32 per chassis R = line-rate. 1Gb/s, 2.5Gb/s, 10Gb/s, 40Gb/s, 100Gb/s Capacity of router = N x R
What a Big Router Looks Like Cisco GSR 12816 Juniper T640 Capacity: 640Gb/sPower: 5kW Capacity: 320Gb/sPower: 3kW 19” 19” 6ft 3ft 2.5ft 2ft
What Multirack Routers Looks Like Cisco CRS-1 Juniper T1600 + TX Matrix
Lookup internet address Check and update checksum Check and update age
Barebones Router Router Control and Management
1 2 BottlenecksMemory, memory, …
Outline What is an Internet router? • What limits performance: Memory access time The early days: Modified computers • Programmable against uncertainty The middle years: Specialized for performance • Needed new architectures, theory, and practice • So how did we do? • Simple model breaking down
Bottlenecks Early days: Modified Computer Must run at rate N x R R R R R R R R R
R R R R 2nd Generation Router
Early days: Modified Computer Function more important than speed 1993 (WWW) changed everything We badly needed • Some new architecture • Some theory • Some higher performance
1 x R Arbiter
Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter
4th Generation RouterMultirack; optics inside Optical links 100s of metres Linecards Switch
More 4th Generation Routers Alcatel 7670 RSP Juniper TX TX Avici TSR Cisco CRS-1
Example of Theory There’s something special about “2”
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Permutation 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 D 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 Case 1: Placing calls Crosspoint switch A crosspoint switch supports all permutations So it is “non-blocking” But it needs N2 crosspoints
1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 Case 1: Placing CallsUncertainty costs • If I give you the permutation, you can route it. • If I give you entries one at a time, you can’t. Clos (1950s): But if you make it run 2 times faster you can route calls one at a time.
Case 2: Mimicking N x R
Case 2: Mimicking 1 x R
NR R Are they equivalent? No.
1 x R ? x R Case 2: Mimicking Algorithm
NR R 2R Yes, if it runs 2 times faster. Algorithm Now are they equivalent?
Yes, if it runs 2 times faster. Case 3: Are they equivalent?
1 R Algorithm Case 4: Routing packets with uncertainty If you know the rates, you can find a sequence of permutations: Rates 1 0 0 0 0.1 0.2 0.5 0.2 0 0 1 0 0 0 1 0 = 0 0 1 0 0.3 0.1 0.3 0.3 1 0 0 0 0 1 0 0 0 0 0 1 0.5 0.2 0.1 0.2 0 0 0 1 0 0 0 1 0 1 0 0 0.1 0.5 0.1 0.3 0 1 0 0 1 0 0 0 But we don’t know the rates (they are always changing)
2 3 If you choose the permutations one at a time, and you can spend as long as you want choosing, then you can support any pattern of rates. But if you have to make decisions one at a time, then the switch has to run 2 times faster. Case 4: Routing packets with uncertainty
Case 5: Load-balancing Load-balancing to support all rate matrices: Requires the network to run 2 times faster E.g. the VL2 (Valiant Load balancing) architecture for Data Centers