ee 122: router design kevin lai september 25, 2002

23
EE 122: Router Design Kevin Lai September 25, 2002

Post on 21-Dec-2015

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: EE 122: Router Design Kevin Lai September 25, 2002

EE 122: Router Design

Kevin Lai

September 25, 2002

Page 2: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 2

Routers

A router consists- A set of input interfaces at which packets arrive- A set of output interfaces from which packets depart- Some form of interconnect connecting inputs to outputs

Router implements two main functions- Forward packet to corresponding output interface- Manage bandwidth and buffer space resources

.

.. ...

Page 3: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 3

What a Router Looks LikeCisco GSR 12416 Juniper M160

6ft

19”

2ft

Capacity: 160Gb/sPower: 4.2kW

3ft

2.5ft

19”

Capacity: 80Gb/sPower: 2.6kW

Slide by Nick McKeown

Page 4: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 4

Why Understand Router Design

Many companies make switches and routers- e.g., Cisco, Juniper, Nortel

Many other devices have a similar structure- e.g., PC’s internal interconnect, multi-processor

interconnect

Switch design dictates what can be done at higher layers

- e.g., per flow state is expensive,the need to minimize per packet processing time

Page 5: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 5

Why Do We Need Faster Routers?

1. To prevent routers becoming the bottleneck in the Internet.

2. To increase POP capacity, and to reduce cost, size and power.

Page 6: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 6

0,1

1

10

100

1000

10000

1985 1990 1995 2000

Spec

95In

t CPU

resu

ltsWhy we Need Faster Routers 1: To prevent routers from being the bottleneck

0,1

1

10

100

1000

10000

1985 1990 1995 2000

Fib

er

Ca

pa

cit

y (

Gb

it/s

)

TDM DWDM

Packet processing Power Link Speed

2x / 18 months 2x / 7 months

Source: SPEC95Int & David Miller, Stanford.

Slide by Nick McKeown

Page 7: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 7

POP with smaller routers

Why we Need Faster Routers 2: To reduce cost, power & complexity of POPs

POP with large routers

Ports: Price >$100k, Power > 400W. It is common for 50-60% of ports to be for interconnection.

Slide by Nick McKeown

Page 8: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 8

Requirements

Power- generates heat, costs money- < 5kW

Size- space costs money- < 2m3

Bandwidth Ports

- number of external links Price Some customers want

- Multicast- Quality of Service

Page 9: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 9

Generic Router Architecture

Input and output interfaces are connected through an interconnect

A interconnect can be implemented by

- Shared memory

• low capacity routers (e.g., PC-based routers)

- Shared bus

• Medium capacity routers

- Point-to-point (switched) bus

• High capacity routers

input interface output interface

Inter-connect

Page 10: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 10

RouteTableCPU Buffer

Memory

LineInterface

MAC

LineInterface

MAC

LineInterface

MAC

Typically <0.5Gb/s aggregate capacity

First Generation Routers

Shared Backplane

Line Interface

CPU

Memory

Slide by Nick McKeown

Page 11: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 11

Second Generation Routers

RouteTableCPU

LineCard

BufferMemory

LineCard

MAC

BufferMemory

LineCard

MAC

BufferMemory

FwdingCache

FwdingCache

FwdingCache

MAC

BufferMemory

Typically <5Gb/s aggregate capacitySlide by Nick McKeown

Page 12: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 12

Third Generation Routers

LineCard

MAC

LocalBuffer

Memory

CPUCard

LineCard

MAC

LocalBuffer

Memory

Switched Backplane

Line Interface

CPUMemory Fwding

Table

RoutingTable

FwdingTable

Typically <50Gb/s aggregate capacity

Slide by Nick McKeown

Page 13: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 13

Speedup

C – input/output link capacity RI – maximum rate at which an

input interface can send data into interconnect

RO – maximum rate at which an output can read data from interconnect

B – maximum aggregate interconnect transfer rate

Interconnect speedup: B/C Input speedup: RI/C Output speedup: RO/C

input interface output interface

Inter-connect

C CRI ROB

Page 14: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 14

Typical Functions Performed by Input Interface on Data Path

Packet forwarding: decide to which output interface to forward each packet based on the information in packet header

- examine packet header

- lookup in forwarding table

- update packet header

Page 15: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 15

Typical Functions Performed by Output Interface

Buffer management: decide when and which packet to drop

Scheduler: decide when and which packet to transmit

1

2

SchedulerBuffer

Page 16: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 16

Typical Functions Performed by Output Interface (cont’d)

Packet classification: map each packet to a predefined flow/connection (for datagram forwarding)

- use to implement more sophisticated services (e.g., QoS)

Flow: a subset of packets between any two endpoints in the network

1

2

Scheduler

flow 1

flow 2

flow n

Classifier

Buffer management

Page 17: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 17

Interconnect

Point-to-point switch allows to simultaneously transfer a packet between any two disjoint pairs of input-output interfaces

Goal: come-up with a schedule that- Provide Quality of Service- Maximize router throughput

Challenges:- Address head-of-line blocking at inputs- Resolve input/output speedups contention- Avoid packet dropping at output if possible

Note: packets are fragmented in fix sized cells at inputs and reassembled at outputs

Page 18: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 18

Output Queued (OQ) Routers

Only output interfaces store packets

Advantages- Easy to design algorithms:

only one congestion point

Disadvantages- Requires an output speedup

of N, where N is the number of interfaces not feasible

input interface output interface

Backplane

CRO

Page 19: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 19

Input Queueing (IQ) Routers

Only input interfaces store packets Advantages

- Easy to built • Store packets at inputs if

contention at outputs - Relatively easy to design algorithms

• Only one congestion point, but not output…

• need to implement backpressure Disadvantages

- Hard to achieve utilization 1 (due to output contention, head-of-line blocking)

• However, theoretical and simulation results show that for realistic traffic an input/output speedup of 2 is enough to achieve utilizations close to 1

input interface output interface

Backplane

CRO

Page 20: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 20

Head-of-line Blocking

The cell at the head of an input queue cannot be transferred, thus blocking the following cells

Cannot betransferred because output buffer overflow

Cannot be transferred because is blocked by red cell

Output 1

Output 2

Output 3

Input 1

Input 2

Input 3

Page 21: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 210% 20% 40% 60% 80% 100%

Load

Del

ayA Router with Input Queues

Head of Line Blocking

The best that any queueing system can

achieve.

2 2 58% Slide by Nick McKeown

Page 22: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 22

Solution to Avoid Head-of-line Blocking

Maintain at each input N virtual queues, i.e., one per output

Output 1

Output 2

Output 3

Input 1

Input 2

Input 3

Page 23: EE 122: Router Design Kevin Lai September 25, 2002

[email protected] 23

Combined Input-Output Queueing (CIOQ) Routers

Both input and output interfaces store packets

Advantages- Easy to built

• Utilization 1 can be achieved with limited input/output speedup (<= 2)

Disadvantages- Harder to design algorithms

• Two congestion points

• Need to design flow control

input interface output interface

Backplane

CRO