Publicado el

MÉTODOS DE CONMUTACIÓN EN SWITCHES CISCO


Los switches Cisco utilizan 2 métodos de conmutación para el envío de sus tramas de manera interna. Estos métodos son Store-And-Foreward y Cut-Through.

Cuando un switch recibe una trama, tiene que reenviar esa trama a otro de sus puertos para que pueda llegar a su destino, es decir, tiene que conmutar la trama.

Topología
Imagen 1. Conmutación switches

En la imagen 1, la laptop 1 está enviando una trama, el switch SW1 recibe la trama en un puerto y tiene que decidir a que otro puerto conmutar la trama, tiene que decidir si se envía la trama al puerto que conecta a la laptop 2 o al puerto que conecta al switch SW2, independiente del puerto al cual se decida conmutar la trama, esta operación interna de conmutación, es gobernada por los 2 métodos que analizamos en esta entrada, el método Store-And-Foreward y Cut-Through. Comencemos con el primero de los métodos

Store-And-Forward

En este método lo que hace el switch, es almacenar en su memoria todos los bits de una trama antes de conmutarla a otro puerto. No se puede conmutar la trama hacia el puerto de salida si todos los bits que conforman la trama no han sido recibidos. Mientras la trama se va recibiendo el switch va analizando la dirección de destino, recordemos que el campo dirección de destino, es el primer campo que conforma la trama (no tomando en cuenta el campo preámbulo) como vemos en la imagen 2.

Trama
Imagen 2. Trama Ethernet

Este análisis de la dirección de destino, le permite al switch ir tomando decisiones sobre qué hacer con la trama, si la dirección de destino se encuentra en su tabla MAC, la trama será conmutada al puerto de salida, si la dirección de destino no se encuentra en su tabla MAC se realiza una inundación de la trama a todos sus puertos (no es lo mismo que una trama broadcast).
Algo importante a mencionar, es que la trama no va ser conmutada a otro puerto si los datos del campo FCS no son correctos.

FCS

El campo FCS que vemos en la imagen 2, sirve para realizar la verificación de la integridad de la trama. Veamos cómo funciona.

Supongamos que el switch SW 1 en la imagen 3, está enviando una trama al switch SW 2, antes de enviar la trama, el switch SW 1 completa el cálculo Cyclic Redundancy Check (CRC). Este cálculo se realiza considerando todos los bits que conforman la trama a enviar (sin los bits del campo Preámbulo), ese resultado de la operación matemática es introducido al campo FCS. Supongamos que el resultado de la operación fue «123ABC» y se lo introduce al campo FCS como vemos en la imagen 3.

Trama
Imagen 3. Cálculo CRC SW 1

Cuando el switch SW 2 recibe esa trama, también realiza el mismo cálculo CRC considerando todos los bits que conforman la trama, obviamente sin los bits del campo FCS y Preámbulo.

CRC
Imagen 4. Cálculo CRC SW2

Cuando se tiene el resultado del cálculo CRC en el switch SW 2, pueden ocurrir 2 cosas:

» Si el resultado de la operación CRC del switch SW 2 es igual a los datos almacenados en el campo FCS de la trama recibida del switch SW 1, significa que la trama llego sin errores y por lo tanto se puede conmutar hacia el puerto de salida.
» Si el resultado de la operación CRC del Switch SW 2, es diferente a los datos almacenados en el campo FCS de la trama recibida, significa que la trama llego con errores provocados en la capa Física o de Enlace de datos y por lo tanto se procede a descartarla. En esta situación, los protocolos de capa superiores son los que se deberían encargan de solicitar una retransmisión de los datos. Ahora pasemos al segundo método de conmutación de tramas.

Cut-through

Cuando un switch utiliza este método, procede a conmutar los bits que conforman la trama apenas pueda leer la dirección MAC de destino. El switch no espera a toda la trama para analizar qué hacer con ella, esto significa que este método no se encarga de descartar tramas cuando tengan errores de capa Física o de Enlace de datos, no se realiza la validación del campo FCS. El único dispositivo que se encarga de validar el campo FCS, es el dispositivo de destino final, si encuentra errores descarta la trama.

Queda claro que este método nos ayuda a conmutar y enviar tramas a una mayor velocidad pero con el riesgo de enviar tramas con errores a través de la red.

El método Cut-through tiene 2 versiones:

Fast Forward

Esta primera versión se encarga de conmutar la trama al puerto de salida apenas pueda leer la dirección MAC de destino. En esta versión se reduce la latencia, pero se tiene riesgos de enviar una trama con errores a través de la red.

Framegnt-Free

La segunda versión trata de enviar tramas lo más rápido posible y al mismo tiempo evita enviar tramas que tengan errores debido a colisiones. Cuando se implementó el mecanismo de acceso al medio CSMA/CD, se determinó que las colisiones que provocan errores en las tramas, deben ser detectadas en los primeros 64 bytes de la trama. Tomando en cuenta esta regla, este método espera recibir los primeros 64 bytes de la trama para recién comenzar a conmutarla al puerto de salida.

