1er. Sem 2002ELO 3221 Ruteo “Routing” Contenido Algoritmos Escalabilidad

  • View
    215

  • Download
    0

Embed Size (px)

Text of 1er. Sem 2002ELO 3221 Ruteo “Routing” Contenido Algoritmos Escalabilidad

  • RuteoRoutingContenidoAlgoritmosEscalabilidad

    ELO 322

  • GeneralidadesRe-envo versus RuteoRe-envo: debe seleccionar una puerta de salida basado en la direccin destino y las tablas de ruteo.ruteo: proceso mediante el cual las tablas de ruteo son construidas.Vemos la red como un Grafo

    Problema: Encontrar el camino de menor costo entre dos nodosFactoresestticos: topologadinmicos: carga de los nodos y enlaces

    ELO 322

  • Vector de Distancia (Ejemplo:RIP, Routing Information Protocol)Cada nodo mantiene un conjunto de tros(Destination, Cost, NextHop)Intercambia actualizaciones con sus vecinos directamente conectadosPeridicamente ( en el orden de varios segundos)Cuando su tabla cambia (se habla de una actualizacin gatillada)Cada actualizacin es una lista de pares:(Destination, Cost)Se actualiza tabla local si se recibe una mejor rutaCosto menorlleg desde el host prximo next-hopSe refrescan rutas existentes; se borran si hay time out

    ELO 322

  • Ejemplo

    Destination Cost NextHop A 1 A C 1 C D 2 C E 2 A F 2 A G 3 ATabla de ruta para B

    ELO 322

  • Ciclos de actualizacinEjemplo 1F detecta que enlace a G ha falladoF fija distancia a G infinita y enva una actualizacin a AA fija distancia a G infinita porque A usa F para llegar a GA recibe actualizacin peridica de C con camino de 2 hops a GA fija distancia a G como 3 y enva actualizacin a FF decide l puede llegar a G en 4 hops va AEjemplo 2Enlace de A a E falla.A comunica distancia infinita a EA comunica distancia a E y B y C comunican distancia 2 a EB decide que puede llegar a E en 3 hops; comunica esto a AA decide que puede llegar a E en 4 hops; comunica esto a CC decide que puede llegar a E en 5 hops...

    ELO 322

  • Heursticas para romper los ciclosFijar 16 como infinito, es decir cuando el costo llega a 16 se asume que no hay ruta al nodoPartir el horizonte (Split horizon): omite la informacin de distancia que fue obtenida del nodo al cual se le enva el vector.Partir el horizonte con reverso venenoso (Split horizon with poison reverse): incluye las entradas obtenidas desde el nodo al cual se enva el vector pero esos destinos se les pone costo infinito.Las ltimas dos tcnicas slo operan cuando el lazo involucra dos nodos.La convergencia de este protocolo no es buena, se mejora con ruteo usando el estado de los enlaces.

    ELO 322

  • Estado del EnlaceEjemplo: OSPF, Open Shortest Path First ProtocolEstrategiaEnviar a todos los nodos (no slo los vecinos) informacin sobre enlaces directamente conectados (no la tabla completa) se inunda

    Paquete del estado del enlace (Link State Packet,LSP)id del node que cre el LSPcosto del enlace a cada vecino directamente conectadonmero de secuencia (SEQNO)time-to-live (TTL) para este paquete

    ELO 322

  • Estado del Enlace (cont)Inundacin Confiablealmacena el LSP ms reciente de cada nodore-enva LSP a todos excepto a quien me lo envigenera un nuevo LSP peridicamenteincrementa SEQNOinicia SEQNO en 0 cuando rebootdecrementa TTL de cada LSP almacenadodescarta cuando TTL=0

    ELO 322

  • Clculos de RutaAlgoritmo de Dijkstra para el camino ms corto entre nodosSeaN denota el conjunto de nodos del grafol (i, j) denota costo no negativo (peso) para arco (i, j). Si no hay arco, el costo es infinito.s denota este nodoM denota el conjunto de nodos incorporados hasta ahoraC(n) denota el costo del camino de s a n

    M = {s}for each n in N - {s}C(n) = l(s, n)while (N != M)M = M unin {w} tal que C(w) es el mnimo para todo w en (N - M)for each n in (N - M)C(n) = MIN(C(n), C (w) + l(w, n ))

    ELO 322

  • Uso del algoritmo de Dijkstra en ruteoEn la prctica el clculo de la tabla de ruta se hace conforme los LSP (link-state packet) llegan.Se manejan dos listas la de entradas tentativas y las confirmadas. Ejemplo:PasoConfirmadoTentativo1(D,0,-)2 (D,0,-)(B,11,B)(C,2,C)3(D,0,-)(B,11,B)(C,2,C)4(D,0,-)(B,5,C)(C,2,C)(A,12,C)5(D,0,-)(A,12,C)(C,2,C)(B,5,C)6(D,0,-)(A,10,C)(C,2,C)(B,5,C)ComentarioMiramos el LSP de D porque es el nico nuevo miembro confirmadoEl LSP de D nos dice cmo llegamos a B y C

    El miembro de menor costo entre los tentativos es C. Se examina el LSP del nodo recin confirmado

    Con C, se actualizan los costos. Ahora llegamos a B va C y se incorpora A

    Se mueve el de menor costo de tentativos a confirmados.

    Con B, se actualiza los costos. Ahora se llega a A va B.Despus de esto se mueve el menor costo de los tentativos a los confirmados. A es el nico y terminamos.

    ELO 322

  • Comparacin entre algoritmo vector de distancia y estado de enlaces.En el algoritmo vector de distancia cada nodo transmite a sus vecinos lo que sabe respecto de toda la red (distancia a todos los nodos).En el algoritmo estado de enlaces cada nodo transmite a toda la red lo que sabe de sus vecinos. (el estado de sus vecinos)El segundo es estable, no genera gran trfico y responde rpido a cambios de topologa.El problema del segundo es la cantidad de informacin almacenada en los nodos.(un LSP por nodo)

    ELO 322

  • Mtricas Es forma como definimos el costo del enlace.Por ejemplo asignar 1 a cada enlace.Mtrica ARPANET originalmide el nmero de paquetes encolados en cada enlaceNo toma en cuenta latencia ni ancho de bandaMtrica ARPANET nuevaMarca cada paquete entrante con su tiempo de llegada (arrival time, AT)Graba tiempo de salida (departure time, DT)Cuando llega el ACK del enlace de datos llega, calculaDelay = (DT - AT) + Transmit + Latency Transmit y Latency son parmetros estticos del enlace.Si hay timeout, reset DT a tiempo de salida para retransmisinCosto del enlace = retardo promedio medido en algn periodoMejora finaReducir el rango dinmico para el costoEn lugar de retardo se emplea la utilizacin del enlace

    ELO 322

  • Cmo hacer ruteo EscalableDireccionamiento plano versus jerrquicoIneficiente uso del espacio de direcciones jerrquicasclase C con 2 hosts (2/255 = 0.78% eficiencia)clase B con 256 hosts (256/65535 = 0.39% eficiencia)An hay demasiadas redesLas tablas de ruteo no escalanprotocolos de propagacin de rutas no escalan

    ELO 322

  • Estructura InternetPasado Reciente (1990, EEUU)

    ELO 322

  • Estructura InternetHoy

    ELO 322

  • SubredesAgrega otro nivel a la jerarqua direccin/ruta: subredMscara de Subred define particin variable en la parte hostSubredes son visibles slo dentro del sitio, dentro de una misma red.

    ELO 322

  • Ejemplo SubredForwarding table at router R1Subnet Number Subnet Mask Next Hop128.96.34.0 255.255.255.128 interface 0128.96.34.128 255.255.255.128 interface 1128.96.33.0 255.255.255.0 R2

    ELO 322

  • Ejemplo Subredes en ELOSubnet mask: 255.255.255.128Subnet number: 200.1.17.128200.1.17.130200.1.17.129LucasJuan200.1.17.102Subnet mask: 255.255.255.128Subnet number: 200.1.17.0200.1.17.100200.1.17.73Morgulagv2001200.1.28.1200.1.28.6Subnet mask: 255.255.255.192Subnet number: 200.1.28.0AjaxRed de alumnosRed de profesores200.1.17.1elo-gw.elo.utfsm.clFuera ELORed ATMLAB200.1.28.15HBOAP100aragorn200.1.17.195200.1.28.129Subnet mask: 255.255.255.192Subnet number: 200.1.28.128Red InalmbricaEsc 1Esc nCC

    ELO 322

  • Algoritmo de Re-envoD = Direccin IP destinofor each entrada (SubnetNum, SubnetMask, NextHop) D1 = SubnetMask & D if D1 = SubnetNum if NextHop is una interface Enviar datagrama directamente a to D else enviar datagrama a NextHop

    Se usa un router por omisin si nada coincideNo necesariamente todos los 1s en la mscara de subred son contiguos Se puede poner mltiples subredes en una red fsicaSubredes no son visibles para el resto de la Internet

    ELO 322

  • SuperredesSe asignan bloques de nmeros de redes contiguos a redes cercanasLlamado CIDR: Classless Inter-Domain RoutingSe representa un bloque con un par nico (first_network_address, count)Restringe bloques a potencias de 2Use una mscara de bits (CIDR mask) para identificar el tamao del bloqueTodos los routers deben entender direccionamiento CIDR

    ELO 322

  • Propagacin de rutasHay que conocer un router ms astutohosts conocen el router localel router local conoce los routers del sitiolos routers del sitio conocen los router centralesLos routers centrales conocen todoSistemas Autonomos (Autonomous System,AS)Corresponde a un domino administrativoEjemplos: Universidad, compaa, backbone networkSe asigna a cada AS un nmero de 16-bitsJerarqua de dos niveles de propagaciones de rutasProtocolo gateway interior (cada AS selecciona el propio)Protocolo gateway exterior (estndar en Internet)

    ELO 322

  • Protocolos Populares de Gateway InteriorRIP: Route Information Protocoldesarrollado por XNSDistribuido con Unixusa algoritmo vector distanciabasado en cuenta de hopsOSPF: Open Shortest Path Firstreciente estndar en Internetusa el algoritmo de estado de enlacessoporta balance de cargasoporta autenticacin

    ELO 322

  • Protocolo de Gategay exteriorEGP: Exterior Gateway ProtocolGeneralidadesdiseado para una Internet estructurada como rbolse preocupa de alcanzar los nodos, no optimiza rutasMensajes del ProtocoloAdquisicin de vecinos: un router requiere que otro sea su par; pares intercambian informacin de alcanceAlcance de vecinos: un router peridicamente prueba si el otro es an alcanzable; intercambia mensajes HELLO/ACK;actualizacin de rutas: pares peridicamente intercambian sus tablas de ruteo (vector distancia)

    ELO 322

  • BGP-4: Border Gateway ProtocolTipos ASstub AS: tiene una nica conexin a otro AStransporta slo trfico localmultihomed AS: tiene conexiones a ms de un ASno transporta trfico en transitot