LAN

Page 1

1. PUENTES TRANSPARENTES Y CONMUTADORES Las redes de área local (LAN – Local Area Network - ) pueden interconectarse utilizando los puentes, que al operar en la capa 802.2 LLC, permiten utilizar diferentes tecnologías de red:

Los puentes, ofrecen ciertas ventajas, como • Permiten interconectar diversas tecnologías (802.11, 802.3, 802.15.4, …) • Interconectan LAN dispersas geográficamente utilizando distintos medios en los segmentos de backbone (fibra) y de acceso (UTP). • Dividen segmentos LAN con mucha carga en segmentos LAN con menor carga, lo que incrementa su rendimiento. • Mejoran la robustez de la red, pues facilitan la localización de errores y posibilitan caminos alternativos. • También mejorar la seguridad en la red, pues confinan el tráfico a segmentos LAN de menor tamaño (especialmente útil en las tramas de difusión). Aunque los puentes son conceptualmente simples, cuando unimos segmentos con diferente tecnología LAN se debe tener en cuenta ciertas restricciones: • Distintas LAN pueden tener diferentes tamaños máximos de trama, lo que puede provocar su descarte en el puente (no se dividen las tramas). • Distintas LAN operan a diferentes velocidades, lo que puede afectar a temporizadores de protocolos de nivel superior. • Algunas tecnologías LAN permiten priorización de tráfico, capacidades de tiempo real, … mientras otras no. Existen dos tipos básicos de puente: encaminado en el origen y transparente. Los primeros asumen que la estación que envía una trama puede distinguir entre las estaciones unidas a su segmento y las que no lo están, en cuyo caso debería codificar la ruta que permite llegar hasta ella atravesando los distintos puentes. Aunque aprovechan mejor el ancho de banda, este tipo de puentes exigen de una mayor complejidad en los sistemas finales (protocolos para determinar rutas a los posibles destinos) por lo que están en desuso. Los puentes transparentes, definidos en la IEEE 802.1D no precisan de un software especial en las estaciones de usuario, ni de configuración manual, adaptándose de forma automática y de forma transparente al usuario para localizar el destino. El precio que R. Estepa

Redes de Ordenadores: LAN

1


debemos pagar por ello es un rendimiento más pobre en la utilización del ancho de banda. Los segmentos LAN interconectados por el puente transparente se denominan puertos. Los switches o conmutadores son puentes transparentes con cientos de puertos interconectados mediante un backplane de alta velocidad. La estructura interna de un puente transparente se refleja en la siguiente figura:

Los puentes pueden recibir tramas simultáneamente por diversos puertos, por lo que es preciso tener un buffer para almacenar las tramas entrantes. Los puertos trabajan en modo promiscuo, recibiendo las tramas de todos los puertos y reenviándolas tan sólo por el/los puertos necesarios para que lleguen a su destino. Para ello, los puentes transparentes mantienen una tabla de reenvío (forwarding) que mapea direcciones MAC a un puerto determinado. Cuando se recibe una trama, el puente busca en su tabla el puerto al que se encuentra asociado la dirección MAC destino de la trama. Si lo encuentra, enviará la trama tan sólo por dicho puerto, y si no, se enviará a todos los puertos. Las tramas dirigidas a dirección de grupo (difusión), también se reenviarán por todos los puertos. En cualquiera de los tres casos, la trama nunca se reenviará por el puerto donde llegó. La tabla de reenvío puede ser configurada manualmente, pero para evitar esta tediosa tarea (un puerto puede tener varios miles de entradas, que además varían cuando la topología cambia de forma dinámica), todos los puentes transparentes ejecutan la función de aprendizaje autónomo (backward learning), que consiste en lo siguiente: 1. El puente escucha en modo promiscuo por todos sus interfaces 2. Para cada paquete recibido, guarda la dirección MAC origen del paquete en una memoria caché (denominada tabla de reenvío), junto con el puerto dónde ha sido recibido 3. Para cada paquete recibido, busca en su tabla de reenvío la dirección MAC destino del paquete: a. Si no la encuentra, reenvía el paquete por todos los puertos excepto por el que fue recibido

R. Estepa

Redes de Ordenadores: LAN

2


b. Si la encuentra, reenvía el paquete sólo por el interfaz especificado en la tabla. Si dicho interfaz fuera el mismo por dónde se recibió el paquete, se descartará (filtrado). 4. Todas las entradas en la tabla de reenvío tienen un temporizador asociado, que la descarta cuando expira. Cada vez que se recibe una trama por un puerto, se renueva dicha entrada. Esto permite la adaptación a cambios de topología, a la vez que reduce el tamaño de las tablas de reenvío. Debido a que una estación podría moverse de ubicación, es preciso que los puentes refresquen periódicamente la información de su tabla de reenvío. La elección del tiempo máximo sin refresco permitido (a partir del cual la entrada en la tabla se elimina) no es tarea sencilla, pues valores altos perjudican la movilidad y los bajos implican el reenvío innecesario de muchas tramas. Por esto, un valor razonable podría situarse en el entorno de 15 minutos (tiempo necesario para que un usuario se cambie de sitio), aunque si la estación quisiera comenzar a trabajar antes en su nueva ubicación siempre puede enviar un paquete a difusión (por ejemplo un ARP), que alcanzaría a toda la red provocando la actualización de las tablas de reenvío.

