NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición.

Slides:



Advertisements
Presentaciones similares
Programación Interactiva Aplicaciones Cliente-Servidor
Advertisements

SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
MODELO TCP/IP Conectividad de extremo a extremo especificando como los datos deberian ser formateados,direccionados,transmitidos,enrutados y recibidos.
El término servidor hace referencia a un host que ejecuta una aplicación de software que proporciona información o servicios a otros hosts conectados.
Sistemas de Comunicación Magistral Nro. 8 Capa 4: Transporte Las funciones principales de la capa de transporte son transportar y regular el flujo de información.
Sockets. / Los sockets (zócalos, referido a los enchufes de conexión de cables) son mecanismos de comunicación entre programas a través de una red TCP/IP.
TCP/IP Introducción TCP/IP Introducción. TCP/IP vs OSI Aplicación Presentación Sesión Transporte Red Enlace Física Aplicación Acceso a la red Física TCP/IP.
RESUMEN CAPITULO 6.
En este capitulo se analizo la relación entre cliente y servidor de red habituales, como: HTTP FTP DNS DHCP Correo Electrónico INTRODUCCIÓN.
1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.
ELO3091 Interfaz de Socket Agustín J. González ELO309.
Andres Marín L. Programación sockets en java.
Ing. Elizabeth Guerrero V.
4. Introducción a IP,TCP,UDP,ARP,ICMP
Jean Carlo Fernandez C.I Cesar Arismendi C.I
Ing. Elizabeth Guerrero V.
Nivel de Transporte en Internet
Modelo OSI Para redes………
Protocolos de Transporte y Aplicación
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
Protocolos de Transporte y Aplicación Javier Rodríguez Granados.
Capa de Acceso de Red (Network Access Layer). Definición: Es la primera capa del modelo TCP/IP. Ofrece la capacidad de acceder a cualquier red física,
Modelos de red. Jerárquico  Antes las redes tenían un punto central de interconexión y alrededor estaban todos y usuarios y periféricos alrededor. 
Modelo de 2 Capas Cliente/Servidor.  Esta arquitectura consiste básicamente en un cliente que realiza peticiones a otro programa (el servidor) que le.
Introducción Principios de Programación Web Aplicaciones Web con JSP y Servlets de Java.
Teoría sobre redes DNS DHCP UDP OSI HTTP MA C Switch Hub Router Ethernet IPIP LDA P Netbios BOOTP Puertos IMA P POP3 SMTP Telnet SSH Cortafuegos.
REDES INFORMÁTICAS Realizado por: Jero Silva Mulero, 2º Bachillerato A.
Paul Leger Modelo OSI Paul Leger
Teleprocesos Ing. Leonardo Párraga.
Conceptos Básicos de Programación
1. Protocolos de Comunicación 1.1 Nociones Básicas.
Comunicación Servidor-Cliente sin conexión
Capa Aplicación: File Transfer Protocol
Modelo OSI.
Comunicación Serial: Conceptos Generales
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Capa Aplicación: File Transfer Protocol
Definición de un Sistema Distribuido
TIC TECNOLOGIAS DE LA INFORMACION Y LA COMUNICACION
QUE ES UN SERVIDOR DE CORREO
QUÉ SON Las redes informáticas son conjuntos de dispositivos interconectados entre sí para intercambiar información y recursos a través de un medio común.
QUÉ SON Las redes informáticas son conjuntos de dispositivos interconectados entre sí para intercambiar información y recursos a través de un medio común.
QUE ES EL SOFTWARE Es un conjunto de programas de computo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones.
INTERNET Actividad 3 Herramientas Tareas Ruben Dario Acosta V.
Capa Aplicación: File Transfer Protocol
UNIVERSIDAD MANUELA BELTRAN UMBVIRTUAL
Funcionamiento del servicio de correo electrónico
DOCENTE: EMILIO ISMAEL BUSTAMANTE MONTES
Redes. Informe de los videos.
REDES DE DATOS.. Redes de datos. 1.- Conceptos b á sicos de redes Elementos de la comunicación Vías de comunicación Componentes hardware.
TIC TECNOLOGIAS DE LA INFORMACION Y LA COMUNICACION
Protocolos Protocolos de red.
Redes.
A RQUITECTURA C LIENTE - SERVIDOR La arquitectura del cliente servidor se divide en dos partes Los promovedores de recursos o servicios llamados servidores.
Curso: fundamentos de redes Profesor: Miguel farfan Sesion: 03
Introducción a Internet
COMPUTADORAS.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED
CAPA FÍSICA DEL MODELO OSI La capa física: Señales de comunicación.
2 Es el dispositivo digital lógico de interconexión de equipos que opera en la capa de enlace de datos del modelo OSI. Su función es interconectar dos.
Javier Rodríguez Granados
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
Capa Aplicación: File Transfer Protocol
INTERNET Funcionamiento y Principales Virtualidades “…..En un lapso de 20 años, la tecnología ha venido cambiando radicalmente nuestra forma de vivir….”
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
PROTOCOLO DE COMUNICACIÓN Y CABLEADO ESTRUCTURADO
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Intr. a la creación y gestión de páginas web
CAPA DE RED- OSI. Intercambiar secciones de datos individuales a través de la red entre dispositivos finales identificados. Provee servicios para:
Introducción a la Programación. Modulo 61 Programación Web Programación Web.
Transcripción de la presentación:

NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición e inserte su imagen. PROGRAMACIÓN CLIENTE/SERVIDOR JAVA SOCKETS M.C. ISHTAR GEMMA HERNÁNDEZ CALVO Basado en: Introducción Rápida a Java.net y Java.Nio Miguel Ángel ABián

Fundamentos de Redes

Familia de Protocolos TCP/IP

Familia de Protocolos

Capas de TCP/IP

Protocolo IP

Datagrama IP

Dirección IP

URL

Arquitectura Cliente/Servidor

Aplicaciones Cliente/Servidor

Puertos

Protocolos de Transporte

TCP

UDP

NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición e inserte su imagen. SOCKETS

Introducción Los sockets son un sistema de comunicación entre procesos de diferentes máquinas de una red. Más exactamente, un socket es un punto de comunicación por el cual un proceso puede emitir o recibir información.

Introducción Utilizan una serie de primitivas para establecer el punto de comunicación, para conectarse a una máquina remota en un determinado puerto que esté disponible, para escuchar en él, para leer o escribir y publicar información en él, y finalmente para desconectarse. Con todas las primitivas se puede crear un sistema de diálogo muy completo.

Tipos de Sockets

Otra definición… En Thinking in Java 3rd Edition, Bruce Eckel describe los sockets de una forma visual: El socket es la abstracción de software usada para representar los terminales de una conexión entre dos máquinas. Para una conexión dada, hay un socket en cada máquina, y puedes imaginar un cable hipotético corriendo entre las dos máquinas con cada extremo del cable enchufado a un socket. Desde luego, el hardware físico y el cableado entre máquinas es completamente desconocido. El punto fundamental de la abstracción es que no necesitamos conocer más de lo necesario.

La abstracción del socket

Ubicación conceptual de los sockets

Comunicación mediante sockets

Comunicación cliente/servidor a través de sockets Los sockets son creados por el sistema operativo y ofrecen una interfaz de programación de aplicaciones (API) mediante la cual pueden las aplicaciones enviar mensajes a otras aplicaciones, ya sean locales o remotas. Las operaciones de los sockets (enviar, recibir, etc.) se implementan como llamadas al sistema operativo en todos los modernos SO; dicho de otra manera: los sockets forman parte del núcleo del SO. En lenguajes orientados a objetos como Java o C#, las clases de sockets se implementan sobre las funciones ofrecidas por el SO para sockets.

Comunicación mediante sockets incluyendo puertos

Problema…. Consideremos un servidor web (es decir, HTTP) que atiende simultáneamente a varios clientes por el puerto estándar (80). Los clientes usan el protocolo TCP (HTTP usa este protocolo por defecto). ¿Cómo puede el servidor saber a qué cliente corresponde cada petición?

Respuesta Un socket tiene una dirección. En ella se almacena un número de puerto, una dirección IP y un tipo de protocolo. La dirección del socket cliente almacena el número de puerto por el cual hace la petición, la dirección IP del ordenador y el tipo de protocolo (TCP, en este caso). La dirección del socket servidor almacena el número de puerto por el cual espera peticiones (80, en este caso), la dirección IP del ordenador y el tipo de protocolo (TCP, en este caso). Una conexión se caracteriza por dos direcciones de sockets: la del cliente y la del servidor

