IP multicast

Anuncio
Versión 28/02/11
:: Redes ::
aplicación
transporte
red
Redes : : IP multicast
enlace
IP multicast
física
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
1
Contenidos
Introducción
Grupos Multicast
IGMP
Redes : : IP multicast
Enrutamiento Multicast
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
2
Introducción
El envío de datagramas en IP es de dos tipos:
●
●
Unicast. Un origen a un solo destino.
Broadcast. Un origen a todos los hosts de la sub-red. Los
encaminadores no permiten que estos datagramas salgan de la
sub-red
Redes : : IP multicast
Algunos tipos de aplicaciones necesitan un método eficiente
para enviar mensajes a un grupo de nodos en cualquier
parte de la red.
Se trata de evitar que el origen tenga que enviar una copia del
mensaje a cada destino.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
3
Grupos multicast
IP multicast permite el envío de datagramas a un grupo
concreto de nodos.
El grupo completo de nodos se identifica por una única
dirección IP (una dirección multicast)
Redes : : IP multicast
Los grupos son dinámicos, los nodos pueden entrar y salir de
un grupo en cualquier momento. Un nodo puede ser miembro
de varios grupos de forma simultánea.
No hay limitaciones en el número de nodos que pueden estar
un grupo.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
4
Grupos multicast
Un nodo puede enviar a un grupo sin pertenecer a él.
Los grupos pueden ser permanentes o temporales.
Los grupos permanentes tiene dirección IP fijas asignadas
Los grupos temporales existen sólo mientras tengan
Redes : : IP multicast
miembros.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
5
Direcciones multicast
Todas las direcciones multicast son de clase D.
Cada dirección identifica un grupo multicast: 228 grupos
Redes : : IP multicast
Algunas direcciones multicast especiales:
●
224.0.0.0
- Reservado
●
224.0.0.1
- Todos los hosts de esta red
●
224.0.0.2
- Todos los enrutadores de esta red
●
224.0.0.5
- Todos los enrutadores OSPF
●
224.0.0.11 -
Todos los agentes móviles
Nota
Lista
Lista de
de direcciones
direcciones IP
IP multicast
multicast asignadas
asignadas estáticamente:
estáticamente:
http://www.iana.org/assignments/multicast-addresses
http://www.iana.org/assignments/multicast-addresses
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
6
Envío de paquetes multicast
El envío de datagramas IP multicast a otras redes lo realizan
enrutadores multicast. Pueden utilizarse enrutadores
unicast/multicast o se puede usar otros específicos.
Operación de envío:
●
●
Redes : : IP multicast
●
Un nodo transmite un paquete IP multicast (en una trama Ethernet
multicast), llegando a todos los miembros del grupo en la sub-red.
Los enrutadores de la sub-red son responsables de hacer llegar ese
paquete a todas las redes en las que haya miembros de ese grupo.
En las redes distantes, el enrutador debe encapsular el paquete sobre
una trama multicast para que llegue a todos los nodos suscritos al
grupo.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
7
Multicast en el nivel de enlace
En la LAN, los paquetes IP multicast se encapsulan en tramas muticast.
La dirección física multicast se construye a partir de un patrón de 25 bits
más los 23 bits de la dirección IP del datagrama
IP clase D: 32 bits
23 bits
1110
01:00:5E:0
Redes : : IP multicast
Ethernet: 48 bits
En una WAN donde raramente se soporta multicast, el datagrama
multicast se encapsula en un datagrama unicast (tunneling)
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
8
Ventajas y desventajas
Ventajas
●
Se ahorra ancho de banda
●
Disminuye la carga de los servidores
Desventajas
●
Distribución no confiable de los paquetes. No se puede usar TCP
●
Duplicación de paquetes, debida a errores de enrutamiento
Redes : : IP multicast
●
Congestión. Las aplicaciones multicast no pueden implementar
un mecanismo de control como el de TCP.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
9
Protocolo IGMP (Internet Group Management Protocol)
Es un protocolo específico para la gestión de grupos multicast.
Los nodos de una red local lo utilizan para notificar a los enrutadores
multicast su entrada y salida de los grupos
Formato del mensaje IGMP:
0
1
2
3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
tipo
tiempo máximo
de respuesta
checksum
Redes : : IP multicast
dirección del grupo
●
●
tipo: a) pregunta general o especial (0x11), b) informe de membresía (0x16)
y c) salida (0x17)
tiempo máximo: un valor tiempo (en decenas de segundos) en el que una
petición será respondida.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
10
Protocolo IGMP
Formato del mensaje IGMP:
tipo:
2
3
0
1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
tipo
tiempo máximo
de respuesta

checksum

dirección del grupo

