37
SISTEMAS SISTEMAS DISTRIBUIDOS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

Embed Size (px)

Citation preview

Page 1: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

SISTEMAS SISTEMAS DISTRIBUIDOSDISTRIBUIDOS

Jhon Fredy VeraTecnología en Sistemas de Información

Universidad del Valle

Page 2: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

CARACTERÍSTICAS

Page 3: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

COMPARTICIÓN DE RECURSOS

Los recursos en un sistema distribuido están físicamente encapsulados en una de las computadoras y sólo pueden ser accedidos por otras computadoras mediante las comunicaciones (la red).

Para que la compartición de recursos sea efectiva, ésta debe ser manejada por un programa que ofrezca un interfaz de comunicación permitiendo que el recurso sea accedido, manipulado y actualizado de una manera fiable y consistente. Surge el término genérico de gestor de recursos.

Page 4: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

APERTURA Las interfaces de software clave del sistema están

claramente especificadas y se ponen a disposición de los desarrolladores.

Los sistema distribuidos abiertos se basan en la provisión de un mecanismo uniforme de comunicación entre procesos e interfaces publicados para acceder a recursos compartidos.

Los sistema distribuidos abiertos pueden construirse a partir de hardware y software heterogéneo, posiblemente proveniente de vendedores diferentes. Pero la conformidad de cada componente con el estándar publicado debe ser cuidadosamente comprobada y certificada si se quiere evitar tener problemas de integración.

Page 5: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

CONCURRENCIAEn un sistema distribuido que esta basado en el modelo de compartición de recursos, la posibilidad de ejecución paralela ocurre por dos razones:

1. Muchos usuarios interactúan simultáneamente con programas de aplicación.

2. Muchos procesos servidores se ejecutan concurrentemente, cada uno respondiendo a diferentes peticiones de los procesos clientes.

Page 6: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ESCALABILIDADCuando el tamaño y complejidad de las redes de ordenadores crece, es un objetivo primordial diseñar software de sistema distribuido que seguirá siendo eficiente y útil con esas nuevas configuraciones de la red. Resumiendo, el trabajo necesario para procesar una petición simple para acceder a un recurso compartido debería ser prácticamente independiente del tamaño de la red.

Las técnicas necesarias para conseguir estos objetivos incluyen el uso de datos replicados, la técnica asociada de caching, y el uso de múltiples servidores para manejar ciertas tareas, aprovechando la concurrencia para permitir una

mayor productividad.

Page 7: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

TOLERANCIA A FALLOS Cuando se producen fallos en el software o en el

hardware, los programas podrían producir resultados incorrectos o podrían pararse antes de terminar la computación que estaban realizando.

El diseño de sistemas tolerantes a fallos se basa en dos puntos principales: Redundancia hardware y recuperación del software (diseño de programas que sean capaces de recuperarse de los fallos).

Page 8: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

TRANSPARENCIA La transparencia es la ocultación al usuario y al

programador de aplicaciones de la separación de los componentes de un sistema distribuido.

Así, el sistema se percibe como un todo, en vez de una colección de componentes independientes.

Page 9: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

TRANSPARENCIA (CONTINUACIÓN)

El manual de referencia RM-ODP [ISO 1996a] identifica ocho formas de transparencia:

Transparencia de Acceso Transparencia de Localización Transparencia de Concurrencia Transparencia de Replicación Transparencia de Fallos Transparencia de Migración Transparencia de Prestaciones Transparencia de Escalado

Page 10: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

TIPOS DE AQUITECTURA

Una arquitectura es un conjunto de reglas, definiciones, términos y modelos que se emplean para producir una utilidad.

Una clasificación muy extendida de los sistemas distribuidos es aquella que los clasifica en función de la ubicación, jerarquía o relación entre los componentes lógicos

Page 11: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS CENTRALIZADAS

En las arquitecturas centralizadas la interrelación entre componentes sigue un patrón muy característico en el que hay una jerarquía definida de manera que ciertos componentes requieren información o servicios que ofrecen otros componentes lógicos.

Page 12: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

CLIENTE-SERVIDOR

