Download presentation
Presentation is loading. Please wait.
1
EE 122: Router Design Kevin Lai September 25, 2002
2
laik@cs.berkeley.edu2 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......
3
laik@cs.berkeley.edu3 What a Router Looks Like Cisco GSR 12416Juniper M160 6ft 19 ” 2ft Capacity: 160Gb/s Power: 4.2kW 3ft 2.5ft 19 ” Capacity: 80Gb/s Power: 2.6kW Slide by Nick McKeown
4
laik@cs.berkeley.edu4 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
5
laik@cs.berkeley.edu5 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.
6
laik@cs.berkeley.edu6 Why we Need Faster Routers 1: To prevent routers from being the bottleneck 0,1 1 10 100 1000 10000 1985199019952000 Fiber Capacity (Gbit/s) TDMDWDM Packet processing PowerLink Speed 2x / 18 months2x / 7 months Source: SPEC95Int & David Miller, Stanford. Slide by Nick McKeown
7
laik@cs.berkeley.edu7 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
8
laik@cs.berkeley.edu8 Requirements Power -generates heat, costs money - < 5kW Size -space costs money - < 2m 3 Bandwidth Ports -number of external links Price Some customers want -Multicast -Quality of Service
9
laik@cs.berkeley.edu9 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 interfaceoutput interface Inter- connect
10
laik@cs.berkeley.edu10 Route Table CPU Buffer Memory Line Interface MAC Line Interface MAC Line Interface MAC Typically <0.5Gb/s aggregate capacity First Generation Routers Shared Backplane Line Interface CPU Memory Slide by Nick McKeown
11
laik@cs.berkeley.edu11 Second Generation Routers Route Table CPU Line Card Buffer Memory Line Card MAC Buffer Memory Line Card MAC Buffer Memory Fwding Cache Fwding Cache Fwding Cache MAC Buffer Memory Typically <5Gb/s aggregate capacity Slide by Nick McKeown
12
laik@cs.berkeley.edu12 Third Generation Routers Line Card MAC Local Buffer Memory CPU Card Line Card MAC Local Buffer Memory Switched Backplane Line Interface CPU Memory Fwding Table Routing Table Fwding Table Typically <50Gb/s aggregate capacity Slide by Nick McKeown
13
laik@cs.berkeley.edu13 Speedup C – input/output link capacity R I – maximum rate at which an input interface can send data into interconnect R O – maximum rate at which an output can read data from interconnect B – maximum aggregate interconnect transfer rate Interconnect speedup: B/C Input speedup: R I /C Output speedup: R O /C input interfaceoutput interface Inter- connect C C RIRI RORO B
14
laik@cs.berkeley.edu14 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
15
laik@cs.berkeley.edu15 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 Scheduler Buffer
16
laik@cs.berkeley.edu16 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
17
laik@cs.berkeley.edu17 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
18
laik@cs.berkeley.edu18 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 interfaceoutput interface Backplane C RORO
19
laik@cs.berkeley.edu19 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 interfaceoutput interface Backplane C RORO
20
laik@cs.berkeley.edu20 Head-of-line Blocking The cell at the head of an input queue cannot be transferred, thus blocking the following cells Cannot be transferred 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
21
laik@cs.berkeley.edu21 A Router with Input Queues Head of Line Blocking The best that any queueing system can achieve. Slide by Nick McKeown
22
laik@cs.berkeley.edu22 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
23
laik@cs.berkeley.edu23 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 interfaceoutput interface Backplane C RORO
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.