●
a) pregunta general o
especial (0x11),
b) informe de
membresía (0x16)
c) salida (0x17)
tiempo máximo: un valor tiempo (en decenas de segundos) en el que una
petición será respondida.
Redes : : IP multicast
Encapsulación:
cabecera IP
cabecera
de trama
TTL:1
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
cabecera
IGMP
datos
IGMP
área de datos IP
área de datos de la trama
terminador
de la trama
11
Protocolo IGMP :: operación
Los enrutadores multicast utilizan IGMP para aprender las
direcciones de los grupos con miembros en la sub-red
Un enrutador multicast mantiene una lista de grupos.
Cuando un nodo quiere entrar en un grupo envía un paquete de
petición de suscripción. Si el nodo sabe que hay otros
miembros activos no envía nada.
Redes : : IP multicast
petición para entrar en el grupo
0x16
0
dirección del grupo
host o enrutador
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
12
Protocolo IGMP :: salir de un grupo
Cuando un nodo quiere dejar un grupo, envía un mensaje de salida
del grupo a 224.0.0.2 (todos los enrutadores multicast de la sub-red)
Cuando el enrutador interrogador recibe un mensaje de salida envía
un mensaje de pertenencia a ese grupo para averiguar si queda
algún nodo más, antes de abandonarlo él mismo.
petición para salir del grupo
0x17
0
Redes : : IP multicast
dirección del grupo
comprobación especial de membresía
0x11
100
dirección del grupo
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
13
Protocolo IGMP :: mantenimiento de grupos
Un enrutador (el interrogador) envía periódicamente mensajes IGMP de
pertenencia a grupos a la dirección 224.0.0.1. (todos los nodos mcast)
Cuando un nodo recibe ese paquete inicia un temporizador aleatorio para
cada uno de los grupos a los que pertenece.
Cuando el temporizador expira, envía un mensaje de pertenencia.
Si el enrutador no recibe ningún mensaje de pertenencia después de ese
tiempo, elimina a su vez su suscripción al grupo.
Redes : : IP multicast
comprobación general de membresía
0x11
100
0.0.0.0
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
14
Enrutamiento Multicast
Diferencias con el enrutamiento unicast.
●
●
Entra un solo datagrama pero puede ser necesario generar
copias que saldrán por varios interfaces.
La tabla de enrutamiento es más compleja y más costosa de
mantener.
El datagrama unicast se enruta a través de un grafo, mientras
que el multicast se enruta a través de un árbol.
Redes : : IP multicast
Hay dos clases de árboles
●
Árbol con raíz en el origen del paquete
●
Árbol compartido
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
15
Enrutamiento Multicast :: Árboles
Árbol de núcleo
Redes : : IP multicast
Árbol con raíz en el origen
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
16
Enrutamiento Multicast :: Árboles
Redes : : IP multicast
Tipos de árboles
●
bidireccionales.
●
unidireccionales.
Árbol de núcleo bidireccional
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
17
Enrutamiento Multicast :: Árboles
Tipos de árboles
●
bidireccionales.
●
unidireccionales.
Árbol de núcleo bidireccional
Redes : : IP multicast
Árbol de núcleo unidireccional
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
18
Enrutamiento Multicast
La mayoría de los protocolos de enrutamiento multicast utilizan
la técnica RPF (Reverse Path Fordwarding), Reenvío por Ruta
Inversa
La información de enrumatiento se puede obtener de la tabla de
enrutamiento unicast o usar una especifica, como DVMRP
(Distance Vector Multiple Routing Protocol)
La transmisión multicast se puede limitar de dos modos:
●
Redes : : IP multicast
●
Con un umbral TTL
Utilizando direcciones con el prefijo 239.0.0.0/8 que no se
transmiten fuera de una red corporativa
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
19
Enrutamiento Multicast
Tipos de protocolos:
de modo denso (DVMRP y PIM-DM): Asumen que en cada red
existe, al menos, un receptor activo en cada grupo
de modo disperso (PIM-SM y CBT): En este caso, se asume que
la mayoría de las redes no tiene ningún receptor para los grupos
activos.
Redes : : IP multicast
de estado de enlace (MOSPF): Es como los protocolos de modo
denso, pero el método de actualización de las tablas está basado
en OSPF.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
20
Enrutamiento Multicast :: Protocolos de modo denso
Utilizan la inundación y poda de ramas en la transmisión de
paquetes a un grupo.
Pasado un tiempo, un enrutador vuelve a enviar paquetes
multicast de un grupo podado.
Los enrutadores que han enviado un mensaje de poda, y
desean volver a recibir paquetes del grupo podado, envían un
mensaje “injerto”
Redes : : IP multicast
Utilizan árboles con raíz en el origen.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
21
Enrutamiento Multicast :: Protocolos de modo disperso
Usan árboles de núcleo.
Los enrutadores suponen que, por defecto, no ningún host
interesado en ningún grupo multicast.
Cuando un enrutador tiene un nodo que pertenece a un grupo,
envía una solicitud al enrutador siguiente con destino en la raíz del
árbol del grupo.
Redes : : IP multicast
Cuando un enrutador no tiene receptores de un grupo concreto,
envía un mensaje de poda al siguiente enrutador hacia la raíz del
árbol de ese grupo.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
22
Referencias
Se recomienda repasar y profundizar el contenido de este tema utilizando (al
menos) la siguiente bibliografía básica:
B.F. Transmisión de datos y redes de comunicaciones, cuarta edición 2007.
Redes : : IP multicast
●
Sección 21.3 y 22.4.
David Villa <David.Villa@uclm.es> :: http://www.inf-cr.uclm.es/www/dvilla/
23
Descargar