[EJERCICIO] Suponga un puente con dos puertos. En el puerto 1 se encuentra un segmento 802.3 con los equipos de direcciones MAC A y Q, mientras que el puerto 2 tiene otra LAN 802.3 con los equipos de direcciones MAC D y M. Analice las tablas de reenvío para las comunicaciones: a) A->D, D->A b) A->Q [EJERCICIO] Añada al caso anterior un tercer segmento con equipos Z y C. analice la tabla de reenvío para las comunicaciones A->Z, Z->A [EJERCICIO] Suponga ahora tres segmentos, el primero con los equipos A, Q y el puerto 1 de puente X, el segundo con los equipos D, M, el puerto 2 del puente X y el puerto 1 del puente Y, y el tercero con los equipo K, T y el puerto 2 del puente Y. Analice las tramas enviadas y las tablas de reenvío en ambos puentes para las comunicaciones: A->T, T->A, D->A. [EJERCICIO PROPUESTO] Realice en packet tracer los ejemplos anteriores. Anote las tramas enviadas en el caso de repetirse dos veces las comunicaciones anteriores. Suponga dos casos: entradas que expirar y entradas que se conservan. [EJERCICIO PROPUESTO] Con packet tracer, realice un escenario en árbol con 1 puente interconectando a otros dos puentes. Coloque dos PC en cada uno de los dos puentes finales y programe el envío de PDUs entre ambos PC. ¿Cómo afectan las comunicaciones al resto de la red?. Repita el mismo escenario pero los clientes conectados directamente a los conmutadores. Analice el efecto de esta modificación en el tráfico generado. Suponga el siguiente escenario:

R. Estepa

Redes de Ordenadores: LAN

3


A

P1

P2

P3

Cuando la estación A envía un paquete (no importa el destino) los tres puentes lo reciben, anotando en su tabla de reenvío que la estación A se ubica en el puerto 1, y enviándolo por el puerto 2. Supongamos que el primer puente que lo recibe por el segundo puerto es el puente 1. En este caso, cambiará la tabla de reenvío anotando que la estación A se ubica en el puerto 2. Si los tres puentes hacen lo mismo, la estación A quedará inalcanzable. Otro efecto que tiene lugar es que los paquetes que llegan por el puerto 2 con destino desconocido, se reenviarán nuevamente por el puerto 1, cambiando además de nuevo la ubicación de la estación A. La red continuará reenviando tramas indefinidamente hasta congestionar los equipos de conmutación. La conclusión es que los puentes transparentes no funcionan en topologías donde existen bucles y por ello implementan un protocolo denominado ‘arbol de expansión’ o spanning tree que los detecta y anula. Su funcionamiento se explica a continuación:

1.1. Algoritmo: Spanning Tree Su objetivo es que los puentes descubran dinámicamente topologías sin bucles que aseguren la conectividad, esto es, que siempre exista un camino entre cualquier pareja de puentes. Su funcionamiento se basa en el envío de unas tramas denominadas: Configuration Bridge Protocol Data Unit (CBPDU o simplemente BPDU) que permiten la elección de un puente raíz y la activación de los puertos que permiten llegar al nodo raíz sin bucles con el menor coste. Las CBPDU son mensajes encapsulados en tramas LLC, y enviados a un DSAP (01000010) que es interpretados por todos los puentes. A cada puente en la red se le asigna un identificador (ID) con independencia de las direcciones MAC de sus puertos. El campo de datos de la CBPDU contendrá, entre otros, los siguientes elementos: - Root ID: ID del puente raíz - Transmitting bridge ID: ID del puente que envía la CBPDU - Cost: Coste del camino de menor coste para llegar hasta el puente raíz. Inicialmente, todos los puentes asumen que son el raíz, enviando sus CBPDUs por todos los puertos con su ID como RootID, y coste 0. Los puentes almacenan la mejor CBPDU recibida en cada uno de sus puertos. Para determinar cuál es la mejor, comparan cada CBPDU con otras recibidas por el mismo puerto y con la suya propia siguiendo el siguiente criterio: (dadas 2 CBPDUs, A y B) - A es mejor que B si el root ID de A es numéricamente inferior al de B - Si ambos son iguales, A es mejor que B si el coste de A es menor que el coste de B - Si coste y rootID son iguales A es mejor que B si Transmitting bridge ID de A es menor que el de B

R. Estepa

Redes de Ordenadores: LAN

4


-

Si todo lo anterior coincide (por ejemplo 2 puertos del mismo puente), se elige como criterio el menor número de puerto (que también viaja en la CBPDU), siguiente la numeración interna del puente.