Clientes: hacen peticiones de servicio. Normalmente, los clientes inician la comunicación con el servidor.

Servidores: proveen servicios. Normalmente, los servidores esperan

recibir peticiones. Una vez han recibido una petición, la resuelven y devuelven el resultado al cliente.

En el modelo cliente-servidor hay dos tipos de componentes:

Page 13: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

CLIENTE-SERVIDOR

Petición

Respuesta

Cliente Servidor

Page 14: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

COMPONENTES HARDWARE

Servidores de archivos Servidores de Bases de Datos Servidores de Software de Grupo Servidores WEB Servidores de correo Servidor de objetos Servidores de impresión Servidores de aplicación

Page 15: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

COMPONENTES SOFWARE Presentación. Tiene que ver con la presentación 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.

Lógica de aplicación. Esta capa es la responsable del procesamiento de la información que tiene lugar en la aplicación.

Base de datos. Esta compuesta de los archivos que contienen los datos de la aplicación.

Page 16: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURA CLIENTE-SERVIDOR EN 2 NIVELES

Se utiliza para describir los sistemas cliente/servidor en donde el cliente solicita recursos y el servidor responde directamente a la solicitud, con sus propios recursos. Esto significa que el servidor no requiere otra aplicación para proporcionar parte del servicio.

Page 17: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURA CLIENTE-SERVIDOR EN 3 NIVELES

En la arquitectura en 3 niveles, existe un nivel intermediario. Esto significa que la arquitectura generalmente está compartida por:

Un cliente El servidor de aplicaciones

(software intermedio) El servidor de datos

Page 18: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

SERVICIOS PROPORCIONADOS POR MÚLTPLES SERVIDORES

(NIVELES MÚLTIPLES)

Los servidores se pueden repartir los distintos objetos que componen el servicio que proporcionan, o pueden mantener réplicas de los objetos en diferentes ordenadores.

Page 19: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

CLASIFICACIÓN

Page 20: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

REPRESENTACIÓN DISTRIBUIDA

La interacción con el usuario se realiza en el servidor, el cliente hace de pasarela entre el usuario y el servidor.

Base de DatosLógica de aplicaciónInterface de Usuario

Terminal Físico

Page 21: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

REPRESENTACIÓN REMOTA

La lógica de la aplicación y la base de datos se encuentran en el servidor. El cliente recibe y formatea los datos para interactuar con el usuario.

Base de DatosLógica de aplicaciónInterface Avanzado de Usuario

Terminal InteligenteInterface Básico de usuario

Page 22: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

LÓGICA DISTRIBUIDA

El cliente se encarga de la interacción con el usuario y de algunas funciones triviales de la aplicación. Por ejemplo controles de rango de campos, campos obligatorios, etc. Mientras que el resto de la aplicación, junto con la base de datos, están en el servidor.Base de Datos

Lógica de aplicaciónComputador de mesaLógica básica de aplicaciónInterface de Usuario

Page 23: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ADMINISTRACIÓN REMOTA DE DATOS

El cliente realiza la interacción con el usuario y ejecuta la aplicación y el servidor es quien maneja los datos..

Base de Datos Computador de mesaLógica básica de aplicaciónInterface de Usuario

Page 24: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

BASE DE DATOS DISTRIBUIDA

El cliente realiza la interacción con el usuario, ejecuta la aplicación, debe conocer la topología de la red, así como la disposición y ubicación de los datos. Se delega parte de la gestión de la base de datos al cliente.

Base de Datos

Base de Datos

Computador de mesaDistribución de datosLógica de aplicaciónInterface de usuario

Page 25: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

SISTEMAS DE INFORMACIÓN DISTRIBUIDOS

Un sistema de información es un software que administra datos de algún aspecto del mundo real con una finalidad específica.

Los aspectos más relevantes en el desarrollo de un sistema con estas características son:

o El almacenaje de los datos o Los sistemas deben ofrecer funcionalidades para permitir la interpretación de los datos y la extracción de conocimiento.

Page 26: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURA MULTIESTRATO

