11
1 Chat de salón Chat de salón 1. 1. Enunciado del problema Enunciado del problema 2. 2. Modelo cliente/servidor Modelo cliente/servidor 3. 3. Protocolo de comunicación con el Protocolo de comunicación con el servidor. servidor. 4. 4. Chat privado Chat privado 5. 5. Diseño del cliente Diseño del cliente 6. 6. Diseño del servidor Diseño del servidor

Chat de salón

  • Upload
    minor

  • View
    25

  • Download
    0

Embed Size (px)

DESCRIPTION

Chat de salón. Enunciado del problema Modelo cliente/servidor Protocolo de comunicación con el servidor. Chat privado Diseño del cliente Diseño del servidor. 1 . Enunciado del problema. Chat de salón. - PowerPoint PPT Presentation

Citation preview

Page 1: Chat de salón

11

Chat de salónChat de salón

1.1. Enunciado del problemaEnunciado del problema

2.2. Modelo cliente/servidorModelo cliente/servidor

3.3. Protocolo de comunicación con el Protocolo de comunicación con el servidor.servidor.

4.4. Chat privadoChat privado

5.5. Diseño del clienteDiseño del cliente

6.6. Diseño del servidorDiseño del servidor

Page 2: Chat de salón

22

Un chat de salón es un lugar virtual en internet donde varios participantes pueden conversar.

Un chat se compone por dos tipos de programas: el servidor y el cliente.

El servidor proporciona el servicio: acepta y gestiona participantes, y se encarga de la replicación y recepción de los mensajes.

El cliente envía mensajes al servidor para que sean enviados al resto de participantes. En el caso de solicitar un chat privado con otro participante, la transferencia de mensajes será directa entre los dos.

1 . Enunciado del problema

Chat de salón

Page 3: Chat de salón

33

El modelo de la aplicación es el de cliente/servidor en el chat general y el protocolo que se va a utilizar es TCP.

Por otro lado cuando se establece una comunicación privada, el protocolo usado será UDP, con la finalidad que el alumno se familiarice con los dos protocolos.

2. Modelo cliente/servidor

Cliente/servidor

Page 4: Chat de salón

44

3 . Protocolo de comunicación con el servidor

Establecimiento de la comunicación

Servidor

Ana

Paco

Pepe

Nuevo 0+“Paco”

1+“ko”

1. El nuevo participante envía el nick, mediante el texto ”Nombre” al servidor, si ya existe otro participante con el mismo nick envía “KO”, en caso contrario envía OK.

Page 5: Chat de salón

55

Después del “OK”, el servidor nos pasa la lista de nicks de la sala y al resto de participantes les avisa de que hemos entrado, para que nos añadan a su lista.

3 . Protocolo de comunicación con el servidor

Establecimiento de la comunicación

Page 6: Chat de salón

66

3 . Protocolo de comunicación con el servidor

Establecimiento de la comunicación

Servidor

Ana

Paco

Pepe

Nuevo

“0”+:“Pedro”

“1”+“OK”

“2”+“Ana”+”.”+“Paco”+”.”+“Pepe”+”.”+“Pedro”

“4”+“Pedro”

“4“+”Pedro”

“4”+ “Pedro”

Page 7: Chat de salón

77

3 . Protocolo de comunicación con el servidor

Escribir un mensaje Cuando queremos mandar un mensaje al

chat, se lo mandamos al servidor y este lo difunde a todos los participantes incluido nosotros mismos

Servidor

Ana

Paco

Pepe

Pedro “3”+“Pedro: Hola”

“3”+“Pedro: Hola”

“3”+“Pedro: Hola”

“3”+“Pedro: Hola”

“3”+“Pedro: Hola”

Page 8: Chat de salón

88

3 . Protocolo de comunicación con el servidor

Desconectarse• Cuando alguien quiera desconectarse manda la

servidor el mensaje “7”+“adios”, y este lo notifica al resto enviando “5”+ el nick de quien se fue. Si el servidor se desconecta manda el mensaje “6”+”adios”.

Servidor

Ana

Paco

Pepe

Pedro 7+“adios”

“5”+”Pedro”

“5”+”Pedro”

“5”+”Pedro”

Page 9: Chat de salón

99

Esta parte es opcionalEsta parte es opcional El único que sabe las direcciones IP de cada cliente es El único que sabe las direcciones IP de cada cliente es

el servidor. el servidor. Para establecer un privado, tenemos que decirle al Para establecer un privado, tenemos que decirle al

servidor con quien queremos hablar, que se trata de servidor con quien queremos hablar, que se trata de un privado y cual es el puerto de escucha (puerto un privado y cual es el puerto de escucha (puerto UDP ), el servidor le dirá a ese cliente que queremos UDP ), el servidor le dirá a ese cliente que queremos establecer un privado. Y le dará nuestros datos.establecer un privado. Y le dará nuestros datos.

Protocolo con el servidorProtocolo con el servidor– Le enviamos al servidor “8” y nuestro puerto de Le enviamos al servidor “8” y nuestro puerto de

recepción y el nick del participante con el que nos recepción y el nick del participante con el que nos queremos conectarqueremos conectar

– El servidor busca a esa persona y le envía “9” y los El servidor busca a esa persona y le envía “9” y los datos del participante que se quiere conectar con él.datos del participante que se quiere conectar con él.

4. Chat privado

Establecer un privado

Page 10: Chat de salón

1010

A continuación el cliente que recibe A continuación el cliente que recibe la petición le enviará un primer la petición le enviará un primer paquete ya directamente al cliente paquete ya directamente al cliente privado con la cadena “A” + el privado con la cadena “A” + el puerto por el que realizará la puerto por el que realizará la recepción. recepción.

Mediante el mensaje “B”+cadena se Mediante el mensaje “B”+cadena se intercambian mensajes y mediante intercambian mensajes y mediante “C”+”fin” se cierran las conexiones“C”+”fin” se cierran las conexiones

4. Chat privado

Establecer un privado

Page 11: Chat de salón

1111

4. Chat privado

Establecer un privado

AnaPaco

“8”+Ana+”puerto:”+29999

192.1.1.2Contexto.puerto=29999

“9” + ParticipanteUDPNick=PacoIP=192.1.1.2Puerto=29999

Verde: TCPAzul: UDP

“A”+Ana+30001

Servidor

Conexión Establecida

Contexto.puerto=30001