[Acercándose al NE(12)] La aventura de un paquete en los routers Huawei - IP Multicast Forw de Huawei

Pubilicado 2019-1-11 03:24:33 17 0 0 0

[Acercándose al NE(12)] La aventura de un paquete en los routers Huawei - IP Multicast Forw de Huawei

Iniciando con IP Multicast

Unicast y comunicaciones multicast

Los tres métodos de comunicación IP se ilustran de la siguiente manera:

132318s5tgilz65qlvli4z.png

·         Unicast es un método de transmisión de datos de uno a uno utilizado para la comunicación entre un host de origen y un host de destino. Usando este método, un switch o router envía datos pero no replica los datos. La mayoría de los datos de una red, como el correo electrónico, la navegación web y el vídeo a petición (VoD), se transmiten mediante unicast.

·         Broadcast es un método de transmisión de datos de uno-a-todos utilizado para la comunicación entre un host IP origen y todos los demás hosts IP de la misma red local (LAN). Usando este método, un switch o router reproduce y envía datos incondicionalmente, y todos los hosts pueden recibir los datos incluso si un host no requiere los datos. De esta manera, la comunicación de radiodifusión no sólo desperdicia el ancho de banda, sino que también puede causar tormentas de broadcast debido a los loops de ruteo. Por lo tanto, los datos de broadcast en una LAN no pueden ser transmitidos a otras LAN, y no pueden ser reenviados por routers. Sin embargo, la comunicación por broadcast sigue siendo necesaria en algunos escenarios, como la obtención de una dirección IP dinámica mediante el DHCP y el aprendizaje de direcciones MAC a través de ARP.

·         Multicast es un método de transmisión de datos de uno a muchos utilizado para la comunicación entre un host IP de origen y un grupo seleccionado de hosts IP. Usando este método, un switch o router reproduce y envía datos sólo para hosts que requieren los datos, no para todos los hosts. Los escenarios de aplicación multicast típicos incluyen conferencias de voz o video, IPTV y releases de cotización de acciones.

En comparación con las transmisiones unicast, las transmisiones multicast tienen ventajas significativas. Por ejemplo, considere las situaciones ilustradas a continuación, donde 15 usuarios han solicitado ver la misma página web.

En el modo de transmisión unicast, el servidor envía 15 copias idénticas de los datos, lo que pone mucha presión en el servidor y los dispositivos de red involucrados (ver la primera ilustración).

En el modo de transmisiones multicast, el servidor envía sólo 1 copia de los datos a todos los 15 receptores (véase la segunda ilustración).

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe2f6bd3e.png

Multicast Distribution Tree (MDT).

Un árbol de distribución multicast (MDT) se denomina como tal debido al diseño de la topología de red. La raíz es la fuente multicast (el servidor) y las hojas son receptores multicast (clientes). La carga total de datos multicast en la red no aumenta con la adición de más clientes, que es la mayor ventaja de utilizar multicast.

En el siguiente ejemplo, aprenderá cómo los paquetes de datos multicast transmiten a lo largo de u****T en una red IP.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe379d360.png

En el modo de transmisión unicast, después de recibir un paquete de datos de una fuente, un router buscará la dirección IP de destino del paquete y luego determinará la interfaz saliente del paquete grabada en la tabla de reenvío.

Utilice la figura anterior como ejemplo. Si un paquete de datos de la fuente es solicitado por 7 receptores, el Router-X leerá 7 direcciones IP de destino y encontrará 2 interfaces salientes para el paquete de datos. Esta dirección IP de destino y el proceso de determinación de la interfaz saliente requieren mucho tiempo y pueden sobrecargar el router cuando un gran número de paquetes de datos son solicitados *****umerosos usuarios. Para resolver este problema, se introdujeron grupos multicast.

Grupo de multicast

Un grupo multicast consiste en un grupo de receptores que requieren el mismo flujo de datos, que no identifica hosts específicos en una red. Los grupos multicast son unidireccionales y útiles sólo en la dirección de transmisión de datos desde una fuente multicast a receptores.

Dirección de grupo de multicast

Las direcciones IP multicast pertenecen a direcciones de clase D (que van desde 224.0.0.0 y 239.255.255.255). Se utilizan para identificar grupos multicast para implementar el reenvío de paquetes IP correcto en la capa de red.