La funcionalidad está distribuida entre distintas plataformas u ordenadores. La interfaz reside en el ordenador del usuario, los servicios funcionales pueden estar en uno o más ordenadores, y los datos o los sistemas propietarios están en plataformas adicionales.

Page 27: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURA DE DOS ESTRATOSLa interfaz de usuario está ubicada en el cliente, la gestiónde base de datos en el servidor, la capacidad deprocesamiento está repartida tanto entre el cliente como en elservidor. Así se mejora el uso y flexibilidad de lasaplicaciones.

Page 28: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURA DE TRES ESTRATOS

La arquitectura de tres estratos es una evolución de la arquitectura de dos estratos y ubica el tercer estrato entre la interfaz de usuario (cliente) y el gestor de datos (servidor). Este tercer estrato proporciona la capacidad de procesamiento.

Page 29: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

APLICACIONES BASADAS EN EL WEB

o Son un caso especial de arquitectura cliente-servidor.

o Una ventaja de este tipo de aplicaciones es que sonaccesibles desde cualquier ordenador que disponga de un navegador Web, sin necesidad de incluir más código o instalar más programas en el cliente.

oGracias ha esta facilidad de uso y generalidad ha sido uno de los elementos responsables del boom de empresas en Internet.

Page 30: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

La distribución horizontal consiste en distribuir en partes lógicamente equivalentes las funcionalidades de un cliente o de un servidor, de manera que cada parte mantenga todas las funcionalidades, pero que la carga sobre el sistema quede balanceada entre las diferentes partes.

Principalmente se dividen en tres categorías: No estructuradas Estructuradas Híbridas.

Page 31: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

NO ESTRUCTURADAS

Un sistema de igual a igual que utilice una red superpuesta tipo no estructurado es un sistema que está compuesto de iguales que se conectan a la red sin conocer su topología.

Cuando un igual recibe la pregunta, envía al igual que lo ha originado una lista de todo el contenido que encaja con la pregunta.

Page 32: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

NO ESTRUCTURADAS (CONTINUACIÓN)

Las aplicaciones más representativas que se han construido haciendo uso del paradigma de igual a igual no estructurado (también conocido como de igual a igual puro) son Gnutella y Freenet.

Gnutella

Page 33: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

ESTRUCTURADAS

La topología de la red superpuesta sobre la que se construyen estos sistemas está fuertemente controlada y el contenido no va a cualquier lugar, sino a uno determinado que hace que las consultas sean más eficaces.

Ejemplos de redes superpuestas estructuradas:

Can, Chord, Tapestry, Pastry, Kademlia, DKS o Viceroy

Page 34: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

ESTRUCTURADASServidor(índice)

1. Pregunta por un archivo

2. Contesta lista nodos que tienen el archivo

4. Recibe el archivo

3. Pide el archivo

Page 35: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

ARQUITECTURAS DESCENTRALIZADAS

HIBRIDAS

Los sistemas híbridos solucionan problemas que no pueden ser resueltos de modo eficiente por ninguno de los modelos anteriores:

Los sistemas no estructurados usan técnicas de inundación no deterministas que no nos aseguran el éxito en las búsquedas.

Los sistemas estructurados tienen problemas de sobrecarga cuando se hacen búsquedas sobre rangos de objetos, ya que éstos sólo permiten realizar búsquedas indexadas de modo eficiente sobre objetos concretos.

Page 36: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

MIDDLEWARE

"Es un termino que abarca a todo el software distribuido necesario para el soporte de interacciones entre Clientes y Servidores".

Es el enlace que permite que un cliente obtenga un servicio de un servidor.

Tipos de Middleware Middleware general

Este tipo permite la impresión de documentos remotos, manejos de transacciones, autenticación de usuarios, etc.

Middleware de servicios específicos

Software asociado a un servicio en particular, por ejemplo: software que permite a dos BD conectarse a una red cliente/servidor (ODBC: Conectividad abierta de BD)

Page 37: SISTEMAS DISTRIBUIDOS Jhon Fredy Vera Tecnología en Sistemas de Información Universidad del Valle

GRACIASGRACIAS