Alguien me puede mostrar un ejemplo en java para recibir datos de DatagramSocket y el envío de datos a través de multidifusión mismos zócalojava DatagramSocket recibir datos de multidifusión envío de un conector de datos
Respuesta
Envío de datagramas de multidifusión
Con el fin de enviar cualquier tipo de datagrama en Java, ya sea unicast, broadcast o multicast, se necesita un java.net.DatagramSocket
:
DatagramSocket socket = new DatagramSocket();
Uno puede suministrar opcionalmente un local de puerto al constructor DatagramSocket al que el socket debe enlazar. Esto solo es necesario si uno necesita que otras partes puedan comunicarse con nosotros en un puerto específico. Un tercer constructor toma el puerto local Y la dirección IP local a la que enlazar. Esto se usa (raramente) con hosts multi-hogar donde es importante en qué adaptador de red se recibe el tráfico.
DatagramSocket socket = new DatagramSocket();
byte[] b = new byte[DGRAM_LENGTH];
DatagramPacket dgram;
dgram = new DatagramPacket(b, b.length,
InetAddress.getByName(MCAST_ADDR), DEST_PORT);
System.err.println("Sending " + b.length + " bytes to " +
dgram.getAddress() + ':' + dgram.getPort());
while(true) {
System.err.print(".");
socket.send(dgram);
Thread.sleep(1000);
}
Recepción de datagramas de multidifusión
se puede utilizar un DatagramSocket normales para enviar y recibir datagramas unicast y broadcast y multicast para enviar datagramas. Sin embargo, para recibir datagramas de multidifusión, se necesita un MulticastSocket. La razón de esto es simple, se necesita realizar trabajo adicional para controlar y recibir tráfico de multidifusión por todas las capas de protocolo debajo de UDP.
byte[] b = new byte[BUFFER_LENGTH];
DatagramPacket dgram = new DatagramPacket(b, b.length);
MulticastSocket socket =
new MulticastSocket(DEST_PORT); // must bind receive side
socket.joinGroup(InetAddress.getByName(MCAST_ADDR));
while(true) {
socket.receive(dgram); // blocks until a datagram is received
System.err.println("Received " + dgram.getLength() +
" bytes from " + dgram.getAddress());
dgram.setLength(b.length); // must reset length field!
}
Para más información:
¿Es posible que cada cliente pueda enviar y recibir en un grupo de transmisión? (define 2 socket como DatagramSocket para enviar y MulticastSocket para recibir) – Razavi
Tienes que volver al frente. Usted recibe multidifusiones a través de un MulticastSocket pero no necesita enviarlas de esa manera: puede enviarlas a través de un DatagramSocket.
No estoy seguro de cuán cierto es el comentario anterior. No pude enviar el paquete de multidifusión a través de un DatagramSocket normal. Solo cuando comencé a usar un MulticastSocket en el lado del servidor, comenzó a mostrarme el tráfico saliente al olfatear los paquetes en el extremo del servidor. –
- 1. Java Multicast Envío de datos, no recibido
- 2. Cómo recibir paquetes de multidifusión en Android
- 3. Envío de paquetes a 255.255.255.255 por Java DatagramSocket falla
- 4. Adición de tiempo de espera a DatagramSocket - recibir()
- 5. Envío de datos binarios
- 6. MSMQ: no se puede recibir de las colas de multidifusión
- 7. profiler mysql "Envío de datos"
- 8. ¿debo usar while (true) para recibir datos de Socket?
- 9. Game Center - Envío y recepción de datos
- 10. ¿Cómo puedo recibir datos de una PC en un Arduino?
- 11. C# métodos de rendimiento para recibir datos de un socket?
- 12. Envío de datos de ganglia a grafito
- 13. Java DatagramSocket escucha en una dirección de difusión
- 14. Recibir datos de un dispositivo USB en C o C++
- 15. Java DatagramPacket (UDP) Tamaño máximo de búfer de envío/recv
- 16. Recepcion y envío de datos en C#
- 17. ¿Cómo envío datos de POST con LWP?
- 18. Backbone.Js Envío de datos con destroy()
- 19. Ejemplo de envío de un correo electrónico con datos adjuntos a través de Amazon en Java
- 20. MySql - Envío lenta fase de datos
- 21. Multidifusión confiable en Java
- 22. El envío de datos binarios a través de http
- 23. Usando sockets para enviar y recibir datos
- 24. Recuento de varias transmisiones de multidifusión en el mismo puerto: C, Linux
- 25. Envío de datos SMS en Android en un teléfono CDMA
- 26. Enviar y recibir datos TCP en ruby
- 27. C# SocketAsyncEventArgs que maneja los datos de recepción y envío
- 28. Cómo enviar y recibir mensajes SMS de datos
- 29. Enviar y recibir datos a través de UDP en PowerShell
- 30. ¿Cómo envío datos en tiempo real a través de UDP?
Utilice signos de puntuación y escribir un título adecuado pregunta! – Alexander