Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Entrega 1 Semana 3
Grupo No. 12
INTRODUCCIÓN............................................................................................................................................. 3
DESARROLLO DE LA ACTIVIDAD .................................................................................................................... 4
1. Instalación de la máquina virtual con el sistema operativo ............................................................. 4
2. Estado del arte de socket: ................................................................................................................. 7
3. Diseño de red para el desarrollo: ...................................................................................................... 9
4. Desarrollo del código java ................................................................................................................. 9
4.1 Clase CLIENTE: ........................................................................................................................... 9
4.2 Clase Servidor.......................................................................................................................... 10
4.3 Clase Conexión ........................................................................................................................ 12
4.4 Clase MainCliente ................................................................................................................... 13
4.5 Clase MainServidor ................................................................................................................. 13
5. Link del video .................................................................................................................................. 13
6. Conclusiones ................................................................................................................................... 14
7. Referencias...................................................................................................................................... 15
INTRODUCCIÓN
En este documento como grupo describimos los pasos a seguir para la instalación y
configuración de un sistema operativo Linux dentro de una máquina virtual. Para esto
usaremos VirtualBox como herramienta de virtualización, y Windows como sistema base
que será dominado por host y CentOS como sistema operativo de máquinas virtuales.
DESARROLLO DE LA ACTIVIDAD
Los sockets son mecanismos de comunicación entre procesos que permiten que un
proceso hable con otro proceso estando en distintas maquinas es necesario para
establecer una infraestructura del cliente servidor, desde el punto de vista de
programacion un socket no es más que un fichero que se abre de una manera especial
1. Tipos de sockets
2. Cliente-servidor
Ya definimos que los sockets son una piedra angular necesaria para la conexión a través
de una red de datos y así transmitir la información requerida, por lo tanto, en estos casos
para simplificar las conexiones se crearon drivers o conjuntos de utilizades y /o
herramientas que simplifican la tarea de creación de estos sockets.
Cuando se implementan con el protocolo TCP, los sockets tienen las siguientes
propiedades:
• Orientado a conexión.
• Se garantiza la transmisión de todos los octetos sin errores ni omisiones.
• Se garantiza que todo octeto llegará a su destino en el mismo orden en que se ha
transmitido. Estas propiedades son muy importantes para garantizar la corrección
de los programas que tratan la información.
3. Diseño de red para el desarrollo:
import java.io.*;
import java.util.Scanner;
public class Cliente extends Conexion
{
public Cliente() throws IOException{super("cliente");} //Se usa el constructor para cliente de Conexion
mensaje = accion+","+cuenta;
}
salidaServidor.writeUTF(mensaje);//enviamos mensaje
mensajeRecibido = entrada.readUTF();//Leemos respuesta
System.out.println(mensajeRecibido);
}
cs.close();//Fin de la conexión
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
import java.io.*;
import java.util.*;
public class Servidor extends Conexion //Se hereda de conexión para hacer uso de los sockets y demás
{
public Servidor() throws IOException{super("servidor");} //Se usa el constructor para servidor de Conexion
public void startServer()//Método para iniciar el servidor
{
try
{
String ruta = " "/home/ubuntu/eclipse-workspace/Socket_Servidor/src/datos.txt"";
//Esperando conexión
System.out.println("Esperando...");
// Acción es ingresar
if(accion.equals("i")) {
int valor = Integer.parseInt(data[2]);
int cuentaInt = Integer.parseInt(cuenta);
} catch (Exception e) {
salidaCliente.writeUTF("NO-OK");
e.printStackTrace();
} finally {
try {
// Nuevamente aprovechamos el finally para
// asegurarnos que se cierra el fichero.
if (null != fichero)
fichero.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
// Acción Consultar
if(accion.equals("c")) {
if(cuenta.equals(cUsuario)){
//System.out.println(cuenta+" "+saldo);
salidaCliente.writeUTF("Saldo del usuario "+saldo);
}
//System.out.println(Arrays.toString(salida));
System.out.println("Fin de la conexión");
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.io.IOException;
System.out.println("Iniciando cliente\n");
cli.startClient(); //Se inicia el cliente
}
}
4.5 Clase MainServidor
import java.io.IOException;
System.out.println("Iniciando servidor\n");
serv.startServer(); //Se inicia el servidor
}
}
https://youtu.be/1NPaVLXO89E
6. Conclusiones
En esta actividad como grupo nos ha permitido conocer las partes esenciales de un
sistema operativo como son las máquinas virtuales y configuración de las mismas, para
esta implantación del modelo cliente-servidor fue necesario la instalación MV donde se
ejecutó el código en java utilizando el método socket.
Albala, A. (2021, March 12). Cómo instalar Eclipse IDE en Ubuntu 20.04. conpilar.es.
https://conpilar.es/como-instalar-eclipse-ide-en-ubuntu-20-04/
Antonella. (2022, January 6). Respuesta rápida: ¿Cómo actualizar Java en Linux? CompuHoy.com.
https://www.compuhoy.com/respuesta-rapida-como-actualizar-java-en-linux/
Cordero, P. (n.d.). Como instalar Ubuntu en VirtualBox. Ugr.es. Retrieved March 29, 2022, from
https://osl.ugr.es/2020/09/29/como-instalar-ubuntu-en-virtual-box/
González, J. D. M. (2018, February 20). Sockets en Java: Un sistema cliente-servidor con sockets.
Avanzados/Java/Sockets
http://www.lcc.uma.es/~eat/services/i_socket/i_socket.html#link2