Para completar la respuesta de David, un conmutador aprende quién está detrás de un puerto mirando las direcciones MAC de los paquetes recibidos en ese puerto. Cuando el interruptor está encendido, no sabe nada. Una vez que el dispositivo A envía un paquete desde el puerto 1 al dispositivo B, el conmutador descubre que el dispositivo A está detrás del puerto 1 y envía el paquete a todos los puertos. Una vez que el dispositivo B responde a A desde el puerto 2, el conmutador solo envía el paquete en el puerto 1.
Esta relación MAC a puerto se almacena en una tabla en el conmutador. Por supuesto, muchos dispositivos pueden estar detrás de un solo puerto (por ejemplo, si un conmutador está conectado al puerto), por lo que puede haber muchas direcciones MAC asociadas a un solo puerto.
Este algoritmo se rompe cuando la tabla no es lo suficientemente grande como para almacenar todas las relaciones (no hay suficiente memoria en el conmutador). En este caso, el conmutador pierde información y comienza a enviar paquetes a todos los puertos. Esto se puede hacer fácilmente (ahora sabe cómo hackear su red) forjando muchos paquetes con diferentes MAC desde un solo puerto. También se puede hacer falsificando un paquete con el MAC del dispositivo que desea espiar, y el conmutador comenzará a enviarle el tráfico para ese dispositivo.
Los conmutadores administrados se pueden configurar para aceptar un solo MAC de un puerto (o un número fijo). Si se encuentran más MAC en ese puerto, el conmutador puede apagar el puerto para proteger la red o enviar un mensaje de registro al administrador.
EDITAR:
Sobre el tráfico de youtube, el algoritmo descrito anteriormente solo funciona en el tráfico de unidifusión. La difusión de Ethernet (ARP como ejemplo) y la multidifusión de IP (utilizada a veces para la transmisión) se manejan de manera diferente. No sé si YouTube usa la multidifusión, pero podría ser un caso en el que pueda detectar el tráfico que no le pertenece.
Sobre el tráfico de la página web, esto es extraño, ya que el protocolo de enlace TCP debería haber configurado la tabla MAC a puerto correctamente. O la topología de la red conecta en cascada muchos conmutadores muy baratos con pequeñas tablas que siempre están llenas, o alguien está jugando con la red.