Las direcciones 224.0.0.0 a 224.0.0.255 se reservan para los protocolos de red locales. Por ejemplo, OSPF utiliza 224.0.0.5 y 224.0.0.6. Un router no reenvía paquetes cuyos destinos son estas dos direcciones, independientemente de lo que sean los valores TTL de paquetes.

Se requieren direcciones MAC para el reenvío de paquetes multicast en la capa 2 (capa de enlace de datos). Similar a las direcciones unicast MAC, la longitud de una dirección MAC multicast es de 48 bits, escrita como XX-XX-XX-XX-XX en notación hexadecimal. Según IEEE 802.3 el primer bit de una dirección MAC indica si la dirección es una dirección unicast, broadcast o multicast. Si el primer bit es 0, indica una dirección unicast; si el primer bit es 1, indica una dirección multicast o broadcast. Una dirección de difusión se escribe sólo en el formato de FF-FF-FF-FF-FF-FF La mayoría de las direcciones MAC multicast comienzan con 0x01-00-5E y están escritas en el formato 01-00-5E-XX-XX-XX.

Elementos de la Tabla de Forwarding de Multicast

En el ejemplo siguiente, al recibir un paquete de datos multicast, el Router-X primero busca la dirección IP de destino del paquete en la tabla de forwarding para encontrar la interfaz saliente que corresponda. De acuerdo con la explicación de la dirección de grupo multicast anterior, la dirección de destino de la tabla de reenvío multicast es la dirección del grupo multicast y la lista de interfaces salientes es {interfaz A, interfaz B}. Si la dirección del grupo multicast coincide con la dirección de destino del paquete multicast, el paquete multicast se envía desde las interfaces A o B.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe401a417.png

Sin embargo, debido a que los paquetes multicast se envían a un grupo de receptores, incrementa el potencial para el envío de tráfico multicast incorrecto, que puede interrumpir severamente la red. En la siguiente figura, las flechas azules representan el envío de datos multicast correcto. Si Router-X envía una copia de los datos multicast a Router-Y por error, muchos datos multicast innecesarios (representados por flechas rojas) inundarán la red, y utilizará muchos recursos (el impacto negati****umenta si existen loops de ruteo).

132330xacc6qnogz4nq85n.png

Para asegurar el reenvío correcto, los datos multicast deben ser reenviados a lo largo del MDT. Se implementa el Reverse Path Forwarding (RPF) para asegurar que se utiliza la ruta de reenvío correcta, y para evitar loops de ruteo. Durante el RPF, se verifica cuando un router recibe un paquete multicast, buscará la ruta de la fuente de multicast en la tabla de forwardeo unicast. Si la interfaz saliente utilizada en esta ruta es la interfaz entrante del paquete, el paquete multicast pasa la verificación RPF y se reenvía. Por lo tanto, en el forwardeo multicast, tanto la fuente como el destino de un paquete de datos multicast son atendidos.

RPF verifica cada paquete multicast, sin embargo, aumenta la carga de trabajo del router. Para resolver este problema, se implementan las verificaciones del unicast Reverse Path Forwarding (uRPF) antes de que la entrada de forwardeo se genere en la tabla de ruteo. De esta manera, la dirección de origen multicast, y la interfaz hacia la fuente de multicast, también se incluyen en la entrada de envío. Cuando se envían paquetes multicast, el router sólo necesita verificar si la dirección de origen del paquete es la fuente multicast de la tabla de envío, y la dirección de destino es el grupo multicast de la tabla de envío.

Si el resultado es correcto, el router verifica si la interfaz entrante del paquete es la interfaz hacia la fuente multicast. Si el resultado sigue siendo correcto, el paquete multicast se reenvía; de lo contrario, el paquete se descarta.

En resumen, una tabla de envío multicast contiene los siguientes elementos: Una fuente multicast, un grupo multicast, una interfaz conectada a la fuente multicast y la lista de interfaces salientes. El origen de multicast y el grupo de multicast suelen coincidir en pares y se muestran en forma de (S, G), en las que S representa una fuente multicast, y G para un grupo multicast. Como se muestra en la siguiente figura, la entrada de reenvío multicast generada por Router-X es (10.1.1.1, 255.1.1.1, GE1/0 / 0), {GE2/0 / 0 y GE3/0 / 0}.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe5f8e4b2.png