Hoy en día en los Data Center o en ambientes de redes empresariales, cualquiera de los métodos de conmutación es aceptable, solo existen ciertos casos donde realmente existen aplicaciones que necesitan latencias muy bajas del orden de microsegundos. En estos casos se debería considerar utilizar el método Cut-Through Fast Forward. En otros casos cuando los usuarios utilicen protocolos como FTP o HTTP, no van a notar la diferencia si los switches están utilizando un método u otro para la conmutación de las tramas, ya que las latencias End-To-End de estas aplicaciones son del orden de decenas de milisegundos.

Un ejemplo de switches que proporcionan latencias ULTRA bajas a través del método de conmutación Cut-Through, son los switches Nexus 5000 y Catalyst 4900M que vemos en la imagen 5.

Nexus
Imagen 5. Switches que proporcionan latencias de conmutación bajas

CONCLUSIÓN

Como conclusión, estos métodos de conmutación no deberían definir nuestra elección para la adquisición de un switch. La elección de un switch para nuestras redes empresariales se basa principalmente en factores como la densidad de puertos, tipos de puertos o el costo de del dispositivo. En los dispositivos que tenemos hoy en día, el utilizar un método de conmutación u otro, no tiene mayor importancia o afectación a no ser que estemos trabajando con aplicaciones de mínima latencia donde conviene utilizar el método de conmutación Cut-Through.

Esperamos que el presente artículo sea de tu agrado!

¿QUIERES ESTAR AL TANTO DE NUESTAS PUBLICACIONES?

Deja tu Email y enterate de los nuevos cursos, ofertas, tutoriales y todo sobre NetworkGeeks.

NUESTROS CURSOS Foros Métodos de conmutación en switches

Viendo 7 entradas - de la 1 a la 7 (de un total de 7)
  • Autor
    Entradas
  • #13088
    AdminNG
    Superadministrador
    #13097
    LauraP
    Participante

    Hola como puedo saber si estoy utilizando store and forward o cut-through??? gracias

    #13106
    Marcelo
    Invitado

    que aplicaciones requiere bajas latencias?

    #13114
    AlvaroM
    Superadministrador

    Hola Marcelo, algunas aplicaciones que necesitan muy baja latencia, son por ejemplo las cirugías a distancia, las automatizaciones industriales y las transacciones monetarias.


    @Laurap
    en realidad todo varia de acuerdo a la plataforma de tu switch, por ejemplo los switches 2960-x no pueden utilizar cut-through, utilizan si o si store and forward, por otro lado la gama de switches Nexus 3k, utiliza por defecto el método cut-through y puedes cambiar a store and forward con este comando

    switch(config)#switching-mode store-forward

    Si quieres reestablecer tu conmutación cut-through lo puedes hacer con la negación del comando

    switch(config)#no switching-modestore-forward

    Acá la referencia: https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus3000/sw/layer2/503_U3_1/b_Cisco_n3k_Layer_2_Switching_Config_503_U31/b_Cisco_n3k_Layer_2_Switching_Config_503_U31_chapter_01000.pdf

    • Esta respuesta fue modificada hace 3 años, 5 meses por AlvaroM.
    #13117
    Augusto
    Invitado

    Buena info gracias

    #25184
    andres
    Participante

    Hola Alvaro, buenas noches, una consulta, hay algo que no me queda claro, cuando un switch recibe una trama, lo primero que hace es verificar si el valor del campo FCS es correcto para recien moverlo a su buffer y de ahi analizar las direcciones MAC para registrarlo en su tabla MAC, o es que primero analiza las MAC(origen y destino de forma ordenada), las registra en su tabla MAC y de ahi viene el metodo store and forward?, por favor podrias darme algun alcance?.

    Saludos Cordiales

    #25187
    AlvaroM
    Superadministrador

    Hola Andres!

    La teoría del estándar IEEE 802.3 indica que lo primero que ocurre antes de cualquier proceso (store and forward) es verificar la INTEGRIDAD de la trama, si no se verifica esto, podríamos estar registrando direcciones MAC erróneas en la tabla MAC debido a que algún bit de la dirección de origen/destino se corrompe por algún problema en la red. Por lo tanto primero tenemos que cerciorarnos que no existe ningún problema en los bits de la trama para después registrar direcciones MAC correctas de los dispositivos de red.

    Este es el texto que pude encontrar del estándar:

    «Upon recognition of the Start Frame Delimiter at the end of the preamble sequence, the CSMA/CD MAC sublayer accepts the frame. If there are no errors, the frame is disassembled and the fields are passed to the MAC client by way of the output parameters of the ReceiveFrame operation»

    Orden de operación (estándar 802.3-2005): Trama recibida -> Validar FCS -> Desmontar la trama -> Recepción OK.

    Respecto al segundo método de conmutación denominado cut through, este no está estandarizado, por lo tanto su implementación puede variar de fabricante en fabricante y esos datos no están publicados libremente (o por lo menos no por Cisco).

    Atentos a cualquier otro comentario/duda.

    Saludos cordiales.

    • Esta respuesta fue modificada hace 1 año, 8 meses por AlvaroM.
Viendo 7 entradas - de la 1 a la 7 (de un total de 7)
  • Debes estar registrado para responder a este debate.