Estructura interna de una comunicación con sockets TCP

Sockets TCP y sockets UDP las diferencias entre las comunicaciones con sockets TCP y con sockets UDP resultan similares a las que existen entre llamar por teléfono y enviar una carta.

Sockets TCP y sockets UDP Cuando se llama por teléfono a alguien, el estado de la comunicación se conoce en todo momento: quien llama sabe si el teléfono está ocupado o no (en algunos casos, el destinatario de la llamada también sabe si tiene alguna llamada entrante); percibe cuándo puede comenzar la comunicación (cuando acaban los pitidos largos y suena una voz); sabe si se está dirigiendo a la persona deseada (salvo que lo engañen) y distingue cuándo la comunicación ha concluido o se ha interrumpido (cuando cesa la voz del interlocutor y se oyen unos pitidos breves).

Sockets TCP y sockets UDP Cuando se envía una carta, el remitente la introduce en un buzón y se olvida de ella durante un tiempo: ignora si llegará a su destino o si recibirá respuesta (la dirección puede no existir; el destinatario puede no vivir ya allí; la carta puede perderse en alguna oficina de correos con exceso de trabajo). Lo mismo ocurre en el protocolo UDP: un emisor de datagramas UDP desconoce si llegan o no a su destino.

Pasos para la comunicación entre sockets

Socket y ServerSocket

Resumen

NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición e inserte su imagen. EL PAQUETE java.net DE JAVA

Introducción

Jerarquía de clases de Java.net

Java.net

La clase java.net.ServerSocket

Las clases Socket y ServerSocket en funcionamiento

La clase ServerSocket

La clase java.net.InetAddress

Ejemplo InformarConexionUV.java DireccionLocal.java

Volviendo a ServerSocket Métodos más usados

Volviendo a ServerSocket

El método accept( ) en marcha

La clase java.net.Socket

Métodos más usados

Java.io

Ejemplos

Pasos para implementar un servidor

Pasos para implementar el cliente

Cierre de sockets

Ojo!!!

Cierre de sockets

Ejemplo: CHAT de Deitel: Servidor.java PruebaServidor.java Cliente.java PruebaCliente.java

Interacción entre cliente/servidor sin conexión mediante datagramas La transmisión sin conexión mediante datagramas es un proceso más parecido a la manera en que el correo se transporta mediante el servicio postal. Si un mensaje extenso no cabe en un sobre, usted lo divide en varias piezas separadas que coloca en sobres separados, numerados en forma secuencial. Cada una de las cartas se envía entonces por correo al mismo tiempo. Las cartas podrían llegar en orden, sin orden o tal vez no llegarían (aunque el último caso es raro, suele ocurrir).

La persona en el extremo receptor debe reensamblar las piezas del mensaje en orden secuencial, antes de tratar de interpretarlo. Si su mensaje es lo suficientemente pequeño como para caber en un sobre, no tiene que preocuparse por el problema de que el mensaje esté “fuera de secuencia”, pero aún existe la posibilidad de que su mensaje no llegue. Una diferencia entre los datagramas y el correo postal es que pueden llegar duplicados de datagramas al equipo receptor.

Un chat con Datagramas En el siguiente chat utilizamos datagramas para enviar paquetes de información mediante el Protocolo de datagramas de usuario (UDP) entre una aplicación cliente y una aplicación servidor. En la aplicación Cliente, el usuario escribe un mensaje en un campo de texto y oprime Intro. El programa convierte el mensaje en un arreglo byte y lo coloca en un paquete de datagramas que se envía al servidor. El Servidor recibe el paquete y muestra la información que contiene, después lo repite (echo) de vuelta al cliente. Cuando el cliente recibe el paquete, muestra la información que contiene.

Servidor.java PruebaServidor.java Cliente.java PruebaCliente.java

Reto: Un juego a mejorar ServidorTresEnRaya.java PruebaServidorTresEnRaya.java ClienteTresEnRaya.java PruebaClienteTresEnRaya.java