Arquitecturas cliente/servidor

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Arquitecturas cliente/servidor"

Transcripción

1 Arquitecturas cliente/servidor Creación de Sockets Cliente Servidor

2 Creación de Sockets Cliente/Servidor Sockets en TCP Sockets en UDP Definición de DAEMON Concepto de Hilos

3 Qué es un socket? Un socket es un punto final de un enlace de comunicación de dos vías entre dos programas que se ejecutan a través de la red. El cliente y el servidor deben ponerse de acuerdo sobre el protocolo que utilizarán.

4 Familias de sockets Es una constante de la API de Berkeley que indica que tipo de Protocolo se va utilizar durante una conexión Familia AF_UNIX: Usa protocolos internos de Unix. Familia AF_INET: Usa protocolos de Internet, como el TCP (Transmisión Control Protocol). Familia AF_CCITT: Norma X.25 de CCITT. Familia AF_NS: Protocolos NS de XEROX. Familia AF_SNA: Protocolos IBM SNA. Entre otras.. También se puede encontrar como PF_* (Protocol Family)

5 Referencia API de sockets en C Circuito virtual: Mediante la búsqueda de enlaces libres, se establece un circuito virtual. Conexión permanente hasta el final de la comunicación. SOCK_STREAM Datagramas: no trabajan con circuitos permanentes. La transmisión se realiza a nivel de paquetes. SOCK_DGRAM

6 Sockets TCP

7 Orientado a Conexión Establece un camino virtual entre servidor y cliente, fiable, sin pérdidas de información ni duplicados, la información llega en el mismo orden que se envía. El cliente abre una sesión en el servidor y este guarda un estado del cliente. El cliente utiliza la clase Socket El servidor utiliza la clase ServerSocket Estas clases se encuentran definidas en el paquete java.net

8 Constructores: Clase Socket public Socket () public Socket (InetAddress address, int port) public Socket (String host, int port) public Socket (InetAddress address, int port, InetAddress localaddr, int localport) public Socket (String host, int portt, InetAddress localaddr, int localport) address / localaddr Dirección IP de la máquina remota /local. port / localport Puerto de la máquina remota / local. host Nombre de la máquina remota Nota: En el caso del primer constructor se crea un objeto Socket sin conexión.

9 Servicios de la clase Socket public InetAddress getinetaddress() Devuelve la dirección IP de la máquina en la que estamos conectados. public int getport() Devuelve el puerto de la máquina remota. public void close() Cierra el canal de comunicación. public InputStream getinputstream() Devuelve el canal de lectura del socket. public OutputStream getoutputstream() Devuelve el canal de escritura del socket. Ademas JAVA proporciona dos llamadas para saber y puerto local (getlocaladdress() y getlocalport())

10 Constructores: Clase ServerSocket public ServerSocket (int port) public ServerSocket (int port, int backlog) public ServerSocket (int port, int backlog, InetAddress bindaddr) port puerto de escucha de la máquina servidora. backlog tamaño de la cola de espera, en el primero es 50. bindaddr dirección IP local que se hará pública mediante el bind. El constructor ServerSocket se encarga de hacer el bind y el listen.

11 Servicios de la clase ServerSocket public Socket accept() Devuelve el socket resultado de aceptar una petición, para llevar a cabo la comunicación con el cliente. public void close() Cierra el canal de comunicación. public InetAddress getinetaddress() Devuelve la dirección IP de la máquina local. public int getlocalport() Devuelve el puerto de la máquina local

