IP Multicast

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

IP Multicast es un método para transmitir datagramas IP a un grupo de receptores interesados. Puedes ver el artículo de multidifusión para ver una discusión general del asunto. En este artículo se trata específicamente la multidifusión IP.

Implementaciones de multidifusión IP[editar]

Los operadores de Pay-TV y algunas instituciones educativas con grandes redes de ordenadores han usado la multidifusión IP para ofrecer streaming de vídeo y audio a alta velocidad a un gran grupo de receptores. También hay algunos casos en que se ha utilizado para transmitir videoconferencias. De todas formas se ha relegado a ámbitos de investigación y educación que tienen más posibilidades de ofrecer las grandes necesidades de redes que precisa este método.

Otro uso que se le ha dado, también a nivel comercial, es el de distribuir archivos. Particularmente para ofrecer imágenes de arranque de sistemas operativos. Respecto a los sistemas tradicionales permite un menor uso del ancho de banda de la red.

Multicast IP es una prestación muy poderosa de las redes IP que permite, al mismo tiempo, que múltiples operadores de CCTV puedan visionar y grabar, de manera eficiente, secuencias de vídeo de CCTV captadas por la misma cámara. Las redes multicast aseguran que el flujo de vídeo sólo llegue a los usuarios que necesitan verlo. De este modo se consiguen importantes ahorros en el consumo de ancho de banda de la red. Para poder utilizar la tecnología multicast IP es preciso que los switchers y routers de red sean compatibles con los protocolos multicast y los tengan correctamente configurados.

Fuera de esas áreas no ha tenido mucho éxito. Fundamentalmente por dos factores, cada uno referido al otro. Por una parte el tráfico generado por la multidifusión IP es realmente complejo, sobre todo cuando tiene que ver con la comunicación a dos vías. Además este método tiene la desventaja de que su implementación a gran escala puede venir acompañado de puntos adicionales de fallo. Particularmente de ataques de denegación de servicio.

Historia[editar]

En 1992 se hizo un intento experimental llamado MBONE de crear una red multicast a través de Internet usando túneles. De esta forma se conseguiría un ahorro importante de ancho de banda para las aplicaciones multimedia. El experimento quedó solo en eso. Motivado, entre otras cosas, por las dificultades que representaba para los ISPs ofertar redes con soporte de multidifusión IP.

Direccionamiento[editar]

Existen cuatro formas de direccionamiento IP. Cada una de ellas con sus propiedades únicas.

  • Unicast: El concepto más común de una dirección IP es una dirección unicast. Se refiere normalmente a un único emisor o receptor y puede ser usada tanto para enviar como para recibir. Este tipo de dirección suele estar asociada a un único dispositivo u ordenador pero no implica una correspondencia uno a uno. Algunos PC individuales tienen varias direcciones unicast cada una para un propósito diferente. Para enviar la misma información a diferentes direcciones unicast el emisor debe enviar dichos datos una vez por cada receptor.
  • Broadcast: Enviar los datos a todos los destinos posibles (un "broadcast a todos los hosts") permite al emisor enviar los datos una única vez a todos los receptores. En el protocolo IP, la dirección 255.255.255.255 representa un broadcast limitado localmente. También se puede hacer un broadcast directo (y limitado) combinando el prefijo de red con el sufijo de hosts compuesto únicamente de 1 binarios. Por ejemplo para una red con el prefijo 192.0.2 la dirección IP a usar será la 192.0.2.255 (asumiendo que la máscara de red es la 255.255.255.0).
  • Multicast: Una dirección multicast está asociada con un grupo de receptores interesados. De acuerdo al RFC 3171 las direcciones desde la 224.0.0.0 a la 239.255.255.255 están destinadas para ser direcciones de multicast. Este rango se llama formalmente "Clase D". El emisor envía un único datagrama (desde la dirección unicast del emisor) a la dirección multicast y el router se encargará de hacer copias y enviarlas a todos los receptores que hayan informado de su interés por los datos de ese emisor.
  • Anycast: Como el broadcast y el multicast, con anycast se representa una topología de uno a muchos. Sin embargo el flujo de datos no es transmitido a todos los receptores. El router lo enviará únicamente al que considere que esté más cerca en la red. Este método es muy útil para conseguir balancear las cargas de datos. Es el método usado por los sistemas DNS.

Protocolos y aplicaciones[editar]

Dado que las transmisiones multicast y unicast son diferentes, sólo los protocolos diseñados para multicast pueden ser usados efectivamente con este.

La mayoría de los protocolos de aplicaciones existentes que usan multicast lo hacen sobre UDP. Otras aplicaciones, sobre todo aquellas que tienen que transmitir contenidos multimedia, lo hacen usando el protocolo RTP; además del protocolo RSVP para reservar el ancho de banda necesario para la distribución del contenido.

