Capítulo 2: Capa Aplicación - IV
|
|
|
- Bernardo Páez Salinas
- hace 10 años
- Vistas:
Transcripción
1 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 3rd edition. Jim Kurose, Keith Ross Addison-Wesley, material del curso anterior ELO322 del Prof. Agustín Gonzales 2: Capa Aplicación 1
2 Capítulo 2: Capa Aplicación 2.1 Principios de la aplicaciones de red 2.2 Web y HTTP 2.3 FTP 2.4 Correo Electrónico SMTP, POP3, IMAP 2.5 DNS 2.6 P2P Compartición de archivos 2.7 Programación de sockets con TCP 2.8 Programación de sockets con UDP 2.9 Construcción de un servidor WEB 2: Capa Aplicación 2
3 P2P file sharing Ejemplo Alice ejecuta una aplicación cliente en su notebook Intermitentemente se conecta al Internet; recibe una nueva dirección IP para cada conexión Pide canción Hey Jude Aplicacion muestra otros pares que tienen una copia de Hey Jude. Alice elige a uno de los pares, Bob Archivo es copiado del PC de Pedro al PC de Alice notebook: HTTP Mientras que Alice lo baja, otros usuarios bajan musica del PC de Alice. El PC par de Alice s es un cliente Web y tambien temporalmente un servidor Web. Todos los pares puedes ser servidores = altamente escalable! 2: Capa Aplicación 3
4 P2P: directorio centralizado Diseño original de Napster 1) Duando un terminal par se conecta, el informa a un servidor central: centralized directory server 1 1 Bob peers dirección IP música que tiene 2) Alice pregunta por Hey Jude ) Alice pide el archivo de Bob directamente Alice 2: Capa Aplicación 4
5 P2P: problems with centralized directory Punto individual de falla Cuello de botella a la capacidad (performance) Problemas legales con música (Copyright infringement) la transferencia de archivos es descentralizada pero localizar contenido (archivos) es altamente centralizado 2: Capa Aplicación 5
6 Inundación de preguntas (Query flooding): Gnutella Completamente distribuido sin servidor central Protocolo en dominio publico Muchos clientes Gnutella implementan el protocolo Red sobrepuesta: grafo Borde (edge) entre pares X e Y si hay una conexión TCP Todos los pares activos y los bordes entre ellos es la red sobrepuesta (overlay net) Borde (y red sobrepuesta) no es un enlace físico si no conceptual Un par típicamente va a estar conectado a < 10 vecinos en su red sobrepuesta 2: Capa Aplicación 6
7 Gnutella: protocolo Mensaje de pregunta (Query) mandado sobre conexiones existentes TCP Pares reenvían mensaje de pregunta (Query message) Resultado positivo (QueryHit) se manda por ruta reversa Query QueryHit Query QueryHit File transfer: HTTP Query QueryHit Query Escalable: inundación de mensajes limitada Query 2: Capa Aplicación 7
8 Gnutella: Conectarse a Pares 1. Par X debe encontrar otro par en la red Gnutella: usa lista de pares candidatos 2. X trata secuencialmente a conectarse vía TCP con pares en su lista hasta hacer una conexión con Y 3. X manda mensaje Ping a Y; Y reenvía mensaje Ping 4. Todos los pares que reciben el mensaje Ping responden con mensaje Pong 5. X recibe muchos mensajes Pong. El ahora puede establecer conexiones TCP adicionales Desconectarse de Pares: tarea! 2: Capa Aplicación 8
9 Explotando heterogeneidad: KaZaA Protocolo no publico Cada par es un líder de grupo o asignado a un líder de grupo Conexión TCP entre par y líder de grupo Conexiones TCP entre pares de lideres de grupo Líder de grupo sabe los contenidos (archivos) de todos sus hijos ordinary peer group-leader peer neighoring relationships in overlay network 2: Capa Aplicación 9
10 KaZaA: Búsquedas Cada archivo tiene un hash y un descriptor (incluye el nombre del archivo y descripción en texto del objeto) Cliente manda una pregunta usando palabras claves a su líder de grupo (el busca en el descriptor) Líder de grupo responde con aciertos: Para cada acierto: metadatos, hash, direccion IP Si un lider de grupo reenvía la búsqueda a otros lideres de grupo, esos lideres contestan con aciertos (usando ruta inversa red sobrepuesta) Cliente selecciona archivos para bajar Mensajes HTTP usando hash como identificador son mandados a pares que contienen archivo deseado 2: Capa Aplicación 10
11 Trucos Kazaa Limitación para subidas (uploads) (y downloads?) simultaneas Encolamiento de peticiones Prioridades basadas en incentivos a mejores usuarios (los que suben mas archivos a la red) Bajada de datos para un archivo en paralelo (puede usar múltiples conexiones HTTP a diferentes pares para el mismo archivo) 2: Capa Aplicación 11
12 Capítulo 2: Capa Aplicación 2.1 Principios de la aplicaciones de red 2.2 Web y HTTP 2.3 FTP 2.4 Correo Electrónico SMTP, POP3, IMAP 2.5 DNS 2.6 P2P Compartición de archivos 2.7 Programación de sockets con TCP 2.8 Programación de sockets con UDP 2.9 Construcción de un servidor WEB 2: Capa Aplicación 12
13 Programación de Sockets Objetivo: aprender cómo construir aplicaciones cliente servidor que se comunican usando sockets API para sockets Fue introducida en BSD4.1 UNIX, 1981 El socket es explícitamente creado, usado, y liberado por las aplicaciones Sigue el modelo cliente/servidor Hay dos tipos de servicios de transporte vía el API de socket: Datagramas no confiables Orientado a un flujo de bytes y confiable sockets Son locales al host, Creados por la aplicación, Es una interfaz controlada por el OS (una puerta ) a través de la cual el proceso aplicación puede tanto enviar como recibir mensajes a/desde el otro proceso de la aplicación 2: Capa Aplicación 13
14 Programación de Sockets con TCP Socket: una puerta entre el proceso aplicación y el protocolo de transporte de extremo a extremo (UCP o TCP) Servicio TCP: transferencia confiable de bytes desde un proceso a otro Controlado por El desarrollador De la aplicación Controlado por el sistema operativo proceso socket TCP con buffers, variables Internet proceso socket TCP con buffers, variables Controlado por El desarrollador De la aplicación Controlado por el sistema operativo cliente o servidor servidor o cliente 2: Capa Aplicación 14
15 Programación de Sockets con TCP El cliente debe contactar al servidor Proceso servidor debe estar corriendo primero Servidor debe tener creado el socket (puerta) que acoge al cliente El cliente contacta al servidor por: La creación de un socket TCP local para el cliente Especifica la dirección IP, número de puerto del proceso servidor Una vez que el cliente crea el socket: el socket establece una conexión TCP al servidor Cuando el servidor es contactado por el cliente, el servidor TCP crea otro socket para que el procese servidor se comunique con el cliente Permite que un servidor hable con múltiples clientes IP y Número de puerto fuente distingue a los clientes (más adelante más sobre esto) Punto de vista de la aplicación TCP provee transferencias de bytes confiables y en orden. Es un pipeline (o tubería ) de datos entre el cliente y servidor 2: Capa Aplicación 15
16 Sockets creados en relación cliente/servidor usando TCP 2: Capa Aplicación 16
17 Jerga de flujos (Stream) Un stream (flujo) es una secuencia de caracteres que fluyen hacia o desde un proceso. Un input stream (flujo de entrada) esta ligado a alguna fuente de entrada para el proceso, eg, teclado o socket. Un output stream (flujo de salida) está ligado a una salida del proceso, eg, pantalla o socket. 2: Capa Aplicación 17
18 Programación de sockets con TCP Ejemplo aplicación clienteservidor: 1) Cliente lee líneas desde la entrada estándar (flujo infromuser), las envía al servidor vía un socket (flujo outtoserver) 2) El servidor lee líneas desde el socket 3) El servidor las convierte a mayúsculas, y las envía de vuelta al clientes 4) cliente lee y muestra la línea modificada desde el socket (flujo infromserver) Client process 2: Capa Aplicación 18
19 Interacción Cliente/servidor vía socket TCP Servidor (corriendo en dirección hosname) create socket, port=x, for incoming request: welcomesocket = ServerSocket(6789) Cliente wait for incoming connection request connectionsocket = welcomesocket.accept() read request from connectionsocket TCP connection setup create socket, connect to hostid, port=x clientsocket = Socket( hostname, 6789) send request using clientsocket write reply to connectionsocket close connectionsocket read reply from clientsocket close clientsocket 2: Capa Aplicación 19
20 Ejemplo: Cliente Java (TCP) import java.io.*; import java.net.*; class TCPClient { Crea Flujo entrante Crea cliente socket, conecta al servidor Crea Flujo de salida Unido al socket public static void main(string argv[]) throws Exception { String sentence; String modifiedsentence; Traduce hostname a IP usando DNS BufferedReader infromuser = new BufferedReader(new InputStreamReader(System.in)); Socket clientsocket = new Socket("hostname", 6789); DataOutputStream outtoserver = new DataOutputStream(clientSocket.getOutputStream()); 2: Capa Aplicación 20
21 Ejemplo: Cliente Java (TCP), cont. Crea Flujo de entrada Unido al socket Envía línea Al servidor Lee línea Desde el servidor BufferedReader infromserver = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); sentence = infromuser.readline(); outtoserver.writebytes(sentence + '\n'); modifiedsentence = infromserver.readline(); System.out.println("FROM SERVER: " + modifiedsentence); clientsocket.close(); } } 2: Capa Aplicación 21
22 Ejemplo: Servidor Java (TCP) import java.io.*; import java.net.*; class TCPServer { Crea Socket de bienvenida En puerto 6789 Crea socket de conexion para Contacto de clientes Crea flujo De entrada unido A socket public static void main(string argv[]) throws Exception { String clientsentence; String capitalizedsentence; ServerSocket welcomesocket = new ServerSocket(6789); while(true) { Socket connectionsocket = welcomesocket.accept(); BufferedReader infromclient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream())); 2: Capa Aplicación 22
23 Ejemplo: Servidor Java (TCP), cont Crea flujo de Salida unido al socket Lee línea Desde el socket DataOutputStream outtoclient = new DataOutputStream(connectionSocket.getOutputStream()); clientsentence = infromclient.readline(); capitalizedsentence = clientsentence.touppercase() + '\n'; Escribe línea En socket } } } outtoclient.writebytes(capitalizedsentence); Fin del cuerpo del while, Vuelve y espera por la conexión de otro cliente (un connectionsocket por línea de texto) 2: Capa Aplicación 23
24 Capítulo 2: Capa Aplicación 2.1 Principios de la aplicaciones de red 2.2 Web y HTTP 2.3 FTP 2.4 Correo Electrónico SMTP, POP3, IMAP 2.5 DNS 2.6 P2P Compartición de archivos (Lo saltaremos) 2.7 Programación de sockets con TCP 2.8 Programación de sockets con UDP 2.9 Construcción de un servidor WEB 2: Capa Aplicación 24
25 Programación de Socket con UDP UDP: no hay conexión entre cliente y servidor No hay handshaking (establecimiento de conexión) Tx explícitamente adjunta dirección IP y puerto de destino en cada paquete. Para responder se debe extraer dirección IP y puerto del Tx desde el paquete recibido UDP: datos transmitidos pueden llegar fuera de orden o perderse. Punto de vista de la aplicación UDP provee transferencia no confiable de grupos de bytes ( datagramas ) entre cliente y servidor 2: Capa Aplicación 25
26 Interacción Cliente/servidor: UDP Servidor (corriendo en hostid) 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 2: Capa Aplicación 26
27 Ejemplo: Cliente Java (UDP) Proceso cliente Output: envía paquetes (TCP envía flujo de bytes ) Input: recibe paquetes (TCP recibe flujo de bytes ) 2: Capa Aplicación 27
28 Ejemplo: Cliente Java (UDP) import java.io.*; import java.net.*; Crea input stream Crea Socket cliente Traduce hostname a IP usando DNS class UDPClient { public static void main(string args[]) throws Exception { BufferedReader infromuser = new BufferedReader(new InputStreamReader(System.in)); DatagramSocket clientsocket = new DatagramSocket(); InetAddress IPAddress = InetAddress.getByName("hostname"); byte[] senddata = new byte[1024]; byte[] receivedata = new byte[1024]; String sentence = infromuser.readline(); senddata = sentence.getbytes(); 2: Capa Aplicación 28
29 Ejemplo: Cliente Java (UDP), cont. Crea datagrama con datos a enviar, largo, dir IP, puerto Envía datagrama a servidor Lee datagrama desde servidor } DatagramPacket sendpacket = new DatagramPacket(sendData, senddata.length, IPAddress, 9876); clientsocket.send(sendpacket); DatagramPacket receivepacket = new DatagramPacket(receiveData, receivedata.length); clientsocket.receive(receivepacket); String modifiedsentence = new String(receivePacket.getData()); System.out.println("FROM SERVER:" + modifiedsentence); clientsocket.close(); } 2: Capa Aplicación 29
30 Ejemplo: Servidor Java (UDP) import java.io.*; import java.net.*; Crea Socket de datagrama en puerto 9876 Crea espacio para recibir datagrama Recibe datagrama class UDPServer { public static void main(string args[]) throws Exception { DatagramSocket serversocket = new DatagramSocket(9876); byte[] receivedata = new byte[1024]; byte[] senddata = new byte[1024]; while(true) { DatagramPacket receivepacket = new DatagramPacket(receiveData, receivedata.length); serversocket.receive(receivepacket); 2: Capa Aplicación 30
31 Ejemplo: Servidor Java (UDP), cont Obtiene dir IP puerto #, del cliente String sentence = new String(receivePacket.getData()); InetAddress IPAddress = receivepacket.getaddress(); int port = receivepacket.getport(); Crea datagrama a enviar a cliente Envía el datagrama a través del socket } } String capitalizedsentence = sentence.touppercase(); senddata = capitalizedsentence.getbytes(); DatagramPacket sendpacket = new DatagramPacket(sendData, senddata.length, IPAddress, port); serversocket.send(sendpacket); } Término el cuerpo del while, Vuelve a su inicio y espera otro datagrama 2: Capa Aplicación 31
32 Ejemplo 2 Cliente/Servidor TCP: Secuencia de Pasos en Java Servidor Crear un socket Cliente Crear un socket Esperar y Aceptar un cliente Conectarlo al servidor Abre y cierra otro socket para enviar/recibir datos Enviar/Recibir datos Cerrar el socket Cerrar el socket 2: Capa Aplicación 32
33 Servidor TCP en Java, Simple import java.io.*; import java.net.*; class TCPserver { public static void main (String argv[]) throws Exceptio { String line; // Almacena lo recibido //welcomesocket es el socker servidor que acepta la conexión ServerSocket welcomesocket = new ServerSocket( Integer.parseInt(argv[0])); // connectionsocket es aquel que atiende a un cliente específico Socket connectionsocket = welcomesocket.accept(); // Esta concatenación de objetos adaptadores permite la lectura // simple de datos desde el socket para ese cliente. BufferedReader infromclient = new BufferedReader( new InputStreamReader(connectionSocket.getInputStream())); // Recibe datos y los envia a pantalla. do { line=infromclient.readline(); System.out.println(line); } while(!line.equals("quit")); // Cerramos ambos sockets connectionsocket.close(); welcomesocket.close(); } } Cliente TCP Red Servidor TCP 2: Capa Aplicación 33
34 Cliente TCP en Java, Simple import java.io.*; import java.net.*; class TCPclient { public static void main (String argv[]) throws Exception { String line; // Almacena lo digitado // Concatenación de objetos adaptadores para la lectura // simple de teclado. BufferedReader infromuser = new BufferedReader( new InputStreamReader(System.in)); // Socket en el cliente para enviar datos al servidor. Socket clientsocket = new Socket(argv[0],Integer.parseInt(argv[1])); // Concatenación de objetos adaptadores para la escritura // o envio de datos en forma simple a través del socket. DataOutputStream outtoserver = new DataOutputStream( } } clientsocket.getoutputstream()); // Lectura de teclado y envío de datos al servidor. do { line=infromuser.readline(); outtoserver.writebytes(line+'\n'); } while(!line.equals("quit")); // Cerramos el socket y con ello también la conexión. clientsocket.close(); Cliente TCP Red Servidor TCP 2: Capa Aplicación 34
35 Servidor UDP en Java, Simple import java.io.*; import java.net.*; class UDPserver { public static void main (String argv[]) throws Exception { // construimos un socket ligado a un puerto. Pasa a ser servidor. DatagramSocket serversocket = new DatagramSocket( Integer.parseInt(argv[0])); // buffer que contendrá los datos recibidos byte[] receivedata = new byte[256]; // Datagrama que recibe lo enviado por el cliente. DatagramPacket receivepacket = new DatagramPacket (receivedata, receivedata.length); String line; // almacenará la linea enviada. do { serversocket.receive(receivepacket); // Recibimos un Cliente TCP Red Servidor TCP datagrama // y extraemos de él la línea enviada desde la posición 0 // al largo de datos recibidos. line = new String(receivePacket.getData(), 0, receivepacket.getlength()); System.out.print(line); // muestra línea en pantalla. }while(!line.equals("quit"+'\n')); // Cerramos ambos sockets serversocket.close(); } } 2: Capa Aplicación 35
36 Cliente UDP en Java, Simple import java.io.*; import java.net.*; class UDPclient { public static void main (String argv[]) throws Exception { // Concatenación de objetos adaptadores para la lectura // simple de teclado. BufferedReader infromuser=new BufferedReader(new InputStreamReader( System.in)); // Socket en el cliente para enviar datos al servidor. DatagramSocket clientsocket = new DatagramSocket(); // Creamos objeto con dirección IP destino InetAddress IPAddress = InetAddress.getByName(argv[0]); // Puerto a definir en el datagrama a enviar int port = Integer.parseInt(argv[1]); String line; // linea a leer de teclado do { line = infromuser.readline()+'\n'; byte[] senddata = line.getbytes(); // sacamos los bytes del string // se construye el Datagrama UDP con los datos, dirección y puerto destino DatagramPacket sendpacket = new DatagramPacket(sendData, senddata.length,ipaddress,port); // enviamos el datagrama clientsocket.send(sendpacket); }while (!line.equals("quit"+'\n')); // Cerramos el socket clientsocket.close(); } } Cliente TCP Red Servidor TCP 2: Capa Aplicación 36
37 Capítulo 2: Capa Aplicación 2.1 Principios de la aplicaciones de red 2.2 Web y HTTP 2.3 FTP 2.4 Correo Electrónico SMTP, POP3, IMAP 2.5 DNS 2.6 P2P Compartición de archivos (Lo saltaremos) 2.7 Programación de sockets con TCP 2.8 Programación de sockets con UDP 2.9 Construcción de un servidor WEB 2: Capa Aplicación 37
38 Construyendo un simple servidor Web Maneja una petición HTTP Acepta la petición Analiza cabecera (parses header) Obtiene archivo pedido de su sistema de archivos (file system) Crea mensaje HTTP de respuesta: líneas cabecera + archivo Manda respuesta al cliente Después de crear el servidor, tu puedes pedir un archivo usando un browser (eg Mozilla, Netscape o IE explorer) Ver texto para mas detalles 2: Capa Aplicación 38
39 Resumen de Capa aplicación Hemos cubierto varias aplicaciones de red Arquitectura de la aplicaciones cliente-servidor P2P híbridos Servicios requeridos por aplicaciones: confiabilidad, ancho de banda, retardo Modelo de servicio de transporte en Internet Confiable y orientada a la conexión: TCP No confiable, datagramas: UDP Protocolos específicos: HTTP FTP SMTP, POP, IMAP DNS Programación de sockets Un simple servidor web 2: Capa Aplicación 39
40 Resumen de Capa aplicación Lo más importante: aprendido sobre protocolos Intercambio de mensajes típicos requerimiento/respues ta: cliente requiere info o servicio servidor responde con datos, código de estatus Formato de mensajes: encabezado: campos dando info sobre datos datos: info siendo comunicada Mensajes de control vs. datos in-band, out-of-band Centralizado vs. descentralizado Sin estado vs. con estado Transferencia confiable vs. Transferencia no confiable la complejidad es puesta en los bordes de la red (las aplicaciones) 2: Capa Aplicación 40
REDES DE COMPUTADORAS 2. Clase 5
REDES DE COMPUTADORAS 2 Clase 5 Agenda Principios de las aplicaciones de red Web y HTTP FTP Correo Electrónico SMTP, POP3, IMAP DNS P2P para archivos compartidos Programación de sockets con TCP Programación
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
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é.
Arquitecturas cliente/servidor
Arquitecturas cliente/servidor Creación de Sockets Cliente Servidor Creación de Sockets Cliente/Servidor Sockets en TCP Sockets en UDP Definición de DAEMON Concepto de Hilos Qué es un socket? Un socket
1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea 6.
1. Definición de puerto 2. Sockets 3. Conceptos cliente/servidor 4. Definición de Stream 5. Concurrencia, multiprogramación y multitarea 6. Servidores iterativos y concurrentes 7. Estándares Stream Es
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
Curso de Redes Computadores 1 Tema 3 Introducción a la capa de transporte. Interfaz de programación en redes. Sockets.
Curso de Redes Computadores 1 Tema 3 Introducción a la capa de transporte. Interfaz de programación en redes. Sockets. Prof. Ricardo Gonzalez Redes de Computadores Tema 3 1 1 Modelo Cliente-Servidor Dos
Programación con Sockets
Programación en Internet (Sockets) Programación con Sockets Objetivo: aprender como construir aplicaciones cliente/servidor que se comunican utilizando sockets Socket API introducida en el BSD4.1 UNIX,
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
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
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
Qué es Internet? Cómo funciona Internet?
Qué es Internet? Cómo funciona Internet? Tema 1.- Introducción Dr. Daniel orató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso aterial adaptado del libro Computer Networking:
Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet
Clase 22 Nivel de Aplicación WWW Tema 6.- Nivel de aplicación en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico de Telecomunicación Especialidad en Sonido e Imagen 3º curso Temario
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
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
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
Funcionamiento de Servicios Web, FTP
Funcionamiento de Servicios Web, FTP Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material adaptado del libro Computer
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:
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.
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..
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
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
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
Introducción a las redes de Computadoras Capítulo 2 Clase 2
Introducción a las redes de Computadoras Capítulo 2 Clase 2 Nota acerca de las transparencias del curso: Estas transparencias están basadas en el sitio web que acompaña el libro, y han sido modificadas
Capítulo 1: Introducción - I
Capítulo 1: Introducción - I 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
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
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
Capítulo 1: Introducción
Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en: El material preparado como apoyo al texto Computer Networking: A Top Down Approach Featuring the
SDC y P2P P2P Según Kurose
SDC yp2p Según Kurose Ejemplo de CDN 1 2 Servidor origen Solic itud HTTP para www.foo.com/sports/sports.html Consulta DNS para www.cdn.com Servidor origen www.foo.com distribuye HTML Reemplaza: 3 Solicitud
Capítulo 2 La capa de aplicación
Capítulo 2 La capa de aplicación A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify,
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
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
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
Repaso de conceptos Tema 1.- Introducción
Clases 2 y 3 Repaso de conceptos Tema 1.- Introducción Dr. Daniel Morató Redes de Ordenadores Ingeniero Técnico de Telecomunicación Especialidad en Sonido e Imagen, 3º curso Material parcialmente adaptado
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...
Capítulo 4: Capa Red - I
Capítulo 4: Capa Red - I ELO322: Redes de Computadores Agustín J. González Este material está basado en: Material de apoyo al texto Computer Networking: A Top Down Approach Featuring the Internet 3rd edition.
Capítulo 1: Introducción
Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en: El material preparado como apoyo al texto Computer Networking: A Top Down Approach Featuring the
Arquitectura de Redes
Arquitectura de Redes Problemas propuestos Raúl Durán Díaz Departamento de Automática Universidad de Alcalá ALCALÁ DE HENARES, 2011, 2012, 2013 Raúl Durán Díaz Departamento de Automática Universidad de
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
3.1 Introducción a Wireshark
3.1 Introducción a Wireshark Una herramienta básica para observar los mensajes intercambiados entre aplicaciones es un analizador de protocolos (packet sniffer). Un analizador de protocolos es un elemento
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
CAPA DE APLICACIÓN. 80 s : Aplicaciones basadas en texto o email o acceso remoto o transferencia de ficheros o grupos de noticias o chat
CAPA DE APLICACIÓN 80 s : Aplicaciones basadas en texto o email o acceso remoto o transferencia de ficheros o grupos de noticias o chat A mediados de los 90: Web Aplicaciones Multimedia: o Streaming video
Sistemas de Operación II
Sistemas de Operación II Sistemas de Archivos Distribuidos Prof. Carlos Figueira Basado en material de Yudith Cardinale (USB) Andrew Tanembaum y Marteen van Steen Contenido Introducción Requisitos Aspectos
Práctica 1. Uso básico de servicios cliente-servidor
Práctica 1. Uso básico de servicios cliente-servidor SCS, 2010/11 21 de septiembre de 2010 Índice 1. Utilidades de línea de comandos 1 1.1. Comando nc/netcat................................................
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
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
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
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:
La vida en un mundo centrado en la red
La vida en un mundo centrado en la red Aspectos básicos de networking: Capítulo 3 1 Objetivos En este capítulo aprenderá a: Describir cómo las funciones de las tres capas superiores del modelo OSI que
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
Examen Final de Redes - ETSIA - 24 de junio de 2006
Apellidos, Nombre: Grupo de matrícula: Examen Final de Redes - ETSIA - 24 de junio de 2006 1. (0,5 puntos) Calcula el tiempo necesario para recibir la respuesta a una consulta DNS si el servidor de nombres
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
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
Capítulo 4: Capa Red - IV
Capítulo 4: Capa Red - 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 3rd
Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática
Cátedra de Sistemas Distribuidos Escuela de Ingeniería Electrónica Departamento de Sistemas e Informática Trabajo Práctico nro. 2: Comunicación Entre Procesos Tiempo Distribuido Objetivos del Práctico
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
01/10/2010. 14. Conjunto de protocolos TCP/IP. Contenido. a. TCP/IP Internet OSI. a. TCP/IP Internet OSI. b. Nivel de red Protocolo IP
14. Conjunto de protocolos TCP/IP Contenido a. TCP/IP Internet OSI b. Nivel de red Protocolo IP c. Direccionamiento y subredes d. Otros protocolos en el nivel de red e. Nivel de transporte a. TCP/IP Internet
FUNDAMENTOS DE REDES CONCEPTOS DE LA CAPA DE APLICACIÓN
FUNDAMENTOS DE REDES CONCEPTOS DE LA CAPA DE APLICACIÓN Mario Alberto Cruz Gartner [email protected] Conceptos La última capa o Capa 7 del modelo OSI se denomina capa de aplicación. La capa de aplicación
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
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
Nivel aplicación Interacción Cliente Servidor. ELO322: Redes de Computadores Agustín J. González
Nivel aplicación Interacción Cliente Servidor ELO322: Redes de Computadores Agustín J. González 1 Introducción Recordar que todo lo visto hasta ahora sólo se justifica por las aplicaciones a nivel aplicación.
2.1. Introducción al lenguaje Java
Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida
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
AUTORES: OBREGON CARLA 20.621.330 ROMERO MARIA 19.118.452 MARACAIBO FEBRERO 2012
REPUBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA DEFENSA UNIVERSIDAD NACIONAL EXPERIMENTAL DE LAS FUERZAS ARMADAS BOLIVARIANA DOCENTE: JOSE PARRA CATEDRA: REDES MARACAIBO FEBRERO
TEMA: PROTOCOLOS TCP/IP
TEMA: PROTOCOLOS TCP/IP HISTORIA: El Protocolo de Internet (IP) y el Protocolo de Transmisión (TCP), fueron desarrollados inicialmente en 1973 por el informático estadounidense Vinton Cerf como parte de
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,
Capítulo 4: Capa Red - IV
Capítulo 4: Capa Red - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en: Material de apoyo al texto Computer Networking: A Top Down Approach Featuring the Internet 3rd
Universidad de Cantabria [email protected]
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
PREPARATORIA DIURNA DE CUAUTLA
PREPARATORIA DIURNA DE CUAUTLA Taller de computación II Profr. ING. AARON TABOADA LOMEZ Tecnologías de la Información y Comunicación (TIC) Son aquellas herramientas computacionales que procesan, almacenan,
Introduciendo datos desde el
Introduciendo datos desde el teclado Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria [email protected] Objetivos Crear programas interactivos que lean datos
Examen de Introducción a las Redes de Computadoras y Comunicación de Datos (ref: sirc0707.doc) 31 de julio de 2007
Examen de Introducción a las Redes de Computadoras y Comunicación de Datos (ref: sirc0707.doc) 31 de julio de 2007 Atención: La duración del examen de 3 horas. El examen debe realizarse sin material. Se
Práctica 3: Estudio de los protocolos HTTP, SMTP, POP3 e IMAP mediante un analizador de red: Wireshark
FUNDAMENTOS DE REDES DE COMPUTADORES Curso 2009/2010 Práctica 3: Estudio de los protocolos HTTP, SMTP, POP3 e IMAP mediante un analizador de red: Wireshark Introducción En esta práctica vamos a trabajar
DIPLOMADO EN SEGURIDAD INFORMATICA
DIPLOMADO EN SEGURIDAD INFORMATICA Modulo 9: Soporte Computacional Clase 9_3:Protocolos de comunicación y conectividad de arquitecturas multiplataforma. Director Programa: César Torres A Profesor : Claudio
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
8 Conjunto de protocolos TCP/IP y direccionamiento IP
8 Conjunto de protocolos TCP/IP y direccionamiento IP 8.1 Introducción a TCP/IP 8.1.1 Historia de TCP/IP El Departamento de Defensa de EE.UU. (DoD) creó el modelo de referencia TCP/IP porque necesitaba
Redes de Computadoras Junio de 2007. Teoría y problemas
edes de Computadoras Junio de 2007 Nombre: DNI: Teoría y problemas 1. (2 puntos) Suponga la siguiente red de computadoras: H 1 S 1 H 2 L El nodo emisor H 1 envía al nodo receptor H 2 un mensaje de F bits
11. Algunas clases estándar de Java (II)
122 A. García-Beltrán y J.M. Arranz 11. Algunas clases estándar de Java (II) Objetivos: a) Presentar la clase predefinida en Java para trabajar con arrays b) Interpretar el código fuente de una aplicación
Juan de Dios Murillo Morera e-mail: [email protected] Santiago Caamaño Polini e-mail: [email protected] 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
4.6.1: Desafío de integración de habilidades: Análisis de las capas de aplicación y de transporte
4.6.1: Desafío de integración de habilidades: Análisis de las capas de aplicación y de transporte Diagrama de topología Tabla de direccionamiento Máscara Gateway Dispositivo Interfaz Dirección IP de subred
Manual de configuración del correo. electrónico de alumnos de la UBU
Manual de configuración del correo electrónico de alumnos de la UBU Texto actualizado el 08/04/2008 Facultad de Ciencias, planta baja Plaza Misael Bañuelos s/n 09001 Burgos Telf.: 947 25 88 43 Fax: 947
INSTITUTO TECNOLÓGICO DE SALINA CRUZ. Fundamentos De Redes. Semestre Agosto-Diciembre 2014. Reporte De Lectura
INSTITUTO TECNOLÓGICO DE SALINA CRUZ Fundamentos De Redes Semestre Agosto-Diciembre 2014 Reporte De Lectura Lectura Capítulo IV UNIDAD 3: Capa de red y direccionamiento de la red: IPv4 NOMBRE: Liña Quecha