Multicast Forwarding Table of VPN-Instance: public net

Total 1 entry, 1 matched

00001. (10.1.1.1, 225.1.1.1), MID: 0, Flags: 0x0:0

     Uptime: 00:08:32, Timeout in: 00:03:26

     Incoming interface: GigabitEthernet1/0/0

     List of 1 outgoing interfaces:

       1: GigabitEthernet2/0/0

       2: GigabitEthernet3/0/0

 Matched 18696 packets(523488 bytes), Wrong If 0 packets

     Forwarded 18696 packets(523488 bytes)

Para generar una entrada de envío de multicast como el ejemplo anterior, el router debe descubrir lo siguiente:

·         ¿Cómo se establecen los grupos multicast?

·         ¿Qué son los receptores en un grupo multicast?

·         Fuentes de grupo multicast

¿Cómo se establecen los grupos multicast?

Para establecer grupos multicast, los routers deben primero aprender las direcciones IP de destino en las transmisiones unicast. Las direcciones IP son configuradas manualmente o asignadas dinámicamente por el servidor RADIUS para hosts. Estas direcciones IP se anuncian en la red para que los routers aprendan la topología de la red y generen rutas a través de protocolos de red. A continuación, el router selecciona las rutas óptimas y las coloca en las tablas de enrutamiento y reenvío. Para enviar un paquete, el router busca la dirección IP del paquete en la tabla de envío para encontrar la interfaz de salida apropiada.

Sin embargo, la dirección de destino de un paquete multicast es una dirección de grupo multicast que no representa una dirección de host. Como resultado, la dirección del grupo multicast no puede asignarse a un host o configurarse en una interfaz. En cambio, un grupo multicast es una convención entre la fuente multicast y los receptores, similar en medios como un canal de TV. Utilizando la siguiente figura como ejemplo, hay una lista de canales de TV correspondientes a las direcciones de grupo multicast en el cuadro de configuración set-to box (STB).

132336qrooj528up2oozno.png

Como se muestra en las tablas anteriores, las direcciones de grupo multicast tanto del STB como del servidor son idénticas.

¿Qué son los receptores en un grupo multicast?

Los receptores de un grupo multicast se identifican utilizando el Internet Group Management Protocol (IGMP). IGMP establece y gestiona la membresía en un grupo multicast en segmentos de red conectados directamente. Para ser más específico, gestiona los miembros del grupo en diferentes interfaces.

IPTV se utiliza como ejemplo para ilustrar cómo funciona IGMP:

132339crckwwojlezwpo99.png

·         Cuando un usuario STB quiere ver un canal de TV, el STB envía un mensaje IGMP Report para unirse al grupo multicast del canal de TV seleccionado (el grupo multicast 224.1.1.1 in este ejemplo).

·         Cuando el espectador deja de ver el canal de TV, el STB envía un mensaje IGMP Leave para dejar el grupo multicast de este canal.

·         El router envía mensajes IGMP Query para saber si hay receptores en un grupo multicast a través del mensaje Report o Leave de los hosts.

Similar a una audiencia seleccionando canales de TV (una audiencia puede encender y apagar el televisor, o cambiar entre canales en cualquier momento), el STB puede unirse o dejar un grupo multicast en cualquier lugar y en cualquier momento, sin límite.

Para mejorar la confiabilidad, se implementan dos o más routers en una LAN. Un "representante" para estos routers es seleccionado por IGMP para enviar los datos multicast a todos los receptores multicast. Este "representante" se llama Designated Router (DR) del receptor. Todos los receptores multicast reciben datos multicast y envían mensajes IGMP a través de este DR. Un ejemplo de esta red se muestra a continuación:

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe78c39c3.png

También se necesitan protocolos de ruteo de multicast para asegurar que las direcciones e información acerca de los miembros de los grupos multicast se envíen a todos los routers multicast de la red. Entre los diversos protocolos de enrutamiento multicast, el más utilizado es el (PIM) Protocol Independent Multicast.

Protocolo independiente significa que no existe un requisito de protocolo especial de ruteo unicast.

El protocolo PIM tiene dos modos: PIM-DM y PIM-SM.

PIM-DM