Cuando un puente recibe por un puerto una CBPDU que mejora la que él mismo puede enviar, deja de transmitir su CBPDU por dicho puerto. Por tanto, cuando el algoritmo se estabiliza tan sólo un puente en cada LAN (denominado puente designado) enviará CBPDUs en dicha LAN. Para calcular la CBPDU que envía un puente, debe calcular el RootID y coste hacia el nodo raíz, lo que hace en función de las CBPDUs recibidas por los puertos y de la suya propia. El RootID será el menor RootID de todas las CBPDUs recibidas por el puente (incluyendo la propia). El coste para el puente raíz será 0. En otro caso el coste será la suma de el coste de la mejor CBPDU y el coste de llegar hasta el puente por el que se recibió dicha CBPDU (si asumimos coste 1 para cada enlace, el coste será el de la mejor CBPDU más uno). El puerto por el que recibió dicha CBPDU será seleccionado como puerto raíz o ‘in-link port’. Una vez que un puente conoce su propio coste y RootID, compara su propia CBPDU con la mejor recibida en cada uno de los puertos, considerándose puente designado para aquellos puertos que ofrezcan una peor CBPDU, y transmitiendo en consecuencia su propia CBPDU por dichos puertos (se envían iniciados por el puente raíz cada ‘hello time’. El resto de los puentes cuando la reciben, reenvían su propia CBPDU por los puertos designados). Finalmente, un puente considerará como puertos activos su puerto raíz y los puertos para los cuales se considera puente designado. Dichos puertos se configuran en modo ‘fordwarding’ o reenvío y serán utilizados para enviar y recibir tramas de usuario. El resto de los puertos se establecen en modo ‘blocking’, y descartarán los paquetes recibidos evitando a su vez la transmisión por dichos puertos. [Ejercicio: aplique el algoritmo del árbol de expansión a la siguiente topología. Indique las CBPDU intercambiadas y el coste, RootID y estado de los puertos en los diferentes puentes] ID=1

ID=2

ID=3

Con el algoritmo expuesto anteriormente, la red encontraría una topología libre de bucles y podría comenzar su normal operación. No obstante, es necesaria la existencia de algún mecanismo que permita a adaptación a situaciones excepcionales como la caída de nodos o la rotura de enlaces. Para ello, las CBPDU almacenadas tienen asociadas un campo edad

R. Estepa

Redes de Ordenadores: LAN

5


(message age) que se incrementa con cada unidad de tiempo. Cuando dicho campo alcanza un valor máximo (max age), la CBPDU se descarta y el puente recalcula suponiendo que dicha CBPDU nunca se recibió. En el funcionamiento normal, el puente raíz transmite periódicamente CBPDU cada hello time, generados con edad 0. De forma similar, cuando un puente recibe la CBPDU del raíz, envía su propia CBPDU por aquellos puertos dónde es el puente designado con edad 0. Cuando el puente raíz falle, el puente dejará de recibir refrescos de la CBPDU del raíz, que comenzará a envejecer hasta llegar a la edad máxima, lo que provocará su descarte y recalcular el árbol de expansión. Los eventos que provocan que un puente recalcule los parámetros: rootID, cost y root port son: - Recepción de una CBPDU en un puerto: en este caso el puente la compara con la CBPDU recibida anteriormente por dicho puerto. Si la nueva fuese mejor (o igual pero con menor edad) se almacena sustituyendo a la anterior y se recalculan los parámetros. - La expiración de la edad de una CBPDU. Tras un cambio de topología (caída de un nodo o un enlace), transcurre algún tiempo hasta que dicha situación se traslada a todos los puentes, por lo que en dicho tiempo se opera de forma inconsistente pudiéndose formar bucles temporalmente. Para evitar esta situación, los puentes deberán esperar una cantidad de tiempo para que un puerto en estado bloqueado pase al estado de reenvío. Este tiempo debe ser, al menos, el doble del tiempo máximo de tránsito en la red. El estándar 802.1 establece dos estados intermedios entre blocking y forwarding. En el primer estado (listening) el puerto se comporta como puerto designado, y enviará las CBPDU. Sin embargo, todavía no almacenará las direcciones MAC en la tabla de reenvío. En el segundo estado (learning), rellenará la tabla de reenvío pero todavía no enviará tramas por dicho puerto, lo que minimiza el envío innecesario de tramas por no haber localizado al destino. Tras estos dos estados intermedios, el puerto se pone en estado forwarding y envía ya el tráfico de usuario, lo que permite minimizar el aprendizaje incorrecto de estaciones hasta que la topología no se haya estabilizado La elección del tiempo de time out para la tabla de reenvío de los puentes también tiene implicaciones en el spanning tree, ya que los cambios de topología provocan también cambios en las tablas de reenvío. El valor ideal dependerá de la topología de la red y del tipo de aplicaciones que se utilizan, por lo que es un parámetro configurable por el usuario. Para permitir que los cambios de topología de spanning tree se vean reflejados en cambios rápidos de las tablas de reenvío, se establecen dos valores diferentes: un valor elevado (para uso normal) y un valor bajo cuando exista una reconfiguración del spanning tree y que es igual al parámetro forward delay. Es preciso pues que los puentes detecten cuándo se reconfigura el árbol de expansión, para lo que se habilita el siguiente mecanismo: 1. Cuando un puente detecta que el algoritmo spanning tree ha provocado la entrada o salida del estado blocking en alguno de sus puertos transmite por su puerto raíz CBPDUs de cambio de topología cada ‘hello time’. Continuará haciéndolo hasta que reciba por su puerto raíz un asentimiento en la CBPDUs. 2. cuando un puente recibe una CBPDU que de cambio de topología realiza lo mismo que en el caso anterior (envía cada hello time una CBPDU por su puerto raíz notificando el cambio de topología hasta recibir un asentimiento), enviando a

R. Estepa

Redes de Ordenadores: LAN

6


