Vous êtes sur la page 1sur 44

Direccionamiento y enrutamiento en Internet

Avi Freedman Ravi Sundaram

Esquema
Orgenes de Internet Protocolos y paquetes Direccionamiento - IPv4 frente a IPv6 Enrutamiento visin global BGP - modelo BGP - convergencia y dificultades

Introduccin
Internet es una RED de redes tanto desde el punto de vista lgico como fsico. Millones de ordenadores son capaces de comunicarse entre s en tiempo real. Almacenamiento y envo basados en paquetes. Direccionamiento modo de identificar ordenadores. Enrutamiento transmisin de paquetes desde un origen hasta un destino.

Orgenes
Experimento acadmico realizado en la dcada de los 60, financiado por ARPA - Advanced Research Projects Agency, conocida ahora como DARPA. Diciembre de 1969 se activ la primera red de 4 nodos, utilizando para ello una conexin de 56 kbps. 1978 surge el protocolo IP. 1982 surge TCP, ARPANET se divide en MILNET e Internet. 1983 - Internet consta de 200 ordenadores.

Orgenes
1984 nacen los grupos de noticias. 1986 surge el DNS y, motivado por el correo electrnico, sustituye a la tabla de host. 1988 surge el gusano, creado por el CERT. 1989 100.000 ordenadores en Internet, con readaptacin del protocolo TCP para evitar congestionamiento. 1990 trfico comercial an prohibido en el backbone de Internet. 1991 fin de la prohibicin comercial, nace la www.

Orgenes
Mayo de 1993 ltima peticin de la NSFNET para NAPs privados. 1995 vBNS sustituye a NSFNET un servicio de backbone de alto rendimiento que conecta ciertas universidades y centros de investigacin a una velocidad de 155 Mbps e incluso ms, contrato otorgado a MCI (reemplazado por Abilene 10 Gbps?). 2002 - 350 millones de hosts.

Observaciones
Crecimiento sin precedentes. Control descentralizado desafos y oportunidades. Rendimiento. Fiabilidad. Contabilidad. Seguridad. Directorio. Argumentos finales sobre el diseo del sistema. ACM Trans on Comp systems, noviembre de 1984, pgs. 277-288.

Protocolos

FTP

SMTP

DNS

SNMP

TCP ICMP IP

UDP

Paquetes
De 46 a 1500 bytes Cabecera IP Ethernet Cabecera Datos de la aplicacin TCP/UDP Cola Ethernet

Direccionamiento
Direcciones de 32 bits - a.b.c.d 4.000 millones de direcciones posibles. 250 millones de hosts aproximados. IPv4 basado en RFC791 en 1981.

Direccionamiento
Clasificacin en el pasado: Class A - primeros 8 bits fijos. Class B - primeros 16 bits fijos. Class C - primeros 24 bits fijos. CIDR Enrutamiento de interdominio sin clases. a.b.c.d/m - primeros bits m fijos. p.ej. 0.0.0.0/29 = 0.0.0.0 a 0.0.0.7 Regla de enrutamiento de correspondencia ms concreta.

Direccionamiento
Cuestiones relacionadas con IPv4. Reduccin del espacio de direcciones. Control realizado por el registro central. Ninguna consideracin sobre redes/enrutamiento. Ninguna consideracin de seguridad. Ninguna consideracin en cuanto a calidad de servicio (QoS). Esto quedara resumido como escalabilidad, seguridad y calidad de servicio (QoS).

Direccionamiento
IPv6 o IPng 128 bits jerrquico (basado en la red); seguro (usa IPSec); calidad de servicio (bits repartidos para el etiquetado de flujos).

Direccionamiento
La migracin tendr lugar de 4 a 6. Escalabilidad - CIDR/NAT (no antes del 2010). Seguridad - IPSec y nivel de aplicacin. Calidad de servicio nivel de aplicacin.