En la siguiente figura, el espectador (Receiver A) enciende la TV para ver un canal de TV. El STB reporta que desea recibir los datos multicast del grupo G, usando IGMP, al DR del receptor (Router-1).

El router-1 recibe la dirección IP del grupo multicast G. Sin embargo, el Router-1 no sabe dónde está la fuente multicast, por lo que se genera una entrada (*, G) donde * representa una fuente multicast.

132346jcgmzvygdmw7o17y.png

Cuando la fuente multicast envía datos multicast a la red, todos los routers multicast transmiten los datos. Como resultado, el Router-1, el Router-2 y el Router-3 todos receive los mismos datos multicast. Debido a que el receptor A desea los datos, el Router-1 envía los datos al Receptor A. Router-2 y Router-3 no envían los datos del origen al Receptor B o C.

Cuando se transmiten datos multicast en la red, los routers multicast pueden obtener la dirección IP de la fuente multicast, las interfaces entrantes a la fuente multicast y las direcciones IP de los grupos multicast. La lista de interfaces salientes incluye todas las interfaces conectadas a las interfaces downstream. En este punto se pueden generar entradas multicast (S, G). El receptor DR puede identificar sus receptores y actualizar la lista de interfaces salientes para obtener las entradas de forwarding de multicast.

Sin embargo, en el proceso detallado anteriormente, el Router-2 y Router-3 no tienen receptores. Para guardar recursos de red, ellos informan al router upstream eliminar las interfaces conectadas a ellos desde la lista de interfaces salientes, de manera que los datos multicast no se reenvían a ellos. Este proceso se denomina Prune. Cuando el proceso Prune está completo, todos los routers en la red tienen las entradas de forwardeo correctas, como se muestra en la siguiente figura.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbe87ea5b0.png

Además, la fuente multicast puede conectarse a la red con múltiples routers. Utilizando PIM-DM se selecciona un router como DR de origen para enviar y recibir datos multicast.

Sin embargo, algunos routers todavía tienen entradas (S, G) listadas después de que el proceso Prune ha sido completado, incluso cuando no tienen ningún receptor. Sólo sus listas de interfaces salientes están vacías. Para resolver este problema, se introdujo PIM-SM.

PIM-SM.                      

·         Seleccionar un "Agente"

Se selecciona un router multicast en la red como Punto de Rendezvous (RP) utilizando PIM-SM. El RP funciona como agente. Todos los demás routers en la red deben aprender la posición del RP. Al utilizar PIM-SM se selecciona otro router como DR de origen para enviar y recibir datos multicast.

·         Establecer un RP Tree

Una vez seleccionado el DR receptor, envía un mensaje PIM Join al RP. La entrada (*, G), utilizada para identificar la dirección de RP y la dirección del grupo, se anuncia a todos los routers entre el DR del receptor y el RP. Como resultado, el RP se establece como la raíz del árbol compartido. Similar a PIM-DM el receptor envía un mensaje IGMP Join to el DR del receptor para unirse al grupo de multidifusión G, y el router receptor genera la entrada (*, G).

132351qbre5b08kmg6mgkk.png

·         Registro de fuentes multicast

Cuando el DR de origen recibe datos multicast de la fuente multicast, debido a que aúne no tiene la entrada de envío multicast, encapsula el paquete de datos multicast recibido en un mensaje de Registro y envía este mensaje al RP para su notificación. El DR origen crea una entrada (S, G) local con una lista de interfaces vacía.

Después de recibir el mensaje de registro, el RP decapsula el mensaje y envía el paquete de datos multicast a los receptores a lo largo del RPT. Como resultado, cada router en el camino puede generar una entrada (S, G) correctamente y replicar toda la información de la interfaz desde la entrada (*, G).

Si no hay RPT cuando el RP recibe el mensaje de registro, el RP descarta el paquete.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbeb27f174.png

·         Establecer el Shortest Path Tree

Si se necesita enviar demasiados datos multicast al RP, el DR origen primero debe encapsular los datos multicast en los mensajes de Registro.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbebc1d45c.png

El RP tiene que descapsular cada mensaje de registro para extraer los datos multicast. Este es un proceso muy ineficiente. Para resolver este problema, el RP crea un árbol de ruta más corto Shortest Path Tree (SPT) entre el RP y el DR origen para recibir datos multicast directamente a través del SPT.