12 Modelo cliente/servidor Modelo general SERVIDOR CLIENTE ServerSocket(port#) Socket(host,port#) accept() InputStream OutputStream OutputStream InputStream close() close()

13 Creación de objetos Conexión servidor ServerSocket miservicio; try{ miservicio = new ServerSocket(numeroPuerto); } catch ( IOException e ) { System.out.println ( e ); }... Socket socketservicio = null; try{ socketservicio = miservicio.accept(); } catch ( IOException e ) { System.out.println ( e ); }

14 Creación de objetos (2) Conexión cliente Socket micliente; try{ micliente = new Socket( maquina,numeropuerto); } catch ( IOException e ) { System.out.println ( e ); }

15 Creación de Objetos Stream Creación Streams de entrada A pesar de haber creado el socket, el programa no puede enviar o recibir datos a traves de esta clase. Se utilizan los InputStream y el OutputStream DataInputStream entrada; (--- CLIENTE ---) try { entrada = new DataInputStream( micliente.getinputstream() ); } catch ( IOException e ) { System.out.println ( e ); } DataInputStream entrada; (--- SERVIDOR ---) try { entrada = new DataInputStream(socketServicio.getInputStream() ); } catch ( IOException e ) { System.out.println ( e ); }

16 Creación de Objetos Stream Creación Streams salida PrintStream salida; (--- CLIENTE y SERVIDOR ---) try { salida = new PrintStream( micliente.getoutputstream() ); } catch ( IOException e ) { System.out.println ( e ); } DataOutputStream salida; (--- CLIENTE y SERVIDOR ---) try { salida = new DataOutputStream(miCliente.getOutputStream() ); } catch ( IOException e ) { System.out.println ( e ); }

17 InputStream & Output Stream

18 Comunicación entre cliente/servidor Para la transmisión de datos entre cliente y servidor se utilizan las clases DataInputStream (recibir datos) y DataOutputStream (enviar datos) Estas clases disponen de métodos para leer y escribir datos en el socket: read/write Boolean read/write Char read/write Double, read/write Float, read/write Int, read/write Long, read/write Short read/writeutf (leer/escribir cadenas de caracteres) Para envíar los datos se utiliza el método flush() de la clase DataOutputStream.

19 Interacción cliente/servidor: TCP Servidor (corriendo en IP hostid) create socket, port=x, for incoming request: serversocket = ServerSocket() wait for incoming connection request connectionsocket = serversocket.accept() read request from connectionsocket write reply to connectionsocket close connectionsocket TCP connection setup Cliente create socket, connect to hostid, port=x clientsocket = Socket() send request using clientsocket read reply from clientsocket close clientsocket

20 import java.io.*; import java.net.*; public class SimpleEchoServer{ public static void main(string[] args) { try{ ServerSocket s = new ServerSocket(9999); String str; while (true){ Socket c = s.accept(); InputStream i = c.getinputstream(); OutputStream o = c.getoutputstream(); do{ byte[] line = new byte[100]; i.read(line); o.write(line); str = new String(line); }while (!str.trim().equals("bye") ); c.close(); } }catch (Exception err){ System.err.println(err); } } }

21 import java.net.*; import java.io.*; public class SimpleEchoClient{ public static void main(string[] args) { try{ Socket s = new Socket(" ", 9999); InputStream i = s.getinputstream(); OutputStream o = s.getoutputstream(); String str; do{ byte[] line = new byte[100]; System.in.read(line); o.write(line); i.read(line); str = new String(line); System.out.println( local: +str.trim()); }while (!str.trim().equals("bye") ); } s.close(); }catch (Exception err){ System.err.println(err); }

22 Ciclo de vida de un socket TCP Ciclo de vida del servidor TCP Ciclo de vida del cliente TCP

23 Sockets UDP

24 No orientado a conexión Envío de datagramas de tamaño fijo. No es fiable, puede haber pérdidas de información y duplicados, y la información puede llegar en distinto orden del que se envía. No se guarda ningún estado del cliente en el servidor, por ello, es más tolerante a fallos del sistema. Tanto el cliente como el servidor utilizan la clase DatagramSocket. Se encuentran en el paquete java.net

25 Clase Datagram Socket Constructores: public DatagramSocket () public DatagramSocket (int port) public DatagramSocket (int port, InetAddress laddr) port puerto de la máquina. laddr dirección IP local que se hará pública mediante el bind. El constructor DatagramSocket se encarga de hacer el bind. El primer constructor elige un puerto libre.

26 DatagramSocket Un objeto java.net.datagramsocket es un conector a través del cual enviamos y recibimos paquetes UDP. Si se quiere utilizar un DatagramSocket para recibir paquetes se necesita especificar el puerto. Al contrario, si es para enviar paquetes, no es necesario especificar este puerto.

27 Ejemplo DatagramSocket ds1 = new DatagramSocket(123); /* Aquí usamos este DatagramSocket para recibir datos... */ /*... */ /* Hemos terminado, cerramos el socket */ ds1.close(); DatagramSocket ds2 = new DatagramSocket(); /* Aquí lo usamos para transmitir datos... */ /*... */ /* Hemos terminado, cerramos el socket */ ds2.close();

28 Servicios de la clase DatagramSocket public void connect(inetaddress address, int port) Conecta el socket a la máquina remota con address y puerto port. public void close() Cierra el canal de comunicación. public InetAddress getinetaddress() Devuelve de la máquina remota. public int getport() Devuelve el puerto de la máquina remota. También hay dos llamadas para saber y puerto local (getlocaladdress() y getlocalport()).

29 DatagramSocket public void send ( DatagramPacket p): Envía un datagrama a la máquina remota, por el socket asociado. public void receive ( DatagramPacket p): Recibe un datagrama de otra máquina, por el socket asociado.

30 La clase DatagramPacket Esta clase representa a los paquetes de datos que vamos a recibir o transmitir a través de los objetos DatagramSocket. Estos paquetes constan de: cabecera dirección de origen, destino del paquete, el puerto, longitud del paquete, checksum, etc. cuerpo contenido real del paquete. cabecera cuerpo En Java accedemos a las distintas partes de un datagrama mediante los métodos de la clase java.net.datagrampacket.

31 DatagramPacket La forma de construir datagramas es distinta dependiendo de si queremos enviar o recibir datos. En caso de que se quiera recibir, especificar: arreglo de bytes donde almacenar los datos longitud máxima que queremos recibir. Si queremos transmitir, especificar: arreglo de bytes a enviar longitud máxima datos a enviar dirección y puerto destino del datagrama.

32 Clase DatagramPacket Constructores public DatagramPacket (byte[] buff, int length) Construye un DatagramPacket para recibir paquetes en el buffer buff, de longitud length public DatagramPacket (byte[] buff, int length, InetAddress address, int port) Construye un DatagramPacket para envíar paquetes con datos del buffer buff, de longitud length, a address y el puerto port. Servicios: Para la actualización y consulta de los diferentes campos de un DatagramPacket disponemos de los siguientes métodos: set/getaddress, set/getdata, set/getlength, set/getport

33 Enviar datos int tam = 1024; InetAddress direcc =...; byte[] datos = new byte[tam]; int puerto = 543; for (int n=0;n<tam;n++){ /* Generamos los datos que vamos a enviar */ datos[n] =...; } DatagramSocket ds = new DatagramSocket(); DatagramPacket dp = new DatagramPacket(datos, tam, direcc, puerto); ds.send(dp); /* Aquí enviamos el paquete */

34 Recibir datos int tam = 1024; byte[] buffer = new byte[tam]; int puerto = 987; DatagramSocket ds = new DatagramSocket(puerto); DatagramPacket dp = new DatagramPacket(buffer,tam); ds.receive(dp); /*Ahora tenemos en buffer la información que nos interesa*/

35 Interacción cliente/servidor: UDP Servidor (corriendo en host) Cliente create socket, port=x, for incoming request: serversocket = DatagramSocket() read request from serversocket create socket, clientsocket = DatagramSocket() Create, address (hostid, port=x, send datagram request using clientsocket write reply to serversocket specifying client host address, port number read reply from clientsocket close clientsocket

36 Clase InetAddress La forma de crear un objeto InetAddress es mediante el método estático: InetAddress.getByName(String host) Recibe un nombre de host en notación alfanumérica (por ejemplo " o " " ) devuelve un objeto InetAddress con esa dirección. Si la dirección no existe o no puede ser encontrada, este método lanza una excepción UnknownHostException.

Desarrollo de Aplicaciones Distribuidas. Sockets. Daniel Avellaneda

Desarrollo de Aplicaciones Distribuidas. Sockets. Daniel Avellaneda Desarrollo de Aplicaciones Distribuidas Sockets Daniel Avellaneda Sockets en Java Qué es un Socket Un socket es una abstracción a través de la cual una aplicación pueden mandar y recibir datos. Un socket

Más detalles

EJEMPLOS PROGRAMACIÓN SOCKET - JAVA

EJEMPLOS PROGRAMACIÓN SOCKET - JAVA EJEMPLOS PROGRAMACIÓN SOCKET - JAVA 1.- Calcular el Cuadrado TCP En esta aplicación el cliente se conecta al servidor, para ello debe introducir la dirección IP del servidor y los parámetros sobre los

Más detalles

1.- FUNDAMENTOS...2 2.- FUNCIONAMIENTO GENÉRICO...3 3.- JAVA SOCKETS... 4. 3.4.1.- Creación de Streams de Entrada...7

1.- FUNDAMENTOS...2 2.- FUNCIONAMIENTO GENÉRICO...3 3.- JAVA SOCKETS... 4. 3.4.1.- Creación de Streams de Entrada...7 1.- FUNDAMENTOS...2 2.- FUNCIONAMIENTO GENÉRICO...3 3.- JAVA SOCKETS... 4 3.1.- INTRODUCCION... 4 3.2.- MODELO DE COMUNICACIONES CON JAVA...5 3.3.- APERTURA DE SOCKETS... 6 3.4.- CREACIÓN DE STREAMS...

Más detalles

Sockets en Java. Prof. Wílmer Pereira Universidad Simón Bolívar

Sockets en Java. Prof. Wílmer Pereira Universidad Simón Bolívar Sockets en Java Prof. Wílmer Pereira Universidad Simón Bolívar Arquitectura Cliente/Servidor Cliente Request Reply Servidor Cómo permitir comunicación entre objetos situados en diferentes máquinas? Sockets

Más detalles

COMUNICACIÓN ENTRE PROCESOS SOCKETS

COMUNICACIÓN ENTRE PROCESOS SOCKETS COMUNICACIÓN ENTRE PROCESOS SOCKETS Diseño de Sistemas Operativos Curso 2007/08 Grupo: Mi30 Martín Santana, A. David Martínez Santana, Luis Ignacio Qué son?(definición) n) Los sockets son mecanismos de

Más detalles

PROGRAMACION DISTRIBUIDA

PROGRAMACION DISTRIBUIDA PROGRAMACION DISTRIBUIDA Distribución basada en el patrón proxy-servant Héctor Pérez 2 Distribución de aplicaciones basadas en objetos Objetivo: rediseño de una aplicación orientada a objetos para ser

Más detalles

Federico Peinado www.federicopeinado.es

Federico Peinado www.federicopeinado.es Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es

Más detalles

Introducción de Sockets en C.

Introducción de Sockets en C. PRÁCTICA 2: Introducción de Sockets en C. 1 La Interfaz Socket es una API para redes TCP/IP que se compone de funciones o rutinas. Originalmente se construyó a principios de los 80 para el sistema operativo

Más detalles

1 SOCKETS EN JAVA. Sistemas Distribuidos::Sockets en Java EUI-SG/INFOR.UVA.ES 1

1 SOCKETS EN JAVA. Sistemas Distribuidos::Sockets en Java EUI-SG/INFOR.UVA.ES 1 1 SOCKETS EN JAVA La programación en red siempre ha sido dificultosa, el programador debía de conocer la mayoría de los detalles de la red, incluyendo el hardware utilizado, los distintos niveles en que

Más detalles

Universidad de Cantabria [email protected]

Universidad de Cantabria corcuerp@unican.es Networking Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria [email protected] Objetivos Aprender los conceptos básicos de redes y su implementación en Java

Más detalles

Comunicación entre Procesos y Sockets

Comunicación entre Procesos y Sockets Temas de la clase de hoy Proceso Sockets Dominios, protocolos y tipos vinculados a los sockets Introducción a Stream y Datagram El modelo cliente-servidor Funciones del cliente Funciones del servidor Orientación

Más detalles

Sockets. Introducción. Las redes de computadoras permiten al usuario. Curso Propedéutico Maestría en Ciencias de la Computación BUAP

Sockets. Introducción. Las redes de computadoras permiten al usuario. Curso Propedéutico Maestría en Ciencias de la Computación BUAP Sockets Curso Propedéutico Maestría en Ciencias de la Computación BUAP Introducción Las redes de computadoras permiten al usuario Acceder a datos remotos Procesamiento remoto Recursos remotos Dr. Ivan

Más detalles

UNIVERSIDAD POLITÉCNICA DE PACHUCA SOCKETS EN JAVA

UNIVERSIDAD POLITÉCNICA DE PACHUCA SOCKETS EN JAVA SOCKETS EN JAVA Los sockets son puntos finales de enlaces de comunicaciones entre procesos. Los procesos los tratan como descriptores de ficheros, de forma que se pueden intercambiar datos con otros procesos

Más detalles

Capítulo 5. Programación de aplicaciones de red

Capítulo 5. Programación de aplicaciones de red Capítulo 5. Programación de aplicaciones de red Redes de Ordenadores 2º Grado en Ingeniería en Tecnologías de Telecomunicación 1 Área de Ingeniería Telemática Capítulo 5: Programación de aplicaciones de

Más detalles

Cliente/Servidor en Java

Cliente/Servidor en Java Cliente/Servidor en Java Grupo ARCOS Desarrollo de Aplicaciones Distribuidas Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Introducción: 1. Paradigma cliente/servidor 2. Entorno

Más detalles

UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: TUTORIAL DE SOCKETS EN JAVA

UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: TUTORIAL DE SOCKETS EN JAVA UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: TUTORIAL DE SOCKETS EN JAVA Índice 1. Presentación...3 2. Conceptos básicos...4 2.1. TCP...4 2.2.

Más detalles

Sockets. Sockets. 1 Introducción

Sockets. Sockets. 1 Introducción 1 Introducción Los URL y las conexiones URL (URLConnection) proporcionan un mecanismo de un nivel relativamente alto (nivel 7 del modelo OSI) para acceder a los recursos de Internet. Algunas veces, los

Más detalles

PROGRAMACIÓN CLIENTE-SERVIDOR MEDIANTE SOCKETS EN JAVA

PROGRAMACIÓN CLIENTE-SERVIDOR MEDIANTE SOCKETS EN JAVA PROGRAMACIÓN CLIENTE-SERVIDOR MEDIANTE SOCKETS EN JAVA Qué es la arquitectura cliente servidor? La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten

Más detalles

UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA. Daniel Díaz Sánchez

UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA. Daniel Díaz Sánchez UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA Sockets para servidor Daniel Díaz Sánchez Florina Almenárez Andrés Marín Departamento de Ingeniería Telemática Universidad Carlos

Más detalles

Sockets en Java. La Creatividad proviene de un conflicto de ideas. Uso de Sockets

Sockets en Java. La Creatividad proviene de un conflicto de ideas. Uso de Sockets Uso de Sockets Este pequeño manual, le muestra cómo funciona el Socket Server para crear un pequeño servidor web que envía una página HTML a cualquier Navegador Web como Firefox, Internet Explorer, etc..

Más detalles

CLASE SOCKET. 1. Crear un nuevo socket usando un constructor de la clase. 2. El socket trata de conectarse al host remoto.

CLASE SOCKET. 1. Crear un nuevo socket usando un constructor de la clase. 2. El socket trata de conectarse al host remoto. CLASE SOCKET 1. Crear un nuevo socket usando un constructor de la clase. 2. El socket trata de conectarse al host remoto. 3. Una vez establecida la conexión, tanto el host local como el remoto obtienen

Más detalles

Sockets. Los sockets son un mecanismo de comunicación entre procesos que se utiliza en Internet.

Sockets. Los sockets son un mecanismo de comunicación entre procesos que se utiliza en Internet. Sockets La biblioteca estándar de clases de Java nos proporciona todo lo que necesitamos para utilizar sockets en nuestras aplicaciones en el paquete java.net, por lo que tendremos que añadir la siguiente

Más detalles

Examen de Redes - ETSIA 9 de septiembre - Primer Parcial

Examen de Redes - ETSIA 9 de septiembre - Primer Parcial Apellidos, Nombre: Grupo: Examen de Redes - ETSIA 9 de septiembre - Primer Parcial AUTORIZO a los profesores de la asignatura Redes de 2º curso de la ETSIA a publicar las calificaciones de los exámenes

Más detalles

ARQUITECTURAS CLIENTE/SERVIDOR

ARQUITECTURAS CLIENTE/SERVIDOR Arquitecturas Cliente/Servidor, Sem 2016-1 M.I.Yasmine Macedo Reza 1 ARQUITECTURAS CLIENTE/SERVIDOR Conceptos básicos Arquitecturas Cliente/Servidor, Sem 2016-1 M.I.Yasmine Macedo Reza 2 Conceptos básicos

Más detalles

TELEPROCESO Y SISTEMAS DISTRIBUIDOS

TELEPROCESO Y SISTEMAS DISTRIBUIDOS Universidad Nacional del Nordeste TELEPROCESO Y SISTEMAS DISTRIBUIDOS La Interfaz Socket Lic. Vanesa S. Roffé Año 2009 Introducción - Origen de la INTERFAZ SOCKET La Interfaz Socket es una API para redes

Más detalles

Tema II. Sockets. Desarrollo de Aplicaciones para Internet Curso Miguel Reboiro Jato

Tema II. Sockets. Desarrollo de Aplicaciones para Internet Curso Miguel Reboiro Jato Tema II. Sockets Desarrollo de Aplicaciones para Internet Curso 12 13 Miguel Reboiro Jato Índice 1. Qué es un Socket? 2. Tipos de Socket 3. Sockets en Java 1. InetAddress y SocketAddress 2. Socket y ServerSocket

Más detalles

EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET

EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET 1 EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET Cada capa de la pila añade a los datos a enviar a la capa inferior, información de control para que el envío sea correcto. Esta información

Más detalles

Justamente, una de las formas de crear un objeto de la clase URL permite especificar también el puerto:

Justamente, una de las formas de crear un objeto de la clase URL permite especificar también el puerto: Los 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. De hecho, al establecer una conexión via Internet

Más detalles

Sistemas Distribuidos ITInformática (UVA) César Llamas Bello - Febrero 2003

Sistemas Distribuidos ITInformática (UVA) César Llamas Bello - Febrero 2003 Comunicación entre procesos Sistemas Distribuidos ITInformática (UVA) César Llamas Bello - Febrero 2003 Indice Interfaz de programación para protocolos de Internet Representación externa de datos y empaquetado

Más detalles

Tema 3: COMUNICACIÓN ENTRE PROCESOS

Tema 3: COMUNICACIÓN ENTRE PROCESOS Tema 3: COMUNICACIÓN ENTRE PROCESOS E. U. Informática en Segovia Departamento de Informática Universidad de Valladolid 1 Introducción Estudia las comunicaciones punto a punto entre los lados de un enlace

Más detalles

Arquitecturas cliente/servidor

Arquitecturas cliente/servidor Arquitecturas cliente/servidor Conceptos básicos 1 Conceptos básicos 1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea

Más detalles

Las clases Java Socket y ServerSocket

Las clases Java Socket y ServerSocket Las clases Java Socket y ServerSocket Lenguajes y Herramientas de Programación Universidad de La Laguna Programa de Doctorado de Física e Informática Escuela Técnica Superior Superior de Ingeniería Informática

Más detalles

Nivel de Transporte en Internet

Nivel de Transporte en Internet Nivel de Transporte en Internet Nivel de Transporte en TCP/ La capa de transporte transmite mensajes entre las aplicaciones de dos ordenadores. La programación de aplicaciones sobre el nivel de transporte

Más detalles

SOCKET S. Alberto Castro Rojas

SOCKET S. Alberto Castro Rojas SOCKET S EL64E Alberto Castro Rojas 1 Interfaz de programación genérica Soporte de múltiples suites de protocolos de comunicación (familias) Representaciones de direcciones sin dependencias (endpoint)

Más detalles

Programación para redes con Java

Programación para redes con Java Programación para redes con Java Jorge Eduardo Ibarra Esquer Programación para redes Clases en java.net Protocolos Sockets Datagramas Aplicaciones cliente-servidor 1 Programación para redes Java presenta

Más detalles

Aplicaciones Cliente/Servidor en Gambas Prof: Mileti, P.

Aplicaciones Cliente/Servidor en Gambas Prof: Mileti, P. Aplicaciones Cliente/Servidor en Gambas Prof: Mileti, P. Al igual que un usuario se comunica con el programa por medio del teclado, dos programas se pueden comunicar entre sí por medio Sockets. Se podría

Más detalles

1. Visión general de RMI

1. Visión general de RMI 1. Visión general de RMI Java RMI permite al programador ejecutar métodos de objetos remotos utilizando la misma semántica que si fueran invocaciones locales (Véase Figura 1). Máquina Local (Cliente) Máquina

Más detalles

Java: comunicación en Internet. Modem. Satelite UMTS W-LAN. Láser. Fibra óptica. Conceptos básicos

Java: comunicación en Internet. Modem. Satelite UMTS W-LAN. Láser. Fibra óptica. Conceptos básicos Conceptos básicos Los computadores conectados a Internet se comunican entre ellos usando protocolos: Java: comunicación en Internet Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad

Más detalles

Direcciones IP y puertos

Direcciones IP y puertos Redes en Java HTTP, Telnet, FTP, SMTP, SNMP, etc (Aplicaciones usuario) TCP/IP TCP UDP IP Acceso a la red TCP: Transmission Control Protocol UDP: User Datagram Protocol IP: Internet Protocol TCP Protocolo

Más detalles

Capítulo 2: Capa Aplicación - IV

Capítulo 2: Capa Aplicación - IV Capítulo 2: Capa Aplicación - IV ELO322: Redes de Computadores Tomás Arredondo Vidal Este material está basado en: material de apoyo al texto Computer Networking: A Top Down Approach Featuring the Internet

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Flujos de Entrada/Salida 2 Flujos de Entrada/Salida Hay librerías Orientadas a bytes Orientadas a caracteres Se usa la abstracción de un

Más detalles

Luego lleve el cliente a otra máquina y ejecute desde ahí usando el nombre de la máquina del servidor.

Luego lleve el cliente a otra máquina y ejecute desde ahí usando el nombre de la máquina del servidor. Ejemplos de sockets Los sockets son un mecanismo de comunicación entre procesos de muy bajo nivel, donde el usuario tiene que hacer muchas cosas, pero que siguen siendo muy importantes. En esta práctica

Más detalles

Ficheros de acceso aleatorio

Ficheros de acceso aleatorio Ficheros de acceso aleatorio Los ficheros con los que hemos trabajado hasta ahora (ya sean ficheros de texto o ficheros binarios con objetos serializados) no resultan adecuados para muchas aplicaciones

Más detalles

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción

Más detalles

Programación Orientada a Objetos. Tema 7: Persistencia

Programación Orientada a Objetos. Tema 7: Persistencia Programación Orientada a Objetos Tema 7: Persistencia Tema 7: Persistencia Contenidos 1. LIBRERÍA I/O 2. FICHEROS 3. FICHEROS DE ACCESO DIRECTO 4. FICHEROS DE TEXTO 5. SERIALIZACIÓN DE OBJETOS 6. EJEMPLO

Más detalles

Práctica GESTIÓN Y UTILIZACIÓN DE REDES LOCALES. Curso 2001/2002. TCP/IP: protocolo TCP

Práctica GESTIÓN Y UTILIZACIÓN DE REDES LOCALES. Curso 2001/2002. TCP/IP: protocolo TCP Práctica 9 GESTIÓN Y UTILIZACIÓN DE REDES LOCALES Curso 2001/2002 TCP/IP: protocolo TCP Introducción Como se ha comentado en la práctica anterior, el protocolo UDP es muy sencillo de implementar, pero

Más detalles

Problemas de Redes de Computadores. Conjunto de problemas 1

Problemas de Redes de Computadores. Conjunto de problemas 1 Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde la dirección IP 130.206.1.1,

Más detalles

Comunicación entre procesos: sockets udp. Jorge Iván Meza Martínez

Comunicación entre procesos: sockets udp. Jorge Iván Meza Martínez Comunicación entre procesos: sockets udp Jorge Iván Meza Martínez [email protected] Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/31 Contenidos Conceptos

Más detalles

Maestría en Ciencias de la Computación

Maestría en Ciencias de la Computación U niversidad Americana de Acapulco Maestría en Ciencias de la Computación Modulo: Protocolo TCP/IP Trabajos: Practica de Protocolos Sockets Exposición del Proyecto Win 2000 Equipo No 2: Diana Nogueda Anaya

Más detalles

Lab 01: Programación de Sockets en TCP

Lab 01: Programación de Sockets en TCP UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO Departamento Académico de Informática REDES Y TELECOMUNICACIONES 2 Lab 01: Programación de Sockets en TCP Ingº Manuel Peñaloza Figueroa Dime y lo olvidaré.

Más detalles

Introducción a la programación con sockets en C

Introducción a la programación con sockets en C Introducción a la programación con sockets en C Enrique Bonet Departamento de Informática Universidad de Valencia Índice Introducción Socket Creación de un socket Cierre de un socket Asociación de un socket

Más detalles

Tema 4.1: - TRANSPORTE-

Tema 4.1: - TRANSPORTE- Tema 4.1: - TRANSPORTE- -Introducción - Terminología OSI - Tipologia y complejidad - Servicios - Calidad de servicio - Conexiones de transporte - Transporte en Internet - Introducción. Su función básica

Más detalles

DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA

DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA José Luis Pastrana Brincones ([email protected]) Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga

Más detalles

Estructuras y funciones de programación de sockets.

Estructuras y funciones de programación de sockets. Estructuras y funciones de programación de sockets. Introducción. En estos apuntes se incluye una breve descripción de las estructuras y funciones cuyo uso puede ser necesario para el desarrollo de las

Más detalles

Sockets (UDP) Tema 2.- Nivel de aplicación en Internet

Sockets (UDP) Tema 2.- Nivel de aplicación en Internet Sockets (UDP) Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Sockets y UDP UDP: no hay conexión entre cliente y servidor»

Más detalles

Práctica 5: Servidor web concurrente en Java

Práctica 5: Servidor web concurrente en Java Práctica 5: Servidor web concurrente en Java Esta práctica pretende familiarizar al alumno con la programación de servidores que emplean sockets TCP. Para ello partiremos del servidor web básico visto

Más detalles

Tutorial BMS Server Studio UDP

Tutorial BMS Server Studio UDP Tutorial BMS Server Studio UDP ÍNDICE Página 0. Introducción...3 1. Configuración del puerto UDP...4 2. Ejemplos...6 2.1 Configuración manual...6 2.1.1 Configuración SocketTest...6 2.1.2 Configuración

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

sockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM)

sockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM) s s Comunicación punto-a-punto entre procesos Los s son los extremos de la comunicación Diferentes dominios UNIX: Entre procesos de un mismo equipo Internet: Entre procesos de diferentes equipos (TCP/IP)

Más detalles

Sockets (TCP) Tema 2.- Nivel de aplicación en Internet

Sockets (TCP) Tema 2.- Nivel de aplicación en Internet Sockets (TCP) Tema 2- Nivel de aplicación en Internet Dr Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material parcialmente adaptado del libro Computer Networking:

Más detalles

PROGRAMACIÓN CONCURRENTE Y DISTRIBUIDA. VI.1: Socket Java

PROGRAMACIÓN CONCURRENTE Y DISTRIBUIDA. VI.1: Socket Java PROGRAMACIÓN CONCURRENTE Y DISTRIBUIDA VI.1: Socket Java Posibilidades que ofrece Java para la comunicación en red: Socket,RMI y URL. 1 Modelo OSI (Modelo de Referencia de Interconexión de Sistemas Abiertos)

Más detalles

Multienhebrado en Java Un toque de sincronización Transporte en Java Ejemplo conjunto

Multienhebrado en Java Un toque de sincronización Transporte en Java Ejemplo conjunto Java y multiprogramación sobre red Sistemas Distribuidos ITInformática (UVA) César Llamas Bello 2003 Índice Multienhebrado en Java Un toque de sincronización Transporte en Java Ejemplo conjunto 26/02/2003

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

LABORATORIO DE RC PRÁCTICA 2: IMPLEMENTACIÓN DE UN CLIENTE Y SERVIDOR DE

LABORATORIO DE RC PRÁCTICA 2: IMPLEMENTACIÓN DE UN CLIENTE Y SERVIDOR DE UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC PRÁCTICA 1: IMPLEMENTACIÓN DE UN CLIENTE Y SERVIDOR DE ECO UDP PRÁCTICA 2: IMPLEMENTACIÓN DE UN CLIENTE

Más detalles

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J. Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar

Más detalles

Comunicacion en Java. Alejandro Escobar

Comunicacion en Java. Alejandro Escobar Comunicacion en Java Alejandro Escobar Introducción a las comunicaciones Modelo básico de red Imagen tomada de: http://java.sun.com/docs/books/tutorial/networking/overview/networking.html Normalmente programamos

Más detalles

Práctica 2: Java Remote Method Invocation (RMI)

Práctica 2: Java Remote Method Invocation (RMI) Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es

Más detalles

Laboratorio de Redes de Comunicaciones Programación con Sockets en Java

Laboratorio de Redes de Comunicaciones Programación con Sockets en Java Laboratorio de Redes de Comunicaciones Programación con Sockets en Java Sockets orientados a conexión Sockets no orientados a conexión Java: Distribuido Java se ha construido con extensas capacidades de

Más detalles

Práctica 3 de Redes de Área Local Cliente y Servidor de ficheros concurrente

Práctica 3 de Redes de Área Local Cliente y Servidor de ficheros concurrente Práctica 3 de Redes de Área Local Cliente y Servidor de ficheros concurrente 3 o curso de Ingeniería Técnica en Informática de Sistemas 13 de abril de 2007 El objetivo de esta práctica es realizar una

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Variables y Tipos de Datos PRÁCTICA NÚM. [ 1 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

Más detalles

Programación Orientada a Objetos II. La Plataforma JDBC

Programación Orientada a Objetos II. La Plataforma JDBC Programación Orientada a Objetos II La Plataforma JDBC Introducción a (JDBC) Java Database Connectivity El API JDBC permite acceder a cualquier tipo de datos tabulares y comúnmente se utiliza para acceder

Más detalles

Práctica 3: Introducción a los sockets en Java

Práctica 3: Introducción a los sockets en Java Práctica 3: Introducción a los sockets en Java En esta práctica se va a tener una primera toma de contacto con la interfaz de los sockets en Java. Para ello plantearemos una serie de ejercicios muy sencillos

Más detalles

Desarrollar, usando Java, un cliente básico del protocolo web que permita enviar una solicitud HTTP a un servidor web y procesar la respuesta.

Desarrollar, usando Java, un cliente básico del protocolo web que permita enviar una solicitud HTTP a un servidor web y procesar la respuesta. Cliente HTTP en Java Objetivos Desarrollar, usando Java, un cliente básico del protocolo web que permita enviar una solicitud HTTP a un servidor web y procesar la respuesta. Requerimientos de la aplicación:

Más detalles

Examen de Redes - Primer Parcial - ETSIA 26 de Enero de 2006

Examen de Redes - Primer Parcial - ETSIA 26 de Enero de 2006 Examen de Redes - Primer Parcial - ETSIA 26 de Enero de 2006 Apellidos, Nombre: Grupo de matrícula: Soluciones al examen Todos 1. (1 punto) Convierte el siguiente servidor iterativo en un servidor concurrente:

Más detalles

USANDO SERVLETS EN UN SERVIDOR WEB RESIN

USANDO SERVLETS EN UN SERVIDOR WEB RESIN USANDO SERVLETS EN UN SERVIDOR WEB RESIN Servidor Web Resin Resin es un servidor web que permite no solo despachar un página web, sino aplicaciones web construidos bajo la arquitectura J2EE, así como el

Más detalles

Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1

Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Preguntas cortas Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde

Más detalles

Mecanismos IPC: sockets

Mecanismos IPC: sockets Mecanismos IPC: sockets Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Sockets Los sockets son una abstracción lógica que permiten la comunicación bidireccional

Más detalles

Migrando aplicaciones a IPv6

Migrando aplicaciones a IPv6 Migrando aplicaciones a Fundamentos técnico: DualStack y Socket.h Alonso Sandoval A. Hernán Vargas L. Universidad Técnica Federico Santa María [email protected], [email protected]

Más detalles

MANUAL TÉCNICO DEL PROXY UTN

MANUAL TÉCNICO DEL PROXY UTN MANUAL TÉCNICO DEL PROXY UTN El Proxy UTN fue desarrollado en Java con el JDK1.1.8, se emplearon los paquetes: java.net.- Para el manejo de comunicaciones de red. java.io.- Para manejo de entrada/salida.

Más detalles

Tipos primitivos y clases de interés

Tipos primitivos y clases de interés Programación Avanzada para Sistemas de Telecomunicación Tipos primitivos y clases de interés Juan Carlos Cruellas [email protected] Objetos y clases Tipos primitivos. Clase String y asociadas. Clases

Más detalles

Juan de Dios Murillo Morera e-mail: [email protected] Santiago Caamaño Polini e-mail: [email protected] INTRODUCCIÓN

Juan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN UNICIENCIA 24 pp. 83-89 2010 IMPLEMENTACIÓN DE UN SERVIDOR FTP UTILIZANDO EL MODELO CLIENTE/SERVIDOR MEDIANTE EL USO DE SOCKETS EN LENGUAJE C UNIX CON EL FIN DE MEJORAR LOS TIEMPOS DE RESPUESTA EN LA RED

Más detalles

Entrada y Salida con Java

Entrada y Salida con Java Entrada y Salida con Java Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad Complutense Madrid E/S con flujos (streams) En Java

Más detalles