continuación una CBPDU que asiente el cambio de topología por el puerto dónde le llegó la notificación. 3. El puente raíz indica en sus CBPDUs que existe un cambio de topología durante un periodo de tiempo igual a la suma de los parámetros forward delay y max age cuando: a. Alguno de sus puertos cambia de estado o b. Recibe una CBPDU que notifica un cambio de topología. 4. Un puente que recibe una CBPDU de cambio de topología utiliza la caché de corta duración para la tabla de reenvío hasta que deje de recibir las CBPDU con la indicación de cambio de topología.

1.2. Parámetros configurables y estructura de las CBPDU Los parámetros directamente dictados por el puente raíz, y enviados en las CBPDU para que todos los puentes los utilicen son: • Max age: tiempo hasta descartar una CBPDU • Hello time: Intervalo entre envíos de CBPDUs • Forward delay: tiempo que debe transcurrir en el estado de listening y learning (por tanto para pasar de blocking a forwarding se necesitará dos veces el forward delay) Los parámetros que es posible configurar en cada uno de los puentes son: • Bridge priority: 2 bytes que indican la prioridad de un puente para ser raíz o puente designado. Se añaden en la parte más significativa del ID. Mientras menor sea el valor mayor será la probabilidad de que se erija en raíz. • Port priority: 1 byte que permite influir en la elección de un puerto como designado cuando el puente dispone de varios conectados a la misma LAN. • Hello time: Intervalo entre envíos de CBPDU para el nodo raíz. El valor por defecto es de 2 segundos. Valores elevados descargan la sobrecarga de tráfico del algoritmo, mientras que valores menores facilitan la reconfiguración rápida en caso de fallo. • Max age: tiempo máximo que puede pasar una CBPDU sin ser refrescada. Valores pequeños provocarán reconfiguraciones innecesarias del árbol de expansión debido a pérdidas de conectividad temporales. Valores muy grandes provocarán un incremento en el tiempo necesario entre un cambio topológico y la reconfiguración. Un valor conservativo es 2 segundos por salto. En la norma se recomienda el valor de 20 segundos. • Forward delay: tiempo en cada uno de los estados intermedios. Por defecto en la norma se recomienda 15 segundos. Nótese que también se utiliza como caché corta para la tabla de reenvío. • Long cache timer: tiempo hasta eliminar una entrada en la tabla de reenvío si no ha sufrido refresco. Por defecto la norma recomienda 5 minutos. • Path cost: coste para añadir al recibido para llegar hasta el puente raíz. Este valor se configura de forma individual en cada puerto para facilitar la elección de los diversos caminos. La estructura de las CBPDU es:

R. Estepa

Redes de Ordenadores: LAN

7


Bytes Campo 2 Protocol identifier (= 0) 1 Versión (= 0) 1 Message type (= 0) 1 TCA ---------------------------TC 8 Root ID 4 Cost of path to root 8 Bridge ID 2 Port ID 2 Message age (in 1/256ths of sec) 2 Max age (in 1/256ths of sec) 2 Hello time (in 1/256ths of sec) 2 Forward delay (in 1/256ths of sec) , donde TC es un bit que indica cambio de topología, mientras que TCA es un bit que asiente el cambio de topología. Las CBPDU de notificación de cambio de topología sólo tienen los tres primeros campos, donde el tipo de mensaje es 128.

1.3. Valoración de los puentes transparentes Los puentes alteran el entorno de una LAN en mayor medida que los hubs, afectando a su rendimiento de diferentes formas: 1.- Se incrementan las pérdidas de paquetes: con hubs sólo ocurren cuando existe una trama colisiona 16 veces seguidas (provoca un efecto de conformado –suavizado- de tráfico que evita pérdidas de paquetes). Cuando utilizamos puentes cada puerto representa un dominio de colisión diferente, luego no existe el motivo anterior para que se pierdan los paquetes. Sin embargo aparecen nuevas fuentes de pérdidas de paquetes, como son la falta de CPU para el procesamiento de paquetes (conmutadores no bloqueantes) o la saturación en las colas de salida de los puertos (no pueden ser muy grandes pues aumentan el retardo). Existen situaciones dónde resulta fácil que se produzca el desbordamiento anterior: cuando un puerto de salida tiene menor velocidad que los puertos de entrada o cuando dos o más fuentes transmiten a la velocidad máxima sobre un puerto de salida de la misma capacidad (servidores). Posibles soluciones a estos conflictos son: para puertos half duplex el envío de una señal de colisión (back pressure), en el caso de puertos full duplex se puede aplicar el estándar 802.3x que estandariza un control de flujo mediante tramas de PAUSA y REANUDACIÓN. 2.- Se incrementa el retardo: ya que cada paquete debe ser recibido completamente (para chequear su CRC), o, al menos, hasta la dirección MAC destino. A este tiempo debemos añadir el de espera en cola para el puerto de salida (el tiempo de procesamiento es mínimo)

R. Estepa

Redes de Ordenadores: LAN

8


