Вы находитесь на странице: 1из 57

Cmo funcionan los routers?

Area de Ingeniera Telemtica


http://www.tlm.unavarra.es
Arquitectura de Redes, Sistemas y Servicios
3 Ingeniera de Telecomunicacin
2
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
3
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
4
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?
5
Material
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
Capitulo 4 de
Kurose & Ross,
Computer Networking a top-down
approach featuring the Internet
Addison Wesley
6
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.
7
Qu es un router?
R3
A
B
C
R1
R2
R4 D
E
F
R5
R5 F
R3 E
R3 D
Siguiente Destino
D
8
Qu es un router?
R3
A
B
C
R1
R2
R4 D
E
F
R5
R5 F
R3 E
R3 D
Next Hop Destination
D
16
32
4 1
Data
Options (if any)
Destination Address
Source Address
Header Checksum Protocol TTL
Fragment Offset
Flags
Fragment ID
Total Packet Length T.Service HLen Ver
2
0

b
y
t
e
s
9
Qu es un router?
A
B
C
R1
R2
R3
R4 D
E
F
R5
10
Puntos de presencia
(POPs Points of presence)
A
B
C
POP1
POP3
POP2
POP4
D
E
F
POP5
POP6
POP7
POP8
11
Donde son necesarios los routers de
altas prestaciones
R10
R11
R4
R13
R9
R5
R2
R1
R6
R3 R7
R12
R16
R15
R14
R8
(2.5 Gb/s)
(2.5 Gb/s)
(2.5 Gb/s)
(2.5 Gb/s)
12
Qu pinta tiene un router?
Cisco GSR 12416 Juniper M160
6ft
19
2ft
Capacity: 160Gb/s
Power: 4.2kW
Full rack
3ft
2.5ft
19
Capacity: 80Gb/s
Power: 2.6kW
Half-a-rack
~1.8m
~0.6m
~0.5m
~0.5m
~0.8m
~0.9m
13
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.
14
Router Market
Source: Infonetics (Nov. 2004)
15
Arquitectura bsica de un router IP
Plano de control
Plano de datos
Procesado
por paquete
Switching
Forwarding
Table
Routing
Table
Routing
Protocols
16
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.
17
Arquitectura de un router genrico
Lookup
IP Address
Update
Header
Header Processing
Data Hdr Data Hdr
~1M prefixes
Off-chip DRAM
Address
Table
IP Address Next Hop
Queue
Packet
Buffer
Memory
~1M packets
Off-chip DRAM
18
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)
19
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Arquitectura de routers
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Data Hdr
Data Hdr
Data Hdr
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
Data Hdr
Data Hdr
Data Hdr
20
Puertos de entrada
Decentralized switching:
A partir de la direccin de destino buscar el
puerto de salida en la tabla de reenvios (se
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
Nivel fsico:
Recepcin de bits
Nivel de enlace:
por ejemplo
Ethernet
21
Tipos de conmutacin
22
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
Port
Output
Port
Memory
System Bus
23
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)
24
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
25
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?)
26
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.
27
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
28
0,1
1
10
100
1000
10000
1985 1990 1995 2000
S
p
e
c
9
5
I
n
t

C
P
U

r
e
s
u
l
t
s
Por qu necesitamos routers ms rpidos?
Evitar que los routers sean el cuello de botella
Packet Processing Power
2x / 18 months
Source: SPEC95Int & Coffman and Odlyzko.
Single Fiber Capacity
(commercial)
2x / year
29
POP con routers pequeos
Por qu necesitamos routers ms rpidos?
2: Reducir coste, consumo y complejidad de POPs
POP con routers grandes
+ Puertos: precio >$50k, consumo > 400W.
+ Alrededor de 50-60% de los puertos es para interconexin.
30
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
31
Por qu es dificil hacer routers rpidos?
Velocidad de la DRAM comercial
1. Its hard to keep up with Moores Law:
The bottleneck is memory speed.
Memory speed is not keeping up with
Moores Law.
0.001
0.01
0.1
1
10
100
1000
1980 1983 1986 1989 1992 1995 1998 2001
A
c
c
e
s
s

T
i
m
e

(
n
s
)
Moores Law
2x / 18 months
1.1x / 18 months
32
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
33
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.
34
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.
35
Route
Table
CPU
Buffer
Memory
Line
Interface
MAC
Line
Interface
MAC
Line
Interface
MAC
Tpico <0.5Gb/s capacidad agregada
Shared Backplane
L
i
n
e I
n
t
e
r
f
a
c
e
C
P
U
M
e
m
o
r
y
Routers de primera generacin
36
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
Tpico <5Gb/s capacidad agregada
Routers de segunda generacin
37
Line
Card
MAC
Local
Buffer
Memory
CPU
Card
Line
Card
MAC
Local
Buffer
Memory
Backplane conmutado
(Switched Backplane)
L
i
n
e I
n
t
e
r
f
a
c
e
C
P
U
M
e
m
o
r
y
Fwding
Table
Routing
Table
Fwding
Table
Tpico <50Gb/s capacidad agregada
Routers de tercera generacin
38
Switch Core Linecards
Optical links
100s
of metres
Capacidades 0.3 - 10Tb/s
Routers de cuarta generacin
Multi-Racks, Optical Links
39
Optical Switch Core Linecards
Optical links
100s
of metres
Routers de 10-100Tb/s en proyecto
(Futuros) Routers de quinta generacin
Optical Switch Core
40
Optical Switch Core Optical Linecards
Optical links
100s
of metres
Routers de 100-1000Tb/s en un futuro lejano
(Muy futuros) Routers de sexta generacin
All-Optical Routers
41
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.
42
Arquitectura de router
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
Lookup
IP Address
Address
Table
Lookup
IP Address
Address
Table
Lookup
IP Address
Address
Table
43
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.
44
IP Lookup con Longest Prefix Match
128.9.16.0/21128.9.172.0/21
128.9.176.0/24
0
2
32
-1
128.9.0.0/16
142.12.0.0/19
65.0.0.0/8
128.9.16.14
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
45
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.
46
Las tablas de rutas son grandes
Source: http://www.cidr-report.org/
47
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.
48
La bsqueda debe ser muy rpida
125 40Gb/s 2003
31.25 10Gb/s 2001
7.81 2.5Gb/s 1999
1.94 622Mb/s 1997
Paquetes
de 40B
(Mpkt/s)
Lnea
tpica
Ao
500 160Gb/s 2005?
49
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.
50
Arquitectura de router
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
Buffer
Manager
Buffer
Memory
51
Buffers de paquetes muy rpidos
Ejemplo: buffer para puertos de 40Gb/s
Tamao = RTT*BW = 10Gb; 40 byte packets
Write Rate, R
1 paquete
cada 8 ns
Read Rate, R
1 paquete
cada 8 ns
Buffer
Manager
Buffer
Memory
Usar SRAM?
+ acceso suficientemente rpido, pero
- poca densidad para conseguir 10Gb.
Usar DRAM?
+ alta densidad, suficiente memoria, pero
- demasiado lenta (50ns tiempo acceso).
52
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.
53
Arquitectura de router
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Data Hdr
Data Hdr
Data Hdr
1
2
N
1
2
N
N times line rate
N times line rate
54
Arquitectura de router
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Lookup
IP Address
Update
Header
Header Processing
Address
Table
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Queue
Packet
Buffer
Memory
Data Hdr
Data Hdr
Data Hdr
1
2
N
1
2
N
Data Hdr
Data Hdr
Data Hdr
Scheduler
55
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
56
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
57
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

Вам также может понравиться