jueves, 25 de junio de 2015

2.5 Enviar paquetes UDP


La misma interfaz (DatagramSocket) empleada para recibir paquetes UDP también se utiliza para enviarlos. Cuando se envía un paquete, la aplicación debe crear un DatagramPacket, establecer la dirección y el puerto de la información, y escribir los datos destinados a la transmisión a su array de bytes. Si está respondiendo a un paquete recibido, la dirección y la información del puerto ya estará almacenada, y sólo los datosnecesitan ser sobrescritos. Una vez que el paquete está listo para la transmisión, el método de envío deDatagramSocket es invocado, y un paquete UDP se envía.
envioUDP.JPG

El siguiente fragmento de código ilustra este proceso:

DatagramSocket socket = new DatagramSocket(2000);
DatagramPacket packet = new DatagramPacket (new byte[256], 256);
packet.setAddress ( InetAddress.getByName ( somehost ) );
packet.setPort ( 2000 );
boolean finished = false;
while !finished )
{
// Escribir datos en el buffer del paquete
.........
socket.send (packet);
/ / Hacer otra cosa, como leer los paquetes, o revisar para
/ / ver si hay más paquetes a enviar
.........
}
socket.close();




No hay comentarios:

Publicar un comentario