3.- Se incrementan la posibilidad de llegadas fuera de orden, duplicación de paquetes, y aislamiento temporal de estaciones (tablas MAC incorrectas) 4.- Los puentes son eficientes cuando sus tablas MAC contienen información correcta. En caso contrario difunden por todos sus puertos, compartiendo el ancho de banda entre todas las LAN interconectadas. Los conmutadores son puentes donde existen multitud (24-48-92-…) de puertos con la misma tecnología y que utilizan un backplane de alta velocidad junto con el procesamiento hardware de las tramas. Al igual que un hub representa un dominio de colisión, un conmutador es un dominio de difusión. Su gran ventaja es que el ancho de banda agregado (el máximo que pueden utilizar las comunicaciones de estaciones finales) resulta claramente superior al de un hub, hecho que junto con la facilidad para la extensión geográfica, ha influido definitivamente en su éxito. [EJERCICIO]: Suponga un conmutador de 4 puertos a 100 Mb/s full duplex. Calcule su ancho de banda agregado. Sol: 400 Mb/s)

2. Virtual LAN (VLAN) Se definen en la 802.1Q y emulan una LAN virtual en la capa alta LLC. Al igual que una LAN, la VLAN representa un dominio de difusión de los paquetes. La única diferencia se sitúa, a veces, en el empaquetado. El uso de VLAN aporta flexibilidad a la red, permitiendo separar los puertos de un conmutador en diferentes LAN virtuales, separándola en varios dominios de difusión. R

Para que un paquete de la VLAN 1 llegue a la VLAN2 necesitará atravesar un router, puesto que son dos redes diferentes. Esto implica que cada una de las VLAN debe tener una asignación de direcciones IP que permita distinguir las redes. Las VLAN proporcionan algunas ventajas, como son: - Reducen la carga de tráfico: pues las tramas destinadas a difusión o las direcciones desconocidas tan sólo se reenvían por su VLAN correspondiente. - Mejoran la seguridad, pues las estaciones conectadas a una VLAN tan sólo ven las tramas de su VLAN. No obstante es posible hacer a una estación miembro de varias VLAN, lo que es útil para servidores. Además el uso de listas de control de acceso ACL en los routers también incrementa el nivel de seguridad.

R. Estepa

Redes de Ordenadores: LAN

9


- Permite crear topologías lógicas con independencia de la topología física, lo que facilita, por ejemplo, que una estación cambie de sitio y continúe perteneciendo a la misma VLAN sin necesidad de reconfigurar su dirección IP. Esto mejora notablemente la movilidad. •

Para el funcionamiento de las VLAN, es preciso que el conmutador realice un mapeo entre la VLANs y los puertos correspondientes del conmutador (tabla VLAN-port que puede introducirse de forma administrativa). Un puerto se puede declarar como perteneciente a varias VLANs.

[EJEMPLO: En el siguiente esquema, asigne direcciones IP y analice el tráfico generado en un Ping entre el equipo A y B y el generado en un ping entre A y C. Realice el mismo ejercicio utilizando packet tracer.] R

2.1. Unión dinámica de puertos a VLAN No se encuentra estandarizado ningún método, por lo que cada fabricante propone su solución. Para ello, existen diversas estrategias: •

• • •

Port based VLAN: los puertos se asignan a las VLAN de forma administrativa (configuración manual). Un puerto podría pertenecer a varias VLAN siempre que seamos capaces de distinguir a cual de ellas pertenece la trama que se recibe. MAC based VLAN: las MAC de las estaciones se asignan de forma administrativa a las VLAN. Se crea una tabla VLAN/MAC y gracias al autoaprendizaje se va generando la tabla VLAN/port definitiva. IP based VLAN: En conmutador se configura con una tabla VLAN/IP(prefijos) y se genera la tabla VLAN/port mediante la inspección de direcciones IP (al igual que la función de autoaprendizaje para las MAC). Protocol based VLAN: los puertos se asignan a una VLAN inspeccionando el tipo de protocolo o SAP en el nivel de enlace (IP, IPX, Appletalk, …) Multicast group VLAN: Las VLAN abarcan los miembros de un grupo multicast. …

El problema de las uniones dinámicas entre puerto y VLAN (las basadas en MAC, IP, …) es que se basan en el aprendizaje que realiza el switch, por lo que no se puede determinar la VLAN a la que pertenece una estación hasta que ésta no transmite. La principal alternativa para resolver este problema es la difusión a todas las VLAN (haciendo normalmente a todos los puertos miembros de una VLAN por defecto) en cuyo caso se elimina la ventaja de la VLAN, pues la difusión es excesiva y le seguridad se reduce. En

R. Estepa

Redes de Ordenadores: LAN

10


general, las soluciones actuales no funcionan bien hasta que la estación destino no transmite. El mismo problema ocurre si disponemos de 2 estaciones conectadas a un puerto (mediante un hub). Supóngase que utilizamos VLAN por IP. Si muevo una estación de un hub a otro perteneciente a otra VLAN, hasta que la estación no transmite el conmutador no sabe que el puerto donde está conectado dicho hub pertenecerá ahora a ambas VLAN. X.? = VLAN 1 Q.? = VLAN 2 X.A

X.B

VLAN 1

Q.A

Q.B

X.A

VLAN 2

VLAN 1

X.B

Q.A Q.B

VLAN 1,2

Cuando un equipo ubicado en un puerto que pertenece a varias VLAN envía un mensaje de difusión, se debe reenviar por todos los puertos de todas las VLAN a las que pertenece el puerto. Si muchas estaciones realizan esto mismo al final el comportamiento es como tener una sola VLAN, por lo que no es recomendable configurar puertos con equipos de usuario que pertenezcan a varias VLAN. En el caso de servidores conectados a un puerto que pertenece a varias VLAN, sería necesario además configurar varias direcciones IP (tantas como VLANs). Por ello la tendencia es a utilizar encaminamiento en los propios conmutadores y separarlos en distintas VLAN.

