1 / 15

Simple Multicast

Simple Multicast. Definido en “Simple Multicast: A Design for Simple, Low-overhead Multicast”, Internet Draft, <draft-perlman-simpe-multicast-01.txt>, Noviembre 1998. Protocolo único en ámbitos intra e interdominio. Grupo multicast identificado por 64 bits (dir core, grupo) (C,M).

xuan
Download Presentation

Simple Multicast

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Simple Multicast • Definido en “Simple Multicast: A Design for Simple, Low-overhead Multicast”, Internet Draft, <draft-perlman-simpe-multicast-01.txt>, Noviembre 1998. • Protocolo único en ámbitos intra e interdominio. • Grupo multicast identificado por 64 bits (dir core, grupo) (C,M). • Uso de mecanismos ya implementados en otros protocolos (PIM, CBT). • Despliegue incremental en la Internet (“túneles”). • Escalabilidad: • Esquema trivial de asignación de direcciones • Separación de los mecanismos de selección y descubrimiento de cores del protocolo. • Arboles compartidos bidireccionales: • Eficientes. • Menor estado en los routers. • Robustos. IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  2. Simple Multicast • Creación de un grupo • Selección de core • Emisor. • Nodo cercano a cualquier receptor. • Selección de dirección multicast en el core • Solicitándolo al core. • Generación al azar. • Anuncio de la dirección • Mail • Web • DNS • Well known IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  3. Simple Multicast: Join • Generación de JOIN-REQUEST • Determinar C y M. • Envío de requerimiento en la red local • IGMP modificado • Generación de JOIN-REQUEST por parte del host (Route Alert) • Recepción de JOIN-REQUEST • Router no SM: reenvío del JOIN-REQUEST, unicast hacia el Core • Router SM: • Si no tiene estado (C,M), propagar J-R hacia el Core • Agregado de interfaz de arribo como child para (C,M) • Envío de JOIN-ACK • Túneles • Tipo de interfaz • Tunel: si J-R/J-ACK recibido de un router SM no neighbor (costo TTL) • Directa: si J-R/J-ACK recibido de un router SM neighbor IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  4. Long payload (8) Numero de opciones (8) Reservado (16) Vers (4) Tipo(1) (4) Long direc (8) Checksum (16) Dirección de router que origina el JOIN (Variable) Dirección Core (C) (Variable) Dirección multicast m (Variable) Máscara dir. Multicast m (Variable) Tipo de opción 1 (8) Longitud de opción 1 (8) Valor de opción 1 (variable) . . . . . . . . . Formato JOIN-REQUEST 2 2 TTL inicial Opción TTL inicial Simple Multicast: JOIN-REQUEST Vers: versión del protocolo Tipo: Indica tipo de la PDU (1: J-R) Long. Direc.: Longitud en bytes de las direcciones (unicast o multicast) que lleva el paquete. Checksum: El complemento a uno de la suma del complemento a uno de los grupos de 16 bits del paquete Número de opciones: incluidas en la PDU Dirección Multicast/Máscara: se repite m veces Tipo de opción definida: TTL inicial IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  5. # de hops en el tunel, de emisor de JR a este router (16) Long payload (8) Numero de opciones (8) Vers (4) Tipo(2) (4) Long direc (8) Checksum (16) Dirección de router que origina el JOIN (Variable) Dirección Core (C) (Variable) Dirección multicast m (Variable) Máscara dir. Multicast m (Variable) Tipo de opción 1 (8) Longitud de opción 1 (8) Valor de opción 1 (variable) . . . . . . . . . Formato JOIN-ACK Simple Multicast: JOIN-ACK Vers: versión del protocolo Tipo: Indica tipo de la PDU (2: J-ACK) Long. Direc.: Longitud en bytes de las direcciones (unicast o multicast) que lleva el paquete. Checksum: El complemento a uno de la suma del complemento a uno de los grupos de 16 bits del paquete Número de opciones: incluidas en la PDU #de hops: TTL inicial - TTL del paquete IP, calculado por el emisor del J_ACK. Opciones: copiadas del J-R, excepto TTL inicial IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  6. L (1) 100 SM-IP-OPT (5) 0 0 0 0 1 1 0 0 Reservado (7) Dirección Core (16) Dirección Multicast (16) Simple Multicast: Envío de datos • Enviados con dirección de destino multicast ALL-SM-NODES (WK) en redes con routers SM. • Enviados con dirección de destino del próximo router SM en redes con routers intermedios no SM (túneles). • Enviados con dirección de destino CORE por nodos en redes no miembros • Definición de nueva opción IP para enviar C y M. • Proceso simple para envío en túneles: • sólo reemplazar dirección IP destino por dirección del túnel (el otro extremo). Tipo de opción: Copied Flag: 1 Option Class: 00 Option Number: SM_IP_OPTION Long: 12 L:En 1 indica no chequear este pquete por loops Dirección del Core: FFFFFFFF, el paquete debe ser reenviado en modo denso IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  7. C ALL-SM-NODES,NSM-1,...,C,M NSM-1 ALL-SM-NODES,NSM-1,...,C,M C,NSM-1,...,C,M SM-1 SM-2 ALL-SM-NODES,NSM-1,...,C,M SM-3 SM-4,NSM-1,...,C,M TUNEL SM-4 SM-5 ALL-SM-NODES,NSM-1,...,C,M Paquete multicast Paquete unicast Simple Multicast: envío de datos • Envío de datos IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  8. Simple Multicast: Detección de loops • En paquetes de datos • Un paquete con indicación de chequeo de TTL (opción IP) y TTL = 0 • Paquetes Keep-alive • Distancia al leaf demasiado grande • Eliminación de interfaz child • Paquetes heartbeat • Distancia desde el Core demasiado grande • Eliminación de interfaz parent IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  9. Simple Multicast: detección de ramas no usadas • Se realiza a tarvés de KEEP-ALIVEs • Un child envía K-A periódicamente a su parent. • Un parent que en un intervalo no ha recibido K-A de un child, elimina la interfaz. • Un router que ha eliminado todas las children para (C,M), deja de emitir K-A para (C,M) al parent. (optimización: unjoin al parent). IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  10. Long payload (8) Numero de opciones (8) Reservado (16) Vers (4) Tipo(3) (4) Long direc (8) Checksum (16) Dirección de router que origina el KEEP-ALIVE (Variable) Dirección Core (C) (Variable) Dirección multicast m (Variable) Máscara dir. Multicast m (Variable) Tipo de opción 1 (8) Longitud de opción 1 (8) Valor de opción 1 (variable) . . . . . . . . . Simple Multicast: KEEP-ALIVE • Enviado de child a parent periódicamente (si tiene algún child) • Opción route alert • Dirección destino (IP): ALL_SM_NODES o tunnel endpoint • Anuncia uno o varios grupos para el core *Vers: versión del protocolo *Tipo: Indica tipo de la PDU (3: K-A) *Long. Direc.: Longitud en bytes de las direcciones (unicast o multicast) que lleva el paquete. *Checksum: El complemento a uno de la suma del complemento a uno de los grupos de 16 bits del paquete *Número de opciones: incluidas en la PDU *Dirección Multicast/Máscara: se repite m veces IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  11. I Include/Exclude, Prefijo Emisor (16) Include/Exclude, Máscara Emisor (16) Opción Include/Exclude Senders 2 (8) 6 (8) contador hops (16) Tiempo para poda (16) #hops en tunel de receptor a emisor (16) Opción Keep alive 1 (8) 2 10 (8) 2 Reservado (15) TTL inicial Opción TTL inicial Simple Multicast: Opciones KEEP-ALIVE *Indica los emisores incluidos o excluidos de lo anunciado en la PDU (no opción) *Bit I: indica Include o Exclude *Prefijo/Máscara emisor, identifican al emisor *Un emisor (o conjunto) por cada instancia de la opción *0, una o varias opciones I/E por PDU *Una opción por (C, (M,Mask)) *Se aplica 1 a 1 (M,Mask) a opción. *Contador Hops: incrementado en 1 en cada router SM (tuneles: #hops en tunel) *#hops en tunel: registrado por el emisor del K-A. *Tiempo para poda: Luego del cual, si no se recibe K-A, se elimina la interfaz. IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  12. Simple Multicast: detección de cambios hacia el Core • A través de mensajes HEARTBEAT emitidos regularmente por el Core hacia las hojas • Un nodo emite heartbeats a sus children a intervalos regulares, sin que sea necesario que los reciba de su parent. • Flag “Core alive”, permite determinar si el core está conectado al árbol. • Funciones adicionales en opciones HEARTBEAT: • Creación de grupos secundarios dinámicamente (spin-off) • Control de acceso (Include/Exclude senders) IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  13. Long payload (8) Numero de opciones (8) Reservado (16) Vers (4) Tipo(4) (4) Long direc (8) Checksum (16) Dirección de router que origina el HEARTBEAT (Variable) Dirección Core (C) (Variable) Dirección multicast m (Variable) Máscara dir. Multicast m (Variable) Tipo de opción 1 (8) Longitud de opción 1 (8) Valor de opción 1 (variable) . . . . . . . . . Simple Multicast: HEARTBEAT • Enviado de parent a children periódicamente • Opción route alert • Dirección destino (IP): ALL_SM_NODES o tunnel endpoint • Anuncia uno o varios grupos del core *Vers: versión del protocolo *Tipo: Indica tipo de la PDU (4: HEARTBEAT) *Long. Direc.: Longitud en bytes de las direcciones (unicast o multicast) que lleva el paquete. *Checksum: El complemento a uno de la suma del complemento a uno de los grupos de 16 bits del paquete *Número de opciones: incluidas en la PDU *Dirección Multicast/Máscara: se repite m veces IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  14. 2 (8) 6 (8) Distancia desde core (16) Dirección de Core Ci (16) Tiempo para shutdown (16) #hops en tunel de receptor a emisor (16) Dirección Multicast Mi (16) Opción spin-off groups 1 (8) #grupos X 8 (8) Reservado (16) Reservado (15) A Opción Heartbeat Simple Multicast: Opciones HEARTBEAT Opción Include/Exclude: Igual que KEEP-ALIVE, pero indica listas de emisores permitidos y no permitidos Opción Initial TTL: Igual que KEEP-ALIVE *Indica los grupos secundarios a (C,M) creados por requerimiento de algún emisor *Ci: core para grupo secundario *Mi: dirección multicast del grupo secundario en el nuevo core. *Una opción por (C, (M,Mask)) *Se aplica 1 a 1 (M,Mask) a opción. *Contador Hops: incrementado en 1 en cada router SM (tuneles: #hops en tunel) *#hops en tunel: registrado por el emisor del HEARTBEAT. *Tiempo para shutdown: Tiempo restante de vida del grupo. *A: Indica si el core está conectado al emisor del HEARTBEAT. IP Multicast 1999 - grigotti@exa.unicen.edu.ar

  15. Simple Multicast • Otras funciones • Determinación de neighbors SM: Hellos • Desconexión del árbol hacia las hojas: Flush-tree • Características en evaluación: • Capacidad para seleccionar modo denso • Capacidad para realizar un Join a múltiples grupos IP Multicast 1999 - grigotti@exa.unicen.edu.ar

More Related