Enrutamiento
Internet coleccin de sistemas autnomos. Sistema autnomo (AS) conjunto de enrutadores que comparten la misma poltica de enrutamiento, los enrutadores de un AS son parecidos a las oficinas de correo de un pas. Protocolo de enrutamiento coleccin de reglas para el envo de paquetes.

Enrutamiento
Distancia (ruta)- protocolos de vector. Las actualizaciones de enrutamiento incluyen vector de distancias (rutas); Cada nodo posee un rbol de ruta ms corta (basado en una poltica). Ejemplos: RIP, BGP4

Enrutamiento
Protocolos de estados de conexin. Las actualizaciones de enrutamiento incluyen estados de conexin y otras actualizaciones; Cada nodo contiene un grafo completo; Ejemplo: OSPF

Localizacin de rutas
[koods@koods-desktop ~]$ traceroute www.berkeley.edu traceroute to arachne.berkeley.edu (169.229.131.109), 30 hops max, 40 byte packets 1 172.24.80.1 (172.24.80.1) 0.401 ms 0.308 ms 0.291 ms 2 corp2-primary.kendall.akamai.com (172.24.8.2) 0.411 ms 0.334 ms 0.331 ms 3 akafire.kendall.akamai.com (172.24.44.4) 0.280 ms 0.208 ms 0.368 ms 4 65.202.32.3 (65.202.32.3) 0.608 ms 1.651 ms 0.923 ms 5 65.202.33.246 (65.202.33.246) 0.754 ms 0.664 ms 0.832 ms 6 serial4-0-2.hsipaccess1.Boston1.Level3.net (166.90.184.53) 0.912 ms 0.888 ms 0.881 ms 7 unknown.Level3.net (64.159.3.141) 1.349 ms 1.696 ms 2.018 ms 8 so-2-0-0.mp2.SanJose1.Level3.net (64.159.0.218) 85.658 ms 85.287 ms 84.278 m 9 gige9-1.hsipaccess1.SanJose1.Level3.net (64.159.2.103) 84.682 ms 84.666 ms 84.404 m 10 unknown.Level3.net (209.247.159.110) 80.145 ms 80.630 ms 80.860 m 11 ucb-gw--qsv-juniper.calren2.net (128.32.0.69) 83.634 ms 84.703 ms 110.922 m 12 vlan196.inr-201-eva.Berkeley.EDU (128.32.0.74) 83.906 ms 87.205 ms 85.161 m 13 vlan209.inr-203-eva.Berkeley.EDU (128.32.255.2) 138.753 ms 141.608 ms 142.004 m 14 arachne.Berkeley.EDU (169.229.131.109) 140.416 ms 128.705 ms 143.716 ms

BGP - modelo

Modelado como una coleccin de sistemas autnomos con relaciones no jerrquicas entre s. Se puede considerar como un grafo G=(V,E) con sistemas autnomos representados por los vrtices v en V, y por relaciones no jerrquicas por extremidades e en E.
12222

701

BGP- Protocolo de puerta de enlace en el borde


Protocolo vector-ruta cada vrtice mantiene un rbol de camino ms corto, arraigado en s mismo. ms corto combinacin de poltica y distancia basada en mtrica. Cada sistema autnomo selecciona sus rutas basadas en su propia poltica, junto a las mejores rutas de sus vecinos.

BGP modelo idealizado


Internet est modelada como un grafo no dirigido G=(V,E), donde V corresponde a los sistemas autnomos y E a las relaciones no jerrquicas. Cada vrtice asimila un conjunto de avisos de ruta de sus vecinos. Un aviso de ruta es un registro con los siguientes atributos: nlri: informacin sobre accesibilidad de capa de red, ej. 1.2.3.4 as_path: lista ordenada de vrtices, comenzando con el prximo salto, ej. 701 12222. loc_pref: preferencia local con dlp usado para representar un valor por defecto.

BGP modelo idealizado