2.2. Unión dinámica de VLAN entre conmutadores Suponga el siguiente escenario:

En los puertos que une los conmutadores A y B, es preciso conocer a qué VLAN pertenecen las tramas, lo que permitirá al conmutador receptor de la misma su reenvío por los puertos apropiados. Para ello, el IEEE ha estandarizado una modificación (denominada VLAN tag) a las tramas que viajan por dichos enlaces (normalmente denominados trunk) que identifica a la VLAN que pertenece la trama. Los puertos trunk envían y reciben tramas con la VLAN tag, y deben pertenece a todas las VLAN configuradas en el conmutador (normalmente se configuran de forma administrativa). Los puertos dónde se ubican estaciones finales se suelen denominar puertos de acceso (access) y por ellos no deben viajar tramas con marcado de VLAN (contrariamente a lo que ocurre en los puertos trunk) a menos que las estaciones finales soporten el marcado de tramas.

R. Estepa

Redes de Ordenadores: LAN

11


El VLAN tag está formado por 2 bytes de los que 3 bits indican la prioridad, 1 bit nos indica si la identificación de la VLAN se encuentra en forma canónica (única para toda la red) y los restantes 12 bit se emplean para identificar la VLAN (entre 1 y 4094). En las tramas Ethernet DIX estos 2 nuevos bytes se insertan justo después del campo protocolo (pasando éste a valer 0x8100). En el caso de las tramas 802.3 se insertan 4 nuevos bytes: los dos primeros indicando 0x8100 (para identificar la nueva trama) y los 2 siguiente con el VLAN tag. La nueva cabecera no es tenida en cuenta para el cómputo del tamaño máximo de trama. Con este método, todas las tramas de difusión de cualquier VLAN se reenviarían por todos los puertos trunk de la red, hecho que puede provocar una carga excesiva en enlaces que resultan críticos. Adicionalmente esto puede provocar el reenvío innecesario de tramas a conmutadores. Veamos el siguiente ejemplo:

Para evitar el envío innecesario de tramas entre conmutadores, sería conveniente que un conmutador conociese qué VLANs están accesibles a través de cada uno de sus puertos trunk, lo que facilitaría el reenvío de tramas tan sólo por los puertos trunk que tuvieran acceso a conmutadores con puertos en la VLAN apropiada. Una forma de conseguirlo es mediante inspección de las VLAN indicadas en el VLAN tag de las tramas recibidas por un puerto trunk. Esto adolece del mismo problema que las uniones dinámicas entre puertos de acceso y VLANs, por lo que el IEEE ha estandarizado un protocolo entre conmutadores: GVRP.

2.3. GVRP (GARP VLAN Registration Protocol) Definido en la 802.1Q, el protocolo GVRP, permite que los conmutadores descubran de forma automática información de las VLANs y sus miembros que hasta el momento exigía de configuración manual en todos los conmutadores de la red. Esto nos permitirá conocer qué VLAN se encuentran registradas en cada uno de los puertos de un conmutador. GVRP también puede utilizarse en los puertos dónde ubicamos a los servidores que pertenecen a varias VLANS, indicando a cuales de ellas se quiere unir. GVRP es una aplicación de GARP, haciendo uso de su Information Declaration (GID) y de GARP Information Propagation (GIP). No sólo permite el mantenimiento dinámico de los puertos asociados a una VLAN en un conmutador, sino que además facilita su propagación a otros conmutadores, lo que les permite conocer qué VLANs se encuentran alcanzables por un determinado puerto. De esta manera tan sólo sería necesario configurar

R. Estepa

Redes de Ordenadores: LAN

12


la información de las VLANs en un conmutador, propagándose al resto de forma automática.

En el siguiente ejemplo se aprecia cómo la trama de difusión en la VLAN 1 tan sólo se reenvía a los conmutadores que tienen registrados puertos en dicha VLAN.

Existen VLAN 1,2,3 Port 1: VL 1,2 Port 2: VL 3 Port 3: VL 2

Existen VLAN 1,2,3 Port 1: VL 1,2 Port 2: VL 1,2 Port 3: VL 2,3 VLAN 1,2

VLAN 1,2

VLAN 2,3 VLAN 1,2,3 VLAN 1,2,3

VLAN 1,2

3. Otras normas 802 de interés En este apartado se tratarán aspectos avanzados de la conmutación ethernet.

3.1. Rapid Spanning Tree Protocol (RSTP) Originalmente definido en la 802.1w, desde el año 2004 se ha incorporado a la 802.1D, en sustitución de STP que ha sido declarado obsoleto. Su objetivo principal es disminuir el tiempo de convergencia del algoritmo en caso de rotura de enlace (para STP estaba en el orden de 50 segundos, lo cual resulta excesivo en la actualidad). Las principales diferencias son STP se resumen a continuación: • Los puertos tienen asignados diferentes roles y estados. Los roles de un puerto serán: root (igual que STP), designated (igual que STP) y el antiguo estado de blocking de STP se subdivide en dos: alternative (puerto que recibe de otro conmutador mejores CBPDUs que las suyas y está bloqueado) y back-up (puerto que recibe mejores CBPDUs de otro puerto en el mismo conmutador y está bloqueado). Los puertos alternativos proporcionan otro camino hacia el puente raíz, por lo que pueden sustituir al puerto raíz en caso de fallo, los de bak-up no. En cuanto a los estados de un puerto, serán: discarting (no aprende MAC ni forma parte de la topología activa, sustituye a los estados disabled, locking y listening), R. Estepa

