Routers de Altas Prestaciones

Anuncio
Routers de Altas Prestaciones
José
José Duato
Duato
Román
Román García
García
DISCA
Departamento de Informática de
Sistemas y Computadores
1
Índice
•
•
•
Marco operativo de un router de altas prestaciones
Bloques funcionales
IP forwarding
– Direccionamiento IP
• Subnetting
• Supernetting
– Algoritmos y estructuras de datos para consulta rápida en tabla forwarding
• Trie
• Patricia
– Otros esquemas de direccionamiento
• IPX / IPX+
• CNLP
• IPv6
BIBLIOGRAFIA
1. R. PERLMAN, Interconections (2º edition): Bridges, Routers, Switches and
Internetworking Protocols. Ed: Addison-Wesley 1999.
2. L. PETERSON & B.S. DAVIE, Computer Networks: a systems approach (2º edition),
Morgan Kaufmann Publishers, 2000.
3. D. COMER, Internetworking with TCP/IP (vol-1). 4ªEdición, Ed: Prentice-Hall, 2000.
4. 5. 6. … http://www.redes.disca.upv.es/rap
2
Routers de altas prestaciones (RAP)
SONET / RPR / ...
3
DWDM:Dense Wavelength Division Mxing
•
•
Multiplexación de varias señales de diferente longitud de onda en
una única fibra.
Cada señal puede tener diferentes velocidades (p.ej. OC–3/12/24,
etc.) y diferentes formatos (SONET, ATM, etc.)
– Ejemplo: una red DWDM con un mix de señales SONET que funcionan a
OC–48 (2.5 Gbps) y OC–192 (10 Gbps) puede alcanzar capacidades de
más de 40 Gbps.
•
Se prevé que en el futuro DWDM podrá llevar hasta 80 señales de
tipo OC–192, por un total de 800 Gbps.
4
DWDM
5
6
7
Inyección de datos en fibra
8
Synchronous Optical Network (SONET)
Multiplexación TDM síncrona
•
Elementos:
–
–
–
Multiplexores n:1 y 1:n
Convertidores y repetidores.
Multiplexores ADM.
ADM
34 RDSI
PRI
M
U
X
STS-3
STS-1
M
U
X
M
STS-1 U
X
Convertidor
electro-óptico
STS-12
OC-12
STS-1
9
SONET: Tasas de datos
•
Canal básico SONET: STS-1
– Una trama de 810 bytes cada 125useg (51.84Mbps)
– El resto de canales es múltiplo del básico
SONET
SDH
Tasa de datos
Optico
Mbps
Eléctrico
Optico
STS-1
OC-1
STS-3
OC-3
STM-1
155.52
STS-9
OC-9
STM-3
466.56
STS-12
OC-12
STM-4
622.08
STS-18
OC-18
STM-6
933.12
STS-24
OC-24
STM-8
1202.688
STS-36
OC-36
STM-12
1866.24
STS-48
OC-48
STM-16
2488.32
STS-192
OC-192
STM-64
9953,28
51.84
10
SONET vs Resilient Packet Ring (RPR)
11
12
Detalle de conexión de routers
physical location where an interexchange carrier installed equipment to interconnect with a local exchange carrier
13
14
Packet Over Sonet
(6 marzo del 2001)(Fuente: Juniper Networks)
15
16
Juniper M40
17
18
Abilene Architecture: Core
•
•
•
Router Nodes located at Qwest PoPs
– Cisco 12008 GSR
– ICS Unix PC: IPPM and Network Mgmt
– Cisco 3640 Remote Access for NOC
– 100BaseT LAN and ‘console port’ access
– Remote 48v DC Power Controllers
Initially, ten Router Nodes
– Seattle, Sacramento, Los Angeles, Denver,
Kansas City, Houston, Indianapolis, Cleveland,
New York City, Atlanta
– And, coming this Fall - Washington, DC
Interior lines connect core nodes
– OC-12 and OC-48 Sonet
– IP-over-Sonet interfaces
19
20
21
22
23
Routers de altas prestaciones (RAP)
•
Encaminamiento “wired-speed”
– switches (ATM – Ethernet)
• tramas (celdas) de tamaño fijo
• búsqueda en tablas con direcciones de tamaño fijo
– routers Æ mas complejo
• paquetes de tamaño variable
• longest-match lookups
•
Evolución de Internet
– best-effort service Æ fiable (QoS) Æ MPLS
24
MPLS
Route At Edge, Switch In Core
IP
IP
IP Forwarding
#L1
IP
#L2
IP
#L3
IP
IP Forwarding
LABEL SWITCHING
25
LABEL SWITCHED PATH (vanilla)
#216
#14
#311
#99
#311
#963
#311
#963
#14
#612
#5
#462
#99
#311
26
HOP-BY-HOP(Vanilla) LDP
#216
#963
#14
#612
#462
#311
#99
#5
- Ultra fast, simple forwarding a.k.a switching
- Follows same route as normal IP datapath
- So like IP, LDP will over-utilize best paths and
under-utilize less good paths.
27
Label Switched Path (Two Types)
#427
#216
#819
#77
#18
#963
#14
#612
#462
#99
#5
#311
Two types of Label Switched Paths:
•
Hop by hop
(“Vanilla” LDP)
•
Explicit Routing (LDP+”ER”)
28
Índice
•
•
•
Marco operativo de un router de altas prestaciones
Bloques funcionales
IP forwarding
– Direccionamiento IP
• Subnetting
• Supernetting
– Algoritmos y estructuras de datos para consulta rápida en tabla forwarding
• Trie
• Patricia
– Otros esquemas de direccionamiento
• IPX / IPX+
• CNLP
• IPv6
29
RAP: Bloques funcionales
• 2 TAREAS FUNDAMENTALES:
1) Routing
2) Packet forwarding
• 4 ELEMENTOS ESENCIALES:
1) Routing software
routing protocols (OSPF, BGP4,…)
routing tables
+ system control
2) Packet processing
de-encapsulado
longest-match route
encolado en salida
re-encapsulado
3) Switch fabric
mover paquetes inÆout
crossbar, banyan, Clos, …
4) Line cards
Adaptar a N-1 y N-2
SONET, ATM, 10GE,…
30
Juniper M40
31
Índice
•
•
•
Marco operativo de un router de altas prestaciones
Bloques funcionales
IP forwarding
– Direccionamiento IP
• Subnetting
• Supernetting
– Algoritmos y estructuras de datos para consulta rápida en tabla forwarding
• Búsqueda binaria
• Trie
• Patricia
– Otros esquemas de direccionamiento
• IPX / IPX+
• CNLP
• IPv6
32
IP forwarding
• Hosts y routers realizan encaminamiento indirecto (a través de otros
routers)
• Frecuentemente hosts sólo utilizan un router (default), pero en
general hosts y routers pueden hacer uso de múltiples routers
• Pregunta : ¿ Que router (next-hop) usar ?
• ¿Cómo se informa un router de cual es el mejor camino a usar ?
• Si la tabla de encaminamiento es muy grande…¿Qué algoritmo
y que estructura de datos son necesarios para que un router
encamine eficientemente a su next-hop ?
33
IP forwarding: Tablas de encaminamiento
• Hosts y routers mantienen tablas que
contienen la información de encaminamiento
• Siendo precisos…
• Tablas de routing Æ usadas para calcular
rutas óptimas
• Tablas de forwarding Æ utilizadas para
consultar el next-hop
• Las tablas de forwarding se generan por los
protocolos de routing, que utilizan las tablas de
routing para el calculo de las rutas óptimas.
34
Encaminamiento
Búsqueda en la tabla de forwarding Æ función crítica
El tamaño y la complejidad de las tablas de forwarding depende de
• Tipo direccionamiento utilizado
• plano o jerarquizado
• direcciones tipo Seguridad Social, MAC, …
• n-niveles de jerarquía, tipo red telefónica
• direcciones de tamaño fijo o variable
• Tamaño (número de redes/hosts) de Internet
• 200.000 redes (año 2002)
• El número de hosts se dobla cada año
Objetivo Æ routers IP
Otros esquemas de direccionamiento N-3:
• IPX
• CLNP
• IPv6
35
Direccionamiento IPv4
• 3 clases primarias: A, B y C
• Direccionamiento jerarquizado a 2 niveles: NET-ID + HOST-ID
36
IPv4: Problemas
Problemas del direccionamiento IP tradicional
• Tablas de encaminamiento muy grandes en routers
• +2M redes clase C
• Clases muy rígidas
• Problema si red > 254 hosts
• Problema si red << 65534 hosts
• Agotamiento de las dir. IP
¿ Como minimizar el nº de dir. de red (especialmente el de clase B) ?
• Compartiendo el mismo net-id para varias redes Æ Subnetting
¿ Como gestionar más eficientemente las clases (A, B, C) ?
• Eliminándolas Æ Supernetting
37
Subnetting (RFC 950)
•
Red clase B Æ 65.534 host
– técnicamente posible pero
– impracticable por acumulación de tráfico de difusión
•
Solución: 1 dir NET-ID Æ multiples redes físicas
38
Subnetting tamaño fijo
• El estándar TCP/IP permite elegir cuantos bits se utilizan para subnetting
39
Subnetting tamaño variable
•
•
•
Preguntar
Técnica recursiva
Máxima flexibilidad
Problemas de ambigüedad Æ desaconsejado (?)
40
Encaminamiento con subnetting
•
•
•
Direccionamiento jerárquico Æ Encaminamiento jerárquico
No queda afectado el encaminamiento desde fuera de la red lógica
siempre y cuando las redes físicas sean contiguas.
– Muy complicado propagar la información de subnetting. No todos los
protocolos lo permiten
– Empresas ubicadas en distintas poblaciones Æ NO subnetting (ver ejemplo)
Todos los hosts y routers conectados a redes que utilizan subnetting
deben utilizar “subnet routing”.
41
Algoritmo Subnet Routing
•
Algoritmo normal Æ sabe cuantos bits corresponden a “red” y
cuantos a “estación”
– tabla… (net, next-hop)
– búsqueda sencilla y eficiente
•
Algoritmo con subnetting (purista)
– tabla … (subnet-mask, subnet, next-hop)
PARA CADA ENTRADA EN LA TABLA (subnet-mask, network, next-hop)
IF (( dir_IP_destino AND subnet_mask) == subnet )
IF (next_hop) es una interface de red
mandar datagrama directamente a destino
ELSE
mandar datagrama a next_hop
42
Preguntar
43
44
45
Supernetting (CIDR) (RFC1519)
•
ROADS (Running Out of ADdress Space)
1.
2.
3.
•
Ejemplo: Organización con 4000 ordenadores
–
–
•
Clases A, B, C no dividen el espacio de direccionamiento de forma útil.
Poca demanda de direcciones de clase C.
Muy alta demanda de direcciones de clase B.
1 clase C Æ 254 direciones para hosts. 16 clase C Æ 4064
problema: 16 rutas en routers en vez de una. Existen 2.097.152 redes clase C Æ Tablas de
encaminamiento demasiado grandes
CIDR (Classless Inter-Domain Routing)
–
–
–
Ya no se interpretan las clases (A, B, C)
4000 hosts Æ 12 bits Æ HOST-ID de 12 bits y NET-ID de 20 Æ Máscara de subred = 20 bits
La dir. IP se ve como un entero. Permite asignar direcciones en bloques contiguos potencia de 2
contiguos
46
Supernetting (CIDR) y encaminamiento
•
CIDR requiere que los protocolos de encaminamiento publiquen
también la máscara de red
– RIP-2, OSPF, BGP-4
•
Encaminamiento sin clase Æ enrutador nunca supone que la máscara
de red se base en la clase.
– compatible con subnetting fijo y variable
47
Encaminar por concordancia más larga.
NET /mask
next-hop
0.0.0.0 /0
default
192.0.16.0 /20
T
192.0.16.0 /24
R
192.0.16.254 /32
S
…
192.0.16.254 /32
R
192.0.0.0 /21
2046 direcciones
192.0.0.0 Æ 192.0.7.255
0xC0.00.00.00 Æ 0xC0.00.07.FF
1100:0000.0000:0000.0000:0xxx.xxxx:xxxx
S
T
192.0.32.0 /20
192.0.32.0 Æ 192.0.47.255
0xC0.00.20.00 Æ 0xC0.00.2F.FF
1100:0000.0000:0000.0010:xxxx.xxxx:xxxx
192.0.16.0 /24
192.0.16.0 /20
Broadcast
4094 direcciones
192.0.16.0 Æ 192.0.31.255
0xC0.00.10.00 Æ 0xC0.00.1F.FF
1100:0000.0000:0000.0001:xxxx.xxxx:xxxx
Net-id
48
Longest-match routing
Subnetting
Dir IP destino =
Next-hop
Value = red
Subnetting: direccionamiento ambiguo si los bits “1” de la máscara no son consecutivos
Dir IP destino =
49
route print
158.42.50.137
mi Intranet
192.168.0.0
mi PC
+
Proxy
UPVNET
158.42.0.0
192.168.0.1
50
Índice
•
•
•
Marco operativo de un router de altas prestaciones
Bloques funcionales
IP forwarding
– Direccionamiento IP
• Subnetting
• Supernetting
– Algoritmos y estructuras de datos para consulta rápida en tabla forwarding
• Trie
• Patricia
– Otros esquemas de direccionamiento
• IPX / IPX+
• CNLP
• IPv6
51
TRIE (reTRIEve)
FUNCIONAMIENTO
• Las direcciones en la base de datos están en una estructura árbol
• Cada vértice representa una cadena
¾ La raíz es la cadena nula
• Hay 26 punteros desde cada vértice,
¾ El primero apunta a la cadena actual +a, el segundo +b, …
• Si la cadena no existe en el diccionario, tampoco existe el vértice
asociado
• Cada vértice tiene una bandera asociada que indica si la cadena,
terminada en ese punto, está en el diccionario o no.
• Tiempo de búsqueda
Proporcional al tamaño medio
de las tiras en el diccionario,
independientemente del nº de
entradas
• Mantenimiento no difícil
añadir Æ seguir puntero y
añadir al árbol
quitar Æ si tiene hijos … quitar *
si no … quitar rama
52
PATRICIA TRIE
• Patricia = Practical Algorithm To Retrieve Information Coded In Alphanumeric
(D.R: Morrison 1968)
• Patricia es una estructura Trie adaptada para evitar representar nodos
con un solo hijo
• Trie Æ cada parte de la clave (letra) determina por que sub-árbol seguir.
Patricia Æ el nodo del árbol indica (bit index) cual es el próximo elemento
(bit) de la clave debe utilizarse.
4
• La clave de búsqueda en Patricia es una
cadena de bits y el índice (bit-index) es el
peso del bit
• Cada nodo tiene un bit-index asociado.
Es el bit de la cadena que debemos
comparar
• El bit-index debe decrecer a medida nos
alejamos de la raíz
• La búsqueda en Patricia termina con un
uplink (o null)
S=10110
2
1
0
T=00100
3
Y=11101
0
E=00101
53
PATRICIA TRIE: Creación del árbol
Insertando T
54
Insertando O
55
Insertando E
56
Insertando A
57
Insertando S
58
Insertando Y
59
•Generar PATRICIA empezando de abajo hacia arriba
60
Índice
•
•
•
Marco operativo de un router de altas prestaciones
Bloques funcionales
IP forwarding
– Direccionamiento IP
• Subnetting
• Supernetting
– Algoritmos y estructuras de datos para consulta rápida en tabla forwarding
• Búsqueda binaria
• Trie
• Patricia
– Otros esquemas de direccionamiento
• IPX / IPX+
• CNLP
• IPv6
61
IPX
• dirección IEEE 802
CARACTERISTICAS
•Similar a IP: posible subnetting/supernetting
• Plug & Play Æ conoce su dirección de nodo y pide (broadcast) la dirección de red
• IPX no necesita ARP Æ menor sobrecarga en la LAN y no ARP-cache en hosts
ADMINISTRACIÓN
• Las direcciones de red nunca fueron bien administradas
• a mediados de los 90 existian más hosts con IPX que con IP
pero no se planteó sustituir a IP como protocolo de Internet
• consecuencia Æ IPX no routeable
• bastaría con reconfigurar direcciones de red en routers
62
IPX+
dir. IEEE 802 de cada host
configurado en Routers, hosts consultan
Service Provider (ISPs)
1)
Compatible IPX
2)
Permitiría cambiar toda la red IPX de proveedor Internet sin cambiar nada
de la estructura IPX
3)
Direccionamiento Internet basado en dominio
63
CLNP
• Connectionless Network Layer Protocol by ISO
• Usado en ATM y CDPD (cellular digital packet data)
• Direcciones de tamaño variable Æ máx. 20 octetos
•Identificación entre
múltiples usuarios
• Level 2 routing
• Jerarquizado con todos los niveles
que hagan falta
• Direccionamiento tipo teléfonos
• Muy eficiente (sobre todo si se usan
backbones de telefonía, X25, …)
• Level 1 routing
• direccionamiento plano
• IEEE 802 (6 bytes) principalmente
64
IPv6
(RFC2460)
• IPv4 Æ 4 bytes
IPv6 Æ 16 bytes Æ 3,4*1038 nodos Æ 150 direcciones/m2
• No existen las clases
• Similar a IPv4 con CIDR (IETFÆAsignar rangos a ISPÆenpresas)
net-id 8 bytes
host-id 8 bytes
• Prefijos en la línea de CLNP
• Geographic addressing
EUI-64 (IEEE802 MAC 48 extendido a 64)
long. var.
• Europa
• América
• Asia
• red IRIS
• UPV
• Plug & Play Æ Similar a IPX+
• Representación en hexadecimal
3A57:0:0:9CFE:8888:FE34:1FCA:1998
::67FA:97FF
3F5A::
35::/8
::FFFF:158.42.1.10
65
NAT/NAPT
•
•
•
NAT = Network Address Translator
NAPT = Network Address Port Translator
¿Por qué NO tener una dir. IP globalmente única?
1. Para no tener que reasignar dir. IP cada vez
que se cambia de ISP
2. Porque prefieres usar internamente IPX (p.e.)
3. Porque una clase IP te resulta muy caro
Internet
NAT
• NAT utiliza un conjunto de direcciones IP válidas para
Internet y
las va asignando a los hosts en la intranet
• Asignación estática
• Dinámica
• Se asume que no todos los hosts de la intranet están
conectados simultáneamente a Internet
Intranet
• NAPT transforma (dirección-INTRA, puerto-X) en (dirección IP, puerto-X’)
• Permite miles de conexiones simultaneas a Internet con sólo una IP válida
•
•
NAT/NAPT está retrasando la entrada de IPv6
Problemas de NAT/NAPT
1. Coherencia en presencial de NATs en paralelo
2. Protocolos que transportan direcciones IP (p.e. FTP)
3. Mensajes cifrados (en combinación a 2)
• Mejor idea Æ host NAT/NAPT
El host pide a NAT/NAPT una dirección IP válida y procede el.
66
Transición IPv4 Æ IPv6
67
68
Búsqueda BINARIA
•
•
No da buenos resultados porque no se busca una concordancia
exacta, sino la más larga
PERO con unas pequeñas modificaciones puede funcionar bien
•Buscar ABCDEFGH
• Buscar ABCDEYBVNG
69
Descargar