Está en la página 1de 57

Cmo funcionan los routers?

Area de Ingeniera Telemtica


http://www.tlm.unavarra.es

Arquitectura de Redes, Sistemas y Servicios


3 Ingeniera de Telecomunicacin
Temario

1. Introduccin
2. Protocolos y arquitectura
3. Redes de rea local
4. Protocolos de Internet
5. Conmutacin de paquetes
6. Conmutacin de circuitos
7. Gestin de recursos en conmutadores
8. Protocolos de control de acceso al medio

2
Temario

1. Introduccin
2. Protocolos y arquitectura
3. Redes de rea local
4. Protocolos de Internet
5. Conmutacin de paquetes
Principios
Problemas bsicos
Encaminamiento (Nivel de red)
Como funcionan los routers (Nivel de red)
Transporte fiable (Nivel de transporte en TCP/IP)
Control de flujo (Nivel de transporte en TCP/IP)
Control de congestin (Nivel de transoporte en TCP/IP)
6. Conmutacin de circuitos
7. Gestin de recursos en conmutadores
8. Protocolos de control de acceso al medio

3
En clases anteriores

Enrutamiento
Algoritmos y tcnicas de enrutamiento
Cmo construyo la tabla de rutas?

Hoy
Como funciona un router
Qu otros problemas hay que resolver para
hacer un router aparte de construir la tabla de
rutas?

4
Material

Capitulo 4 de
Kurose & Ross,
Computer Networking a top-down
approach featuring the Internet
Addison Wesley

Presentacin basada en transparencias de AsstProf.


Bhichate Chiewthanakul basadas a su vez en las de
Profs. Nick McKeown and Balaji Prabahakar (Stanford)
adems de transparencias basadas en el libro de Kurose

5
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

6
Qu es un router?

R3
R1
A R4 D

B E
D

C R2
Destino Siguiente R5
F
D R3
E R3
F R5
7
Qu es un router?

R3
R1
A R4 D
1 4 16 32
Ver HLen T.Service Total Packet Length
B E
20 bytes

Fragment ID Flags Fragment Offset


D
TTL Protocol Header Checksum

C R2
Source Address
Destination Next Hop R5
Destination Address F
D
Options (if any)R3
E Data R3
F R5
8
Qu es un router?

R3
R1
A R4 D

B E

C R2
R5
F

9
Puntos de presencia
(POPs Points of presence)
POP3
POP2
POP1
A POP4 D

B POP5 E

C POP6 POP7
POP8 F

10
Donde son necesarios los routers de
altas prestaciones

R2 (2.5 Gb/s)
(2.5 Gb/s) R1 R6
R5
R4
R3 R7

R9
R8 R10 R11
R12
R14
R13
R16
R15
(2.5 Gb/s)
(2.5 Gb/s)
11
Qu pinta tiene un router?
Cisco GSR 12416 Juniper M160
19 ~0.5m ~0.5m
19

Capacity: 160Gb/s Capacity: 80Gb/s


Power: 4.2kW Power: 2.6kW
Full rack Half-a-rack
6ft
3ft
~1.8m
~0.9m

2ft 2.5ft
~0.6m ~0.8m 12
El mercado de routers

Segn DellOro (Feb. 17, 2005):


$1.2 billion in 2004 (up 66%)
Includes high-end (10Gbps) router market
Segn Infonetics (March 2, 2005):
$6.1 billion in 2004 (up 26%)
Includes IP core/edge routers and multiservice core/edge
switches
Mercado de routers de ncleo
Relativamente pequeo (en comparacin con el mercado de
routers para empresas), pero da experiencia a las compaias
Fabricantes: Cisco, Juniper, Avici, Nortel, Lucent, Alcatel,
Chiaro, Huawei, etc.

13
Router Market

Source: Infonetics (Nov. 2004)

14
Arquitectura bsica de un router IP

Routing
Protocols
Routing
Table Plano de control

Forwarding Plano de datos


Switching
Table Procesado
por paquete

15
Proceso por paquete en un Router IP

Aceptar paquetes por las lineas de entrada

Lookup: bsqueda de la direccin de destino del