Redes de Ordenadores: LAN

13


learning y forwarding. Esto implica un cambio en la CBPDU (que ahora será la versión 2):

Manejo de CBPDU: o Envío: cada conmutador enviará su propia CBPDU cada hello time (sin esperar a recibir nada por el puerto raíz). o Expiración: Cuando un puerto no recibe 3 CBPDUs consecutivas (o cuando max-age, lo que primero ocurra) se borra la CBPDU de dicho puerto, lo que acelera el tiempo para detectar una caída de enlace. Cuando se detecta un fallo en el enlace físico se acelera este proceso. o Aceptar CBPDU de nivel inferior: cuando un puente recibe peor información de su puerto designado o puente raíz, la acepta y asume inmediatamente. Ejemplo: C sabe que el raíz está vivo, por lo que envía una CBPDU a B informándole que el raíz está activo, lo que permite a B asumir q u e C

es su nodo hasta el raíz. Convergencia ante fallos: o Los puertos pueden ser configurados como edge (cuando conectan estaciones finales) o como non-edge. Los puertos edge transicionan directamente hacia el estado forwarding. Los puertos punto a punto (se descubren por que utilizan full duplex) también son candidatos a una convergencia rápida. o Se responderá a las CBPDU recibidas por el puerto raíz. Un puente de superior categoría propondrá en sus puertos designados en modo discarting o learning su información de spanning tree, lo que obligará al puente receptor a sincronizar sus puertos (los puertos edge están siempre sincronizados y los puertos en modo discarting también) y confirmar al emisor por su nuevo puerto raíz que puede poner el puerto designado en modo forwarding directamente (sin pasar por los estados de listening y learning). Esto crea un efecto en cascada donde cada puente designado propone a sus vecinos que realicen una transición rápida. Hay que tener en cuenta que sólo se puede realizar esta transición rápida en puertos punto a punto. Cuando no se recibe confirmación se continúa con la transición lenta de STP (estados listening y learning) Ejemplo: nuevo enlace Root A.

R. Estepa

Redes de Ordenadores: LAN

14


o Los puertos de back-up se pueden poner directamente en forwarding ante un fallo en el puerto designado equivalente. Cuando un puente pierde su puerto raíz está habilitado para cambiar su mejor puerto alternativo a modo forwarding directamente. Detección y propagación de cambio de topología: o En RSTP tan sólo los puertos non-edge que pasan a estado forwarding provocan un cambio de topología (por tanto la pérdida de conectividad: puerto que pasa a blocking en STP no provoca un cambio de topología) o Cuando un puente detecta un cambio de topología envía la CBPDU con el bit TC por sus puertos raíz y designados durante un tiempo igual al doble de hello time y borra de su tabla MAC las entradas asociadas a dichos puertos. Sus CBPDU durante dicho tiempo tendrán el bit TC activado. o Cuando un puente recibe una CBPDU con el bit TC activado borra de la tabla MAC las entradas correspondientes a todos los puertos excepto las aprendidas por el puerto donde recibe la señal de TC. Comienza el contador de cambio de topología (2x hello-time) y envía su CBPD con el bit TC por sus puertos designados y raíz. (ya no se manda TC CBPDU como en STP).

RSTP es compatible con STP, pero si se utilizan switches configurados con ambos protocolos en la misma LAN, se perderá la eficacia de RSTP (que actuará como STP). Los temporizadores ya no serán necesarios para reaccionar ante un cambio de topología.

3.2. Multiple Spanning Tree Protocol (MSTP) Originalmente definido en la 802.1s, desde el año 2003 ha sido incorporado en la 802.1Q. Define una extensión del protocolo RSTP para su funcionamiento independiente en distintas VLANs. Esto permite configurar diferentes árboles de expansión para cada grupo de VLANS (MST regions), bloqueando los enlaces redundantes dentro de cada uno de los árboles de expansión. En MSTP cada CBPDU incluye la información del árbol de expansión para cada uno de las regiones MST, lo que permite su total compatibilidad con RSTP (y también con STP). Los puentes que estén configurados como RSTP, considerarán cada región MST como un solo puente RSTP. Su principal ventaja es que permite el balanceo de tráfico en la red, aprovechando así los enlaces redundantes. Supongamos el siguiente caso:

R. Estepa

Redes de Ordenadores: LAN

15


VL1

VL2

VL3

VL4

VL1

VL2

VL3

VL4

3.3. Agregación de enlaces (802.3ad) Permite el uso de múltiples puertos Ethernet en paralelo con el fin de incrementar la velocidad y la redundancia. Existen varios nombres comerciales con el mismo propósito, como son: EtherChannel, porttrunking, Ethernet Trunk, … hoy en día casi todos son conforme a estándar 802.3ad, que define el protocolo LACP (Link Aggregation Control Protocol). Este protocolo permite la negociación automática de agregados entre dos conmutadores (uno se configura como activo y comienza la negociación y el otro como pasivo). Todos los puertos físicos implicados en el grupo de agregación de enlaces deben residir en el mismo conmutador (sólo enlaces punto a punto y full duplex). También se posible utilizar trunking en los servidores equipados con tarjetas a tal efecto.