Para establecer un SPT, el RP crea una entrada (S, G) en la tabla multicast, en la que la interfaz entrante es la interfaz que recibe mensajes de Join. Luego envía un mensaje Join al DR origen Esto significa que todos los routers upstream de RP pueden recibir la entrada correcta (S, G) y que también se crea un SPT (con el DR origen como su raíz).

Después de recibir el mensaje Join de RP y la entrada correcta (S, G), el DR origen puede reenviar datos multicast basados en la entrada (S, G).

Una vez establecido el SPT, el RP puede recibir los datos multicast de un grupo multicast a través de la SPT y cambia la interfaz entrante a la interfaz que recibe los datos multicast.

El RP también puede enviar un mensaje de registro de registro al DR origen para evitar que el DR origen envíe datos multicast en los mensajes de registro.

Esto permite que el DR origen envíe paquetes de datos multicast sólo a través del SPT, deteniendo los paquetes de datos multicast siendo encapsulados y enviados como mensajes de registro.

Nota:

El DR origen seguirá enviando mensajes Register y paquetes de datos multicast a través del SPT, hasta recibir un mensaje de Stop Register. Esto se debe al siguiente escenario:

Los mensajes de Join son mensajes multicast que contienen:

·         Una dirección IP de origen idéntica a la interfaz local

·         Una dirección de destino 224.0.0.13

·         Un valor TTL de 1

Cuando un mensaje de Join enviado por el RP alcanza el DR origen, la dirección IP de origen del mensaje no es la del RP. Como resultado, el DR origen no puede identificar si el mensaje de registro fue enviado inicialmente por el RP o el DR del receptor (el DR del receptor también es capaz de enviar un mensaje de Join al DR origen). El DR origen tampoco puede determinar si los paquetes multicast que envió pueden ser recibidos por el RP. Sólo cuando el DR origen recibe un mensaje de Register Stop, el DR origen puede confirmar que sus paquetes multicast pueden ser recibidos por el RP.

El DR origen también debe confirmar si sus paquetes de datos multicast son recibidos por el RP. En las entradas (S, G) generadas por el RP, cuando el RP recibe mensajes de Registro desde el DR origen, la interfaz entrante es la que recibe el mensaje de Registro. Sin embargo, el RP no puede recibir paquetes de datos multicast y registrar mensajes en la misma interfaz. Como resultado, el DR origen debe confirmar que los paquetes multicast que envía pueden ser recibidos por el RP antes de que el DR origen deje de enviar mensajes Register.

·         Conmutación SPT

En el proceso anterior, todos los datos multicast deben ser reenviados por el RP, lo cual puede sobrecargar al RP cuando la tasa de envío de paquetes multicast es alta.

Para resolver este problema, el PIM-SM permite que el DR del receptor envíe mensajes Join a lo largo del árbol de ruta más corto al DR origen. Esto genera el SPT desde el DR del receptor hasta el DR origen. Entonces el DR del receptor envía un mensaje Prune al RP para cortar el RPT original. El DR origen corta el SPT entre el DR origen y el RP, permitiendo que los datos multicast sean reenviados a lo largo de su SPT en lugar de a través del RP. El proceso se ilustra en la siguiente figura.

https://forum.huawei.com/enterprise/en/data/attachment/forum/dm/ecommunity/uploads/2016/0331/14/56fcbece2e63a.png

 

 


  • x
  • convención:

Responder

Responder
Debe iniciar sesión para responder la publicación Inicio de sesión | Registrarse

Aviso: Para garantizar sus legítimos derechos e intereses, la comunidad y los terceros no publicarán contenido que pueda generar riesgos legales a las partes, por ejemplo, pornografía, contenido político, contenido sobre juego, consumo y tráfico de drogas, así como contenido que viole los derechos de propiedad intelectual de terceros, por ejemplo, secretos comerciales, marcas, derechos de autor, patentes y privacidad personal. No comparta su cuenta ni su contraseña con terceros. Todas las operaciones realizadas usando su cuenta se considerarán como sus acciones y todas las consecuencias que estas acciones generen serán responsabilidad suya. Para obtener información detallada, consulte la “ Política de privacidad.”
Si el botón para adjuntar no está disponible, actualice Adobe Flash Player con la versión más reciente
Respuesta rápida Desplácese hasta arriba