La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.

Presentaciones similares


Presentación del tema: "1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González."— Transcripción de la presentación:

1 1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González

2 2 Introducción Finalmente hemos entrado a la última parte de este curso (cap. 21.. 32): Aplicaciones de Red. Veremos cómo los programas de aplicación usan los protocolos de software para comunicarse a través de las redes y en la Internet. Recordar que todo lo visto hasta ahora sólo se justifica por las aplicaciones a nivel aplicación. Otros ejemplos, los sistemas operativos por si mismos no son útiles, ellos están estructurados para servir mejor a los programas que corren sobre ellos. Nos debemos preguntar ¿Cuál es el objetivo final de las redes? Las aplicaciones tiene a personas como usuarios; por lo tanto, ellas definen nombres simbólicos para identificar los recursos físicos y abstractos disponibles en una red. Ej. URL, agv@elo.utfsm.cl, mateo, lucas.

3 3 Funcionalidad provista por una internet Las redes desde el nivel transporte hacia abajo proveen una infraestructura general de comunicación. No indican qué servicio será ofrecido para los usuarios, qué computador correrá qué servicio, cómo estos servicios serán conocidos remotamente, o cómo los servicios serán usados. Todos estos aspectos deben ser cubiertos por las aplicaciones. Como en el servicio telefónico público, las comunicaciones en la internet requieren que parejas de programas de aplicación cooperen. Un programa de aplicación intenta comunicarse con otro en otro computador, y éste responde a los requerimientos. Es como en el teléfono.

4 4 Modelo Cliente Servidor Para que la comunicación entre dos aplicaciones se lleve a cabo uno de los programas de aplicación debe estar esperando por requerimientos por parte del programa llamador. Este modelo, un programa espera pasivamente y el otro inicia la comunicación se conoce como el paradigma de interacción cliente servidor. La aplicación que espera pasivamente es llamada SERVIDOR y la que inicia el contacto es llamada CLIENTE.

5 5 Características de los Clientes y Servidores Cliente: –Es una aplicación normal que actúa como cliente cuando se requiere acceso remoto. –Es invocado directamente por el usuario y tiene una existencia dada por la duración de la sesión del usuario. –Corre localmente en el computador del usuario. –Inicia activamente el contacto con un servidor. Servidor: –Corre en un computador compartido. –Espera pasivamente ser contactado por clientes remotos. –Acepta ser contactado por clientes diversos clientes pero ofrece un servicio bien definido.

6 6 Ejemplos: Samba, WWW telnet ftp e-mail NFS (network File System) X(X-server, X-client) NetMeeting etc....

7 7 Arquitectura y flujo de información El flujo de información viaja en ambas direcciones. Las interacciones son de extremo a extremo, es decir los nodos intermedios son transparentes. Se requiere un protocolo de transporte. Típicamente se usa TCP. En ocasiones se usa UDP (User Datagram Protocol).

8 8 Servicios múltiples en un computador Un computador normalmente puede correr varios servidores y clientes al mismo tiempo. Ej. Mateo tiene, entre otros, servidor WWW, servidor telnet, servidor ftp, de correo. EL computador con múltiples servidores requiere de sólo una conexión de red. Los computadores que corren servidores son a veces llamados servidores. Éste es un abuso de la terminología.

9 9 Identificación de servicio Si hay muchos servidores corriendo y sólo una interfaz, ¿cómo se sabe a quién va dirigido un requerimiento? Los protocolos identifican a cada servicio con un identificador único. En TCP éste es el número de puerto. Éste es un número entero positivo de 16 bits. Los servicios estándares poseen un número previamente acordado. Por ejemplo WWW está en el puerto 80. http://www.elo.utfsm.cl:80/~agv/ equivale a http://www.elo.utfsm.cl/~agv/

10 10 Tipos de Servidores según su forma de servicio Los servidores pueden clasificarse como servidores concurrentes o servidores iterativos. Los servidores iterativos reciben y atiende de a un requerimiento a la vez. Poseen un solo hilo de control (un “program counter”) Los servidores concurrentes pueden atender a mútiples clientes en forma concurrente. – Éstos poseen un hilo que espera por conexiones y crea un hilo ante la llegada de un nuevo cliente. –Éste hilo se hace cargo de los requerimiento del cliente y luego termina (“exit”) cuando el cliente se va. –Éstos requieren capacidad de ejecución de tareas concurrentes.

11 11 Si hay varias conexiones hacia un servidor, ¿cómo este computador identifica el hilo que debe hacerse cargo de cada requerimiento? (todos van al mismo puerto y máquina) El TCP identifica una conexión por la 4-tupla pareja (máquina local, puerta local, máquina remota, puerta remota) Éste vector es único para cada conexión aceptada, es así como los paquetes pueden ser enviados al hilo que corresponde. Identificación no ambigua de comunicaciones Servidor “Base” Instancia 1 Instancia 2 Instancia n Cliente 1 Cliente 2 Cliente n

12 12 Transporte orientado a la conexión o sin conexión? Se tienen aplicaciones en ambos tipos de conexiones. La gran mayoría usa servicio de conexión, pero también las hay de las otras. Cuando el servicio de transporte es de conexión, los clientes deben establecer una conexión primero y luego enviar sus requerimientos. Usan TCP. En servicios no orientados a la conexión, cada cliente envía sus requerimientos y espera por la respuesta. Cada requerimiento es independiente. No hay memoria de la historia. Usan UDP.

13 13 Otras Proxy y Corta Fuegos Un servidor puede transformarse en un cliente para satisfacer un requerimiento. Ejemplo una proxy, un corta fuego: Proxy o corta fuego Cliente Servidor Ojo: cuidado con los ciclos !!!


Descargar ppt "1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González."

Presentaciones similares


Anuncios Google