SMART Multicast es un método experimental de multidifusión IP segura y fiable. Permite a un usuario reenviar datagramas IP a un grupo ilimitado de receptores. Consulte el artículo sobre multidifusión para obtener una discusión general sobre este tema; este artículo trata específicamente sobre SMART IP Multicast.
Usos SMART de multidifusión
IP Multicast se ha implementado con éxito en entornos de redes privados y controlados, por ejemplo; IP sobre fibra: operadores de televisión por cable, instituciones educativas con importantes aplicaciones de alojamiento para estudiantes en el campus y del sector financiero, como tickers de acciones y sistemas hoot-n-holler . Sin embargo, la multidifusión IP ha tardado en adoptarse en el entorno de enrutamiento entre dominios. Esto se debe a que la infraestructura actual entre dominios carece de las herramientas necesarias para manejar de manera eficiente la pérdida de paquetes y la seguridad necesaria para crear un modelo comercial funcional.
SMART IP Multicast es un protocolo experimental que permite la transmisión entre dominios de multidifusión IP segura y confiable, superando así los desafíos de implementar transmisiones de multidifusión IP entre dominios de área amplia. SMART IP Multicast reduce la complejidad de implementar IP Multicast de área amplia de la misma manera que MFTP (Protocolo de transferencia de archivos de multidifusión) logra este objetivo para la transferencia de archivos, es decir, permite que la seguridad y la confiabilidad tengan una interoperabilidad total.
La distribución de archivos IP Multicast ha sido el uso más exitoso de IP Multicast dentro de campus y redes comerciales. Para la distribución de archivos, la mayoría ha utilizado alguna variante del protocolo experimental MFTP (Protocolo de transferencia de archivos de multidifusión). MFTP es seguro y confiable y se ejecuta sobre el protocolo IP Multicast. Al igual que MFTP, SMART Multicast es un contenedor que se ejecuta sobre IP Multicast, aprovechando la eficiencia de IP Multicast. Las multidifusiones SMART son seguras, confiables y brindan retroalimentación bidireccional.
Para obtener más información, consulte RFC3170 - Aplicaciones de multidifusión IP: desafíos y soluciones
Historia e hitos
SMART admite una multidifusión de implementación similar a MBONE entre sitios mediante el uso de túneles de multidifusión asignados dinámicamente. SMART aprovecha SIMPLE (escalamiento de nivel de protocolo de multidifusión de implementación automática)
Estructura del protocolo SMART experimental
Estructura de paquetes para SRM-P2MPPAQUETE DE DATOS Mensaje TYP = 0x00 (binario 00)ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 2RESERVADO 4TAMAÑO DEL PAQUETE 16PACKET_NUMBER 16FORMATO DE PAQUETE 2DECRYPT_Y_N 1TRANQUILO 4RESERVADO 1[...CARGA ÚTIL] 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Secuencia de paquetes | FMT D QUIET R RESERVADO | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Carga útil [1] | + - - + | ........... | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +(6 bits 64 tipos)MENSAJES Mensaje TYP = 0x01 (binario 1)ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16[...CARGA ÚTIL]ADDR_RANGE CHANGE CMD = 01 (binario 000001) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección [1] | + - - + | Dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + USAGE_REPORT_JOIN CMD = 0x0002 (binario 000010) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección [1] | + - - + | Dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + USAGE_REPORT_LEAVE CMD = 0x0003 (binario 000011) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección [1] | + - - + | Dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +ERROR_REPORT CMD = 0x000B (binario 001011) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección de notificación [1] | + - - + | Concerniente a la dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Datos del mensaje [1] | + - - + | Datos de mensaje [2] | + - - + | Datos de mensaje [3] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +PROBLEM_REPORT CMD = 0x0010 Binario (010000) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección de notificación [1] | + - - + | Concerniente a la dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Datos del mensaje [1] | + - - + | Datos de mensaje [2] | + - - + | Datos de mensaje [3] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +MENSAJES Mensaje TYP = 0x02 (binario 10) Solicitudes de reemplazoACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16[...CARGA ÚTIL] REEMPLAZO CMD = 01 (binario 000001) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección de multidifusión [1] | + - - + | Secuencia # | | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + SILENCIOSO = 0x0002 (binario 000010) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección de multidifusión [1] | + - - + | Duración # | | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +MENSAJES Mensaje TYP = 0x03 (binario 11) Solicitudes de tunelizaciónACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16[...CARGA ÚTIL] REQUEST_TUNNEL CMD = 01 (binario 000001) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección [1] | + - - + | Dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + LEAVE_TUNNEL = 0x0002 (binario 000010) 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 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Sincronización de acceso | TYP CMD RESRV | Tamaño del paquete | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Dirección [1] | + - - + | Dirección [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
Direccionamiento
Hay cuatro formas de direccionamiento IP, cada una con sus propias propiedades únicas.
- Unicast : el concepto más común de una dirección IP es una dirección unicast. Normalmente se refiere a un solo remitente o un solo receptor.
- Difusión : envío de datos a todos los destinos posibles. Por ejemplo, para enviar a todas las direcciones dentro de una red con el prefijo 192.0.2, la dirección IP de transmisión dirigida es 192.0.2.255.
- Multidifusión : una dirección de multidifusión está asociada con un grupo de receptores interesados. Según RFC 3171, las direcciones 224.0.0.0 a 239.255.255.255 se designan como direcciones de multidifusión. Los enrutadores se encargan de hacer copias de los datagramas y enviarlos a todos los receptores que han registrado su interés en recibir datos específicos.
- Anycast : como broadcast y multicast, anycast es una topología de enrutamiento de uno a muchos. Sin embargo, el flujo de datos no se transmite a todos los receptores, solo al que el enrutador decide que es el "más cercano" en la red. Anycast es útil para equilibrar cargas de datos. Se utiliza en DNS y UDP .
Protocolos de multidifusión IP
- Protocolo de administración de grupos de Internet (IGMP)
- Protocolo de multidifusión independiente (PIM)
- Protocolo de enrutamiento de multidifusión por vector de distancia (DVMRP)
- BGP de multidifusión (MBGP)
- Protocolo de descubrimiento de origen de multidifusión (MSDP)
- Descubrimiento de escucha de multidifusión (MLD)
- Protocolo de registro de multidifusión GARP (GMRP)
- DNS de multidifusión (mDNS)
- Multidifusión SMART (SMART)