Hemos visto en otros artículos que un switch tiene el potencial de cambiar radicalmente el modo que los nodos se comunican entre si. Pero puede que te estés preguntando qué lo hace diferente de un router. Los switches normalmente trabajan a nivel 2, también referido como capa 2 (capa de enlace), en el modelo de referencia OSI.
Usa direcciones MAC, mientras que los router trabajan en capa 3 (capa de red) con direcciones de nivel 3 (IP, IPX o Appletalk, dependiendo del protocolo que se esté utilizando). El algoritmo que los switches usan para enviar los paquetes es diferente de los algoritmos que utilizan los routers.
Una de las diferencias en los algoritmos entre routers y switches, es como se manejan los broadcasts. En cualquier red, el concepto de un paquete broadcast es vital para el funcionamiento operativo de la red. Cuando un dispositivo necesita enviar información pero no sabe a quién se lo debería enviar, envía un broadcast.
Por ejemplo, cada vez que un nuevo ordenador u otro tipo de dispositivo entran a formar parte de la red, envía un paquete de broadcast para anunciar su presencia. Los otros nodos (como un servidor de dominio), puede añadir al ordenador a su lista de navegación (como un directorio de direcciones) y comunicar directamente con ese ordenador desde ese punto.
Los broadcast son usados cada vez que un dispositivo necesita hacer un anunciamiento al resto de la red o no está seguro del destinatario de la información. Un hub o un switch pasará cualquier paquete broadcast que reciban a todos los segmentos en el dominio broadcast, pero un router no lo hará. Piensa de nuevo en el ejemplo del cruce de caminos en la sección anterior (primer capitulo sobre switches): Todo el tráfico pasa por la intersección, no importa a donde vaya. Ahora imagina que esta intersección está en una frontera internacional.
Para pasar por la intersección se debe proveer al policía de aduanas una dirección específica de donde vas. Si no se tiene una dirección en concreto, no te dejará pasar. Un router funciona de una forma parecida a esta.
Sin la dirección específica de otro dispositivo, el paquete que pasa por el, no pasará. Esto es una buena manera de mantener las redes separadas una de otra, pero no es tan adecuado cuando quieres hablar a diferentes partes de una misma red. Aquí es donde entran los switches.
Conmutación de paquetes
Los switches LAN dependen de la conmutación de paquetes (packet-switching). El switch establece una conexión entre dos segmentos el tiempo suficiente para enviar el paquete actual. Los paquetes de entrada (parte de la trama ethernet) son salvados a una memoria temporal llamada buffer. La dirección MAC contenida en la cabecera de la trama es leída y comparada con una lista de direcciones que se mantiene en una tabla de lectura del switch.
En una red ethernet LAN, una trama ethernet contiene un paquete normal como el contenido de la trama, con una cabecera especial que incluye la información de la dirección MAC para el origen y destino del paquete. Los switches basados en paquetes usan 3 métodos para enrutar el tráfico: Cut-through (pasar a través), Store-and-forward (almacenar y enviar) y Fragment-free (fragmento libre).
Los switches con cut-through habilitado, leen la dirección MAC tan pronto como un paquete es detectado por un switch. Después de almacenar los 6 bytes que forman la información de la dirección, inmediatamente empiezan a enviar el paquete al nodo de destino, incluso si el resto de los paquetes están entrando en el switch.
Un switch utilizando store-and-forward salvará todo el paquete en el buffer y revisará si tiene errores de CRC o algún otro problema antes de enviarlo. Si el paquete tiene un error, es descartado. En caso contrario, el switch echa un vistazo a la dirección MAC y envía el paquete al nodo de destino. Muchos switches combinan los dos métodos, usando cut-through hasta llegar a un cierto número de errores, cambiando después al método de store-and-forward.
Un método menos común es el de fragment-free. Funciona como cut-through excepto que almacena los primeros 64 bytes del paquete antes de enviarlo. La razón para esto es que muchos errores, y todas las colisiones, ocurren durante los 64 bytes iniciales del paquete.
En la siguiente parte del tutorial, veremos algunas configuraciones o formatos típicos que utilizan los switches. Puedes verlo haciendo clic en el botón: