Considere un conmutador de red GigE estándar. Para realizar la conmutación, presumiblemente necesita mantener un mapa de direcciones MAC de todas las cosas que existen en la red hasta sus números de puerto (del conmutador).
- ¿Cómo mantiene ese mapa?
- ¿Cuáles son los protocolos involucrados?
- Si cambio la topología de una parte de la red, ¿se notifica a toda la red o se descubren cosas "perezosamente" (es decir, en la primera necesidad)?
Respuesta1
El conmutador aprende la asignación del puerto MAC observando la dirección MAC de origen de cada paquete entrante. Por lo tanto, el conmutador puede construir la tabla mac gradualmente.
Cuando necesita reenviar un paquete, mira la dirección mac de destino y la reenvía al puerto apropiado según la tabla mac. Si no encontró ninguna entrada, enviará el paquete a todos los puertos (excepto al puerto de envío).
Para mantener solo las entradas válidas en la tabla mac, el conmutador vacía las entradas no utilizadas después de un tiempo de espera específico.
Cuando la topología de la red cambia, el conmutador puede conocer la nueva ubicación de la dirección mac cuando recibe un nuevo paquete. Sobrescribirá la asignación anterior de esta dirección mac.
Para más información, miraeste enlace.
Respuesta2
Se llama tabla de direcciones MAC y contiene port
, the MAC address
y a timestamp
. Si cambias la topología, porque desconectarás algunos cables, en ese momento todas las entradas que contengan los puertos involucrados serán descartadas de la tabla de direcciones MAC. Las nuevas entradas se aprenden después de que se recibe el primer paquete de los equipos. Algunas entradas permanecerán para el puerto equivocado si el equipo no está conectado directamente, pero normalmente esto se sabrá pronto debido a las transmisiones. Si no hay tráfico desde un equipo, entonces debe pasar el tiempo de espera hasta que se descarte su entrada. El tiempo de espera suele ser de 120 segundos.
Respuesta3
tomado este escenario:
host_a - puerto 1 host_b - puerto 2
cuando host_a quiera enviar un paquete a host_b, presionará el interruptor que registrará la dirección mac de host_a y, como host_b aún no envió nada, transmitirá la trama en todos los puertos; host_b notará que se le envió y responderá. en el puerto b.
en este momento, el conmutador sabe que host_a tiene mac1 en el puerto 1 y host_b tiene mac2 en el puerto 2. Cualquier comunicación adicional se realizará simplemente a través de estos puertos en lugar de transmitir.
- La forma de mantener el mapa es específica del proveedor, pero se reduce a una lista de Mac y sus puertos asociados.
- En el modelo más simple no hay realmente ningún protocolo, excepto que todo sucede en el nivel 2 OSI.
- Si cambia la topología, el conmutador eliminará la entrada anterior y la actualizará con la nueva (ya que host_1 mac1 está en el puerto 10 en lugar de 1).
Lo que dije se aplica a los conmutadores no administrados y también podría aplicarse a los conmutadores administrados, pero las cosas se vuelven más complicadas. por ejemplo, Cisco puede configurar qué Mac llega a qué puerto, ejecuta protocolos propietarios como ISL o el open dot1q. http://en.wikipedia.org/wiki/IEEE_802.1QTexto del enlace