LSID
Universidad de Almería
Laboratorio de
Sistemas de Información Distribuidos

 


PRACTICAS

Práctica 1
Práctica 2
Práctica 3
 
 
 
 
 
 
 
 
 
 

oooooooooooooo


Práctica 1: Un simple Chat


En primera práctica se implementa el código cliente/servidor para la simulación de un entorno de conversación al estilo talk. Para ello, cada usuario dispondrá de una ventana cliente y otra servidor para llevar a cabo las labores de conversación. A continuación de describen los pasos para desarrollar este ejercicio. 

Paso 1

En una ventana se lanza el proceso servidor. En ella aparecerán los mensajes que recibe de otros clientes que les envía mensajes.

Paso 2

En otra ventana el usuario lanza un cliente para enviar mensajes a otro usuario (gestionado por un servidor activo remoto).

Paso 3

Atendiendo a estas condiciones, supongamos que un usuario registrado como Rosa desea hablar con los usuarios registrados como Luis, Juana y Pepa. Para ello el usuario Rosa debe abrir una ventana cliente para enviar mensajes a Luis, otra ventana para enviar mensajes a Juana y otra para Pepa. Bajo este contexto, Rosa tendrá cuatro ventanas, tres clientes y un servidor (donde recibe los mensajes).

Paso 4

El código básico se almacena en los archivos: cliente.c y servidor.c (cabecera)

Paso 5

Se creará un archivo C intermedio para declarar funciones adicionales: auxiliar.c

Paso 6

Para lanzar un servidor, simplemente se hace con la orden: servidor

Paso 7

Para lanzar un cliente: cliente usuariodestino alias

Paso 8

Probar por ejemplo: cliente Marta Rosa. En este caso Rosa crea un cliente para hablar con Juana.

Paso 9

El código cliente tiene un acceso a un proceso remoto DNS que facilita las características del usuario al cual deseamos conectarnos. Esto se hace mediante una llamada a la función: 

servidorDNS(char *mensaje, char *IP, char *PUERTO)

Paso 10

El código cliente.c y servidor.c puedan tener acceso a funciones definidas en auxiliar.c

Paso 11

El servidor de nombres estará ubicado en una de las máquinas del laboratorio. Necesitará conocer la dirección IP y puerto del servidor (en su momento se lo dirá el profesor).

Paso 12

Muestre en todo momento mensajes de salida para conseguir una mejor secuencia del control del código en ejecución.

Paso 13

La compilación (crea el objeto) se realiza con la orden: gcc -c archivo.c

Paso 14

Para crear el ejecutable: gcc archivo.o -o archivo ejecutable
 
 

LSID, Laboratorio de Sistemas de Información Distribuidos
Departamento de Informática
Universidad de Almeria, España
Luis.Iribarne@ual.es