Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Un sistema distribuido es aquel en el que dos o ms mquinas colaboran para la obtencin q p de un resultado. En todo sistema distribuido se establecen una o varias comunicaciones se establecen una o varias comunicaciones siguiendo un protocolo prefijado mediante un esquema cliente-servidor esquema cliente servidor. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles En un esquema cliente-servidor, se denomina cliente la mquina que solicita un q q determinado servicio y se denomina servidor la mquina que lo proporciona. El servicio la mquina que lo proporciona. El servicio puede ser la ejecucin de un determinado algoritmo el acceso a determinado banco de algoritmo, el acceso a determinado banco de informacin o el acceso a un dispositivo hardware hardware. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Por extensin, se puede aplicar el esquema cliente-servidor dentro de una misma mquina, donde el proceso ser idor el proceso cliente donde el proceso servidor y el proceso cliente son dos procesos independientes que corren dentro de la misma instancia de sistema dentro de la misma instancia de sistema operativo. Es por tanto un elemento primordial para que Es por tanto un elemento primordial para que haya un sistema distribuido, la presencia de un medio fsico de comunicacin entre ambas mquinas, y ser la naturaleza de este medio la que marque en muchos casos la viabilidad del sistema. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Se clasifican los sistemas cliente servidor de acuerdo al nivel de abstraccin del servicio que se ofrece. Se distinguen tres componentes bsicos de software: componentes bsicos de software: Interaccin con el usuario Lgica de Aplicacin Lgica de Aplicacin Repositorio de datos Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 1. Representacin distribuida. La interaccin con el usuario se realiza bsicamente en el servidor. El cliente hace de pasarela, de sistema de acceso a los elementos hardware pantalla y teclado. B d d t Terminal fsico Base de datos Lgica de aplicacin Interface de usuario Terminal fsico Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 2. Representacin remota. Los datos se envan sin formatear, y es el cliente el responsable de formatear los datos y realizar las acciones de interaccin con el usuario. En este caso, la aplicacin y la base de datos se encuentran en el d servidor B d d t Terminal inteligente Base de datos Lgica de aplicacin Interface avanzado de usuario Terminal inteligente Intarface bsico de usuario Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 3. Lgica distribuida. En el cliente se llevan a cabo la interaccin con el usuario y la parte ms trivial de la interaccin con el usuario y la parte ms trivial de la lgica de la aplicacin. En este caso, se llevan a cabo controles bsicos de rango de campos campos controles bsicos de rango de campos, campos obligatorios, etc, mientras que el grueso de la lgica permanece en el servidor permanece en el servidor. B d d t Ordenador desobremesa Base de datos Lgica de aplicacin Ordenador de sobremesa Lgica bsica de aplicacin Interface de usuario Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 4. Gestin remota de datos. Tanto la interaccin con el usuario como la aplicacin residen en el l d l d l d d l cliente, siendo el servidor el depositario de los datos. B d d t Ordenador desobremesa Base de datos Ordenador de sobremesa Lgica de aplicacin Interface de usuario Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 5. B.D. Distribuidas. El cliente debe conocer la l d l d l d topologa de la red, as como la disposicin y ubicacin de los datos. En este caso, se delega t d l ti d b d d t l li t parte de la gestin de base de datos a los clientes. Base de datos Ordenador de sobremesa Distribucindedatos Distribucin de datos Lgica de aplicacin Interface de usuario Base de datos Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles 6. Cliente servidor a tres niveles (three tier). La aplicacin se distribuye en los tres niveles: aplicacin, datos e interface de usuario Base de datos Ordenador de sobremesa I t f d i Lgica de aplicacin Interface de usuario Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Es un conjunto bien conocido de reglas y formatos que se tili l i i t li utilizan para la comunicacin entre procesos que realizan una determinada tarea. Se requieren dos partes: Especificacin de la secuencia de mensajes que se han de Especificacin de la secuencia de mensajes que se han de intercambiar. Especificacin del formato de los datos en los mensajes Especificacin del formato de los datos en los mensajes. Un protocolo permite que componentes heterogneos de sistemas distribuidos puedan desarrollarse sistemas distribuidos puedan desarrollarse independientemente, y por medio de mdulos de software que componen el protocolo, haya una comunicacin q p p , y transparente entre ambos componentes. Es conveniente mencionar que estos componentes del protocolo deben l l estar tanto en el receptor como en el emisor. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles IP: Protocolo de Internet.- Protocolo de la capa de Red, que permite definir la unidad bsica de transferencia de datos y se f encarga del direccionamiento de la informacin, para que llegue a su destino en la red. TCP: Protocolo de Control de Transmisin - Protocolo de la capa TCP: Protocolo de Control de Transmisin. Protocolo de la capa de Transporte, que permite dividir y ordenar la informacin a transportar en paquetes de menor tamao para su transporte y recepcin recepcin. HTTP: Protocolo de Transferencia de Hipertexto.- Protocolo de la capa de aplicacin, que permite el servicio de transferencia de pginas de hipertexto entre el cliente WEB y los servidores. SMTP: Protocolo de Transferencia de Correo Simple.- Protocolo de la capa de aplicacin que permite el envo de correo de la capa de aplicacin, que permite el envo de correo electrnico por la red. POP3: Protocolo de Oficina de Correo.- Protocolo de la capa de li i it l ti d I t t aplicacin, que permite la gestin de correos en Internet, es decir, le permite a una estacin de trabajo recuperar los correos que estn almacenados en el servidor. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Middleware. Es la herramienta o conjunto de herramientas iti ti di l i que nos permitirn gestionar y coordinar los mecanismos de comunicacin. Independiza el servicio y su implementacin del S O y protocolos Independiza el servicio y su implementacin, del S.O. y protocolos de comunicaciones Permite la convivencia de distintos servicios en una misma mquina Capa de software intermedio entre el cliente y el servidor. E l d ft it ti l Es la capa de software que nos permiten gestionar los mecanismos de comunicaciones. Ejemplo si se hace la peticin de una pgina web desde un browser en el cliente peticin de una pgina web desde un browser en el cliente, el middleware determina la ubicacin y enva una peticin para dicha pgina. El servidor Web, interpreta la peticin y p p g , p p y enva la pgina al software intermedio, quien la dirige al navegador de la mquina cliente que la solicit. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Definicin: En los sistemas Cliente/Servidor, un objeto os s ste as C e te/Se do , u objeto distribuido es aquel que esta gestionado por un servidor y sus clientes invocan sus un servidor y sus clientes invocan sus mtodos utilizando un mtodo de invocacin remota El cliente invoca el invocacin remota . El cliente invoca el mtodo mediante un mensaje al servidor que gestiona el objeto se ejec ta el mtodo del gestiona el objeto, se ejecuta el mtodo del objeto en el servidor y el resultado se d l l li j devuelve al cliente en otro mensaje. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles Tecnologas orientadas a los objetos distribuidos: g j RMI.- Remote Invocation Method.- Fue el primer fremework para crear sistemas distribuidos de Java. El sistema de Invocacin Remota de Mtodos (RMI) de Java permite, a un objeto que se est ejecutando en Mtodos (RMI) de Java permite, a un objeto que se est ejecutando en una Mquina Virtual Java (VM), llamar a mtodos de otro objeto que est en otra VM diferente. Esta tecnologa est asociada al lenguaje de programacin Java, es decir, que permite la comunicacin entre objetos p g J , , q p j creados en este lenguaje. DCOM.- Distributed Component Object Model.- El Modelo de Objeto Componente Distribuido, esta incluido en los sistemas operativos de Componente Distribuido, esta incluido en los sistemas operativos de Microsoft. Es un juego de conceptos e interfaces de programa, en el cual los objetos de programa del cliente, pueden solicitar servicios de objetos de programa servidores en otros ordenadores dentro de una red. Esta de programa servidores en otros ordenadores dentro de una red. Esta tecnologa esta asociada a la plataforma de productos Microsoft. CORBA.- Common Object Request Broker Architecture.- Tecnologa introducida por el Grupo de Administracin de Objetos OMG creada introducida por el Grupo de Administracin de Objetos OMG, creada para establecer una plataforma para la gestin de objetos remotos independiente del lenguaje de programacin. Sistemas y Computacin UNDAC Ing. Williams A. Muoz Robles