Sisdis intro1

Download Sisdis intro1

Post on 14-Apr-2017

513 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Sistemas DistribuidosProfesor: Hctor Abarca A.

  • ContenidoIntroduccin1Evolucin2Cliente - Servidor3Clasificacin Cliente-Servidor4Protocolo5Middleware6Objetos Distribuidos7

  • IntroduccinDefiniciones Sistema DistribuidoSistema en el cual mltiples procesadores autnomos, posiblemente de diferente tipo, estn interconectados por una subred de comunicacin para interactuar de una manera cooperativa en el logro de un objetivo global. [Lelann 1981]Conjunto de computadores independientes que se muestran al usuario como un sistema nico coherente. [Tanenbaum 2001]

  • IntroduccinSistema en el cual componentes de hardware y software, localizadas en computadores en red, se comunican y coordinan sus acciones slo por paso de mensajes. [Coulouris 2002]

  • IntroduccinGrados de DistribucinHardware y procesamientoDatos o estadoControl

  • IntroduccinCaractersticasConcurrenciaEsta caracterstica de los sistemas distribuidos permite que los recursos disponibles en la red puedan ser utilizados simultneamente por los usuarios y/o agentes que interactan en la red. Carencia de reloj globalLas coordinaciones para la transferencia de mensajes entre los diferentes componentes para la realizacin de una tarea, no tienen una temporizacin general, esta ms bien distribuida a los componentes.

  • IntroduccinCaractersticasFallos independientes de los componentes Cada componente del sistema puede fallar independientemente, con lo cual los dems pueden continuar ejecutando sus acciones. Esto permite el logro de las tareas con mayor efectividad, pues el sistema en su conjunto continua trabajando.

  • EvolucinProcesamiento central (Host) Uno de los primeros modelos de ordenadores interconectados, llamados centralizados, donde todo el procesamiento de la organizacin se llevaba a cabo en una sola computadora, normalmente un Mainframe, y los usuarios empleaban sencillos ordenadores personales.

  • EvolucinProcesamiento central (Host)Los problemas de este modelo son: Cuando la carga de procesamiento aumentaba se tena que cambiar el hardware del Mainframe, lo cual es ms costoso que aadir ms computadores personales clientes o servidores que aumenten las capacidades. El otro problema que surgi son las modernas interfases grficas de usuario, las cuales podan conllevar a un gran aumento de trfico en los medios de comunicacin y por consiguiente podan colapsar.

  • EvolucinGrupo de Servidores Otro modelo que entr a competir con el anterior, tambin un tanto centralizado, son un grupo de ordenadores actuando como servidores, normalmente de archivos o de impresin, poco inteligentes para un nmero de Minicomputadores que hacen el procesamiento conectados a una red de rea local.

  • EvolucinGrupo de ServidoresLos problemas de este modelo son:Podra generarse una saturacin de los medios de comunicacin entre los servidores poco inteligentes y los minicomputadores, por ejemplo cuando se solicitan archivos grades por varios clientes a la vez, podan disminuir en gran medida la velocidad de transmisin de informacin.

  • EvolucinCliente ServidorEste modelo, que predomina en la actualidad, permite descentralizar el procesamiento y recursos, sobre todo, de cada uno de los servicios y de la visualizacin de la Interfaz Grfica de Usuario. Esto hace que ciertos servidores estn dedicados solo a una aplicacin determinada y por lo tanto ejecutarla en forma eficiente.

  • Cliente - ServidorDefinicin:Sistema donde el cliente es una mquina que solicita un determinado servicio y se denomina servidor a la mquina que lo proporciona. Los servicios pueden ser: Ejecucin de un determinado programa. Acceso a un determinado banco de informacin. Acceso a un dispositivo de hardware.Es un elemento primordial, la presencia de un medio fsico de comunicacin entre las mquinas, y depender de la naturaleza de este medio la viabilidad del sistema.

  • Cliente - ServidorCategoras de ServidoresServidores de archivos.- Proporciona archivos para clientes. Si los archivos no fueran tan grandes y los usuarios que comparten esos archivos no fueran muchos, esto sera una gran opcin de almacenamiento y procesamiento de archivos. El cliente solicita los archivos y el servidor los ubica y se los enva.

  • Cliente - ServidorServidores de Base de Datos.- Son los que almacenan gran cantidad de datos estructurados, se diferencian de los de archivos pues la informacin que se enva est ya resumida en la base de datos. Ejemplo: El Cliente hace una consulta, el servidor recibe esa consulta (SQL) y extrae solo la informacin pertinente y enva esa respuesta al cliente.

  • Cliente - ServidorServidores de Software de Grupo.- El software de grupo es aquel, que permite organizar el trabajo de un grupo. El servidor gestiona los datos que dan soporte a estas tareas. Por ejemplo: almacenar las listas de correo electrnico. El Cliente puede indicarle, que se ha terminado una tarea y el servidor se lo enva al resto del grupo.

  • Cliente - ServidorServidores WEB.- Son los que guardan y proporcionan Pginas HTML. El cliente desde un browser o link hace un llamado de la pgina y el servidor recibe el mensaje y enva la pgina correspondiente. Servidores de correo.- Gestiona el envo y recepcin de correo de un grupo de usuarios (el servidor no necesita ser muy potente). El servidor solo debe utilizar un protocolo de correo.

  • Cliente - ServidorServidores de impresin.- Gestionan las solicitudes de impresin de los clientes. El cliente enva la solicitud de impresin, el servidor recibe la solicitud y la ubica en la cola de impresin, ordena a la impresora que lleve a cabo las operaciones y luego avisa a la computadora cliente que ya acabo su respectiva impresin.

  • Cliente - ServidorServidor de objetos.- Permite almacenar objetos que pueden ser activados a distancia. Los clientes pueden ser capaces de activar los objetos que se encuentran en el servidor. Servidores de aplicacin.- Se dedica a una nica aplicacin. Es bsicamente una aplicacin a la que pueden acceder los clientes.

  • Cliente - ServidorComponentes de Software:Se distinguen tres componentes bsicos de software:Presentacin.- Tiene que ver con la presentacin al usuario de un conjunto de objetos visuales y llevar a cabo el procesamiento de los datos producidos por el mismo y los devueltos por el servidor. Lgica de aplicacin.- Esta capa es la responsable del procesamiento de la informacin que tiene lugar en la aplicacin. Base de datos.- Esta compuesta de los archivos que contienen los datos de la aplicacin.

  • Cliente - ServidorArquitectura Cliente-Servidor de Dos CapasConsiste en una capa de presentacin y lgica de la aplicacin; y la otra de la base de datos. Normalmente esta arquitectura se utiliza en las siguientes situaciones: Cuando se requiera poco procesamiento de datos en la organizacin. Cuando se tiene una base de datos centralizada en un solo servidor. Cuando la base de datos es relativamente esttica. Cuando se requiere un mantenimiento mnimo.

  • Cliente - ServidorArquitectura Cliente-Servidor de Tres CapasConsiste en una capa de la Presentacin, otra capa de la lgica de la aplicacin y otra capa de la base de datos. Normalmente esta arquitectura se utiliza en las siguientes situaciones: Cuando se requiera mucho procesamiento de datos en la aplicacin. En aplicaciones donde la funcionalidad este en constante cambio. Cuando los procesos no estn relativamente muy relacionados con los datos. Cuando se requiera aislar la tecnologa de la base de datos para que sea fcil de cambiar. Cuando se requiera separar el cdigo del cliente para que se facilite el mantenimiento. Esta muy adecuada para utilizarla con la tecnologa orientada a objetos.

  • Clasificacin Cliente - ServidorRepresentacin distribuidaLa interaccin con el usuario se realiza en el servidor, el cliente hace de pasarela entre el usuario y el servidor.

  • Clasificacin Cliente - ServidorRepresentacin RemotaLa lgica de la aplicacin y la base de datos se encuentran en el servidor. El cliente recibe y formatea los datos para interactuar con el usuario.

  • Clasificacin Cliente - ServidorLgica DistribuidaEl cliente se encarga de la interaccin con el usuario y de algunas funciones triviales de la aplicacin. Por ejemplo controles de rango de campos, campos obligatorios, etc. Mientras que el resto de la aplicacin, junto con la base de datos, estn en el servidor.

  • Clasificacin Cliente - ServidorGestin Remota de DatosEl cliente realiza la interaccin con el usuario y ejecuta la aplicacin y el servidor es quien maneja los datos.

  • Clasificacin Cliente - ServidorBase de Datos DistribuidasEl cliente realiza la interaccin con el usuario, ejecuta la aplicacin, debe conocer la topologa de la red, as como la disposicin y ubicacin de los datos. Se delega parte de la gestin de la base de datos al cliente.

  • Clasificacin Cliente - ServidorCliente servidor a tres nivelesEl cliente se encarga de la interaccin con el usuario, el servidor de la lgica de aplicacin y la base de datos puede estar en otro servidor.

  • ProtocoloEs un conjunto bien conocido de reglas y formatos que se 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 intercambiar. Especificacin del formato de los datos en los mensajes.

  • ProtocoloPueden ms importantes que la propia arquitectura distribuida o centralizada. Un buen protocolo permite que se pueda pasar, sin un costo adicional de rediseo o codificacin, de una arquitectura centralizada a una distribuida, y viceversa:PipesRPCSQL RemotoHTTPX11Otros

  • MiddlewareCapa de software intermedio entre el cliente y el servidor. Es la capa de software que nos permite