Con ello se consigue que varios dispositivos utilicen en paralelo puertos a la máxima velocidad, evitando que un solo dispositivo monopolice los enlaces en el backbone. Cada fabricante permite agregar hasta un número máximo de enlaces (normalmente 8) del mismo tipo y facilita aprovechar los puertos y cableado inactivo en una red. Si uno de los puertos de la agregación fallase, su tráfico se reparte entre los puertos restantes, permitiendo también la redundancia. Una de las limitaciones de la agregación es que debe preservarse el orden de las tramas ethernet, lo que se consigue enviando todas las tramas ethernet asociadas a una sesión en particular (mismo origen y destino) a través del mismo enlace físico (realmente se realiza un balance de carga entre los enlaces de un agregado).

R. Estepa

Redes de Ordenadores: LAN

16


3.4. Autenticación (802.1x) Permite el control de acceso a la red, autentificando a los dispositivos conectados a un puerto y evitando su acceso a la red si la autentificación falla. Inicialmente muy utilizado en las redes 802.11 los equipos de conmutación Ethernet también lo implementan. El dispositivo que desea entrar en la red se conoce como: supplicant y envía su petición a el authenticator (puerto conmutador al que se conecta). Éste enviará una petición de autenticación EAP-Request, que será respondida por el supplicant (EAP-Response) y reenviada por el autenticador a un servidor de autenticación (RADIUS normalmente) que aceptará o rechazará la petición del supplicant. En caso de aceptarla el autenticador pondrá el puerto en modo autorizado y permitirá el tráfico. Cuando un supplicant se desconecta, enviará un mensaje EAP-logoff para que el puerto vuelva a pasar a estado no autorizado.

3.6. Control de flujo (802.3x), PoE (802.3af) y priorización (802.1p) a) Control de flujo (802.3x) Cuando una estación quiere enviar un comando de PAUSE, envía una trama de PAUSE (Campo Lenght/type = 0x8808, indica MAC Control con el código de operación 0001 (indica PAUSE)) a la dirección destino multicast 01-80-C2-00-00-01. En esta trama, se incluye un código y el periodo de tiempo sin transmitir que la estación receptora solicita a la transmisora que no envía más tramas. Los dispositivos utilizan la autonegociación para averiguar si el otro extremo tiene capacidad de utilizar tramas de pausa. Dest. MAC Address (6Source Length/Type Start bytes) MAC (2-bytes) Preamble Frame = (01-80Address = 802.3 MAC (7-bytes) Delimiter C2(6Control (1-byte) 00-00-01) bytes) (88-08) or unique DA

MAC Control Opcode (2-bytes) = PAUSE (00-01)

MAC Reserved Frame Control (42Check Parameters bytes) Sequence (2-bytes) = all (4-bytes) = (00-00 to zeros FF-FF)

b) PoE (802.3af) c) priorización y calidad de servicio R. Estepa

Redes de Ordenadores: LAN

17


Cuando se multiplexa tráfico en las colas de salida se emplea la disciplina FIFO. Esto implica que todos los paquetes/tramas se verán afectados por las mismas probabilidades de pérdidas, retardos, … No obstante existe aplicaciones cuyo tráfico necesita un mejor tratamiento en términos de calidad en el transporte (pérdidas y retardos bajos o inexistentes) como puede ser el tráfico de voz o video en tiempo real o el tráfico de gestión. Por ello, y siguiendo el modelo de DiffServ los paquetes son marcados de acuerdo con el tipo de servicio que necesitan (en la cabecera IP se permiten 6 bits para este uso: DSCP). En el nivel MAC, se puede utilizar la 802.1p (actualmente en la 802.1Q) para llevar esta misma información. Los routers y conmutadores que soportan QoS utilizan distintas colas para cada tipo de tráfico, permitiendo definir la prioridad relativa entre ellas y el ancho de banda reservado para cada una, lo que permite ofrecer un servicio diferenciado. Adicionalmente algunos conmutadores permiten el conformado de tráfico (traffic shaping) y distintas disciplinas de colas (WFQ, WRR, ClassBased Queuing, …). Normalmente se soportan 8 niveles de prioridad (señalados con 3 bits) y 4 y 8 colas físicas. Priority Level

Traffic Type

0

Best Effort

1

Background

2

Standard (Spare) Excellent Load

3 (Business Critical) Controlled Load 4 (Streaming Multimedia) Voice and Video 5

(Interactive Media and Voice) [Less than 100ms latency and jitter] Layer 3 Network Control Reserved Traffic

6 [Less than 10ms latency and jitter] Layer 2 Network Control Reserved Traffic 7 [Lowest latency and jitter] [EJERCICIO: diseñe y configure una red para la ETSI donde tenemos: 3 departamentos, los servidores y CdC, salida hacia rectorado,…. Suponga la ETSI de una sola planta cuadrada de 150 metros de lado. Los equipos de usuario funcionarán a 100 Mb/s. Dos departamentos tienen 40 profesores y el tercero 65. Los conmutadores son de 24 o 48 puertos de cobre + hasta 8 de fibra.]

R. Estepa

Redes de Ordenadores: LAN

18


Turn static files into dynamic content formats.

Create a flipbook

Articles inside

Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.