Cada vrtice selecciona la mejor ruta para un determinado destino. Si posee muchas rutas r_1, r_2 r_k con el mismo destino, es decir, r_i.nlri = r_j.nlri, ste selecciona la primera con base en la ms alta local-pref, luego con base en el as_path ms corto, con vnculos rotos arbitrariamente. Transformaciones de ruta:
- Las preferencias locales no son comunicadas. - Sin bucles: v nunca acepta rutas r donde v r.as_path. - El conjunto de rutas seleccionadas en v se pasa a los vecinos de v con v colgando de as_path. - Poltica de importacin y exportacin.

BGP modelo idealizado


Exportar

Poltica de importacin y exportacin.


Importar

Verdadero=> aceptar

17 as_path => rechazar

Si todas las reglas de importacin y exportacin fuesen verdadero => aceptar, BGP quedara reducido a un puro protocolo de vector de distancia.

BGP modelo idealizado


Comportamiento dinmico. Informalmente, un sistema BGP S = <G, Policy(G), S0>, compuesto de un grafo AS G= (V,E), posee una poltica de importacin y exportacin para cada v_j en V, y un estado inicial S0 = (c0_1,c0_2,c)_n), donde c0_j es el destino originado por v_j. Si v_j se activa, obtendr avisos de ruta de sus vecinos ms prximos y seleccionar sus mejores rutas.

BGP cuestin de convergencia


Grafo de estado.
- Grafo dirigido de todos los estados con S_j => S_k, si existe un v cuya activacin provoque el cambio. - Se dice que un estado S es final si S => S en la activacin de cualquier v. - Se dice que un sistema BGP se puede solventar si posee un estado final. - Se dice que un sistema BGP es convergente si termina en un estado final independientemente de la secuencia de activacin.

BGP - cuestin de convergencia


Es posible que la poltica configurada localmente de modo correcto provoque anomalas globales de enrutamiento? Puede el protocolo divergir, es decir, puede hacer que una coleccin de sistemas autnomos intercambien mensajes continuamente sin llegar a converger?

BGP - cuestin de convergencia


Es un sistema BGP divergente en la prctica? Existen historias terrorficas sobre redes que se han configurado accidentalmente para absorber todo el trfico, pero que no dan pruebas de trampas a gran escala. Sin embargo, se dan muchos y frecuentes casos de convergencia retrasada hasta 50 minutos. En Labovitz, C., Ahuja, A., Bose, A. y Jahanian, F., Delayed Internet Routing Convergence, Proceedings of Sigcomm, 2000, pgs. 175-18, los autores realizan experimentos en los que apartan una ruta y la sustituyen por otra, para ver cunto tiempo antes descarga en Internet, mientras es observada desde varios puntos con ventaja.

BGP - cuestin de convergencia


Adems de las varias anomalas especficas del fabricante, la principal razn para que se d una convergencia larga, es que los protocolos de vector de ruta consideren mltiples rutas de una longitud determinada, a diferencia de los protocolos de vector de distancia, que tienen en cuenta slo una ruta de una longitud especfica. En la referencia anteriormente mencionada, los autores construyen un ejemplo en el que se tiene en cuenta cada ruta libre de bucles en toda la red, pues, dado que existe un nmero exponencial de dichas rutas, cabe esperar que la convergencia se retrase.

BGP - cuestin de convergencia


El siguiente ejemplo ha sido tomado de:

Varadhan, K., Govindan, R. y Estrin D. Persistent route oscillations ISI TR 96-631

BGP - cuestin de convergencia


DISPOSITIVO CON PROBLEMA
dest 1 0 2

Todas las reglas son en mod. 3 Reglas de exportacin: nlri=dest => aceptar Reglas de importacin: si i+1 => i entonces nlri=dest y as_path=[I+1,0] => loc_pref = dlp +1; nlri=d => loc_pref=dlp si i-1 => I entonces nlri=dest => aceptar

BGP - cuestin de convergencia


DISPOSITIVO CON PROBLEMA 1
0 dest 2

33

Tiene solucin el DISPOSITIVO CON PROBLEMA?

BGP - cuestin de convergencia


