1 de 60 Tema 3. Interconexión de Redes Índice Tema 3. Interconexión de Redes Enrique Alba Torres Introducción Conmutadores Puentes Pasarelas Fragmentación Software Universidad de Málaga (UMA) 10/03/2005 2 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Interconexión de redes • Hasta ahora hemos supuesto implícitamente que hay una sola red homogénea y que cada máquina usa el mismo protocolo en cada capa. • Por desgracia este supuesto es demasiado optimista: existen muchas redes diferentes que incluyen las LAN, MAN y WAN. En cada capa hay numerosos protocolos de uso muy difundido. • Existe realmente mucha heterogeneidad: más de 20.000 SNAs, 2000 DECNETs e innumerables tipos de LAN. Pasarelas Fragmentación Software • A continuación se estudiarán los problemas que surgen cuando dos o más redes se unen para trabajar, formando una interred. • Es difícil que las redes individuales desaparezcan para integrarse todas en OSI, así que debe estudiarse su interconexión práctica. 10/03/2005 3 de 60 Tema 3. Interconexión de Redes Interconexión de redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 4 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Interconexión de redes • Las razones para que exista dicha heterogeneidad de redes son: 9 Ya existían antes de aparecer OSI múltiples redes. 9 IBM aún soporta redes SNA. 9 Hay muchos estándares distintos de propósito específico. 9 Las LANs son raramente OSI. • Además, el hardware es barato, lo que contribuye a la diversidad y a que existan decisiones muy locales de compañías (no generales) que hacen necesario la interoperatividad. Pasarelas Fragmentación Software • Ejemplos de la necesidad de interconexión de redes: 9 LAN-LAN : Transmisión de un fichero entre dos departamentos. 9 LAN-WAN: Transmisión remota por e-mail de un dpto. a otro. 9 WAN-WAN: Intercambio remoto de ficheros. 9 LAN-WAN-LAN: Dos departamentos remotos comunicándose. 10/03/2005 5 de 60 Tema 3. Interconexión de Redes Interconexión de redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 6 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Interconexión de redes • La unión entre dos redes tiene lugar a través de la inserción de cajas negras para gestionar los paquetes que pasan de una a otra. A estos dispositivos se les llama relays o conmutadores. • Existen dos tipos de relays atendiendo al número de redes que interconectan: 9 Bilaterales Æ conectan directamente dos redes entre sí. 9 Multilaterales Æ conectan directamente varias redes entre sí. • Por lo general los relays no se nombran por el número de redes que interconectan, sino por el máximo nivel OSI que tienen implementado. Así tenemos: 9 Nivel 1 (físico) Æ repetidores y hubs. 9 Nivel 2 (enlace) Æ puentes y switches. 9 Nivel 3 (red) Æ pasarelas, routers o encaminadores. 9 Por encima del nivel 3 Æ conversores de protocolo. 10/03/2005 7 de 60 Tema 3. Interconexión de Redes Interconexión de redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Dos Ethernets conectadas por un switch Dos Ethernets conectadas por routers Software 10/03/2005 8 de 60 Tema 3. Interconexión de Redes Índice OSI e Interconexión de Redes • El modelo OSI contempla la interconexión de redes a nivel de red, aunque no está bien definido, como ocurre con la seguridad. Puentes • No se tomaron en cuenta las opiniones de ARPANET. CCITT también sufrió una falta de predicción asignando 4 dígitos decimales (10000 redes) para direccionamiento. OSI suponía que llegarían a existir una o dos redes públicas por país y que las redes privadas se agruparían en redes públicas mayores. Pero el mercado se ha decantado por multitud de redes distintas. Pasarelas • El modelo OSI de la capa de red distingue 3 subcapas: Introducción Conmutadores Fragmentación Software 9 Subcapa de Acceso a la Subred 9 Subcapa de Mejora de la Subred 9 Subcapa Interred 10/03/2005 9 de 60 Tema 3. Interconexión de Redes OSI e Interconexión de Redes • SUBCAPA DE ACCESO A LA SUBRED: 9 Maneja el protocolo específico de la subred física usada. Índice Introducción Conmutadores Puentes Pasarelas 9 Genera y recibe paquetes de datos y control. 9 El software está diseñado para acceder a la subred real. No hay garantías de que funcione con otras subredes. • SUBCAPA DE MEJORA DE LA SUBRED: 9 Armoniza el funcionamiento en subredes que ofrezcan servicios distintos. Fragmentación 9 Presenta a la subcapa de interred un modelo uniforme de servicios. Software 10/03/2005 10 de 60 Tema 3. Interconexión de Redes OSI e Interconexión de Redes • SUBCAPA INTERRED: 9 Conecta de forma lógica las dos subredes. Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 9 Utiliza N-SAPs de manera uniforme para que los procesos de transporte que usan sus servicios se conecten. Luego se direcciona realmente dichos procesos, y no a máquinas solamente. 9 Su principal función es el encaminamiento extremo-a-extremo. Decide el próximo enlace y cuál de entre las subredes disponibles para cada paquete. 9 El encaminamiento es similar al presentado para una única subred. El encaminamiento jerárquico está muy indicado para grandes redes. 9 No confundir INTERRED (internet) con la red de redes “Internet”. • La capa de INTERRED es la más importante ya que en ella están los N-SAPs que comunican las aplicaciones con la red. 10/03/2005 11 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Relays • Son dispositivos para la conexión de dos o más subredes de comunicación. • Las conversiones de un relay son a veces imposibles de llevar a cabo. Su dificultad depende de la importancia de las diferencias entre las dos subredes. • El sistema relay puede establecerse a cualquier nivel del modelo OSI en teoría, aunque en la práctica, a niveles de transporte y superiores las conversiones de protocolo son muy puntuales. Pasarelas Fragmentación Software • Como ya se ha comentado, existen 4 tipos muy comunes de relays: 9 REPETIDORES 9 PUENTES 9 PASARELAS 9 CONVERSORES DE PROTOCOLO 10/03/2005 12 de 60 Tema 3. Interconexión de Redes Índice Repetidores • Trabajan a nivel físico. LAN 1 REPETIDOR LAN2 Introducción Conmutadores Puentes Pasarelas Fragmentación Software • Con la distancia la información se distorsiona, por lo que la función básica del repetidor es restaurar la señal que le llega y retransmitirla. • Amplifican señales eléctricas cuando se usan cables largos (no solo cables sino también otros medios de transmisión física). Solo copian los bits que reciben por su entrada en su salida. • Por ejemplo, la temporización en 802.3 del protocolo MAC permite cables de hasta 2,5 Km, pero los transceivers sólo dan potencia para 500 m. La solución es usar repetidores para aumentar la distancia. 10/03/2005 13 de 60 Tema 3. Interconexión de Redes Repetidores • Hay dos tipos de repetidores: 9 Eléctrico: transforma de voltaje en voltaje (une dos coaxiales). Índice 9 Optoeléctrico: alguno de sus extremos es de fibra. Introducción Conmutadores Puentes Pasarelas Fragmentación Software • El uso de repetidores a la hora de interconectar redes necesita de varias consideraciones: 9 Saturación: si se unen dos redes muy saturadas mediante un repetidor, la red única que surge está mucho más saturada (problemas de tráfico intenso). 9 Seguridad: acceso potencial de nuevos usuarios. 9 Incompatibilidad: no es posible introducir un repetidor para unir redes que utilizan protocolos diferentes, ya que cada protocolo requiere unos timeouts y unos requisitos físicos de funcionamiento determinados, amén del formato de los paquetes. 10/03/2005 14 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes • También se les llama bridges. • Tienen implementado hasta el nivel de enlace de datos. • Son dispositivos de almacén y envío. Aceptan una trama de una subred, la pasan al nivel de enlace para verificar checksums y la devuelven a la capa física para envío a la otra subred. • Por lo tanto son dispositivos más lentos que los repetidores, pero no se dedican únicamente a retransmitir la información, tienen más software que los hace más versátiles. • En el nivel de enlace pueden hacerse algunos cambios en las cabeceras de las tramas, pero no se conocen ni usan las cabeceras de nivel de red para nada. • Mediante puentes es posible interconectar redes que utilizan protocolos diferentes. 10/03/2005 15 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes • Pero también plantean varios problemas: 9 Puede haber problemas con los timeouts. Los paquetes pueden tardar más tiempo del esperado para llegar a su destino, con lo que puede expirar el timeout de un paquete antes de llegar en la nueva interred y no porque se haya perdido. 9 El principal problema es la conversión de tramas de forma coherente entre protocolos si las redes que se interconectan son distintas. 9 En cuanto a la seguridad no presentan problemas, ya que los puentes tienen capacidad de filtrar información. 9En la práctica los puentes actuales pueden realizar tareas avanzadas como compresión o encriptación, típicas de niveles superiores (p.ej. 6), pero se requieren aplicaciones nuevas y que el hardware sea de la misma empresa. 10/03/2005 16 de 60 Tema 3. Puentes Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 17 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Pasarelas • Trabajan a nivel de red. • Algunos autores llaman gateway a un relay que trabaja a cualquier nivel OSI y router a un gateway a nivel de red. Para nosotros gateway y router es lo mismo. • Las subredes conectadas por un gateway pueden ser mucho más distintas entre sí que usando un puente, ya que a nivel de red es donde se encuentran las mayores diferencias entre redes. Se pueden hacer conversiones sofisticadas, e incluso hay alternativas para conectar redes distintas sin hacer conversiones. • Una decisiva ventaja sobre el puente es que una pasarela puede conectar redes con formatos de direccionamiento distinto, como por ejemplo una LAN 802 con direcciones binarias de 48 bits y una red X.25 con direcciones X.121 decimales de 14 dígitos. • Las pasarelas son en general más lentas que los puentes. 10/03/2005 18 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Conversores de Protocolo • Trabajan a nivel de transporte o superior. • Se suele hablar de conmutación de transporte frente a conmutación de nivel 3, por ejemplo. • Su trabajo es mucho más complejo que el de un gateway: puede convertir entre dos protocolos sin perder mucho significado. • Como ejemplos, la conversión de TP4 (OSI) a TCP (Internet), la conversión MOTIS (OSI) a RFC 822 (Internet), etc... Pasarelas Fragmentación Software • El trabajo de un conversor es en general a nivel de aplicación entre dos estándares distintos, y no se hacen traducciones genéricas entre entidades de protocolos genéricas. 10/03/2005 19 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puntos Conflictivos en el Diseño de Puentes • Cada LAN usa su propio formato de trama (o marco). No existe ninguna razón técnica para la incompatibilidad, sólo que las tres grandes compañías que soportan tres grandes estándares (Xerox, General Motors e IBM) no cambian el suyo ni cooperan. • Esto supone que los puentes consumirán CPU y memoria en los cambios de formatos, checksums, etc., y pueden aparecer errores no detectados debidos a bits erróneos en la memoria del puente. • Un problema más serio es el del ancho de banda diferente de las diferentes redes, por ejemplo: - 802.3 (ethernet) Æ 1, 10, 1000, 1000 Mbps - 802.4 (token bus) Æ 1 a 10 Mbps - 802.5 (token ring) Æ 1, 4, 16 y 100 Mbps • Esto supone que si se conecta una 802.3 o 802.4 a una 802.5 el puente deberá retener los datos en buffers porque no puede entregarlos tan rápido (contención y problemas de memoria). 10/03/2005 20 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Puntos Conflictivos en el Diseño de Puentes • Un problema sutil son los temporizadores. Si una 802.4 envía un mensaje largo a una 802.5 y espera confirmación el retraso en el puente por la menor velocidad de la 802.5 (según el estándar) puede hacer saltar la temporización y retransmitir. Tras múltiples intentos abortará la transmisión e informará a la capa de transporte de destino muerto. Es posible también en los gateways. • Además, los tres principales tipos de la 802 tienen una máxima longitud de trama diferente: - 802.3 Æ 1518 bytes (estándar a 10 Mbps) Pasarelas - 802.4 Æ 8191 bytes Fragmentación - 802.5 Æ 5000 bytes (si MTHT es 10 ms) Software • Si la trama de una red es demasiado larga para el destino hay respuesta en los protocolos 802 sobre si se puede o no, o cómo fragmentar en tramas más pequeñas. En general las tramas son unidades indivisibles y una trama excesivamente larga puede ser un problema sin solución. 10/03/2005 21 de 60 Tema 3. Interconexión de Redes Índice Puntos Conflictivos en el Diseño de Puentes • En aras de la transparencia se debería descartar este tipo de transmisiones interred demasiado largas (aunque el problema sí que tiene solución en la práctica a veces). Esto es así porque todos los protocolos asumen que una trama llega o no llega (no se contempla una llegada parcial). Introducción Conmutadores Puentes • Puentes remotos: variante para conectar LANs dispersas geográficamente. Se usa un protocolo punto a punto como PPP (túnel, ideal si las redes son iguales entre sí) o bien un traductor (que elimine/genere cabeceras/colas). Pasarelas Fragmentación Software 10/03/2005 22 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes IEEE 802.x a 802.y Se podría pensar que diseñar un puente entre una LAN 802 y otra es algo trivial, pero esto no es así. Cada una de las 9 combinaciones de 802.x a 802.y (para x/y=3, 4, 5) tiene su propio grupo de problemas: ¾ 802.3 a 802.3: En 802.3 si una estación quiere transmitir tiene que chequear antes el canal para comprobar que no haya nadie transmitiendo y monopolizar la transmisión para asegurarse de que no haya colisiones. Si el puente no puede transmitir porque la red destino está muy saturada puede agotar su memoria, lo que supone que se descartarán tramas. Siempre puede ocurrir cuando se envía a una 802.3 (no se volverá a mencionar). Con 802.4 y 802.5 las estaciones y el puente tienen asegurada la obtención del token y una retención de este tipo no es un problema. A los puentes que trabajan con Ethernet se les suele poner un suplemento de memoria. 10/03/2005 23 de 60 Tema 3. Interconexión de Redes Puentes IEEE 802.x a 802.y ¾ 802.4 a 802.3: Índice Introducción Las tramas 802.4 contienen bits de prioridad que no existen en las 802.3. Esto supone que si dos 802.4 se comunican a través de una 802.3 estos bits pierden su sentido. Lo que se hace con ellos es ignorarlos pero esto traerá consecuencias en la transmisión: Conmutadores - Cuando la trama pasa de la 802.4 a la 802.3 se pierden los bits de prioridad. Puentes - Entonces, al pasar de la 802.3 a otra 802.4 hay que volver a generarlos, y la solución más usada es poner una prioridad alta. Pasarelas Fragmentación Software El uso de tokens temporales en la 802.4 (trama con bit de token a 1 que viaja al destino para permitirle confirmar) hace que un puente no sepa qué hacer: si le confirma la entrega al origen es mentira porque el destino podría estar muerto, y si no se la confirma probablemente el origen informará a la capa superior de que el destino está muerto. No parece tener solución. 10/03/2005 24 de 60 Tema 3. Interconexión de Redes Puentes IEEE 802.x a 802.y ¾ 802.5 a 802.3: Índice Las tramas 802.5 tienen los bits A y C en el campo de estado del marco (frame status) que el destino debe rellenar para indicar al origen si se direccionó bien la trama y si el destino la copió. Introducción Conmutadores El puente podría confirmar ambos, pero si el destino está realmente muerto habría un gran problema: en todo caso el puente cambia la semántica. Puentes Pasarelas Fragmentación Software ¾ 802.3 a 802.4: El problema es qué valores usar para los bits de prioridad. Una solución, como ya se ha comentado, es que el puente retransmita a la mayor prioridad posible porque las tramas que le llegan ya han sido retrasadas considerablemente. 10/03/2005 25 de 60 Tema 3. Interconexión de Redes Puentes IEEE 802.x a 802.y ¾ 802.4 a 802.4: Índice El problema es el préstamo temporal del token, pero si el puente retransmite a la mayor prioridad posible puede que el destino confirme antes del timeout. Introducción Conmutadores Puentes Pasarelas ¾ 802.5 a 802.4: Los problemas son los bits A y C y además que las definiciones de prioridad son distintas (¡al menos existen bits de prioridad en ambas!). El puente puede copiarlos unos en otros y rezar para que funcione el cambio (!). Fragmentación Software ¾ 802.3 a 802.5: El puente debe “inventarse” los bits de prioridad para la 802.5 10/03/2005 26 de 60 Tema 3. Interconexión de Redes Puentes IEEE 802.x a 802.y ¾ 802.4 a 802.5: Índice Los problemas son potenciales respecto a la transmisión de tramas muy largas. Además está el problema del préstamo temporal del token. Introducción Conmutadores Puentes ¾ 802.5 a 802.5: El problema es el del manejo de los bits A y C. Pasarelas Fragmentación Software 10/03/2005 27 de 60 Tema 3. Puentes IEEE 802.x a 802.y Interconexión de Redes Destino Origen Índice 802.3 y Generar bits de prioridad (alta) y Generar bits de prioridad (alta) y Bits A y C y Préstamo temporal del token y Temporizadores 802.4 y Agotar memoria y Eliminar bits de prioridad y Préstamo temporal del token y Temporizadores y Tramas muy largas y Préstamo temporal del token y Temporizadores y Tramas muy largas y Bits A y C y Bits A y C y Bits de prioridad y Bits A y C 802.5 y Agotar memoria y Eliminar bits de prioridad y Eliminar bits A, C y Tramas muy largas Introducción Conmutadores Pasarelas Fragmentación Software 802.5 y Agotar memoria 802.3 Puentes 802.4 10/03/2005 28 de 60 Tema 3. Interconexión de Redes Índice Introducción Tipos de Puentes • Cuando el comité IEEE 802 se sentó a diseñar un estándar LAN realmente produjo 3 estándares incompatibles. • Al reunirse para diseñar un estándar para puentes mejoró notablemente y produjeron solo 2 estándares incompatibles. Conmutadores Puentes Pasarelas Fragmentación Software • Hasta el momento nadie le ha pedido que diseñe un estándar para conectar con gateways sus dos tipos de puentes incompatibles. • El acercamiento de la IEEE para interconexión de un gran número de redes con múltiples puentes consiste en usar uno de entre dos tipos distintos de puentes: 10/03/2005 29 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Tipos de Puentes ¾ PUENTES TRANSPARENTES: • Apoyados por las compañías del CSMA/CD y de Token Bus. • Su objetivo es la facilidad de instalación y uso. Se conectan dos LANs únicamente introduciendo un puente de este tipo en medio. No se requiere configuración hardware ni software y las estaciones no son conscientes de su presencia. ¾ PUENTES POR ENCAMINAMIENTO FUENTE: Pasarelas Fragmentación • Apoyados por IBM y otras compañías que usan topología en anillo. Software • Su objetivo es hacer un uso óptimo del ancho de banda (lo que no ocurre en los puentes transparentes, por no usar toda la topología de la red). 10/03/2005 30 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes Transparentes • Operan en modo promiscuo: aceptan cualquier trama desde cualquier LAN a la que estén conectados. Para cada paquete debe decidirse si descartarlo o enviarlo, y si hay que enviarlo, por qué LAN hacerlo. • El proceso de enrutamiento de cada trama de entrada depende de la LAN por la que le llega y de la LAN en la que está su destino: 9 Si la LAN destino es la misma que la LAN origen se descarta la trama. 9 Si la LAN destino y la LAN origen son distintas se envía la trama. 9 Si la LAN destino es desconocida se usa el proceso de inundación, reenviando la trama por todas las LANs excepto por la de origen. 10/03/2005 31 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes Transparentes • Disponen de una tabla hash para asociar a cada nodo destino una de sus LANs de salida y utilizan el Algoritmo de Aprendizaje Hacia Atrás (Baran): 9 Cuando a un puente le llega una trama consulta su dirección de origen y anota en su tabla la línea por la que le llegó. Esto lo hace para saber que es por dicha línea por donde se alcanzará al nodo que envió ese paquete y así enviar por ahí todos los paquetes cuyo destino sea dicho nodo. 9 Cuando llega una trama con destino desconocido, es decir, con un destino que no está en su tabla (por ejemplo recién conectado el puente), utiliza inundación para encaminarla. 9 Una vez que el nodo destino recibe la trama envía una confirmación y el puente asocia en su tabla el destino y la línea por la que llegó la confirmación. • Es decir, cualquier nodo que transmita algún mensaje es localizado por el puente, que lo introduce en sus tabla para saber por qué línea tiene que enviar paquetes para dicho nodo. 10/03/2005 32 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Puentes Transparentes • Como la topología de la red puede cambiar a medida que las máquinas y los puentes se encienden, se apagan o se mueven, para manejar topologías dinámicas cada vez que se anota una entrada en la tabla se anota también el tiempo actual. Cada vez que llega una trama cuyo origen ya está en la tabla se actualiza su entrada con el nuevo tiempo. Por tanto el tiempo asociado a cada entrada indica la última vez que se vió una trama de esa máquina. • Periódicamente, el puente elimina las entradas de la tabla que tienen más cierto tiempo. De esta manera se actualizan los caminos ya que si una máquina se desconecta de su LAN el puente lo dará de baja en próximas purgas. Así se adapta el contenido de la tabla a la topología de la red y se reduce el tamaño de su tabla. Software • Sin embargo, esto supone también un inconveniente ya que si una máquina se queda muda (sin enviar ningún mensaje) durante un tiempo, cualquier tráfico enviado a ella tendrá que pasar por el proceso de inundación, hasta que ella misma envía de nuevo. 10/03/2005 33 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes Transparentes • Por seguridad o eficiencia, se pueden usar puentes paralelos, aunque esto provoca problemas de bucles. Para evitarlo, todos los puentes se organizan en árbol abarcando todas las LANs. De esta manera se evitan ciclos al existir un único camino origen-destino. • Para construir el árbol se elige un nodo raíz (por ejemplo el puente cuyo número de serie sea menor) y cada puente difunde su identidad y los puentes que conoce conectados también a sus LANs. El árbol se construye haciendo que los paquetes elijan el camino más corto a la raíz. • No todos los puentes estarán en el árbol necesariamente (uso subóptimo de recursos). El algoritmo se ejecuta con periodicidad para detectar cambios en la topología. • El algoritmo para la construcción del árbol presenta problemas de escala en grandes redes (por ejemplo, telefónicas). Si dos grupos de LANs se comunican por puentes conectados por una WAN el algoritmo necesita que se optimice su ejecución para minimizar los paquetes necesarios a transmitir sobre la WAN. 10/03/2005 34 de 60 Tema 3. Interconexión de Redes Índice Puentes Transparentes Puentes transparentes en paralelo Introducción Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 35 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes por Encaminamiento Fuente • Los puentes por encaminamiento fuente hacen un uso más eficiente de la red, ya que mejoran el uso del ancho de banda frente a los transparentes que usen un árbol. • Se asume que cada emisor sabe si el destino está o no en su LAN. Cuando envía una trama a una LAN distinta activa el bit más significativo de la dirección destino e incluye en la cabecera la ruta exacta que la trama debe seguir. • El camino se construye como una sucesión puente-LAN-puente... donde cada LAN tiene un identificador único de 12 bits y cada puente otro de 4 bits pero único sólo en su LAN (otro puente en otra LAN puede tener el mimo identificador). • Un puente sólo se interesa por las tramas cuyo MSB (bit más significativo) de la dirección destino está a 1. Entonces busca en la ruta de la trama el número de LAN por la que llegó. Si tras éste le sigue su propio número de puente entonces comprueba cuál es la siguiente LAN y la pasa a ésta; si no, la ignora. 10/03/2005 36 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes por Encaminamiento Fuente • Implementaciones posibles: 9 SOFTWARE: Modo promiscuo. Copia todas las tramas a su memoria para comprobar si su MSB está a 1. Si es así sigue inspeccionando la trama. En caso contrario la ignora. 9 HÍBRIDO: La interfaz (hardware) a la red del puente inspecciona el MSB y le entrega la trama sólo si está a 1. Esta interfaz reduce en gran medida el número de inspecciones que tiene que realizar el puente. 9 HARDWARE: La interfaz además de comprobar el MSB también busca en la ruta para ver si su puente asociado está en ella. Sólo le entrega la trama si este puente debe retransmitir. Ahorra mucho tiempo de CPU. • La implementación software requiere poco hardware pero la CPU debe ser rápida, mientras que la implementación hardware funciona con una CPU más lenta pero necesita circuitos adicionales (además podría manejar más LANs). 10/03/2005 37 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Puentes por Encaminamiento Fuente • Para conocer cualquier camino que necesite un nodo debe difundir una trama de descubrimiento que los demás nodos difunden a su vez. Cuando la respuesta desde el destino vuelve cada puente anota su identidad. El origen recibirá muchos caminos distintos y elegirá el mejor de entre ellos según su criterio. • Aunque se asegura encontrar la mejor ruta (¡se exploran todas!) la explosión en el número de tramas difundidas provoca congestión en el sistema. Algo parecido ocurre en los puentes transparentes, pero su explosión es lineal y no exponencial respecto al número de nodos en la red, como ocurre aquí. • Las rutas hacia los distintos destinos se almacenan en cachés en los hosts para limitar esta explosión, pero en todo caso supone consciencia en los hosts de la existencia de los puentes, problemas de administración, y por supuesto esto dista mucho de ser transparente. 10/03/2005 38 de 60 Comparación entre Puentes IEEE 802 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación CONCEPTO Orientación TRANSPARENTE ENCAMINAMIENTO FUENTE Sin conexión Orientado a la conexión Transparencia Totalmente No transparente Configuración Automática Manual Encaminamiento Subóptimo Óptimo Localización Aprendizaje hacia atrás Tramas de descubrimiento Fallos Manejados por el puente Manejados por los hosts En los puentes En los hosts Complejidad Software 10/03/2005 39 de 60 Comparación entre Puentes IEEE 802 Tema 3. Interconexión de Redes TRANSPARENTES Índice ENCAMINAMIENTO FUENTE Invisibles a los hosts y compatibles 802 Ni invisibles ni compatibles Se adaptan a la topología Difíciles de instalar y administrar Usan sólo un árbol entre los puentes Encaminamiento óptimo y distribución de carga Pasarelas Problema: localización inicial del nodo Problema: explosión exponencial de tramas de descubrimiento Fragmentación Manejan fallos sin que los hosts lo sepan Si cae un puente la detección es lenta y cara computacionalmente Introducción Conmutadores Puentes Software 10/03/2005 40 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Comparación entre Puentes IEEE 802 • Los puentes por encaminamiento fuente sin uso de hardware inteligente tienen un alto tiempo de proceso por paquete. Además complican a los hosts en el almacenamiento, descubrimiento y manejo de rutas, consumiendo sus tiempos de CPU. • Ya que típicamente existe un número de hosts varias órdenes de magnitud mayor que el número de puentes parece mejor poner la complejidad y el coste extra en los puentes y no en todos los hosts. • Por esta razón el funcionamiento transparente es muy valorado hoy en día, siempre que la red y las aplicaciones permitan su uso frente a encaminamiento fuente. Software 10/03/2005 41 de 60 Tema 3. Interconexión de Redes Índice Pasarelas (Gateways) • Las pasarelas o gateways operan a nivel de red, mientras que los puentes operan a nivel de enlace. • Son más flexibles que los puentes y pueden realizar conversiones entre formatos de dirección de redes distintas. Introducción Conmutadores Puentes Pasarelas Fragmentación Software • Sin embargo, son más lentos que los puentes debido a que necesitan un mayor volumen de cálculos. • Los puentes se utilizan de forma interna en las organizaciones, mientras que las pasarelas son los puntos de salida al exterior. Se suelen usar en WANs donde nadie espera que manejen 10000 paquetes por segundo ni velocidades similares y el retraso es admisible. • Una WAN es usualmente concebida como una red de pasarelas. 10/03/2005 42 de 60 Tema 3. Interconexión de Redes Pasarelas (Gateways) ¾ Gateways Orientados a la Conexión: Todos los paquetes con un mismo origen y destino pasan por las mismas pasarelas (quizás no por los mismos nodos intermedios). Índice Introducción Conmutadores Puentes Pasarelas Fragmentación ¾ Gateways Sin Conexión: Los paquetes con un mismo origen y destino no tienen por qué pasar por las mismas pasarelas (diferentes rutas, como Internet). Software 10/03/2005 43 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Gateways Orientados a la Conexión • Pensados para el modelo OSI de Internetworking: Concatenación Orientada a la Conexión de redes que usan Circuito Virtual. • Los CVs son a nivel de red (en puentes es a nivel de enlace). Un puente puede manejarse fácilmente por parte del propietario de la LAN, pero un gateway que conecte a dos WANs de distintos países provoca problemas de gestión. La solución es dividirlo en dos medios-gateways separados por un cable. El único conflicto es acordar el protocolo a usar en dicho cable. Cada organización maneja su mitad como más le convenga. Pasarelas Fragmentación Software • Un protocolo típico sobre cable entre medios-gateways es X.75 (CCITT) que es casi idéntico a X.25, basado en la idea de CVs concatenados interredes. Gateway ESPAÑA FRANCIA X.75 Semi-Gateway 10/03/2005 Semi-Gateway 44 de 60 Tema 3. Interconexión de Redes Índice Gateways Orientados a la Conexión • El establecimiento de CVs interred es similar al normal intrarred. Los semi-gateways eligen al próximo semi-gateway al que enviar el paquete de setup del CV, así hasta alcanzar el host remoto. Los gateways al reenviar un paquete cambian apropiadamente el número de CV y realizan los cambios de formato necesarios. Introducción Conmutadores Puentes • Todos los paquetes de datos atravesarán la misma secuencia de gateways a menos que los CVs se implementen internamente usando datagramas. En la práctica las redes que usan CVs entre redes también los usan internamente. Pasarelas Fragmentación Software • El proceso de uso es como el visto para CVs intrarred pero, como ya se ha comentado, sólo es fija la secuencia de gateways y no necesariamente la secuencia de IMPs. • Cuando se conectan dos redes con X.25 el host conecta con la subred en X.25. 10/03/2005 45 de 60 Tema 3. Interconexión de Redes Índice Gateways Orientados a la Conexión • El protocolo interno IMP-IMP no se especifica en CCITT y probablemente sea distinto para cada subred. • La misma libertad tienen los gateways para comunicar con el resto de la subred pero las opciones son claras: Introducción Conmutadores Puentes Pasarelas Fragmentación 9 Usar el mismo protocolo que IMP-IMP (gateway como IMP). 9 Usar X.25 (gateway como host). • Aunque el protocolo X.75 sólo se usa en líneas gateway-gateway dicta la arquitectura de CVs concatenados, al requerir que todos los paquetes de una conexión pasen por el mismo CV entre gateway y gateway. Software 10/03/2005 46 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Gateways Sin Conexión • Usados en el modelo CCITT de redes conectadas por datagramas (servicio sin conexión). • En el viaje de un mensaje al pasar por diferentes pasarelas la capa de transporte podría subdividirlo en datagramas (si es demasiado largo) siendo su homónima en el destino la que los reensambla. Para pasar de una red a otra (de gateway a gateway) cada gateway enmarca la trama con la cabecera (header) y cola (trailer) a nivel de enlace de datos apropiadas para la red en que lo deposita, tras despojarla de los correspondientes a la red de la que la recibe. • Cada red le impone un tamaño máximo a los paquetes. Causas: 9 9 9 9 9 9 Hardware: anchura del slot de transmisión TDM. Sistema Operativo: todos los buffers son de 512 bytes de tamaño. Protocolos: nº de bits dedicados a la longitud del paquete. Cumplir con un estándar: nacional o internacional. Deseo de reducir el error: incluir retransmisiones a algún nivel. Evitar que un paquete ocupe el canal demasiado tiempo. 10/03/2005 47 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Gateways Sin Conexión • Los diseñadores no son libres de elegir su propio tamaño máximo, por ejemplo: 9 HDLC: ∞ 9 ARPA (radio): 2.032 bits 9 802.4: 65.528 bits 9 ARPANET: 1.008 bits 9 X.25: 32.768 bits 9 ETHERNET: 1.500 bytes • Cuando un paquete grande debe viajar por una red cuyo tamaño máximo por unidad de transferencia (MTU) es demasiado pequeño surgen nuevos problemas que se deben solucionar. Soluciones propuestas: 9 Evitar que se presente la situación. La interred podría usar un algoritmo de encaminamiento que permitiese evitar pasar paquetes grandes por redes que no puedan manejarlos. Pero si la red destino es de este tipo es imposible enviar en paquete. Se puede minimizar el problema pero no evitarlo totalmente. 9 La solución real práctica casi única es que los gateways puedan partir los paquetes en fragmentos y enviarlos como paquetes separados. Sin embargo fragmentar es considerablemente más simple que desfragmentar. 10/03/2005 48 de 60 Tema 3. Interconexión de Redes Comparación entre Gateways OC y SC • VENTAJAS : Índice Introducción Conmutadores Circuitos Virtuales Concatenados Datagramas Se puede prevenir la congestión por preasignación de buffers en los gateways Adaptación fácil ante problemas por congestión Se garantiza secuenciamiento Puede usarse en redes que no tienen CVs Se pueden usar cabeceras cortas Robustos frente a fallos en los gateways Se pueden evitar problemas causados por paquetes duplicados retrasados Es posible usar una gran variedad de algoritmos de encaminamiento adaptativo Puentes Pasarelas Fragmentación Software 10/03/2005 49 de 60 Tema 3. Interconexión de Redes Comparación entre Gateways OC y SC • INCONVENIENTES : Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Circuitos Virtuales Concatenados Datagramas Espacio reservado en tablas de encaminamiento para cada conexión abierta aunque no se usen Mayores encabezamientos No hay rutas alternativas para hacer CdC Mayor probabilidad de congestión Vulnerabilidad ante fallos en los gateways Difícil de implementar si hay una red datagrama Software 10/03/2005 50 de 60 Tema 3. Interconexión de Redes Tunneling, una solución muy usada Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 51 de 60 Tema 3. Interconexión de Redes Índice Introducción Tipos de Fragmentación • Existen dos tipos de fragmentación: (a) Fragmentación TRANSPARENTE No visible para el host destino (b) Fragmentación NO TRANSPARENTE Visible para el host destino Conmutadores Puentes Pasarelas Fragmentación Software 10/03/2005 52 de 60 Tema 3. Interconexión de Redes Tipos de Fragmentación • Fragmentación TRANSPARENTE: Introducción 9 La fragmentación en una red es transparente a las demás redes que deba atravesar. El gateway que fragmenta envía todos los fragmentos a un mismo gateway destino y éste se encarga de recomponerlos. Las demás redes no perciben la fragmentación realizada. Conmutadores 9 Es simple, aunque problemática: Índice Puentes Pasarelas Fragmentación Software - El gateway destino debe saber cuándo tiene todos los fragmentos (esto supone usar un contador o bit de fragmento final). - Todos siguen la misma ruta hacia el gateway destino y eso puede ser ineficiente. Es posible que el gateway destino presente bloqueo por reensamblado. - Sobrecarga por las sucesivas fragmentaciones y composiciones al pasar por varias redes de pequeña MTU. 10/03/2005 53 de 60 Tema 3. Interconexión de Redes Tipos de Fragmentación • Fragmentación NO TRANSPARENTE: Introducción 9 Solo reensambla el host destino. Los fragmentos se manejan como si fuesen paquetes originales. Una ventaja es que podrían utilizarse rutas a diferentes gateways de salida de la subred, aunque si el modelo usado es el de CVs concatenados esta mejora no puede utilizarse. Conmutadores 9 Los problemas asociados son: Índice Puentes - Se exige que cualquier host pueda reensamblar. Pasarelas - Cada fragmento aumenta la sobrecarga por aparición de nuevas cabeceras que permanecen todo el viaje del paquete. Fragmentación Software 10/03/2005 54 de 60 Tema 3. Interconexión de Redes Algoritmos de Fragmentación • Shoch (1979): Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software - Cada paquete lleva un bit indicando si el destino es capaz o no de reensamblado. Si es así cada gateway puede elegir si usar fragmentación transparente o no. Si el destino no puede reensamblar, cada gateway debe hacer que el siguiente gateway reensamble los fragmentos. - Un bit similar debe usarse en la práctica para definir al menos el último fragmento. y La numeración de los segmentos debe permitir su reensamblado. Hay dos grandes soluciones distintas: - Numeración en árbol - MTU elemental 10/03/2005 55 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Algoritmos de Fragmentación • Numeración en árbol: 9 El paquete X se fragmenta en trozos numerados X.0, X.1, etc... Si el fragmento X.0 se vuelve a fragmentar se le numera X.0.0, X.0.1, etc... 9 Si hay espacio en la cabecera para el peor caso y no se generan duplicados esta solución asegura el reensamblado correcto (no importa el orden de llegada). 9 Una pequeña desventaja es que el tamaño de la numeración es variable según el camino que siga el paquete, y por lo tanto hay que dejar espacio suficiente en la cabecera. 9 Además, si alguno de las fragmentos llega mal al destino habría que retransmitir el paquete completo, y como no todos los paquetes van por el mismo camino dentro de la red, puede que lleguen los paquetes duplicados o incluso paquetes con la misma numeración y distinto contenido. 10/03/2005 56 de 60 Tema 3. Interconexión de Redes Algoritmos de Fragmentación • MTU elemental: 9 Se elige un tamaño básico de MTU que pase por cualquiera de las interredes. Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software 9 Al fragmentar, todos los paquetes son de dicho tamaño menos el último que puede ser menor. Un paquete podría contener varios de estos fragmentos por eficiencia de envío. 9 La cabecera debería contener el número del paquete original, así como el número del primer fragmento contenido en el paquete. Debe existir un bit en el paquete indicando que el último fragmento elemental contenido en la trama es (o no) el último de los fragmentos originales. 9 Por ejemplo, tenemos el siguiente paquete de 10 bytes para MTU=8 (sólo payload en este ejemplo, es decir, carga útil), por lo que habría que fragmentarlo: Datos (10 bytes) Cabecera 27 Nº del paquete 0 1 A B C D E F G H I J Bit de fin de paquete Nº del primer byte de datos 27 0 0 A B 27 8 1 I J Fragmentos: 10/03/2005 C D E F G H 57 de 60 Tema 3. Interconexión de Redes Índice Algoritmos de Fragmentación • MTU elemental: 9 Se requieren dos números de secuencia en la cabecera de los paquetes interred. El primer campo indica el número de datagrama original y el segundo el offset dentro de él. Introducción Conmutadores Puentes Pasarelas Fragmentación 9 En el límite, un fragmento elemental es un bit o byte. 9Algunos protocolos interred llevan este método más lejos y consideran toda la transmisión por un CV como un paquete gigante y cada fragmento recibe el número absoluto de byte del primer byte en el fragmento. Software 10/03/2005 58 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software Software para Puentes y Pasarelas • El software es muy distinto del usado en los hosts. La eficiencia es imprescindible. Los puentes y pasarelas están limitados por CPU. Las interrupciones son rápidas, pero dan lugar a software mal estructurado, por lo que sólo se usaron al principio de las comunicaciones. • Lo ideal es planificar procesos que estarán dormidos esperando sobre colas de trabajos a realizar, y cuyos resultados encolan en sus salidas, que serán a su vez la entrada de otros procesos. Cada proceso tiene su propio espacio de direcciones. • Los procesos que atienden a las entradas deben tener la mayor prioridad posible para evitar perder paquetes de entrada cuando estos lleguen. • Los procesos de salida tienen prioridad intermedia y los de encaminamiento la menor prioridad. Estos últimos cogen paquetes y determinan su ruta poniéndolos en la cola de algún proceso de entre los de salida. También filtra: si el paquete es de control o bien su destino es la misma red que su origen no lo encola: lo ignora. • Si hay procesos de estadísticas suelen recibir la menor de todas las prioridades. Si hay procesos de gestión, normalmente se les asignan la mayor prioridad posible para una gestión eficiente e inmediata. 10/03/2005 59 de 60 Tema 3. Interconexión de Redes Software para Puentes y Pasarelas Índice • Una solución de compromiso es que los procesos compartan el mismo espacio de direccionamiento al correr todos en modo kernel (núcleo). Para un SO de propósito general esto es imposible, pero en un gateway se supone que los procesos están bien definidos y vale la pena perder seguridad frente a las ganancias en velocidad y eficiencia. Introducción Conmutadores Puentes Pasarelas Fragmentación Software • La orientación a procesos está bien estructurada pero es lenta por los cambios de contexto entre diferentes procesos. • El algoritmo de planificación en un gateway es crítico. Mejor que round-robin es dejar que los procesos terminen para evitar tener que guardar el contexto (costoso). El sistema sólo necesitaría una pila global (no una por proceso). • La ejecución de procesos por prioridad también puede ser cara y podría considerarse que al terminar cada proceso hiciese un polling de las interfaces de red y marcase los procesos que podrían ejecutarse a partir de ese momento. El planificador elegiría el de mayor prioridad para ejecutar en cada momento. 10/03/2005 60 de 60 Tema 3. Interconexión de Redes Índice Introducción Conmutadores Puentes Pasarelas Fragmentación Software para Puentes y Pasarelas • La comunicación entre procesos también es crítica. Copiar mensajes de una cola a otra es inaceptable: deben pasarse punteros. • El problema es que el proceso que los pasa no sabe cuándo liberar el buffer y es el receptor del mensaje el que debe liberarlos o reutilizarlos. • Este problema se agrava por el hecho de que los paquetes pueden cambiar de tamaño y además deben pasar por varias capas software. • Una solución es leer el paquete no desde el principio del buffer, sino a una distancia igual a la cabecera más larga posible. En todo caso se utilizan siempre buffers de tamaño constante. • Problemas adicionales: temporizadores y cambios de orden en los bytes. Software 10/03/2005