La distribución en una red local está controlada por el protocolo IGMP (en una red IPv4) y por MLD (en una red IPv6). Dentro de un dominio de enrutamiento se usa el protocolo PIM y entre dominios se debe usar algún protocolo de enrutamiento multicast entre dominios como el MBGP.

Se pueden encontrar muchos errores si un paquete destinado a una dirección unicast es encaminado accidentalmente a una dirección multicast. Concretamente se ha usado el envío de paquetes ICMP a una dirección multicast como una forma de conseguir la amplificación de paquetes a través de un Ataque de denegación de servicio.

Asignaciones de direcciones IPv4 multicast[editar]

El rango de direcciones de clase D, que está asociado aún con direcciones de multicast, no se asignan a direcciones unicast tradicionales. De hecho la reserva de grupos de direcciones de multicast ha solido ser una fuente de problemas y puede llevar a múltiples e insatisfactorias soluciones.

Existen varias estrategias para lograr solventar el problema. Estas son solo algunas de ellas. Para más información deberá leer el documento RFC 3171.

El bloque 224.0.0.0/24 es solo para enlaces multicast locales. Aquí solo pueden encontrar cosas como protocolos de enrutado. Los datagramas a estas direcciones no deberían ser reenviadas por los routers.

Gran parte del resto del espacio de direcciones entre 224/8 ha sido asignado y usado por diversidad de aplicaciones a lo largo de los años o, simplemente, ha sido reservado por la IANA. Este bloque ha sido denominado despectivamente como el pantano multicast.

El bloque 232.0.0.0/8 está reservado para usarse por el protocolo de SSM.

239.0.0.0/8 es actualmente un espacio para uso administrativo. El uso de este bloque se especifica en el documento RFC 1918. Sin embargo en otro, el RFC 2365, indica que parte de este segmento tiene un uso parecido a un espacio de direcciones unicast privadas. Sin embargo la mayoría de operadores lo tratan como dice el primer documento.

El resto de la Clase D está marcado actualmente como reservado por la IANA.

Asignaciones de direcciones IPv6 multicast[editar]

Según la RFC4291 en su sección 2.7, una dirección multicast en IPV6 es un identificador para un grupo de interfaces, (Típicamente en diferentes nodos). Una interfaz puede pertenecer a varios grupos multicast. A continuación se muestra el formato de direccionamiento multicast para IPV6:

      |   8    |  4 |  4 |                  112 bits                   |
      +------ -+----+----+---------------------------------------------+
      |11111111|flgs|scop|                  group ID                   |
      +--------+----+----+---------------------------------------------+

Los primeros dos dígitos hexadecimales son FF, esto es lo que caracteriza a las direcciones multicast en IPV6.

flgs es una serie de 4 flags:

|0|R|P|T|

El primero bit siempre es 0. Si T=0, quiere decir que la dirección es permanente, y es asignada por IANA. Si T=1, es una dirección dinámica.

El bit P es definido en la RFC3306, el cual está orientado a redes multicast IPV6 basadas en prefijos unicast el nuevo formato es el siguiente:

       |   8    |  4 |  4 |   8    |    8   |       64       |    32    |
       +--------+----+----+--------+--------+----------------+----------+
       |11111111|flgs|scop|reserved|  plen  | network prefix | group ID |
       +--------+----+----+--------+--------+----------------+----------+


Si P=0 indica que significa que la dirección asignada no está basada en un prefijo de red. Si P=1 indica una dirección multicast asignada bajo un prefijo de red. Si P=1, T debe ser 1.

La función de R está descrita en el RFC3956, y enuncia redes multicast IPV6 basadas en prefijos unicast modificada, el diagrama es el siguiente:

       |   8    |  4 |  4 |  4 |  4 | 8  |       64       |    32    |
       +--------+----+----+----+----+----+----------------+----------+
       |11111111|flgs|scop|rsvd|RIID|plen| network prefix | group ID |
       +--------+----+----+----+----+----+----------------+----------+


Si R=1 indica una dirección multicast que incluya la dirección en la RP. Si R=1 P y T tienen que ser igual a 1. Si R=0, significa que el RP no está incluido en la dirección.

Scop es una serie de 4 bits que se utilizan para limitar el alcance en las redes multicast IPV6, los valores son los siguientes:

         0-Reservado.
         1-Interfaz de ámbito local.
         2-Ámbito de enlace local.
         3-Reservado.
         4-Ámbito de administración local.
         5-Ámbito de sitio local.
         6-(sin asignar).
         7-(sin asignar).
         8-Ámbito de organización local.
         9-(sin asignar).
         A-(sin asignar).
         B-(sin asignar).
         C-(sin asignar).
         D-(sin asignar).
         E-Ámbito global.
         F-Reservado.

Distribución en la capa 2[editar]

Multicast fiable[editar]

Protocolos IP multicast[editar]

Software IP multicast[editar]

Enlaces externos[editar]