DISPOSITIVO CON PROBLEMA 11
0 dest 2

Tiene solucin el DISPOSITIVO CON PROBLEMA?

BGP - cuestin de convergencia


DISPOSITIVO CON PROBLEMA 1
0 dest 2

Tiene solucin el DISPOSITIVO CON PROBLEMA?

BGP - cuestin de convergencia


DISPOSITIVO CON PROBLEMA 1
0 dest 2

33

Tiene solucin el DISPOSITIVO CON PROBLEMA?

BGP - cuestin de convergencia


Tiene solucin el DISPOSITIVO CON PROBLEMA?
- Para que un DISPOSITIVO CON PROBLEMA tenga solucin, debe tener un estado final. - En el caso de sistemas de un nico destino, es fcil observar que en un estado final, el grafo inducido por as_path en cada vrtice para un destino, es un rbol orientado hacia el destino, y que este estado final se puede alcanzar al activar todos los nodos del rbol, siguiendo un orden de primer ancho. - El DISPOSITIVO CON PROBLEMA no posee un estado final, y esto se puede comprobar observando los 6 rboles arraigados en 0, y verificando que ninguno de ellos funciona.

BGP - cuestin de convergencia


Los siguientes resultados se han tomado de: Griffin, T. y Wilfong, G., An Analysis of BGP Convergence Properties Proceedings of Sigcomm 99, pgs. 277-288

BGP - otro problema

ACCESIBILIDAD: dado un sistema S, los vrtices v y w, y el destino d originado por w, existe un estado final en el que d se pueda alcanzar desde v? ACCESIBILIDAD est en NP Pf (funcin programada): se considera un estado final, y se verifica la accesibilidad (y la finalidad). Para mostrar que la ACCESIBILIDAD es un problema NP-difcil, demostramos una reduccin a partir de 3SAT.

La ACCESIBILIDAD es NP-difcil
Ejemplo de 3-SAT: (x1 V x2 V x3) y (x1 V x2 V x3)
x1 x2 xn

w z d C1 C2 Cm

X1

X2

Xn

La ACCESIBILIDAD es NP-difcil
X1=verdadero; x2=falso; x3=falso
x1 x2 xn

w z d C1 C2 Cm

X1

X2

Xn

La ACCESIBILIDAD es NP-difcil
Poltica de exportacin: verdadero => aceptar. Poltica de importacin: asegura que slo uno de xj o xj est en el atributo as_path de una ruta hacia d, y una vez que la ruta se haya escogido, es obligatorio un bloqueo. Ejemplo: xj xj: nlri=d => loc_pref = dlp + 1; xj-1 xj : nlri=d & xj-1 no en as_path => loc_pref = dlp; Para la clusula Cj = xk V xl V xm: xk en as_path o xl en as_path o xm en as_path => loc_pref = dlp.

La ACCESIBILIDAD es NP-difcil
Se puede satisfacer => ACCESIBLE Pf (funcin programada): se activa por las erratas que se definen como verdaderas. ACCESIBLE => se puede satisfacer Pf (funcin programada): Proviene superficialmente del modo en el que la poltica funciona para garantizar una nica ruta.

Otros problemas e implicaciones


ASIMETRA SOLVENCIA ROBUSTEZ

RADB (base de datos de arbitraje de enrutamiento) y verificacin centralizada.

Investigacin
Considere un protocolo de vector de ruta como BGP en cada paso, un nodo obtiene informacin de sus vecinos y utiliza su poltica (local) para actualizar su tabla de rutas. Una topologa y una coleccin de polticas se pueden satisfacer si existe un estado en el que las actualizaciones no cambien. Se dice que un sistema converge si ste alcanza dicho estado. El problema consiste en probar y caracterizar el comportamiento de estos sistemas, es decir, cundo divergen, y si pueden converger en ms de un estado que se pueda satisfacer. Referencia: www.acm.org/pubs/citations/proceedings/comm/3 16188/p277-griffin/

Preguntas?

Vous aimerez peut-être aussi