El Protocolo de Administración de Grupos de Internet (IGMP) y el Descubrimiento de Oyentes de Multicast (MLD) permiten al bridge de MikroTik escuchar las comunicaciones IGMP/MLD y tomar decisiones de reenvío para el tráfico de multicast basándose en la información recibida.
Por defecto, los bridges inundan el tráfico de multicast a todos los puertos del bridge, similar al tráfico de difusión, lo cual puede no ser siempre el escenario más adecuado. IGMP/MLD Snooping resuelve este problema al reenviar el tráfico de multicast solo a los puertos donde los clientes están suscritos.
Al final del artículo encontrarás un pequeño test que te permitirá evaluar los conocimientos adquiridos en esta lectura
Qué es IGMP
IGMP es un protocolo de comunicaciones utilizado por hosts y routers adyacentes en redes IP para establecer membresías en grupos multicast.
Esto es parte de la suite de protocolos de Internet y es utilizado para coordinar la configuración de grupos multicast entre routers y hosts, permitiendo que múltiples dispositivos suscriban a un grupo de multicast y reciban los datos dirigidos a ese grupo.
IGMP se utiliza en redes IPv4 para permitir que los equipos en una red indiquen a los routers cercanos su intención de unirse o dejar grupos multicast.
Los routers utilizan esta información para construir tablas de reenvío multicast, asegurando que los paquetes multicast se entreguen solo a los hosts que están interesados en recibirlos, optimizando el uso del ancho de banda y reduciendo la carga en los hosts y en la red.
Existen varias versiones de IGMP
- IGMPv1 (definido en RFC 1112): La primera versión, que permite a los hosts informar a su router local de su deseo de unirse a grupos multicast.
- IGMPv2 (definido en RFC 2236): Introduce la capacidad de los hosts para informar a los routers de su deseo de dejar un grupo multicast, mejorando la eficiencia y permitiendo una administración más dinámica de las membresías multicast.
- IGMPv3 (definido en RFC 3376): Añade soporte para “source filtering”, permitiendo a los hosts especificar no solo a qué grupo multicast desean unirse, sino también de qué fuentes desean recibir tráfico. Esto permite un control más fino sobre el tráfico multicast, que es útil en aplicaciones como IPTV y otras transmisiones multimedia donde el origen del contenido es relevante.
Qué es MLD
Es el equivalente en IPv6 del Protocolo de Gestión de Grupos de Internet (IGMP) utilizado en IPv4.
Su función principal es permitir que un router IPv6 descubra la presencia de miembros multicast (escuchas) en sus interfaces y determine qué interfaces requieren tráfico multicast.
De esta manera, MLD ayuda a asegurar que el tráfico multicast se dirija solo a los segmentos de red donde hay dispositivos interesados en recibirlo, optimizando así el uso del ancho de banda y reduciendo la carga innecesaria en la red.
MLD está definido dentro de dos documentos del IETF (Internet Engineering Task Force)
- MLDv1: Definido en el RFC 2710, es la versión inicial que permite a los dispositivos informar a los routers locales sobre su interés en unirse a grupos multicast específicos.
- MLDv2: Definido en el RFC 3810, introduce capacidades mejoradas similares a las de IGMPv3 para IPv4, incluyendo la posibilidad de informar interés en recibir tráfico multicast de fuentes específicas. Esto permite un filtrado de fuente, donde los dispositivos pueden especificar no solo el grupo al cual desean unirse, sino también de qué fuentes desean recibir tráfico. Esto es particularmente útil para aplicaciones que requieren un control más fino sobre el tráfico multicast, como la transmisión de video, donde los suscriptores pueden querer recibir contenido solo de fuentes específicas.
MLD es una parte crucial de la gestión de tráfico multicast en redes IPv6, permitiendo la eficiente distribución de tráfico multicast a los hosts interesados.
Al igual que IGMP en IPv4, MLD reduce la cantidad de tráfico multicast innecesario en la red, asegurando que solo se envíe a las interfaces que realmente tienen miembros interesados en el grupo multicast.
Esto es especialmente importante en IPv6, donde el diseño de la red se orienta hacia un uso más extensivo de direcciones multicast para la optimización de servicios y aplicaciones en red.
Conceptos Básicos de IGMP y MLD Snooping en MikroTik RouterOS
1. Grupos de Multicast:
- Los grupos de multicast son conjuntos de hosts que se han unido para recibir transmisiones de multicast específicas.
- Cada grupo se identifica por una dirección de multicast IP.
2. Versiones de IGMP y MLD:
- RouterOS admite IGMPv1, IGMPv2, IGMPv3, MLDv1 y MLDv2, lo que facilita la gestión de grupos de multicast en la red.
3. IGMP/MLD Querier:
- El IGMP/MLD Querier es responsable de enviar consultas para descubrir qué hosts están interesados en los grupos de multicast.
- Cuando se detecta un Querier, el bridge comienza a restringir el tráfico de multicast desconocido y solo reenvía el conocido desde la base de datos de multicast (MDB).
Configuración de IGMP y MLD Snooping en RouterOS
Para habilitar IGMP y MLD Snooping en MikroTik RouterOS, se utilizan las siguientes opciones de configuración:
- igmp-snooping (yes | no): Habilita o deshabilita IGMP y MLD Snooping en el bridge.
- igmp-version (2 | 3): Selecciona la versión de IGMP para las consultas de membresía.
- multicast-querier (yes | no): Habilita al bridge para generar consultas generales de IGMP/MLD en ausencia de un Querier activo.
- fast-leave (yes | no): Habilita la función de abandono rápido de IGMP/MLD en el puerto del bridge.
Ejemplo de Configuración en la Interfaz de Línea de Comandos (CLI)
A continuación, se muestra un ejemplo básico de configuración en la CLI para habilitar IGMP y MLD Snooping:
/interface bridge
set bridge1 igmp-snooping=yes multicast-querier=yes
/interface bridge port
add bridge=bridge1 interface=ether2
add bridge=bridge1 interface=ether3
add bridge=bridge1 interface=ether4
add bridge=bridge1 interface=ether5
Este ejemplo habilita IGMP Snooping en el bridge llamado “bridge1”, con un Querier local activado. Se agregan interfaces al bridge para monitorear y restringir el tráfico de multicast.
Monitoreo y Solución de Problemas
Para monitorear la base de datos de multicast aprendida (MDB) y el estado del bridge, se utilizan los siguientes comandos:
- /interface bridge mdb print: Muestra las entradas de la base de datos de multicast.
- /interface bridge monitor [nombre_del_bridge]: Muestra el estado actual del bridge.
- /interface bridge port monitor [nombre_del_puerto]: Muestra el estado del puerto del bridge.
Estos comandos proporcionan información valiosa para la solución de problemas y la optimización de la configuración de IGMP y MLD Snooping.
Conclusiones
IGMP y MLD Snooping en MikroTik RouterOS son herramientas esenciales para gestionar eficientemente el tráfico de multicast en una red.
Al entender los conceptos y aplicar la configuración adecuada, los administradores de red pueden optimizar el rendimiento y garantizar la transmisión efectiva de datos de multicast.
La capacidad de monitorear y solucionar problemas facilita el mantenimiento de una red eficiente y confiable.
Breve cuestionario de conocimientos
¿Qué te pareció este artículo?
¿Te atreves a evaluar tus conocimientos aprendidos?
Libro recomendado para éste artículo
(Book) Networking with MikroTik RouterOS: A Practical Approach to Understanding and Implementing RouterOS
Material de estudio para el Curso de Certificación MTCNA, actualizado a RouterOS v7
Libro Switching y Brindging RouterOS v7
Material de estudio para el Curso de Certificación MTCSWE actualizado a RouterOS v7