Foros del Web » Programación para mayores de 30 ;) » Java »

problema con conexion multicast

Estas en el tema de problema con conexion multicast en el foro de Java en Foros del Web. buenas tardes , deseo recibir o capturar los datos de un dispositivo que los manda a una direccion multicast , ya e leeido varios ejemplos ...
  #1 (permalink)  
Antiguo 02/05/2016, 14:47
 
Fecha de Ingreso: abril-2016
Mensajes: 7
Antigüedad: 8 años
Puntos: 0
problema con conexion multicast

buenas tardes , deseo recibir o capturar los datos de un dispositivo que los manda a una direccion multicast , ya e leeido varios ejemplos , pero a la hora de implementar parace que no recibiera nada , e analizado las tramas con ayuda de wireshark y pareciera que me suscribo al grupo adecuadamente , adjunto al codigo , si alguien me puede ayudar o aportar un consejo gracias.

package clienteUDP;


import java.net.*;
import java.io.*;

public class ClienteUDP {

// Los argumentos proporcionan el mensaje y el nombre del servidor
public static void main(String args[]) {
// args[0] es el mensaje enviado al grupo y args[1] es la direccion del grupo
//Creamos un socket multicast en el puerto 10000:
MulticastSocket s;
try {
s = new MulticastSocket (2222);

//Configuramos el grupo (IP) a la que nos conectaremos:
InetAddress group = InetAddress.getByName ("239.192.2.32");

//Nos unimos al grupo:
s.joinGroup (group);


//Leemos los paquetes enviados por el servidor multicast:
String salida = new String();
while(!salida.equals("salir"))
{

// Los paquetes enviados son de 256 bytes de maximo
//(es adaptable)
byte [] buffer = new byte [256];

//Creamos el datagrama en el que recibiremos el paquete
//del socket:
DatagramPacket dgp = new DatagramPacket (buffer, buffer.length);

// Recibimos el paquete del socket:
s.receive (dgp);

// Adaptamos la información al tamaño de lo que se envió
//(por si se envió menos de 256):
byte [] buffer2 = new byte [dgp.getLength ()];

// Copiamos los datos en el nuevo array de tamaño adecuado:
System.arraycopy (dgp.getData (),0,buffer2,0,dgp.getLength ());

//Vemos los datos recibidos por pantalla:
salida = new String (buffer2);
System.out.println (salida);

}

//Salimos del grupo multicast
s.leaveGroup (group);

// Cerramos el socket:
s.close ();

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}




}
}


[IMG][URL=http://img20.imagevenue.com/img.php?image=222190679_multicast_122_215lo.jpg][IMG]http://img20.imagevenue.com/loc215/th_222190679_multicast_122_215lo.jpg[/IMG][/URL][/IMG]



les explico de la direcion 192.168.2.10 manda a multicas a la direccion 239.192.2.39
¿no se si uno se deba suscribir al grupo antes que se inicie el envio multicast o pueda despues??

Etiquetas: programacion, udp
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:36.