paquete en la tabla de reenvo (para identificar puerto
de salida).
Header Processing: Manipulacin de la cabecera IP:
decrementar TTL, recalcular checksum.
Switching: Enviar el paquete al puerto de destino
correspondiente.
Buffering: Almacenar paquete en la cola.

Transmitir paquete en la linea de salida.

16
Arquitectura de un router genrico

Header Processing
Data Hdr Data Hdr
Lookup Update Queue
IP Address Header Packet

IP Address Next Hop

~1M prefixes Address Buffer ~1M packets


Off-chip DRAM Table Memory Off-chip DRAM

17
Arquitectura de routers
Dos funciones bsicas de los routers:
Correr protocolos/algorimtos de enrutamiento (RIP, OSPF, BGP)
Dirigir paquetes de los puertos de entrada a los puertos de salida
(forwarding)

18
Arquitectura de routers
Data Hdr Header Processing
Buffer
Data Hdr
Lookup Update
IP Address Header Manager

Address Buffer
Table Memory

Data Hdr Header Processing


Buffer Data Hdr
Lookup Update
IP Address Header Manager

Address Buffer
Table Data
MemoryHdr

Data Hdr Header Processing Buffer


Lookup Update Manager
IP Address Header

Buffer
Address
Memory
Table

19
Puertos de entrada

Nivel fsico:
Recepcin de bits
Decentralized switching:
Nivel de enlace:
A partir de la direccin de destino buscar el
por ejemplo puerto de salida en la tabla de reenvios (se
Ethernet mantiene una copia de la tabla de rutas en la
memoria del puerto de entrada)
objetivo: porcesar paquetes entrantes a
velocidad de linea
Cola de entrada: si los paquetes llegan a mas
velocidad que la velocidad de entrada a matriz
de conmutacin
20
Tipos de conmutacin

21
Conmutacin por memoria
Primera generacin de routers:
ordenador tradicional con conmutacin bajo control de
la CPU
el paquete se copia a la memoria del sistema al
recibirlo
velocidad limitada por el ancho de banda a memoria
(2 accesos al bus por paquete)

Input Memory Output


Port Port

System Bus

22
Conmutacin via Bus

El paquete se copia de la memoria


del puerto de entrada a la memoria
del puerto de salida a travs de un
bus compartido
Contencin en el bus:
Si el bus est ocupado el paquete espera
en la memoria del puerto de entrada
(colas a la entrada)
Velocidad de conmutacin limitada por el
bus
Con bus de 1 Gbps, (Cisco 1900): es
suficiente velocidad para accesos y
routers de empresa (pero no para
regionales o backbone)
23
Conmutacin via red de interconexin

Superar las limitacines de un bus


Redes Banyan y otras redes de interconnexin
pensadas en principio para conectar procesadores
en maquinas multiprocesador
Diseo avanzado: fragmentar los paquetes en celdas
de longitud fija, y conmutar las celdas por la matriz
de conmutacin.
Cisco serie 12000: conmuta a Gbps a traves de la
red de interconexin

24
Puertos de salida

Buffer (cola de salida)necesario si los paquetes


pueden llegar a mas velocidad que la del puerto de
salida desde la matriz de conmutacin
Planificacin (Scheduling) elige entre los paquetes
disponible para transmision (FIFO, u otras?)

25
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

26
Por qu necesitamos routers ms rpidos?

1. Para evitar que los routers se conviertan


en el cuello de botella de Internet

2. Para aumentar la capacidad de los


puntos de presencia (POP) y reducir su
coste, tamao y consumo

27
Por qu necesitamos routers ms rpidos?
Evitar que los routers sean el cuello de botella

Single Fiber Capacity


Packet Processing Power (commercial)
10000
2x / year
1000
Spec95Int CPU results

2x / 18 months
100

10

1
1985 1990 1995 2000
0,1

Source: SPEC95Int & Coffman and Odlyzko.


28
Por qu necesitamos routers ms rpidos?
2: Reducir coste, consumo y complejidad de POPs

POP con routers grandes POP con routers pequeos

Puertos: precio >$50k, consumo > 400W.


Alrededor de 50-60% de los puertos es para interconexin.

29
Por qu es dificil hacer routers rpidos?

1. Es difcil seguir la ley de Moore:


