Red de conocimiento informático - Material del sitio web - Cómo unirse a un grupo de multidifusión específico usando el código fuente C#

Cómo unirse a un grupo de multidifusión específico usando el código fuente C#

La comunicación de multidifusión IP requiere una dirección de multidifusión especial. Una dirección IP de multidifusión es un conjunto de direcciones IP de Clase D que van desde 224.0.0.0 a 239.255.255.255.255, y muchas de estas direcciones están reservadas para fines especiales. Es mejor no utilizar direcciones en el rango 224.0.0.0 a 224.0.0.255, ya que en su mayoría se mantienen (como el protocolo IGMP).

IGMP es la base de la multidifusión IP. Básicamente, IGMP le dice al enrutador que alguien en la subred del enrutador está interesado en enviar datos a un grupo de multidifusión específico, de modo que cuando llegan datos para ese grupo de multidifusión, el enrutador no los descarta sino que los reenvía a todos los clientes interesados. Si A y B en diferentes subredes se van a comunicar en multidifusión, todos los enrutadores entre ellos deben admitir el protocolo IGMP; de lo contrario, no podrán comunicarse entre sí.

1 Utilice sockets para implementar multidifusión de origen arbitrario

Los pasos básicos para implementar la multidifusión UDP usando C# son:

(1) Crear un socket;

(2) Vincular socket y puerto;

(3) Unirse a un país de grupo de multidifusión;

(4) Pasar sendto /recvfrom Realizar transmisión de datos;

(5) Cierre el enchufe.

El siguiente es un ejemplo sencillo:

(1) Ejemplo de envío:

IPAddress ip = IPAddress.Parse("226.1.1.2"); p>

Socket s = nuevo Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Dgram);