Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica de
Programacin 1
Reporte de protocolo
UDP
UDPClient
package udpclient;
import java.net.*;
import java.io.*;
/**
*
* @author jatar_000
*/
public class UDPClient {
UDPServer
package udpserver;
import java.net.*;
import java.io.*;
/**
*
* @author jatar_000
*/
public class UDPServer {
UDPDiscardClient
import java.net.*;
import java.io.*;
if (args.length > 0) {
} else {
try {
if (theLine.equals(".")) {
break;
theSocket.send(theOutput);//Envia el datagrama
} // end while
} // end try
catch (UnknownHostException e) {
System.err.println(e);
System.err.println(se);
} catch (IOException e) {
System.err.println(e);
} // end main
UDPDiscradServer
import java.net.*;
import java.io.*;
public class UDPDiscardServer {
try {
} catch (Exception e) {
try {
try {
} catch (IOException e) {
System.err.println(e);
} // end while
} // end try
} // end catch
} // end main
Conversor C a F
Cliente
package updclient;
/**
* @author jatar_000
*/
import java.net.*;
import java.io.*;
/**
* @throws java.lang.Exception
*/
byte[] sendData;
byte[] receiveData;
while (true) {
/**
* *******************************
*/
/**
* ******************************
*/
if (sentence.startsWith("TEMP")) {
sendData = sentence.getBytes();
clientSocket.send(sendPacket);
System.out.println(
"Temperatura enviada al servidor : " + sentence + "C" + "\n Esperando al
servidor....");
clientSocket.receive(receivePacket);
} catch (Exception e) {
e.printStackTrace();
Servidor
package udpserver;
/**
*
* @author jatar_000
*/
import java.net.*;
import java.io.*;
class UDPServer_Conversor{
serversocket.receive(receivedpacket);
String fromClient = new String(receivedpacket.getData());
// Convertir temperatura en Farenheith
if (fromClient != null && fromClient.startsWith("TEMP")) {
sentBuffer = convertIntoFarenheit.getBytes();
DatagramPacket sendpacket = new DatagramPacket(sentBuffer,
sentBuffer.length, clientIP, 8888);
serversocket.send(sendpacket);
System.out.println(" Respuesta enviada al cliente " +
clientIP.getHostAddress());
} else {
String convertIntoFarenheit = "Error,introdusca un valor entre [-200,200]";
sentBuffer = convertIntoFarenheit.getBytes();
DatagramPacket sendpacket = new DatagramPacket(sentBuffer,
sentBuffer.length, clientIP, 8888);
serversocket.send(sendpacket);
System.out.println(" Respuesta enviada al cliente " +
clientIP.getHostAddress());
}
}
try {
Thread.sleep(2000);
} catch (InterruptedException ie) {
}
}
}
}
Diagrama de secuencia
o Datagramas: Son los mensajes que se envan.
o Cliente: Enva y recibe mensajes (datagramas).
o Sockets: Son las conexiones de entrada y salida entre el Cliente y el servidor.
o Servidor: Recibe y enva una respuesta al cliente.