Funcionamiento de un Switch

En una red donde los hosts comparten el mismo ancho de banda se llama "red de Medio compartido" (shared media network) y usa carrier sense multiple access collision detect (CSMA/CD) para determinar cuando un dispositivo puede transmitir.

Cuando más de un host intenta hablar al mismo tiempo, ocurre una colisión, por lo que cada host debe para de transmitir y esperar para hablar otra vez. Esto se conoce como operar en half-duplex, solo se puede hablar o escuchar a un tiempo. Además cuando un host manda una trama (frame) el resto lo escucha, lo mismo pasa cuando un host genera una trama con errores, el resto lo escucha. Este tipo de red es un dominio de colisión (domain collision) porque todas las transmisiones de los dispositivos son susceptibles a colisiones.

Cuando un switch opera en capa 2, toma las decisiones en base a la MAC destino de la trama. Lo que significa que:

  • El alcance del dominio de colisión consiste en el propio puerto del switch y los que esté conectado a él.
  • Los hosts conectados pueden operar en full-duplex, pueden hablar y escuchar a la vez.
  • El ancho de banda no es compartido, capa puerto ofrece ancho de banda dedicado.
  • Los errores en la trama no son propagados.

El switch inspecciona la trama y busca la MAC destino en su tabla de direcciones (CAM) para ver si tiene el puerto y vlan a donde tiene que enviar la trama a la cual envía si la encuentra. Si no, el switch envía la trama a todo los puertos asignados a la vlan por donde recibió la trama, esto es llamado "unknown unicast flooding" con la dirección de destino unicast desconocida.

Los switches de capa 3 una la técnica llamada "Topology-based" que consiste en construir y rellenar una base de datos con la información de Capa 3. Esta base de datos es una tabla de consulta vía hardware muy rápida que hace que los paquetes (packets) se envíen a altas velocidades. La coincidencia más larga encontrada en la base de datos es que se usa para el destino de Capa 3 correcto. Esta base de datos se actualiza dinámicamente sin penalización alguna.

  • Route caching: el primer paquete es procesado por el route processor (RP) y el switch engine (SE) crea un acceso directo en la memoria caché del Multilayer Switching (MLS). Los paquetes restantes del flujo de tráfico están utilizando este acceso directo.
  • Topology based (CEF): Forwarding Information Base (FIB) se construye en función del proceso de enrutamiento.

Cuando una trama llega a los puertos del switch se aprende y almacena en la tabla CAM, la dirección MAC origen junto con el puerto y la vlan por donde ha sido aprendida. También se almacena la hora (time stamp). Si la MAC aprendida en un puerto aparece en otro puerto, la entrada vieja es eliminada y se almacenan los datos más actuales (time stamp más reciente). Si una MAC ya está en la tabla CAM en el mismo puerto y vlan solo se actualiza la hora (time stamp).

Stale entries, son entradas MAC en la tabla CAM las cuales no han sido escuchadas por un periodo de tiempo (por defecto 300 segundos) las cuales son eliminadas de la tabla CAM. Para cambiar este tiempo por defecto (300 segundos) podemos usar este comando:

Switch(config)# mac address-table aging-time segundos

Para configurar una MAC estáticamente en un puerto y vlan (por defecto es aprendida dinámicamente de las trama entrantes) podemos usar este otro comando:

Switch(config)# mac address-table static mac-address vlan vlan-id interface type mod/num

Nota: En versiones IOS anteriores a 12.1(11)EA1 el comando es mac-address-table (con guión "-" después de mac) pero en IOS más recientes es sin guión "-" (mac address-table) aunque en los Catalyst 4500 y 6500 y en otras versiones se pueden usar ambos.

La tabla TCAM permite evaluar un paquete contra una lista de acceso entera con una simple búsqueda en la tabla TCAM. La mayoría de los switches tiene varias tablas TCAM para ACLS de entrada y salida así como QoS para poder evaluar el paquete simultáneamente en todas las tablas en paralelo.

Cada entrada está compuesta por Valor (134 bits), Máscara (134 bits) y Resultado (VMR = Value, Mask, Result).

La tabla TCAM siempre está organizada por máscaras donde cada máscara única tiene ocho valores de patrón. Por ejemplo, la tabla TCAM de un Cisco 6500 (una TCAM para ACLs de seguridad y otra para ACLs de QoS) tiene capacidad para 4096 máscaras y 32768 valores de patrón (8 * 4096). El truco está en que cada pareja de máscara-valor (mask-value) es evaluada simultáneamente (o en paralelo) encontrando la coincidencia más larga (la mejor) en una sola búsqueda.

Para ver el contenido de la tabla CAM podemos usar el siguiente comando:

Switch# show mac address-table dynamic [address mac-address | interface type mod/num | vlan vlan-id]

Para ver el tamaño de la tabla CAM podemos usar el siguiente comando:

Switch# show mac address-table count

Para borrar una o todas las entradas de la tabla CAM podemos usar el comando:

Switch# clear mac address-table dynamic [address mac-address | interface type mod/num | vlan vlan-id]

La tabla Tcam es más o menos auto suficiente, las listas de acceso se compilar y mezclan automáticamente en la tabla TCAM por lo que no hay nada que configurar. El único concepto es saber como están siendo usados los recursos de la tabla TCAM.

Debido al limitado número de máscaras y valores, si el número de entradas crece y no hay más espacio en la tabla TCAM al introducir un comando de una ACL el switch genera un mensaje de error en el syslog.

Podemos usar plantilla SDM para ajustar estos valores. SDM permite default, access, vlan, routing, dual-ipv4-and-ipv6.

El comando para configurar es:

Switch# sdm prefer { access | default | dual-ipv4-and-ipv6 { default | routing | vlan } | routing | vlan }
  • access — Maximize system resources for ACLs.
  • default — Give balance to all functions.
  • dual-ipv4-and-ipv6 — Select a template that supports both IPv4 and IPv6 routing.
    • default — Balance IPv4 and IPv6 Layer 2 and Layer 3 functionality.
    • routing — Provide maximum usage for IPv4 and IPv6 routing, including IPv4 policy-based routing.
    • vlan — Provide maximum usage for IPv4 and IPv6 VLANs.
  • routing — Maximize routing on the switch.
  • vlan — Maximize VLAN configuration on the switch with no routing supported in hardware.

Retro

Lugares

Redes

Sistemas

Varios