El cuello de botella es la velocidad de la
memoria
La velocidad de la memoria no sigue la ley
de Moore

30
Por qu es dificil hacer routers rpidos?
Velocidad de la DRAM comercial

1. Its hard
1980to 1983
keep 1986
up with 1989 Moores
1992 Law:
1995 1998 2001

1000
The bottleneck is memory speed.
Memory speed is not keeping up with
100
Moores Law.
Access Time (ns)

1.1x / 18 months

10

1 Moores Law
2x / 18 months
0.1

0.01
31

0.001
Por qu es dificil hacer routers rpidos?

1. Es difcil seguir la ley de Moore:


El cuello de botella es la velocidad de la
memoria
La velocidad de la memoria no sigue la ley
de Moore
2. La ley de Moore no es suficiente:
Los routers necesitan mejorar ms rpido
que la ley de Moore

32
Prestaciones de routers y la ley de Moore

Crecimiento de la capacidad de routers


comerciales:
Capacidad 1992 ~ 2Gb/s
Capacidad 1995 ~ 10Gb/s
Capacidad 1998 ~ 40Gb/s
Capacidad 2001 ~ 160Gb/s
Capacidad 2003 ~ 640Gb/s

Crecimiento medio: 2.2x / 18 months.

33
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

34
Routers de primera generacin
Shared Backplane Route Buffer
CPU Table Memory

CP Li
n
U Int e
er
fa
M ce
em
or Line Line Line
y Interface Interface Interface
MAC MAC MAC

Tpico <0.5Gb/s capacidad agregada

35
Routers de segunda generacin
Route Buffer
CPU Table Memory

Line Line Line


Card Card Card

Buffer Buffer Buffer


Memory Memory Memory
Fwding Fwding Fwding
Cache Cache Cache
MAC MAC MAC

Tpico <5Gb/s capacidad agregada

36
Routers de tercera generacin
Backplane conmutado
(Switched Backplane)

Line CPU Line


Card Card Card
Li
CPIn ne Local Local
U te Buffer Routing Buffer
rf Table
M
em
ac
e Memory Memory
or
y Fwding Fwding
Table Table
MAC MAC

Tpico <50Gb/s capacidad agregada

37
Routers de cuarta generacin
Multi-Racks, Optical Links

Optical links

100s
of metres

Switch Core Linecards

Capacidades 0.3 - 10Tb/s


38
(Futuros) Routers de quinta generacin
Optical Switch Core

Optical links

100s
of metres

Optical Switch Core Linecards

Routers de 10-100Tb/s en proyecto


39
(Muy futuros) Routers de sexta generacin
All-Optical Routers

Optical links

100s
of metres

Optical Switch Core Optical Linecards

Routers de 100-1000Tb/s en un futuro lejano


40
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

41
Arquitectura de router
Header Processing
Buffer
Lookup Update
IP Address Header Manager

Address Buffer
Table Memory

Header Processing
Buffer
Lookup Update
IP Address Header Manager

Address Buffer
Table Memory

Header Processing
Buffer
Lookup Update
IP Address Header Manager

Address Buffer
Table Memory

42
Bsqueda de la direccin (Address lookup)

Por qu es difcil?:
No es una busqueda exacta sino la
busqueda del prefijo ms largo (longest
prefix match).
La tabla es muy grande: unas 150,000
entradas y creciendo.
La bsqueda debe ser muy rpida: unos
30ns para una lnea de 10Gb/s.

43
IP Lookup con Longest Prefix Match

128.9.176.0/24
128.9.16.0/21 128.9.172.0/21
65.0.0.0/8 142.12.0.0/19
128.9.0.0/16

0 128.9.16.14 232-1
Routing lookup: Encuentra el prefijo ms largo
que coincida (o sea la ruta ms especfica) entre
todos los prefijos que verifique esta direccin
IP de destino

44
Bsqueda de la direccin (Address lookup)

Por qu es difcil?:
No es una busqueda exacta sino la
busqueda del prefijo ms largo (longest
prefix match).
La tabla es muy grande: unas 150,000
entradas y creciendo.
La bsqueda debe ser muy rpida: unos
30ns para una lnea de 10Gb/s.

45
Las tablas de rutas son grandes

Source: http://www.cidr-report.org/

46
Bsqueda de la direccin (Address lookup)

Por qu es difcil?:
No es una busqueda exacta sino la
busqueda del prefijo ms largo (longest
prefix match).
La tabla es muy grande: unas 150,000
entradas y creciendo.
La bsqueda debe ser muy rpida: unos
30ns para una lnea de 10Gb/s.

47
La bsqueda debe ser muy rpida

Ao Lnea Paquetes
tpica de 40B
(Mpkt/s)

1997 622Mb/s 1.94


1999 2.5Gb/s 7.81
2001 10Gb/s 31.25
2003 40Gb/s 125

2005? 160Gb/s 500

48
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

49
Arquitectura de router
Header Processing
Buffer
Queue
Lookup Update
IP Address Header Manager
Packet

Address Buffer
Table Memory

Header Processing
Buffer
Queue
Lookup Update
IP Address Header Manager
Packet

Address Buffer
Table Memory

Header Processing
Buffer
Queue
Lookup Update
IP Address Header Manager
Packet

Address Buffer
Table Memory

50
Buffers de paquetes muy rpidos

Ejemplo: buffer para puertos de 40Gb/s


Tamao = RTT*BW = 10Gb; 40 byte packets

Write Rate, R Read Rate, R


Buffer
1 paquete Manager 1 paquete
cada 8 ns cada 8 ns

Buffer
Memory

Usar SRAM? Usar DRAM?


+ acceso suficientemente rpido, pero + alta densidad, suficiente memoria, pero
- poca densidad para conseguir 10Gb. - demasiado lenta (50ns tiempo acceso).

51
Contenido

Background
Qu es un router?
Por qu necesitamos routers ms rpidos?
Por qu son dificiles de construir?

Arquitecturas y tcnicas
Evolucin de arquitecturas de routers.
Bsqueda de direccin IP.
Almacenamiento de paquetes.
Conmutacin.

52
Arquitectura de router
Data Hdr Header Processing 1 1 Queue
Lookup Update
IP Address Header Packet

Address Buffer
Table Memory

Data Hdr Header Processing 2 2 NQueue


times line rate
Lookup Update
IP Address Header Packet

Address Buffer
Table Memory

N times line rate

Data Hdr Header Processing


Lookup Update
N N Queue
IP Address Header Packet

Address Buffer
Table Memory

53
Arquitectura de router
Data Hdr Header Processing
Lookup Update Queue 1 1
IP Address Header Packet

Address
Buffer
Table Data
MemoryHdr

Data Hdr Header Processing


Data Hdr
Lookup Update Queue 2 2
IP Address Header Packet

Address
Buffer
Table
Memory

Scheduler
Data Hdr Header Processing
Queue
Lookup
IP Address
Update
Header Packet
N N

Address
Buffer
Table Data
MemoryHdr

54
Usando colas en los puertos de salida

Cuando la velocidad de llegada a traves de la matriz de


conmutacin es superior a la velocidad de salida se almacenan
en buffer (cola de salida)
almacenamiento (retraso) y prdidas debidas al
desbordamiento del buffer del puerto de salida
Problema: matriz de conmutacin debe ser N veces mas rpida
que el puerto de entrada/salida

55
Usando colas en los puertos de entrada
Matriz de conmutacin ms lenta que la suma de los puertos de
entrada -> hay que almacenar en el puerto de entrada
Bloqueo Head-of-the-Line (HOL): un paquete que no puede ir a un
puerto bloquea al resto de paquetes en el puerto de entrada,
aunque podran ser servidos
Retraso y prdidas debidas a desbordamiento de puerto de
entrada
Combinacin de las dos tcnicas para conseguir poco HOL con
matrices de conmutacin rpidas pero no tanto como la suma de
los puertos

56
Conclusiones

Arquitectura bsica de routers y evolucin


Conmutacin via memoria
Conmutacin via bus
Conmutacin via red de conmutacin
Problemas importantes en arquitectura de
routers
Busqueda rpida de direcciones
Almacenamiento de paquetes
Conmutacin y planificacin
Prxima clase:
Construyendo transporte fiable
57

También podría gustarte